gkxxw 发表于 2026-8-26 20:56:38

西门子PLC对于STL语句中上升沿实现的方式


比如I1.0上升沿的时候,Q1.0得电.可以写成如下的语句
   A   I1.0   
   FP    M   40.0   
   S   Q1.0
但是我不明白的是为啥用M40.0或者其他中间位?不是检测I1.0的上升沿么,为啥不写成 FP I1.0?
答:1、有关 FP指令:
使用 RLO 上升沿检测指令(FP <位>)可以在 RLO 从“0”变为“1”时检测到一个上升沿,并以 RLO = 1 显示。
在每一个程序扫描周期过程中,RLO 位的信号状态都将与前一周期中获得的结果进行比较,看信号状态是否有变化。前一 RLO 的信号状态必须保存在边沿标志地址(<位>)中,以进行比较。如果在当前和先前的 RLO“0”状态之间有变化(检测到上升沿),则在操作之后,RLO 位将为“1”。
2、不明白的是为啥用M40.0或者其他中间位?
为了保持前一 RLO 的信号状态,所以要必须保存在边沿标志地址(<位>即中间标志M40.0)中。
3、不是检测I1.0的上升沿么,为啥不写成 FP I1.0?
理由见上述。即,必须保存在边沿标志地址(<位>即中间标志M40.0)中。

744142901 发表于 2026-8-27 12:01:09

内容太顶了!疯狂点赞,已默默收藏~

仪器设备 发表于 2026-8-29 07:29:38

这波反向操作,我属实没想到!

orbinson 发表于 7 天前

路过打卡,为优质内容疯狂打 call

_lnSi 发表于 昨天 21:52

同款经历!简直是世另我
页: [1]
查看完整版本: 西门子PLC对于STL语句中上升沿实现的方式