符号:
接口属性是IEC 61131-3标准的扩展,是用于数据封装的面向对象编程的工具。接口属性声明访问器方法Get和Set(无实现代码)。因此,实现接口的功能块也将继承其接口属性。
您可以将接口属性添加到接口的设备树中。然后使用访问器方法Get和扩展接口Set。Get访问器用于读访问。Set访问器用于读访问。您可以删除不需要的访问器。单击添加访问器。将打开添加接口属性对话框。
.Literal_A接口属性的声明和实现
该接口itf_A具有Literal_A访问器方法Get和的属性Set。
该函数将阻塞fb_A1并fb_A2实现接口itf_A,因此将继承其接口属性。每个FB都有自己的实现。
.接口itf_A
INTERFACE itf_A
VAR
END_VAR
PROPERTY Literal_A : STRING
.FB fb_A1
FUNCTION_BLOCK fb_A1 IMPLEMENTS itf_A
VAR
str_1 : STRING;
str_2 : STRING;
iCnt : INT;
END_VAR
iCnt := iCnt + 1;
str_1 := 'Function block A1';
.访问器fb_A1.Literal_A.Get
VAR
END_VAR
Literal_A := CONCAT (str_1,' and property.');
.访问器fb_A1.Literal_A.Set
VAR
END_VAR
str_2 := Literal_A;
.FB fb_A2
FUNCTION_BLOCK fb_A2 IMPLEMENTS itf_A
VAR
str_1 : STRING;
str_2 : STRING;
iCnt : INT;
END_VAR
iCnt := iCnt + 1;
str_1 := 'Function block A2';
.访问器fb_A2.Literal_A.Get
VAR
END_VAR
Literal_A := str_1;
.访问器fb_A2.Literal_A.Set
VAR
END_VAR
str_2 := Literal_A;
.程序PLC_PRG
PROGRAM PLC_PRG
VAR
iCnt : INT;
my_1 : fb_A1;
my_2 : fb_A2;
strName_1 : STRING;
strName_2: STRING;
END_VAR
iCnt := iCnt + 1;
my_1();
my_2();
strName_1:= my_1.Literal_A;
strName_2:= my_2.Literal_A;
my_1.Literal_A := 'Hello 1';
my_2.Literal_A := 'World 2';
这导致对PLC_PRG应用程序在处于运行时模式的以下监视: