IEC 61131-3与您的编程系统
[Post=1200]您的编程系统是一个用于符合IEC设计的PLC和传统PLC的标准编程系统。它基于IEC 61131-3标准,并且包括了IEC特征的全部范围。
编程系统中的工程
这个编程系统基于使用了MS-Windows图形界面的窗口技术。因此,IEC 61131-3原理大部分已经用符号和图标或对话框图形化地实现了,对话框用于其元素属性可被设置的对象。
一个IEC 61131-3工程包括了一个自动化系统的所有必要元素。它由库、数据类型、POU以及‘物理硬件’子树中所表示的配置元素(如资源、任务和程序)的集合而组成。一个工程在工程树中表示。
编程系统中的库
库是被声明为库的工程。您可以在您正编辑着的工程中,再利用库中的程序、功能块、函数和用户自定义的数据类型。
固件库是那些包含了由PLC制造商所提供的POU的库。固件库的文件扩展名为*.fwl。
用户库是那些您以前已创建的、并想重新使用其中的POU的工程。用户库的文件扩展名为*.mwt。如果工程是用1.3.6.14版本之前的较早编程系统创建的,则工程文件名具有*.pwt的扩展名。较早创建的工程不能被声明为库。
在工程树中,库拥有自己的子树。您既可以显示整个工程树,也可以通过在工程树的底部,点击‘库’标签,来只显示‘库’子树。
编程系统中的POU
可以在工程树中编辑程序、功能块和函数。
一个POU由几个工作单组成。这些工作单的集合构成了POU。这些工作单是:
一个描述工作单,包括了由PLC应用程序员输入的文本。这些描述了POU或配置元素的用户注解用于文档目的。这些工作单是可选的。
注意: 如果您正在调用关于用户自定义函数或FB的帮助,则可以将描述工作单用作上下文相关帮助(例如当使用编辑向导时)。
一个变量表格工作单,包含了对局部变量的声明。
一个或多个代码本体工作单,包含了由可用的编程语言中的一种来编辑的实际代码。
在使用了SFC编程语言的POU情况下,可以编辑更多一些的工作单:动作和转换工作单。
如果打开了一个代码工作单,则您很容易通过选择‘编辑’子菜单的‘打开变量工作单’菜单项,或通过点击工具栏上的‘变量工作单’图标,来打开相关的变量表格工作单。
编程系统中的数据类型
编程系统中的数据类型基本上与IEC 61131-3中所描述的数据类型相同。用户自定义数据类型可以在数据类型工作单内编辑,该工作单包含于工程树的‘数据类型’子树中。
编程系统中的配置元素
在工程树中,配置元素被图形化地表示。
编程系统在‘物理硬件’子树中反映配置元素的结构,该子树会随PLC的不同而不同。
通常可以使用一个或多个配置。在每个配置中,可以声明一个或多个资源。每个资源中,可以使用多个任务及所关联的程序。
资源可以被比作能插入到导轨内的CPU。在资源中可以声明仅在该资源内有效的全局变量。在一个资源中,可以执行一个或多个任务。
任务决定了所关联程序的时间调度。这意味着程序必须被关联到任务上。任务的属性决定了时间的调度。
标识符
标识符由字母、数字和下划线组成。标识符必须以字母或下划线开始。可以混合大小写。
不允许有多个下划线或者空格。
对于不同标识符,允许有不同的长度,如下表所示:
标识符用于... 字符数量
POU、描述工作单、工程、配置元素、位图、页面布局、归档文件 24个字符
变量和代码本体工作单 24个字符
步、动作和转换 24个字符
变量、实例名称 30个字符
物理硬件’子树中的程序和功能块实例
在‘物理硬件’子树中实例化程序的方式,例如把程序与任务关联起来,已被扩展。也可以实例化程序和功能块,并为每个实例编辑一个单独的全局变量工作单。通过这种方法,每个程序或功能块实例有它自己的、能被直接访问的数据实例。
下图显示了带有相应全局变量工作单的程序和功能块实例的一个例子:
程序和功能块实例很有用,例如,当您有两个被同一个PLC控制、但连接到不同I/O的相同钻孔机的情况下。您可以象往常一样,在‘逻辑POU’子树内编辑PLC程序,并且两次实例化程序以及/或者功能块。每个实例用它自己的全局变量声明的数据工作。
点击此处,来查看一个关于该POU程序和两个实例的变量声明的例子。
在‘物理硬件’子树中,只能在程序内实例化功能块。不能在功能块内部实例化功能块。
用于‘物理硬件’子树内的实例名称必须要相应于‘逻辑POU’子树中所用的实例名称。
用于程序实例的变量声明关键字
为了声明程序实例或功能块实例,必须使用另外的变量声明关键字。这些额外的关键字,可以在声明一个实例时,在变量表格工作单的‘用途’栏中选择。它们在下面的表中被解释:
关键字 描述
VAR_EXTERNAL_FB 用于在被插入到‘物理硬件’子树中的实例化了的功能块内所使用的全局变量
它的值由位于‘物理硬件’子树中的功能块实例的全局变量工作单内的VAR_GLOBAL_FB声明来提供。
可以在此POU内部修改其值
可以仅用于符号变量的声明
VAR_EXTERNAL_PG 用于在被插入到‘物理硬件’子树中的实例化了的程序或功能块内所使用的全局变量
它的值由位于‘物理硬件’子树中的程序实例的全局变量工作单内的VAR_GLOBAL_PG声明来提供。
可以在此POU内部修改其值
可以仅用于符号变量的声明
VAR_GLOBAL_FB 用于被相应的功能块实例使用的全局变量
可用于直接表示、定位和符号变量的声明
可以与‘RETAIN’关键字一起,用于声明保持型变量
VAR_GLOBAL_PG 用于被相应的程序实例使用的全局变量
可用于直接表示、定位和符号变量的声明
可以与‘RETAIN’关键字一起,用于声明保持型变量
[/Post]
.