您可以使用变量执行所需操作。
在脚本中使用外部变量时,分配给外接设备的设备地址值可能在脚本处理期间发生变化。
在分配操作中使用设备地址可能会导致写入延迟,因为人机界面必须从所连设备中读取地址数据。
在脚本中使用单个触发器多次更改外部变量值时,外部变量值不会立即更新。
要在触发的脚本中使用更新后的外部变量值,请将该值存储到内部变量并在脚本中使用它。或者在使用外部变量值之前用不同的触发器更新外部变量的值。
(示例)
添加以下变量。
| [名称] | [数据类型] | [源] | [寄存器地址] | [字节数/字数] |
|
Var1 |
[INT] |
Schneider Modbus 系列设备 | 400020 | - |
|
Var2 |
[INT] |
400021 | - | |
|
Var3 |
[INT] |
400022 | - |
在画面上绘制以下对象。
无特殊配置。

| 图例 | 块 |
|
1 |
[触发条件] ➞ [触摸] ➞ [触摸] |
|
2 |
[操作] ➞ [值更改] ➞ [值更改] |
| 3 |
[值] ➞ [画面对象] |
|
4 |
[逻辑] ➞ [数学] |
|
5 |
[值] ➞ [变量] |
|
6 |
[值] ➞ [常量] |
当按下 Switch1 时,Var1+1 的值被分配给 Var2。但是,由于与设备的通信耗时,Var2 的值没有分配给 Var3。
此时,如下面示例所示,可以对脚本进行编程,使 Var1 的结果先存储到内部变量 Var4,然后再执行它。
添加以下变量。
| [名称] | [数据类型] | [源] | [寄存器地址] | [字节数/字数] |
|
Var1 |
[INT] |
Schneider Modbus 系列设备 | 400020 | - |
|
Var2 |
[INT] |
400021 | - | |
|
Var3 |
[INT] |
400022 | - | |
|
Var4 |
[INT] |
[Internal] |
- | - |
