# 设备

当您想在运行时使用源属性来改变设备的 IP 地址或单位 ID 时，请使用 [Equipment] 操作来提交更改。

注：

关于命名规范和脚本关键字的信息，请参阅以下内容。
命名规范

##### 块

##### 文本

saveEquipment(EQUIPMENT);
1

1: 设备

注： 您可以使用单一设备块同时保存 IP 地址和单位 ID。每个操作的成功或失败都记录在操作日志中。

## 示例

下面的例子说明如何改变工程中设备的 IP 地址。

设备的当前 IP 地址是 192.168.0.1。

##### 块

##### 文本

onClick($GraphicObject.Switch1, ()=>{

$Device.ModbusTCPDriver1.SchneiderModbusTCPIPEquipment1.IPAddress.OverwriteValue = address('192.168.0.2');

saveEquipment($Device.ModbusTCPDriver1.SchneiderModbusTCPIPEquipment1);

});

1. 在您的工程中设置上述脚本。

2. 运行该脚本以:

1. 为 IPAddress.OverwriteValue设置一个新的 IP 地址 (192.168.0.2)。

2. 运行[设备]操作。

Equipment1.IPAddress.CurrentValue (192.168.0.2) 现在等于 Equipment1.IPAddress.overwriteValue (192.168.0.2)。

注： 可以使用 32 位数据 (Int) 来改变 IP 地址值。IP 地址值的改变如下图所示。在 32 位数据中，IP 地址中的每个八位字节都以 8 位单位保存。

### IP 地址未更新时的例子

1. 为 IPAddress.OverwriteValue设置一个新的 IP 地址 (192.168.0.3)。
2. 不要运行 [设备] 操作。
   设备的 IP 地址没有更新。Equipment1.IPAddress.CurrentValue （192.168.0.2）不等于 Equipment1.IPAddress.overwriteValue （192.168.0.3）。
   在执行 [设备] 操作之前，该 IP 地址不被应用。

注： 您需要执行 [设备] 操作来更新设备的 IP 地址和单元 ID。