专题1.3 PLC的编程语言与编程方法
1.3.1 PLC的编程语言
PLC是按照程序进行工作的。程序就是用一定的程序语言描述出来的控制任务。1994年5月国际电工委员会(IEC)在PLC标准中推荐的常用程序语言有梯形图(Ladder Diagram, LD)、指令表(Instruction List, IL)、顺序功能图(Sequential Function Chart, SFC)和功能块图(Function Block Diagram, FBD)等。
1.梯形图
梯形图(Ladder Diagram)基本上沿用电气控制图的形式,采用的符号也大致相同。如图1-4a所示,梯形图两侧的平行竖线为母线,其间是由许多触点和编程线圈组成的逻辑行。在应用梯形图进行编程时,只要把梯形图逻辑行顺序输入到计算机中,计算机就可自动将梯形图转换成PLC能接受的机器语言,存入并执行。
2.指令表
指令表(Instruction List)类似于计算机汇编语言的形式,用指令的助记符来进行编程。通过编程器按照指令顺序将指令表逐条写入PLC后可直接运行。指令表的指令助记符比较直观易懂,编程也很简单,便于工程人员掌握,因此得到了广泛的应用。但要注意的是,不同厂家制造的PLC,所使用的指令助记符有所不同,即对同一梯形图来说,用指令助记符写成的语句表也不相同。图1-4a梯形图对应的指令表如图1-4b所示。
3.顺序功能图
顺序功能图(Sequential Function Chart)应用于顺序控制类的程序设计,包括步、动作、转换条件、有向连线和转换5个基本要素。顺序功能图的编程方法是将复杂的控制过程分成多个工作步骤(简称为步),每个步又对应着工艺动作,把这些步按照一定的顺序要求进行排列组合,就构成整体的控制程序。顺序功能图如图1-5所示。
图1-4 梯形图和对应的指令表
a)梯形图 b)指令表
图1-5 顺序功能图
4.功能块图
功能块图(Function Block Diagram)是一种类似于数字逻辑电路的编程语言,熟悉数字电路的技术人员比较容易掌握。该编程语言用类似“与门”、“或门”的方框来表示逻辑运算关系,方框的左侧为逻辑运算的输入变量,右侧为输出变量,输入端、输出端的小圆圈表示“非”运算,信号自左向右流动。功能块图如图1-6所示。
图1-6 功能块图
1.3.2 PLC的编程方法
在设计PLC程序时,可以根据自己的实际情况,采用以下不同的方法。
1.经验法
经验法是运用自己的经验或者借鉴他人的已经成功的实例进行设计。可以对已有相近或者类似的实例按照控制系统的要求进行修改,直到满足控制系统的要求为止。在工作中应不断积累经验和收集资料,从而丰富自己的设计经验。
2.解析法
PLC的逻辑控制实际上就是逻辑问题的综合。可以根据组合逻辑或者时序逻辑的理论,并运用相应的解析方法,对其进行逻辑关系求解,按照求解的结果编制梯形图或直接编写指令。解析法比较严谨,可以避免编程的盲目性。
3.图解法
图解法是依照画图的方法进行PLC程序设计。常见的方法有梯形图法、时序图(波形图)法和流程图法。
梯形图法是最基本的方法,无论是经验法还是解析法,在把控制系统的要求等价为梯形图时都要用到梯形图法。
时序图(波形图)法适用于时间控制电路,先把对应信号的波形画出来,再依照时间顺序用逻辑关系去组合,就可以把控制程序设计出来。
流程图法是用框图表示PLC程序的执行过程、输入条件与输出之间的关系。在使用步进指令编程的情况下,采用该方法设计很方便。
图解法和解析法不是彼此独立的。解析法要画图,图解法也要列解析式,只是两种方法的侧重点不一样。
4.技巧法
技巧法是在经验法和解析法的基础上运用技巧进行编程,以提高编程质量。还可以使用流程图做工具,将巧妙的设计形式化,进而编制所需要的程序。该方法是多种编程方法的综合应用。
5.计算机辅助设计
计算机辅助设计是利用PLC通过上位连接单元与计算机实现连接,运用计算机进行编程。该方法需要有相应的编程软件。