我创建了一个功能块FB,但是因为程序工艺需要读取信号的边沿信号,但是程序在功能块内处理边沿信号时不能正常工作,我用临时变量做的但是程序执行时根本就不是起到直接通一次,而是每个周期都接通,如果程序不是在FB内用边沿检测信号,程序运行正常,请教各位FB内怎么才能使用边沿检测信号。就是接通后执行一下信号,后面其他周期不执行。
问题补充:
请帮我看看设置和程序对不,上升沿P,检测输入信号号后,只接通一次就行了,在后面的信号断开后不需要再次接通,现在接通后,后面的SET线圈如果复位后,在P的信号后面的外部信号只要再次接通,线圈又动作一次,不知道为什么。是不是这样写不对,还有我的博图不可以输出线圈P,必须有两个参数,不能像RENHQ你的只#P就行了
图片说明:
最佳答案
在FB内建立静态变量,用静态变量作为沿信号的状态保存值
做了个简单的启停,用置位
start
stop是输入
q是输出
另外两个是stat类型
图片说明:
提问者对于答案的评价:
其实你们两个回答的都正确,我只能选一个, Setrarin你的解答比较详细,我找到问题了,输出线圈也要设置成静态变量就行了,我刚开始只是P的缓存位是静态变量不行,SET线圈也换成静态变量就行了,多谢大家的帮助。
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc160879.html