三菱PLC编程速学与快速应用
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.5 PLC的常用编程语言

PLC的编程语言种类比较多,对于不同生产厂家、不同系列的产品所采用的编程语言的表达方式、编程符号等也不尽相同,但其结构形式,编程思路基本一致,学会其中的一种便可很容易掌握不同品牌、不同类型的PLC编程语言。PLC的编程语言从总体上看可分为图形编程语言和字符编程语言两种类型。PLC提供的编程语言,常见的有梯形图(LAD)、指令表(STL)、顺序功能图(SFC)、功能模块图(FBD)等。

2.5.1 梯形图(LAD)

梯形图是使用最广泛的PLC图形编程语言。PLC的梯形图在形式上沿袭了传统的继电器电气控制图。它与继电器控制系统的电路很相似,是在原继电器控制系统的继电器梯形图基础上演变而来的一种图形语言。它将PLC内部的各种编程元件(如继电器的触点、线圈、定时器、计数器等)和各种具有特定功能的命令用专用图形符号、标号定义,并按逻辑要求及连接规律组合和排列,从而构成表示PLC输入、输出之间控制关系的图形。梯形图编程所用符号与继电器符号存在一定的对应关系。如图2-10所示为梯形图编程常用的符号与继电器符号对照表。

图2-11是三菱PLC梯形图,梯形图由触点、线圈、应用指令和母线等组成。梯形图两侧的竖直线称为母线,左侧的竖线称为左母线,右侧的竖线称为右母线,而右母线常常可以省略,不画出来。触点代表逻辑输入条件,如外部的开关、按钮和内部条件等。线圈通常代表逻辑输出结果,用来控制外部的指示灯、交流接触器和内部的输出标志位等。

图2-10 符号对照表

图2-11 三菱PLC梯形图

在分析梯形图中的逻辑关系时,为了借用继电器电路图的分析方法,可以想象左母线为“火线”,右母线为“零线”。如果左、右母线间的开关接点能够满足导通条件,“电流”便能从左母线流向右母线,则使右端的线圈得电,称为线圈“使能”;如果左、右母线间的开关接点不满足导通条件,则右端的线圈不能得电,称为线圈“禁能”。这里所说的“火线”、“零线”、“电流”均是一种概念上的、逻辑上的,应与相应的物理概念相区别。需要注意的是,在编制梯形图程序时右母线可以省略,“电流”也只能从左母线流向右母线。

梯形图编程语言的特点:与电气操作原理图相对应,具有直观性和对应性;与原有继电器控制相一致,电气设计人员易于掌握。

2.5.2 指令表(STL)

指令表编程语言也称为语句表编程语言,是与汇编语言类似的一种助记符编程语言。它利用一系列操作指令组成的语句将控制流程描述出来,并通过编程器送到PLC中。在无计算机的情况下,适合采用PLC手持编程器编制用户程序。同时,指令表编程语言与梯形图编程语言图一一对应,在PLC编程软件下可以相互转换。需要指出的是,不同厂家的PLC指令语句表使用的助记符并不相同,因此一个相同功能的梯形图,书写的语句表并不相同。

如图2-12所示为图2-11中的梯形图对应的指令表。

指令表编程语言的特点:采用助记符来表示操作功能,容易记忆,便于掌握;在手持编程器的键盘上采用助记符表示,便于操作,可在无计算机的场合进行编程设计;与梯形图有一一对应关系。一般来说,指令表适合熟悉PLC和有经验的程序员使用。

图2-12 指令表程序

2.5.3 顺序功能图(SFC)

顺序功能图是一种图形语言,特别适合编制顺序控制程序。顺序功能图提供了一种组织程序的图形方法,在其中可以用其他语言嵌套编程。步、转换条件和动作是顺序功能图中的三种主要元件(见图2-13)。顺序功能图用来描述开关量控制系统的功能,根据它可以很容易地画出顺序控制梯形图程序。编程时将顺序流程动作的过程分成步和转换条件,根据转移条件对控制系统的功能流程顺序进行分配,一步一步地按照顺序动作。每一步代表一个控制功能任务,用方框来表示。在方框内含有完成相应控制功能任务的梯形图。这种编程语言使程序结构清晰,易于阅读及维护,大大减轻编程的工作量,缩短编程和调试时间,用于系统的规模较大,程序关系较复杂的场合。顺序功能流程图编程语言的特点是以功能为主线,按照功能流程的顺序编制,条理清楚,便于理解;避免了梯形图或其他语言不能顺序动作的缺陷,同时也避免了用梯形图语言对顺序动作编程时,由于机械互锁造成用户程序结构复杂、难以理解的缺陷,使用户程序扫描时间也大大缩短。

图2-13 顺序功能图

2.5.4 功能模块图(FBD)

功能模块图是一种类似数字逻辑门电路的图形编程语言,它用数字电子线路的“与”、“或”、“非”等逻辑门电路、触发器、连线等图形与符号来进行编程。它可以用触发器、计数器、比较器等数字电子线路的符号表示其他图形编程语言无法表示的PLC基本指令与应用指令。

图2-14为功能模块图实例,方框的左侧为逻辑运算的输入变量,右侧为输出变量,输入、输出端的小圆圈表示“非”运算,方框被“导线”连接在一起,信号自左向右流动。

功能模块图的特点是程序直观、形象、设计方便,程序逻辑关系清晰、简洁,特别是对于开关量控制系统的逻辑运算控制,使用逻辑功能图编程比其他编程语言更方便,有数字电路基础的人很容易掌握。

图2-14 功能模块图

目前各种类型的PLC一般都能同时使用两种以上的语言,且大多数都能同时使用梯形图和指令表。虽然不同的厂家梯形图、指令表的使用方式有差异,但基本编程原理和方法是相同的。