标志
关键词: PROPERTY
属性是 IEC 61131-3 标准的扩展,也是面向对象编程的工具。
属性可用于数据封装,因为它们允许从外部访问数据,同时还起到过滤器的作用。为此,属性提供了访问方法Get
和Set
,允许读写访问属性下面实例的数据。
你可以在程序、功能块或全局变量列表下面添加带有访问方法的属性。单击“项目 添加对象 属性” 打开“添加属性” 对话框。
您可以在接口下面添加接口属性。
如果复制插入 POU 下面的属性并将其添加到接口下面,或者将属性移动到接口下面,包含的实现将自动移除。
另见
添加属性 "对话框
功能 :关闭对话框时,在所选 POU 下方创建一个新属性。
请致电 :菜单栏:“项目 添加对象 属性” ;上下文菜单
要求 :在“POU” 视图或“Device” 视图中选择程序 ((PRG
)、功能块 (FUNCTION_BLOCK
) 或全局变量列表 (GVL
)。
“名称” |
财产名称(标识符 例如 |
“返回类型” |
返回值的默认类型或结构类型 例如 |
“执行语言” |
示例:“结构化文本 (ST)” |
“访问指定器” |
控制数据访问 |
“公共” 或未指定 |
访问不受限制。 |
“PRIVATE” |
访问权限仅限于程序、功能块或 GVL。 在 POU 或设备视图中,对象被标记为 |
“PROTECTED” |
访问权限仅限于程序、功能块或 GVL 及其衍生程序。 在 POU 或设备视图中,对象被标记为 |
“内部” |
访问仅限于命名空间(库)。 在 POU 或设备视图中,对象被标记为 |
“摘要” |
|
“添加” |
添加一个新属性以降低所选对象的属性等级,并在下面添加访问方法 请注意:当你选择一个属性时,也可以通过点击“Add Object” 来显式添加先前移除的访问器。 |
编辑器 "属性
您可以在编辑器中对数据访问进行编程。代码可以包含额外的本地变量。但是,它不得包含任何额外的输入变量或(与函数或方法相对的)输出变量。
示例

功能块 FB_A
FUNCTION_BLOCK FB_A VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR iA : INT; END_VAR iA := iA + 1;
物业 prop_iA
PROPERTY PUBLIC prop_iA : INT
访问方法 FB_A.prop_iA.Get
prop_iA := iA;
访问方法 FB_A.prop_iA.Set
iA := prop_iA;
PROGRAM PLC_PRG VAR fbA : FB_A; iVar: INT; END_VAR fbA(); IF fbA.prop_iA > 500 THEN fbA.prop_iA := 0; END_IF iVar := fbA.prop_iA;
Get
和Set
访问器
Set
访问器的调用会写入属性。然后,它的使用方法与输入参数相同。调用 Get 访问器时,属性将被读取。其使用方法与输出参数相同。在每种情况下,都通过访问修饰符(限定符)来限制访问。因此,这些对象都能得到相应的识别。
当属性被访问为只读或只写时,可以删除不需要的访问器。
你可以通过选择一个属性并点击“Add Object” 来显式添加访问器。此时会打开一个对话框:“添加获取访问器” 或“添加设置访问器” 。您可以在这里设置执行语言和访问权限。
“执行语言” |
示例:“结构化文本 (ST)” |
“访问指定器” |
声明部分的限定词 |
|
访问不受限制。 |
|
访问权限仅限于程序、功能块或 GVL。 在 POU 或设备视图中,对象被标记为 |
|
对属性的访问仅限于程序、功能块或 GVL 及其派生。声明中包含关键字。 在 POU 或设备视图中,对象被标记为 |
|
对该方法的访问仅限于命名空间(库)。 在 POU 或设备视图中,对象被标记为 |
“添加” |
在所选属性下方添加访问器方法 |
在线模式下的属性监控
为在线模式下的属性监控提供了以下pragma。将它们插入属性定义的顶部位置:
-
{attribute 'monitoring' := 'variable'}
每次访问该属性时,CODESYS 都会将实际值保存到一个变量中,并显示该变量的值。如果代码中不再访问该属性,该值就会过时。
-
{attribute 'monitoring' := 'call'}
每次 显示数值时,CODESYS 都会调用
Get
访问器的代码。如果该代码包含副作用,则监控会执行副作用。
您可以通过以下功能对房产进行监控。
-
在线监测
要求:在“Options” 对话框的“Text Editor” 类别中选择“Enable inline monitoring” 选项。
-
监控名单
另见
生成继承 POU 时的输入支持
在进行面向对象编程并使用 POU 的继承(关键字EXTENDS
)时,可以获得如下支持:
在从基本 POU 派生的 POU 下面插入动作、属性、方法或转换时,会打开“Add ...” 对话框。然后,姓名输入框扩展为一个列表框。列表框包含从基本 POU 中可用的操作、属性、方法或转换中选择的有效选项。例如,现在您可以轻松接受基础 POU 的方法,然后将其调整为 POU 的派生函数。
这里没有列出带有访问修饰符PRIVATE
的方法和属性,因为它们也不被继承。带有访问修饰符PUBLIC
的方法和属性在被派生 POU 接受时,会自动获得一个空白的访问修饰符字段,这在功能上是一样的。
示例
