1指令的基本功能分析
初学者在学习S7-200系列PLC指令时不必过分强调掌握了多少指令。只需要掌握一些基本的指令并能编辑出50行以上的有效程序解决问题即可。随后在程序规模编辑扩大的基础上,继续提升指令的掌握量即可。例如,(1)按照软件快捷键学习时我只是掌握F4、F6和F9功能而已。(2)按照实际功能可分为条件运算指令和输出控制指令及程序处理指令。所谓条件运算指令,必须了解的是取正位、反位、比较指令,其中比较指令往往涉及到字、字节处理指令。输出指令中置位和复位指令的优先级别都高于普通线圈指令。(3)按照控制对象规模可以分为(单)位操作指令和多位操作指令。S7-200系列PLC对字和字节的划分自有一套法则,认定字节高低位是以位书的高低为正序,而认定字节在字和字节或字在双字中的高低是以字节号为反序的。如MB31为M的最大字节。则MW最大为MW30,MD为MD28,其加减乘除运算后,高低位依次是MB28、MB29、MB30和MB31。
2编辑程序的逻辑思维设计
很多有经验的编程者实际操作时,程序也不是信手沾来的。PLC虽然很多人按照国际管理已经称为PC了,但是其逻辑分析功能仍然是学习的主导。什么是逻辑?逻辑就是一种不能有错误的逐步推断。以下面两个实例分析程序设计要求和逻辑建立。很简单,程序是一种逻辑,算法。因此,逻辑需要也可以纸面建立,如下工步序号所示。
3程序的分块分段处理
所谓程序的分块、分段编辑和执行处理,就是我们在编辑程序的时候有意将程序分成一块一块的单独编辑后汇总;校验运行程序的时候我们也分段观察不同输入下的输出。S7-200系列PLC主要划分程序的方法是:(1)主子程序:适应比较大段的分块程序;(2)顺控程序:适应条件转换多,但是每块不大的程序设计;(3)跳转、FOR、NEXT等条件指令。本文仅论述顺控程序的一些潜在要求。所谓顺控程序,就是通过SCR和S位控制的块程序的开头,SCRE结尾,SCRT跳出的不宜太长的指令块。但是,S7-200系列PLC在使用时有一些潜在的要求需要使用者注意。(1)程序划块是以S0.0开头的,一旦进入某一块程序时,块外的程序仍在一个扫描周期内循环执行。(2)进入块后,跳出的唯一方式是将所有的S位置零。如果跳到一个并不存在的块内。如S31.7是空块,则除了系统重启没有返回PLC程序的其他方法了。(3)此外S指令顺控程序最需要注意的就是对于输出的控制。置位和复位指令是可以带出块的。而且复位指令的优先级高于普通的线圈输出。那么,在一个块内如果PLC程序使用了复位指令,下一个块内重新使该位上电就不能使用普通的线圈输出指令,而必须是置位指令。
4结语
编辑程序不是一步到位的工作,但是整体教授时还是有若干经验,主要来讲就是基础的把握和逻辑的建立,也即首先要分清输入、输出的关系:理清分支、逻辑顺序、考虑隐含条件、掌握输出的矛盾性。隐含条件分为两类:(1)程序设计要求没有直接提到但是设计者思维必须想到的常理性要求;(2)各系列PLC中自己程序的潜在要求。
作者:张艳梅