也可以通过以下方式创建表格来显示数据数组。你乘以一个单一元素,该元素至少有一个属性是由结构变量描述的。为此,单个元素被配置为 "模板",并通过命令进行乘法运算。
您可以使用“可视化 Multiply Visu Element” 命令在可视化中显示数组数据。该命令乘以模板元素,为每个数组组件创建一个相同类型的元素。新元素在可视化中的布局可以是一维的行或列,也可以是二维的表格。
为此,请将适用元素拖入可视化编辑器。然后用数组变量配置元素属性,并将索引访问占位符$FIRSTDIM$
指定为组件访问。如果已声明了一个多维数组,则可以使用第二个索引访问占位符$SECONDDDIM$
来访问额外的维数。像往常一样使用典型值配置其余属性。目的是创建一个有效的模板元素。然后在模板元素上执行“Multiply Visu Element” 命令。现在会打开同名对话框。在这里,您可以详细定义应创建的元素数量和位置。
相乘后,可视化包含的相同元素数量与使用占位符索引的元素数量相同。在此过程中,将考虑“Multiply Visu Element” 对话框中的设置。属性中所有预设占位符的新元素都已替换为精确索引。其余属性已应用并复制,未作任何更改。
例如,可以将九个按钮布局为 3x3 表格,它们的大小或颜色都相同,但标签各不相同。标签被声明为字符串数组(九个组成部分),并作为值传递给“Texts”->“Text” 属性。
有效模板元素:
-
数组变量的声明
例如
asText: ARRAY[1..3, 1..3] OF STRING;
-
具有适用元素类型的元素
-
用带有索引访问占位符的数组变量配置适用元素的至少一个属性
示例:属性“文本”,“文本” =
PLC_PRG.asText[$FIRSTDIM$, $SECONDDIM$]
这适用于所有允许变量作为值的属性(例如,"动画 "或 "输入 "类别中的属性)。要使用数组和索引访问占位符为一个元素配置多个属性,所有数组必须具有相同的结构和相同的维度。声明必须兼容。
-
使用不带索引访问占位符的常规值配置无变化(因此对所有生成元素都相同)的属性
示例:
sButtonTip : STRING := 'This element is created by multiplication'
属性“文本”,“工具提示” =
%s
属性“文本变量”,“工具提示变量” =
sButtonTip
您仍然可以像往常一样使用占位符%
来显示“文本” 中属性中变量值的文本。
适用的可视化元素
可倍增的可视化元素:
-
“Rectangle”
-
“圆角矩形”
-
“Ellipse”
-
“Line”
-
“多边形”
-
“多段线”
-
“Bézier Curve”
-
“Image”
-
“框架”
-
“按钮”
-
“派”
-
“旋转箱”
-
“文本字段”
-
“复选框”
-
“图像切换器”
-
“灯”
-
“点拨式开关”
-
“电源开关”
-
“按钮开关”
-
“按钮开关 LED”
-
“翘板开关”
-
“旋转开关”
将灯具和按钮作为模板进行配置和倍增
-
创建一个新的标准项目。
CODESYS Control Win V3 被配置为设备。
MainTask
调用PLC_PRG
。执行语言为 ST。 -
在
PLC_PRG
程序代码中,声明基本数据类型为STRING
的数组变量。PROGRAM PLC_PRG VAR axLampIsOn: ARRAY[1..2,1..3] OF BOOL; // For lamp, property 'variable' and button, user input asButtonText: ARRAY[1..2,1..3] OF STRING := // Output text for button, property 'text variables''text variable' [ '1A Lamp', '2A Lamp', '1B Lamp', '2B Lamp', '1C Lamp', '2C Lamp' ]; END_VAR
-
在设备树中选择应用程序,然后单击“添加对象 可视化” 。
-
在“添加可视化” 对话框中,指定名称
VisuMain
,然后单击“添加” 关闭对话框。 -
从“可视化工具箱” 视图中拖动“灯” 元素到可视化中。
-
配置固定属性值。
-
双击“变量” 属性的值字段。
行编辑器打开。
-
单击
。
输入助手打开。
-
从变量树中选择数组变量
PLC_PRG.axLampIsOn
。 -
在字符串末尾进行扩展,例如使用 "
[f
"。如果激活了 SmartCoding(“选项” 对话框,“SmartCoding” 类别,“输入” 选项时立即列出组件),则当前变量列表会显示占位符:
-
选择第一个维度的占位符
$FIRSTDIM$
并确认选择。 -
在字符串末尾进行扩展,例如使用 "
,s
"。变量列表再次出现。
-
选择第二个维度的占位符
$SECONDDIM$
并确认选择。 -
用结尾括号完成字符串。
PLC_PRG.axLampIsOn[$FIRSTDIM$, $SECONDDIM$]
灯管配置为模板。
-
点击“Visualization Multiply Visu Element” 。
将打开“Multiply Visu Element” 对话框。默认值来自数组声明。
“元素总数”,“水平” =
2
“元素总数”,“垂直” =
3
-
声明新元素之间的距离。
“元素之间的偏移”,“水平” =
3
,“垂直” = 元素之间的偏移
3
-
检查高级设置。
-
单击“OK” 确认选择。
新元素就会出现在可视化编辑器中。所有属性都配置了精确的索引,数组变量也有索引。
-
在“可视化工具箱” ,在“常用控件” 类别中,将“Button” 元素拖到可视化编辑器中。
打开元素的“Properties” 视图。
-
配置固定属性值。
-
配置“文本变量”->“文本变量” 属性的值。
PLC_PRG.asButtonText[$FIRSTDIM$, $SECONDDIM$]
-
配置“输入配置的值”->“切换”->“变量” 属性。
PLC_PRG.axLampIsOn[$FIRSTDIM$, $SECONDDIM$]
按钮配置为模板。
-
点击“Visualization Multiply Visu Element” 。
将打开“Multiply Visu Element” 对话框。默认值来自数组声明。
“元素总数”,“水平” =
2
“元素总数”,“垂直” =
3
-
声明新元素之间的距离。
“元素之间的偏移”,“水平” =
3
,“垂直” = 元素之间的偏移
3
-
检查高级设置。
-
单击“OK” 确认选择。
新元素就会出现在可视化编辑器中。所有属性都配置了精确的索引,数组变量也有索引。
-
构建、启动并下载应用程序。
运行时可视化
具有两个以上维度的数组变量
您也可以使用具有两个以上维度的数组变量配置模板元素,但最多只能为其中两个维度指定占位符。在附加维度中,索引是固定的。
示例
声明
PROGRAM PLC_PRG VAR asText: ARRAY[1..2, 1..3, 1..6, 1..2] OF STRING; END_VAR
为模板元素配置“文本变量”,“工具提示变量” 属性:
PLC_PRG.asText[2, $FIRSTDIM$, $SECONDDIM$, 2]
表格中一维数组的布局
您可以通过索引访问占位符$FIRSTDIM$
将模板元素配置为一维数组。如果要创建的新元素数量多于 5 个,则会在“Multiply Visu Element” 对话框中预设表格布局。新元件的布局尽可能采用四边形。
示例
PROGRAM PLC_PRG VAR asText: ARRAY[1..100] OF STRING; END_VAR
“Multiply Visu Element” 对话框中的默认设置允许在 10x10 的区域内布局 100 个新元素。