2015-06-16
最近用300做一个水泵轮流运行的项目,假设有8台水泵,编号为1-8,分别对应q0.0-q0.7,根据液位的高低,液位高就多运行泵,液位低就少运行泵,需要运行的泵数量在MW0中,数量为1-8,
建立一张运行的表,最大条目数10,依次填入1-8,如图
这个表中的数值定时更换,每经过一段时间(如10分钟),第一个条目的数抽出送到第八个条目
如果某个泵,比如5号泵报警了,就从表中抽出,放在另一个表里面
以上功能都编程实现了,楼主现在想实现这样的一个功能:
根据MW0的值,来运行一定数量的泵,比如表里面的数值为 2、5、6、7、3、4、8、1,MW为5,则运行2、5、6、7、3号泵
想看看有几种方法?用指针怎么做?
评论3
楼主 2015/6/16 12:47:45
使用寄存器间接寻址,把表里的数值作为QB0的位地址部分即可,至于运行数量就更好办了,大于运行数量的部分直接关掉即可
楼主 2015/6/17 10:12:30
不过这个最好用SCL编程或指令表编程,梯形图不支持间接寻址或使用指针
楼主 2015/6/18 13:50:10
用SCL就so easy