一键启动马达看上去比较简单,实际上还是需要对PLC的内部运行机理有了解才能够得心应手从容编程解决。本人只是从网上看到了这道供初学者练习的题,正好也在这里练练手。
这两天看到了计数器,正好想到了这个问题,想想用计数器应该可以解决。因为计数器是计数上升沿,它的各位数正好每次发生变化。具体的梯形图如下:
这里需要注意的是,计数的BCD码送入MW10后,个位是在M11.0,即低位字节的地址位较高。如果需要PLC停机后保持状态的话,可以用数据块保存。同样需要注意的时低位字节的地址位较高。中间比较的那一段是防止计数器溢出的程序,本人没有研究如果溢出的话PLC如何处理,稳妥起见,加上去了。
另外,采用上升沿脉冲调用函数,也比较简单,具体梯形图如下:
FC1 内部如下:
AN M 0.0
= M 0.0
纯粹采用梯形图编程本人也试过,由于采用了输出Q点的触点,总觉得不是那么纯粹,不是那么完美。具体梯形图如下:
据说这个问题的解决方案有三十几种,本人这里暂时想到了这3种,虽然简单,采用不同的方法来解决,也还是有助于对PLC的扫描和元件功能的更深一步的理解。