【动作描述】

如图1,有一条流水线,每生产一个产品,都会结果X0这个感应器。当按下按钮1时,每生产10000个产品,蜂鸣器拉响;按一下X2按钮时,生产20000个产品,蜂鸣器拉响;按一下X3按钮时,生产30000个产品,蜂鸣器拉响。

 

1 设备示意图

【程序编写及思路】

1.方法1:标志位与多个计数器

如图2,按下X1,用MOVK1给到组合位元件K1M0,相当于导通了M0,断开了M1M2M3;同时使用批量复位指令复位C0C2,重新开始计数。

按下X2,用MOVK2给到组合位元件K1M0,相当于导通了M1,断开了M0M2M3;同时使用批量复位指令复位C0C2,重新开始计数。

按下X3,用MOVK4给到组合位元件K1M0,相当于导通了M2,断开了M1M0M3;同时使用批量复位指令复位C0C2,重新开始计数。

相当于X1按钮触发M0X2按钮触发M1X3按钮触发M2,这个3M点分别是10000次、20000次、30000次的标志位,后续对应的控制就串入对应的M点就可以。

2 模式选择

如图3,按下X0时,3种不同模式的M点,对应导通不同的计数器,M0对应C0,计数10000M1对应C1,计数20000M2对应C2,计数30000

计数器次数到达就触发Y0导通,输出报警。

只有当按下X1~X3任何一个按钮,复位计数器,Y0停止输出。

3 计数及输出控制

2.方法2:使用计数器设定值。

为了实现掉电保存功能,使用的寄存器和计数器都是掉电保持型的,可以根据图4和图5

计数器的当前值与设定值应用

4 FX3U PLC 寄存器范围

5 FX3U PLC 计数器范围

如图6X1按下时,用MOV指令把K10000传送进D512X2按下时,用MOV指令把K20000传送进D512X3按下时,用MOV指令把K30000传送进D512

X0触发计数器C100,计数的数据为D512保存的数据,次数一到,C100常开触点导通,输出Y0

3个按钮一起按下去时,复位寄存器C100,重新开始计数。

 利用寄存器设定值控制

3.方法3:使用计数器的当前值。

这里为了实现掉电保存,使用M500以后的M点(FX3U PLC中间继电器复位如图7

7 FX3U PLC 中间继电器范围

如图8X0触发寄存器C100进行计数,计数个数30000(只要大于等于30000都可以)。

按下X1,用MOVK1给到组合位元件K1M512,相当于导通了M512,断开了M513M514M515

按下X2,用MOVK2给到组合位元件K512M0,相当于导通了M513,断开了M512M514M515

按下X3,用MOVK4给到组合位元件K512M0,相当于导通了M514,断开了M513M512M515

M512导通情况下,C100计数大于等于K10000时,输出控制Y0

M513导通情况下,C100计数大于等于K20000时,输出控制Y0

M514导通情况下,C100计数大于等于K30000时,输出控制Y0

复位使用了X1按钮,只要长按X1按钮5秒,复位C100Y0停止输出,重新开始计数。

使用计数器当前值控制