今天做一个流量计累积流量,同时具有清零功能的SCL语音子程序,意图是通过触摸屏点击清零的变量(FTRset)后,累积流量清零,同时清零的变量(FTRset)置位后马上复位。
以前是通过FC块直接把清零的DB布尔量为真时,让流量累积量清零,然后复位自己,是可以做到的。
用SCL写成子程序,里面是IF FTRset=true;Then 流量=0;FTRset:=FALSE;
编译用另一个FB块调用这个子程序后发现,点击清零后,流量是归零了,但FTRset,这个变量无法复位。我想请教一下,SCL子程序里怎么能做到让FTRset让他本身复位?
最佳答案
FTRset 这个变量定义的是In 还是INOUT
应该是INOUT类型的才能复位的吧
刚测试了一下
FTRset 这个定义In的话,调用FB的时候不能填写地址,填写地址之后就不能复位,如果用背景数据块的位可以复位
inout类型没有限制
提问者对于答案的评价:
的确是这个,看到答案一下就醒悟了,今天现场试了,问题解决了,谢谢。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc163759.html