请教一下,当MD0在3秒内没有下降,MD4在3秒内上升超过1000的情况下,让q0.0置1,否则清0。请问这段程序怎么编
最佳答案
如果你这个MD是循环判断的话
不是3秒 3秒的判断,0 - 3S
0.1 -3.1S
0.2 - 3.2S
这样判断的话MD4这个不好做,MD0好做
如果隔3秒判断一次的话,可以参考下面的程序
程序不完整,还需要修改,基本功能差不多
图片说明:
提问者对于答案的评价:
谢谢,不过MD4是循环判断,也就是0 - 3S,0.1 -3.1S ,0.2 - 3.2S这样判断。
我的想法是用0.1s脉冲,把0-3S间每隔0.1秒move到DB1数据块里,然后再把DB1 MOVE 给db2,用冒泡法给DB2排序。这样比较麻烦,而且也是隔0.1秒采集一个数据,这样感觉比较繁琐。不知大大有没有别的好办法啊?
A(
A "0.1s脉冲"
JNB _015
CALL "BLKMOV"
SRCBLK :=P#DB1.DBX0.0 BYTE 120
RET_VAL:=MW34
DSTBLK :=P#DB1.DBX4.0 BYTE 120
_015: A BR
)
JNB _016
L MD 4
T DB1.DBD 0
_016: NOP 0
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc150680.html