浔之漫智控技术(上海)有限公司总部
主营西门子模块 , PLC模块 , 变频器模块 , 触摸屏模块
西门子代理|贵州PLC模块总代理
观看西门子代理|贵州PLC模块总代理视频:

西门子代理|贵州PLC模块总代理西门子代理|贵州PLC模块总代理

西门子代理,贵州PLC模块总代理,交换机,电缆供应,西门子代理,贵州PLC模块总代理,交换机,电缆供应

西门子代理,贵州PLC模块总代理,交换机,电缆供应西门子代理,贵州PLC模块总代理,交换机,电缆供应西门子代理,贵州PLC模块总代理,交换机,电缆供应

硬件:1*CPU224+2*EM222
实现功能:1~20个电磁阀,用户可在UI界面设定第N1到第N2个电磁阀动作,以及电磁阀动作的时间T,且电磁阀动作为轮流动作。如假设用户设定第N1=3至第N2=8号电磁阀动作,动作时间为T=1min,则上电后,第3号电磁阀开始动作,动作时间1min,依次动作,至8号电磁阀动作完成后,3号电磁阀工作,依次做下一周期循环。

其中:CPU224的输出端是Q0.0~Q0.7、Q1.0~Q1.1(Q1.2~Q1.7为缺省),这样我用循环左/右移指令时,需要分区进行循环扫描,且电磁阀动作有BUG。微信截图_20221201163235.png

请教各位编程思路!
另附上有bug的编程(因水平有限,此程序中,没有实现N1可修改,即默认从一号电磁阀开始动作),请指教!

问题补充:
您讲的“解决你缺省值(Q1.2~Q1.7为缺省)的问题确实你可以先用中间变量地址(M),那样就不需要考虑由于cpu输出地址缺省值带来的不便。”怎么替代呢?还有,先不按用户设置的循环时间移位是什么意思呢?

实在是水平太低,还请指教!
另,找答案是不是不支持回复功能啊?怎么回复呢?

8AA32.jpg

图片说明: 1,2   2,5   3,3   4,4   5,1  

佳答案

用移位指令的方法在此是比较切合实际的,采用双字移位指令解决。
解决你缺省值(Q1.2~Q1.7为缺省)的问题确实你可以先用中间变量地址(M),那样就不需要考虑由于cpu输出地址缺省值带来的不便。
用户需要从哪个阀(PLC输出地址开始),可以在用户设置N1数值后,可以先直接将前面的这些位复位,然后根据启动位命令移位(可以先不按用户设置的循环时间移位,这样就可以快速先移动到准备的地址上),当用户按启动后用用户设置的N2时间移位。
看了你的程序,认为你需要换一种方式思考这个问题,移位指令用双字不要用字节,其它的编程方式可以按你的方式也可以,关键是你需要换一种思路编程。

6ES7516-3AN02-0AB0CPU 1516-3 PN/DP,1 MB 程序,5 MB 数据;10 ns ;集成 X1: 2x PN接口 ,X2: 1x PN接口,X3:1x DP 接口
6ES7515-2AM02-0AB0CPU 1515-2 PN,500 KB 程序,3 MB 数据;30 ns;集成 X1: 2x PN接口 ,X2: 1x PN接口
6ES7513-1AL02-0AB0CPU 1513-1 PN,300 KB 程序,1.5 MB 数据;40 ns;集成 2x PN 接口
6ES7511-1AK02-0AB0CPU 1511-1 PN,150 KB 程序,1 MB 数据;60 ns;集成 2x PN 接口

西门子代理,贵州PLC模块总代理,交换机,电缆供应,西门子代理,贵州PLC模块总代理,交换机,电缆供应,西门子代理,贵州PLC模块总代理,交换机,电缆供应西门子代理,贵州PLC模块总代理,交换机,电缆供应西门子代理,贵州PLC模块总代理,交换机,电缆供应西门子代理,贵州PLC模块总代理,交换机,电缆供应西门子代理,贵州PLC模块总代理,交换机,电缆供应

展开全文