资质荣誉
当前位置:首页 > 资质荣誉
PLC自动程序之编程方法
来源:乐鱼真人      发布时间:2023-08-28 05:38:41      


PLC自动程序之编程方法


  这种方法是最原始最初级的写法,也是最简单的一种写法,比如第一步置位M0,M0接通后控制某个结果,结果实现后复位M0,再置位M1,依次进行l流程控制。这种写法通用所有的PLC。

  使用整型变量作为步序编号,易于理解,便于维护。步序增减,跳转等操作便捷,简单,易懂。复位操作时,仅需将变量值改为0。编程中需注意,当连续步序的条件同时为真时,步序号在一个PLC周期内连续增加,直至最后一条未导通步序指令,而由步序号触发的其它程序则未被执行。调试时容易漏掉此种情况。

  这种方法跟我们的设备工艺流程图非常相似,也是最直观的一种程序,第一步干什么,什么样的条件又开始干第二步,看上去很清楚。虽然程序表面看上去很清楚明了,但编写项目程序实际的操作的流程并不简单,要熟悉这种写法需要时间过程,而且这种方法并不通用所有的PLC(如西门子S7-1200不支持,仅S7-1500支持),还有就是对PLC性能要求高,也占用很大的工作存储器。

  这种方法是利用移位指令的移位原理实现步序的控制,比如欧姆龙的SFT指令,三菱的ROL、ROR等,西门子的移位指令也差不多。这种难点在于搞清移位指令的工作原理即可,也是通用所有PLC的编程。

  解码指令DECO:即将整数转换为Dword中对应的位置1,且当步序产生一些变化时,PLC必定会重新执行一个扫描周期,不会产生连续跳多个步续的情况。避免了程序中步序触发的指令没有被执行的情况。跳转和复位操作编写简单。如西门子S7-1200PLC可支持DWORD解码(32位),S7-1500可支持LWORD解码(64位)。

  这种方法是数据传送指令与比较指令相结合实现程序流程步序转换的,个人觉得这种方法是最容易理解的,操作上也是最简单,建议初学者尝试使用,当然这种方式也是通用所有PLC的。设置两个变量字state word,work word。state word中的位作为步序标志,work word作为跳转目标步序标志。当前步序state word中步序位对应的条件满足时,触发work word中下一步对应的位。而后,在PLC顺序扫描至传送指令时,将work word的值赋值给state word,完成步序跳转。优点是没有置位和复位操作,同一时刻只有唯一的位置1,跳步时只用将对应的work word 中的位置1即可。复位时,将state word与work word清零,程序会自动将state word中第一位点亮。当步序大于16时,可改为DWORD或增加word的数量来增加步序。

  越来越多的小型PLC都支持SCL语言,SCL是一种类似于PASCAL的高级编程语言,常用的FOR、IF、WHILE、CASE等程控语句组合起来能编写出很强大的算法和逻辑,用此写法的人也慢慢变得多。用SCL设计自动程序主要是结合CASE和IF语句,将Step作为程序号,如果存在比较长的分支或并行动作时需要有借助多个Step程序步,这里不做深究。

  利驰电控数字化“三件套”亮相“2023中国新能源与智能装备产业高水平发展大会”

  中科亿海微:“FPGA研发及创新应用实验室”揭牌仪式暨技术交流会在济南举行