PMC程序中所使用的指令格式与要求称为PMC编程语言。通用PLC由于适用范围广、控制要求多变,故一般可使用梯形图、指令表、逻辑功能图、顺序功能图、结构化文本等多种语言编程。但是,机床控制用的PMC以开关量逻辑处理为主,故一般以梯形图、指令表、逻辑功能块图为常用。PMC常用的编程语言简介如下。
1.梯形图编程
梯形图(Ladder diagram,简称LAD)是一种沿用了继电器的触点、线圈、连线等图形符号的图形编程语言,其“与”、“或”逻辑运算可用触点串、并联表示;“非”运算用常闭触点表示;逻辑运算结果用输出线圈表示。梯形图程序的形式与继电器控制电路十分相似,程序直观、形象,且不同厂家的PMC程序形式类似,使用者阅读与理解容易。
梯形图程序还可进行图8.1-5所示的动态显示,图为输入X0.1=1、X0.2=0、X0.3=0时的执行情况,加粗的连线代表线路已接通,图形简单明了,程序检查与维修方便。
图8.1-5 梯形图动态显示
动态梯形图显示中的常开、常闭触点及内部继电器、输出线圈的常用图形显示一般为表8.1-1中的样子。
表8.1-1 梯形图显示符号与意义
2.指令表编程
指令表(Statement List或Instruction List,简称LIST或STL)是一种使用助记符、类似于计算机的汇编语言的编程语言。在各种PLC编程语言中,指令表编程是应用最早、最基本的编程语言,它能够表示梯形图及其他编程语言无法表示的指令。指令表程序中的指令由指令代码和操作数两部分组成,图8.1-5所示的梯形图程序,在FS-0iD中的指令表程序如下:
RD X0.1
AND.NOT X0.2
WRT R0.1
RD X0.3
OR R0.2
AND R0.1
WRT R0.2
RD R0.1
AND.NOTR0.2(www.xing528.com)
WRT Y0.1
RD R0.1
AND R0.2
WRT Y0.2
程序中的RD、AND、AND.NOT、OR、WRT为指令代码,它们分别代表读入、与、与非、或、输出等逻辑操作;而X0.1、X0.2、X0.3、R0.1、R0.2、Y0.1、Y0.2等称为操作数,它们代表逻辑运算的对象。指令代码和操作数的表示方式在不同PMC上有所不同。
3.逻辑功能图
逻辑功能图(Function Block Diagram,FBD)是一种沿用了数字电子线路的逻辑门电路、触发器、连线等图形与符号的图形编程语言,它是DIN40700(德)标准规定的编程语言,但大部分PMC目前无此功能。
逻辑功能图编程指令类似数字电子线路,它可用与、或、非门及RS触发器、比较器、计数器等逻辑电路代表编程指令,程序直观、形象,并可表示梯形图编程语言无法表示的逻辑指令和应用指令。
逻辑功能图编程的逻辑关系清晰、简洁,程序的显示篇幅小,如对于多触点的串联,其编程可不受显示器的限制等。逻辑功能图的动态显示和梯形图一样具有形象、直观的优点。
当采用功能图编程时,图8.1-5所示的梯形图程序如图8.1-6所示。
4.顺序功能图编程
图8.1-6 逻辑功能图程序
顺序功能图(Sequential Function Chart,SFC)是一种按程序执行流程编程的图形编程语言,符合IEC标准规定,近年来在通用PLC中已开始推广。顺序功能图的基本设计思想类似于子程序调用,设计者可按程序执行流程,将机床动作划分为若干个工作阶段,并称为“工步”或“步”。编程时可通过状态元件,对“步”赋予标记和控制条件,选择需要执行的“步”。
SFC编程是一种基于机械动作流程的编程方法,目前在各公司的产品有不同的实现方式。例如,为了保持传统的梯形图风格,日本的三菱等公司采用了图8.1-7所示的、利用步进指令(STL)编程的方法,并称之为步进梯形图。
顺序功能图编程的优点是设计者只需要根据实际动作要求,确定每一“步”的动作条件和需要控制的输出,即可通过分支流程对程序步的组织与管理完成程序设计,因此,无须像梯形图编程那样考虑互锁条件,其程序设计简单,对设计人员的要求较低。
图8.1-7 顺序功能图程序
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。