您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页西门子(关于累计流量问题)

西门子(关于累计流量问题)

来源:爱go旅游网


关于累计流量问题

在用Siemens S7-300 PLC上采用step7 v5.1开发的一套程序中,需要计算累计流量(变量

share\".FLOWSUM),瞬时流量通过5台流量变送器获得,经转化成0.0~100.0后分别存储在\"share\".FIC01A_R、\"share\".FIC01B_R、\"share\".FIC01C_R、\"share\".FIC01D_R和\"share\".FIC01E_R中,每台流量传感器的量程为250立方米/小时。程序一直运行正常,但当累计流量达到1.7E+005左右后,累计流量便不再增长,当将累计流量手工改小为1.0E+005后,程序又运行正常,再次长到1.7E+005左右后又停止增长。

程序中计算累计流量的部分都在OB35中(程序的其他部分都没有使用该变量), OB35已设定为每秒钟执行一次,程序采用梯形图编写,为了方便发送将其转换为语句表格式,程序中用到的符号说明如下:

----------------------------------------------------------------------------------------

2

SYMBOL ADRESS DATATYPE COMMENT

条件 \"MODE\" —— M0.0 BOOL 全局模式选择0-手动;1-自动

条件 \"DB_FA\".FSTATUS —— DB11.DBW96 INT A过滤器状态 0-ready;1-预涂;2-

回流;3-过滤;4-再生;5-反冲洗

\"share\".FIC01A_R—— DB1.DBD10 REAL A过滤器的流量00~100.0

#TEMPR —— REAL 流量累计临时变量

\"share\".FLOWSUM ——DB1.DBD0 REAL 总过滤流量累计

注:程序有5台过滤器(A、B、C、D、E)并联运行,上面只给出了A过滤器的符号声明,其它

过滤器与之基本相同,只是在不同的DB中。

---------------------------------------------------------------------------------------

A \"MODE\"

= L 30.0

A(

A L 30.0

A(

L \"DB_FA\".FSTATUS

L 3

==I

)

JNB _01e

L \"share\".FIC01A_R

L 6.944440e-004

*R

T #TEMPR

AN OV

SAVE

CLR

_01e: A BR

)

JNB _01f

L #TEMPR

L \"share\".FLOWSUM

+R

T \"share\".FLOWSUM

_01f: NOP 0

A(

A L 30.0

A(

L \"DB_FB\".FSTATUS

L 3

==I

)

JNB _020

L \"share\".FIC01B_R

L 6.944440e-004

*R

T #TEMPR

AN OV

SAVE

CLR

_020: A BR

)

JNB _021

L #TEMPR

L \"share\".FLOWSUM

+R

T \"share\".FLOWSUM

_021: NOP 0

A(

A L 30.0

A(

L \"DB_FC\".FSTATUS

L 3

==I

)

JNB _022

L \"share\".FIC01C_R

L 6.944440e-004

*R

T #TEMPR

AN OV

SAVE

CLR

_022: A BR

)

JNB _023

L #TEMPR

L \"share\".FLOWSUM

+R

T \"share\".FLOWSUM

_023: NOP 0

A(

A L 30.0

A(

L \"DB_FD\".FSTATUS

L 3

==I

)

JNB _02a

L \"share\".FIC01D_R

L 6.944440e-004

*R

T #TEMPR

AN OV

SAVE

CLR

_02a: A BR

)

JNB _02b

L #TEMPR

L \"share\".FLOWSUM

+R

T \"share\".FLOWSUM

_02b: NOP 0

A(

A L 30.0

A(

L \"DB_FE\".FSTATUS

L 3

==I

)

JNB _034

L \"share\".FIC01E_R

L 6.944440e-004

*R

T #TEMPR

AN OV

SAVE

CLR

_034: A BR

)

JNB _035

L #TEMPR

L \"share\".FLOWSUM

+R

T \"share\".FLOWSUM

_035: NOP 0

-------------------------------------------------------------------------------------------------

请帮忙检查一下,问题到底出在什么地方,十分感谢!

由于S7-300的浮点数格式为单精度格式的,其有效数据长度为8位,因此当两个相差很大的数相加时(如A/B > 10000000),会发生丢尾数及完全被舍弃的现象,这在累加值的应用中经常发生,所以必须根据你的实际应用情况确定其算法.

非常感谢您的指点,问题好像正在于此,每秒钟的累加数 6.944 440e-0 04 和累加

和1.7e+005相比正好差了8次方。我曾尝试将累加数缩小了1000倍,在wincc中再放大1000倍,但没有起到多大效果。

能不能具体给指点一下如何解决该问题?谢谢!

2有个瞬时流量计,如何计算累积流量

用定时中断将流量相加,经过单位变换即得累积流量。

我做的课题也用了一个流量计,我也需要计算累积流量,我用的流量计是给出的脉冲信号,在这个课题中还有一个编码器,用来测深度的,当深度每增加0.1米时中断,在这个中断中读出当前流量值,存入某个数组,这样既可以得到每段的流量,也可以的到总的流量。

最简单

1秒中取1次样

累计流量就是每秒的流量和

3流量累计求助?

各位大侠,请教4-20mA的流量信号怎幺累计,做成三班报表?

用辛普森积分法

A+B->B

A为采集量

一般有脉冲信号来累计

脉冲信号累计,误差可能会比较大

还是建议用周期采集累计!!不过那,不想找麻烦的话,可以用脉冲信号来累计,一直循环加,再作相应的数据处理就OK了!!

定时中断 累加

每100ms取一次流量值,然后累加,累加10次就是1s内的流量和,以此类推~

4关于累积流量偏小的问题

在FC1块里做流量信号处理,在OB中调用FC1,在OB35(设为1秒)里取流量值进行累加,得到的累积量总是偏低,后来在OB35里做试验,取流量值为固定值20000,其累加值也会偏低。请问各位师傅大概是哪一方面的原因引起的?

你是否用实数进行累加的?

5流量计累计

我用S7-400H PLC 来实现流量累计(仪表只有瞬时流量4-20mA信号)。以前我用

Schneider Premiun PLC来做时,一天差1吨左右,不精确。西门子PLC在OB35里面做时,是否要做100ms或1s脉冲?而且处理时要扩大倍数才可以,但倍数很大时,会超出MD数据范围。请各位大侠能否把自己做过的实例E-mail 给我。***************

MD0=MD0+PIW

IF MD0>CONST

{

MD0=MD0-CONST

MD4=MD4+1}

MD8=MD4*CONST+MD0

MD0,MD4为long int,MD8为float,const为一个MD数值范围内的常数,这样就不用担心数值溢出,也不用担心如果使用浮点数作累计时,当累计量大到一定数值时累计不准。倍数放大可以对MD8进行操作。

6 PLC300流量累加问题求救

我准备在plc中作长期累计量计算 精度、溢出问题不知怎么解决 step7中只能用32位浮点数 长期对该数累加精度很难保证并4月左右不能正常累加 请教各位怎么解决 谢谢

32位浮点数恐怕很难溢出吧

累加精度是不好解决

不过精度不会差的

流量的话 应该有脉冲输出的 那样计算比较精确 如果你用流量乘时间 精度本身就不够了

你可以累加到10万,当大于10万的时候就让它回到0,重新累加。如果数据比这大得多,你可以除以10,100,或者更大,然后单位上变化一下,再来累加。

使用浮点数,累积数一大,精度就不能保证,可以使用Dint,一个不够用2个.位应该足够了吧.

7用S200作流量累计时,时间如何设置?

请问,用S200作流量累计时,时间如何设置?说明上说时间占8个字节,那年、月、日和小时、分钟、秒如何分配存储器的

8个字节时间缓冲器格式(T)

T T+1 T+2 T+3 T+4 T+5 T+6 T+7

年 月 日 小时 分钟 秒 0 星期

8 MD0=MD0+PIW512;

IF MD0>CONST;

{MD=0

MD4=MD4+1}

MD8=MD4*CONST+MD0;

MD8定义FLOAT,其余定义INT;

这样就不会出现溢出了。

9电磁流量计

电磁流量计:7ME-5038-2AA11-1AA0 (SITRANS F M)

变送器:7MQ5752-4VA11-0CB0 (Intermag 2)

当220V AC供电电源突然断掉,等恢复供电后是否可以保存流量累积数据。

请各位同行指点!

谢谢!

可以。

10请教,利用瞬时流量计算累计流量

请教各位,利用瞬时流量计算累计流量,怎么样做才能误差最小呢。多谢,多谢

用定积分做,把区间做得越小越精确。

等间隔时间可直接累加,不等间隔需乘上时间值再累加n

对啊,其实是个模拟积分算法,就是累加了。

比如,单位L/S,你每秒把计量值累加一次就好了。但是你想更精确,0。1秒一次,那就每0。1秒加一次,但记得要把结果除以10,因为你的流速是以升每秒为单位的。

11工程厂家要求我们作一个关于瞬时流量计算的问题,其方式靠“物重的减少”来计算当前的瞬时流量,就是在一段时间内分别采用A-B=A1,B-A1=A2,A1-A2=A3.....最后求瞬时流量(t/h).

C:当前重量,P:上一次执行时的重量,F:流量,T:定时中断的周期。

初始化中:

P=C

在定时中断中执行:

F=(P-C)/T

P=C

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务