首页 理论教育 S7-1200/1500编程语言详解

S7-1200/1500编程语言详解

时间:2023-06-30 理论教育 版权反馈
【摘要】:IEC 61131-3是世界上第一个,也是至今为止唯一的工业控制系统的编程语言标准。图2-1 PLC的编程语言2)结构文本,西门子PLC称为结构化控制语言,简称为S7-SCL。图2-4 语句表7.编程语言的选择与切换S7-1200只能使用梯形图、函数块图和SCL,S7-1500可以使用上述5种编程语言。生成S7-1500的函数块时还可以选择GRAPH。编程语言的切换是有限制的,S7-1200/1500的LAD和FBD可以互换,但是不能切换为STL,SCL和GRAPH不能切换为其他编程语言。

S7-1200/1500编程语言详解

1.PLC编程语言的国际标准

IEC 61131是IEC(国际电工委员会)制定的PLC标准,其中的第三部分IEC 61131-3是PLC的编程语言标准。IEC 61131-3是世界上第一个,也是至今为止唯一的工业控制系统的编程语言标准。

目前已有越来越多的PLC生产厂家提供符合IEC 61131-3标准的产品,IEC 61131-3已经成为各种工控产品事实上的软件标准。

IEC 61131-3详细地说明了句法、语义和下述5种编程语言(见图2-1):

1)指令表(Instruction List,IL),西门子PLC称为语句表,简称为STL。

978-7-111-58719-4-Chapter02-1.jpg

图2-1 PLC的编程语言

2)结构文本(Structured Text),西门子PLC称为结构化控制语言,简称为S7-SCL。

3)梯形图(Ladder Diagram,LD),西门子PLC简称为LAD。

4)函数块图(Function Block Diagram),简称为FBD。

5)顺序功能图(Sequential Function Chart,SFC),对应于西门子的S7-Graph。

2.顺序功能图

顺序功能图(SFC)是一种位于其他编程语言之上的图形语言,用来编制顺序控制程序。5.4节将详细地介绍S7-Graph。

3.梯形图

梯形图(LAD)是使用得最多的PLC图形编程语言。梯形图与继电器电路图很相似,具有直观易懂的优点,很容易被工厂熟悉继电器控制的电气人员掌握,特别适合于数字量逻辑控制。有时把梯形图称为电路或程序。

梯形图由触点、线圈和用方框表示的指令框组成。触点代表逻辑输入条件,例如外部的开关、按钮和内部条件等。线圈通常代表逻辑运算的结果,常用来控制外部的负载和内部的标志位等。指令框用来表示定时器、计数器或者数学运算等指令。

触点和线圈等组成的电路称为程序段,英语名称为Network(网络),STEP 7自动地为程序段编号。可以在程序段编号的右边加上程序段的标题,在程序段编号的下面为程序段加上注释(见图2-2)。单击编辑器工具栏上的978-7-111-58719-4-Chapter02-2.jpg按钮,可以显示或关闭程序段的注释。

在分析梯形图的逻辑关系时,为了借用继电器电路图的分析方法,可以想象在梯形图的左右两侧垂直“电源线”之间有一个左正右负的直流电源电压,当图2-2中I0.0与I0.1的触点同时接通,或Q0.0与I0.1的触点同时接通时,有一个假想的“能流”(Power Flow)流过Q0.0的线圈。利用能流这一概念,可以借用继电器电路的术语和分析方法,帮助我们更好地理解和分析梯形图。能流只能从左往右流动。

程序段内的逻辑运算按从左往右的方向执行,与能流的方向一致。如果没有跳转指令,程序段之间按从上到下的顺序执行,执行完所有的程序段后,下一次扫描循环返回最上面的程序段1,重新开始执行。(www.xing528.com)

4.函数块图

函数块图(FBD)使用类似于数字电路的图形逻辑符号来表示控制逻辑,有数字电路基础的人很容易掌握。国内很少有人使用函数块图语言。

图2-3是图2-2中的梯形图对应的函数块图,图2-3同时显示绝对地址和符号地址。

978-7-111-58719-4-Chapter02-3.jpg

图2-2 梯形图

978-7-111-58719-4-Chapter02-4.jpg

图2-3 函数块图

在函数块图中,用类似于与门(带有符号“&”)、或门(带有符号“>=1”)的方框来表示逻辑运算关系,方框的左边为逻辑运算的输入变量,右边为输出变量,输入、输出端的小圆圈表示“非”运算,方框被“导线”连接在一起信号自左向右流动。指令框用来表示一些复杂的功能,例如数学运算等。

5.SCL

SCL(Structured Control Language,结构化控制语言)是一种基于Pascal的高级编程语言。SCL除了包含PLC的典型元素(例如输入、输出、定时器或存储器位)外,还包含高级编程语言中的表达式、赋值运算和运算符。SCL提供了简便的指令进行程序控制。例如创建程序分支、循环或跳转。SCL尤其适用于下列应用领域:数据管理、过程优化、配方管理和数学计算、统计任务。5.5节将详细地介绍SCL语言。

6.语句表

语句表(STL,见图2-4)是一种类似于微机汇编语言的文本语言,多条语句组成一个程序段。语句表比较适合经验丰富的程序员使用。

978-7-111-58719-4-Chapter02-5.jpg

图2-4 语句表

7.编程语言的选择与切换

S7-1200只能使用梯形图、函数块图和SCL,S7-1500可以使用上述5种编程语言。在“添加新块”对话框中,S7-1200的代码块可以选择LAD、FBD和SCL,S7-1500的代码块可以选择LAD、FBD、STL和SCL。生成S7-1500的函数块(FB)时还可以选择GRAPH。

右键单击项目树中PLC的“程序块”文件夹中的某个代码块,选中快捷菜单中的“切换编程语言”,单击需要切换的编程语言。也可以在程序块的属性对话框的“常规”条目中切换。编程语言的切换是有限制的,S7-1200/1500的LAD和FBD可以互换,但是不能切换为STL,SCL和GRAPH不能切换为其他编程语言。

右键单击S7-1500的LAD或FBD程序块中的某个程序段,执行快捷菜单命令,可以在该程序段的下面插入一个STL程序段。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈