当前位置: 主页 > PLC控制

静态变量使用

请问我程序中静态变量仿真结果为什么会这样?我想做一个时间累加:
程序写在fb块中:
STatic:time_lASttime
temp:temp1time


network:
Am100.0
FP#FP120
JCNL001
CALLTIME_TCK
RET_VAL:=DB1.time1//启动
L001:ANm100.0
JCNL002
CALLTIME_TCK
RET_VAL:=DB1.time2//停止
L002:LDB1.time2
LDB1.time1
>=D
JCNL004
-D
T#temp1
L003:L#temp1
L#time_last
+D
T#out
T#time_last
JUL004
L004:NOP0

问题补充:
正确的程序我已经写出,但是就是不知道为什么使用静态变量之后,最后的输出结果会变化那么快,我这个程序实际才仿真运行了一分钟不到,最后的输出时间就那么大

图片说明:

静态变量使用静态变量使用

最佳答案

静态变量(STAT)在PLC运行期间始终被存储。
参考同类问题回复,链接:htTP://www.ad.siemens.com.cn/service/answer/solution.aspx?Q_ID=66195&cid=1029
补充问题回复:
这个程序计算结果与是否使用静态变量没有关系的。在调用该子程序时,先初始化(清零这个#time_last静态变量)。

提问者对于答案的评价:
谢谢

专家置评

已阅,最佳答案正确。

  • 关注微信

猜你喜欢

微信公众号