1 / 11
文档名称:

IEC20251-3工控编程语言国际标准及其应用.pdf

格式:pdf   大小:476KB   页数:11页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

IEC20251-3工控编程语言国际标准及其应用.pdf

上传人:小屁孩 2025/3/15 文件大小:476 KB

下载得到文件列表

IEC20251-3工控编程语言国际标准及其应用.pdf

相关文档

文档介绍

文档介绍:该【IEC20251-3工控编程语言国际标准及其应用 】是由【小屁孩】上传分享,文档一共【11】页,该文档可以免费在线阅读,需要了解更多关于【IEC20251-3工控编程语言国际标准及其应用 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。 : .
乐民之乐者,民亦乐其乐;忧民之忧者,民亦忧其忧。——《孟子》
摘要 针对当前控制系统编程语言的流行趋势,从基本编程
元素和编程语言两个方面详细介绍了标准 IEC20251-3 的内
容。并且以浙大中自 SunyTech 工业控制应用软件平台为背景,
对标准具体内容的应用作了针对性的阐述,充分展现了
IEC20251-3 标准在控制系统软件编程中的作用。
关键词 IEC61131-3 ;软件模型;编程语言;工控编程
软件; PLC ;控制系统
1 引言

IEC(InternationalElectrotechnicalCommission)61131-3
是第一个为工业自动化控制系统的软件设计提供标准化编程
语言的国际标准。该标准将现代软件的概念和现代软件工程
的机制与传统的 PLC 编程语言成功地结合,又对各种工业控
制系统的编程语言、软件设计的概念和软件模型等进行了标
准化,适应了当今世界软件、工业控制系统的发展方向,是
一种非常先进的设计技术。
2 标准的主要内容 [1][2]
IEC61131-3 将标准分为两个部分:公共元素和编程语言。
IEC61131-3 标准的层次和结构如图 1 所示。图 1IEC61131-3
标准的结构图
1 : .
士不可以不弘毅,任重而道远。仁以为己任,不亦重乎?死而后已,不亦远乎? ——《论语》
公共元素部分规范了数据类型、变量的定义,给出了软
件模型,并引入配置 (Configuration) 、资源(Resources) 、
任务(Tasks) 和程序(Program) 的概念、程序组织单元
POU(PorgramOrganizitionUnit) 和顺序功能图
SFC(SequentialFunctionChart) 等。
IEC61131-3 标准共规定了 4 种编程语言,其中两种图形化语
言,两种文本化语言。图形化语言有梯形图
LD(LadderDiagram) ,功能块图 FBD(FunctionBlockDiagram) ;
文本化语言有指令表 IL(InstructionList) 和结构文本
ST(StructuredText) 。
基本编程概念和公共元素
1)软件模型
IEC61131-3 标准的软件模型如图 2 所示。图
2IEC61131-3 标准的软件模型图
该软件模型是一种分层结构,最上层是配置,它定义了
单元的结构,专指一个特定类型的控制系统, 等同于一个 PLC
应用系统,包括硬件装置、处理资源、 I/O 通道的存储地址和
系统能力。
在每一个配置中,有一个或多个“资源” ,“资源”不仅
为运行程序提供了一个支持系统,而且它反映了 PLC 的物理
结构,在程序和 PLC 物理 I/O 通道之间提供了一个接口。
2 : .
不飞则已,一飞冲天;不鸣则已,一鸣惊人。——《韩非子》
任务用于规定程序及其功能块的运行期特性。程序或功
能块通常保持完全的待用状态,由一个配置后的任务来周期
性地执行,或由一个特定的事件触发开始执行程序。
程序组织单元是标准 PLC 系统用户程序最小的、独立的
软件单元。包括 3 种统一的基本类型,分别为功能
FUN(Function) 、功能块 FB(FunctionBlock) 和程序
PROG(Program) 。
其中,功能 FUN 类型是一些在程序执行过程中的软件元
件,这些软件元件对一系列特定的输入值会产生相应的输出
结果,如算术功能 COS() 、SIN() 等。IEC61131-3 标准预定义
了一系列经常使用的标准功能集,其中包括 50 种功能和 12
种功能块,它们的名称保留为关键字 (详细的标准功能和功能
块的描述可参阅 IEC61131-3 标准)。
功能块 FB 类型是该标准中的核心元素,它体现了一种全
新的面向对象程序设计理念。功能块类型对应于经典面向对
象语言中的类的概念,功能块的实例 (Instance) 对应于对象
的概念。功能块类型具有天然的封装特性,能够把特定的算
法封装在某个特定的功能块中,它把具体的操作和操作数据
相分离,也把系统的总体算法组态和单个算法的研制开发过
程分开,以增加程序的可重用性和移植性。
程序 PROG 类型是任务的直接构成基础, PROG 类型的程序组织
3 : .
子曰:“知者不惑,仁者不忧,勇者不惧。” ——《论语》
单元可构成系统的主程序,典型的 IEC 程序由主程序和许多
互连的功能和功能块组成,一个程序中的不同部分的执行通
过任务来控制。另外,当用户需要自己编写自定义算法块并
对其进行重复使用时,就可以利用 PROG 类型的程序组织单元。
2)变量和数据类型
标准中定义了 5 种不同的变量类型:全局变量、局部变
量、输入变量、输出变量、输入输出变量。其中,局部变量
只能在程序内部的一部分进行寻址,全局变量能被所有的程
序组织单元寻址,输入、输出和输入 /输出变量是与程序、功
能和功能块密切相关的,它们能在被分配的程序组织单元内
通过读或写来改变,而要在程序组织单元外部改变时必须进
行定义,且在使用变量时要加以说明。标准为输入、输出和
输入/输出变量提供了两种定义形式,直接表达的变量形式和
符号变量形式。直接表达变量的定义给出了统一的固定的格
式,符号变量的存储位置由预先设置的分配表和符号表决定。
定义变量的同时,还定义了变量的属性和限定符,通过它们
使变量具有丰富的特性。
该标准统一定义了编程中常用的数据类型。一类称作基
本数据类型,是一种预定义的、标准化的数据类型。还有一
类称作导出数据类型,程序员可以创建“自定义”数据类型,
它一般包括枚举类型、数组类型、结构类型等,为面向对象
4 : .
操千曲尔后晓声,观千剑尔后识器。——刘勰
的编程模式提供支持。
另外,标准还规定了编程中常用的标识符、关键字以及注释
等一些通用语言单元,以提供用户程序的通用性和移植性。
3)软件的通讯模式
IEC61131 标准提供了以下的通讯模式:内部变量通讯模
式、全局变量通讯模式、调用参数通讯模式、使用存取路径
通讯模式以及通讯块通讯模式等。
前三种模式用于一个配置内的通信,通过内部变量和全
局变量的建立可以在一个配置内的程序、功能块和功能之间
相互连接形成一个网络,数据信息可以通过这个内部的网络
进行通讯。
存取路径的通讯模式用于各个配置之间的数据交换,也
就是要跨越一个 PLC 系统的范围,它可用于配置和程序层。
存取路径可以认为是全局变量的一个扩展,其符号名由固定
格式的语言结构定义,这样通过定义的存取路径的符号名,
该配置的变量可为其它配置所访问。
通讯块是用于从发送方向接收方传送数据包的专用功能
块,对于标准通讯块,在 IEC61131-5 标准中专门地作出了定
义,这里就不详细介绍。
IEC61131-3 只给出了一个单一的集中 PLC 系统的配置机制,
5 : .
百川东到海,何时复西归?少壮不努力,老大徒伤悲。——汉乐府
为了适应分布式结构的软件要求, PLCOpen 组织对 IEC61131-3
进行了适当的扩展,制定了 IEC61499 《工业过程测量与控制
系统用功能块》标准。按照 IEC61499 的模型, PLC 可表示为
其内有多个资源的装置,采用了互联的事件驱动功能块,所
给出的应用程序模型,由若干可能分散在多个设备中的功能
块互联而成,功能块中的控制算法还用 IEC61131-3 的语言来
编程的,但在系统配置时采取了封装的、可反复使用的和分
散的机制。 IEC61499 系统模型如图 3 所示。图 3IEC61499 系
统模型图
该模型包括与被控过程 (或机械 )的接口、与通信网络的
接口,以及隐含的分布式应用程序。 IEC61499 中融入了
面向对象的概念,以消息总线为纽带,协调各功能块的运行。
编程语言
IEC61131-3 规定了两类编程语言:文本化编程语言和图
形化编程语言。在标准的文本中没有把顺序功能图单独列入
编程语言,而是将它在公用元素中予以规范。但不论在文本
化语言中,还是在图形化语言中,都可以运用 SFC 的概念、
句法和语法,所以有些控制软件有时也称自己实现了标准的
五种控制语言 [3] 。
梯形图语言 LD 使用网络的概念,一个 LD 网络的边界是
在左侧和右侧所谓的电力轨线。左侧的电力轨线,名义上是
6 : .
天将降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为。——《孟子》
为“功率流”从左向右沿着水平梯级通过各个触点、功能、
功能块、线圈等提供能量, “功率流”的终点是右侧的电力轨
线。期间的每一个触点代表了一个布尔变量的状态,每一个
线圈代表了一个实际设备的状态,还可以有功能或功能块,
根据这些元素的逻辑状态来决定是否允许能量流通过,便构
成了所需要的逻辑程序。
功能块图语言 FBD 用来描述功能、功能块和程序的行为
特征,还可以在顺序功能流程图中描述步、动作和转变的行
为特征。功能块用矩形块来表示,每一功能块的左侧有不少
于一个的输入端,在右侧有不少于一个的输出端,线条代表
的是信号的流向,所传递的信息可能是一个布尔数值、整型
数值、实数或者是一个字符串,在程序中,它可看作两个过
程元素之间的信息流。
指令表语言 IL 是一种最接近于机器码的用户端语言,与
汇编语言相比较,它吸收和借鉴了 PLC 厂商的指令表语言,
并在此基础上形成了一种标准语言。可用来描述功能,功能
块和程