三菱plc 脉冲计数

怎么实现 M1开始计数Y0脉冲 M2 继续记录 M3 继续记录 然后再在适当条件解除
例:M1为ON记录Y0 一定脉冲后 M2 从0 开始记录(M1 记录保持计数) 一定脉冲后 M3从0 开始记录(M1 M2 记录保持计数)
M1为ON记录Y0 一定脉冲后 M2 从0 开始记录(M1 记录保持继续计数) 一定脉冲后 M3从0 开始记录(M1 M2 记录保持继续计数) 在特定条件 任意解除

如图所示,不知道你说的是不是这个意思,把计数器(是普通计数器还是高速计数器这里就不管了)的值实时的赋值给D0,然后M1为ON,把D0值赋值给D2,D2就是M1的计数值。M2为ON时,先把D2的值赋值给D100,然后计算当前的计数值D0减去M2刚按下时已经计数的值D100就是M2的计数值D4了。而且也是从0开始计数的,并且M1的计数不停还继续赋值中。同理M3的也是。
可恶图,又出bug了呢,提交完回答发现图没了。
程序如下
0 LD M1
1 MOV D0 D2
6 LDP M2
8 MOV D2 D100
13 LD M2
14 SUB D0 D100 D4
21 LDP M3
23 MOV D4 D102
28 LD M3
29 SUB D0 D102 D6
36 END
望采纳。。。。。追问

这样D0 在几个循环后 岂不是非常大 还有个问题就是 怎么把Y0输出的 脉冲记录到D0里面, 我是想 另补充: 目的是 利用C1 从零记录 C2 从零记录 C3从零记录 ,通过对比,如C1≥2000 输出动作 继续计数 C1 ≥8000 输出动作 清零(在C1还没有 ≥8000时候,也许C2 已经开始计数,C3同 ),总之 C1 C2 C3 轮流计数 任何一个≥2000 都输出动作 ≥8000 输出动作 清零 供下次重复使用.

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答