# 插件:物联网协议连接器 **Repository Path**: low-code-dev-lab/hzg-plugin-iot-bridge ## Basic Information - **Project Name**: 插件:物联网协议连接器 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-05 - **Last Updated**: 2026-06-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # IoTBridge 服务端命令帮助文档 本文基于当前代码中的服务端命令定义整理,按命令分类列出可用操作、每个操作的实际动作、传入参数清单和返回值的结构清单。 通用约定 - 所有命令都在服务端执行。 - `ResultTo` 表示返回值的变量名。命令执行完成后,会把结构化结果对象写入该变量。 - 所有结果对象中的 `success` 表示命令是否成功,`errCode` 为统一错误码,`0` 表示成功,`message` 为错误或状态消息,`elapsedMs` 为命令耗时,单位毫秒。 - 连接类命令成功后返回 `connectionId`,后续读、写、发送、接收、断开、订阅等命令都通过该 ID 复用连接。 ## 分类:Modbus TCP 连接器 ### 操作:Modbus TCP 连接 实际动作 - 根据主机和端口建立 Modbus TCP 连接。 - 如果启用复用,并且已存在相同端点、请求超时、重试次数和地址基准都一致的健康连接,则直接复用原连接。 - 如果启用强制重连,则先断开相同端点的已有连接,再重新建立连接。 - 连接级参数会保存默认 `UnitId` 和地址基准,后续读写命令共用这些设置。 传入参数 - `主机`:必填。Modbus TCP 设备的 IP 地址或主机名。 - `端口`:默认 `502`。 - `默认UnitId`:默认 `1`。 - `复用已有连接`:默认 `true`。 - `强制重连`:默认 `false`。 - `连接超时毫秒`:默认 `3000`。 - `请求超时毫秒`:默认 `3000`。 - `重试次数`:默认 `1`,不包含首次请求。 - `地址基准`:默认 `ZeroBased`。`ZeroBased` 表示输入地址直接作为协议地址,`OneBased` 表示发送前减 1。 - `结果变量`:默认 `连接信息`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.connectionId`:连接唯一标识。 - `ResultTo.reused`:是否复用了已有连接。 ### 操作:Modbus TCP 读取 实际动作 - 使用指定 `ConnectionId` 读取 Modbus 数据区。 - 支持线圈、离散输入、输入寄存器、保持寄存器。 - 地址按连接命令中的地址基准解释。 - 读取数量为 `1` 时,结果中的 `value` 仍然是数组。 传入参数 - `连接ID`:必填。由 Modbus TCP 连接命令返回。 - `读取区域`:默认 `HoldingRegister`。支持公式,公式结果可返回 `Coil`、`DiscreteInput`、`InputRegister`、`HoldingRegister`。数字值按枚举序号解释:`0=Coil`、`1=DiscreteInput`、`2=InputRegister`、`3=HoldingRegister`,不是 Modbus 功能码。 - `起始地址`:默认 `0`。 - `读取数量`:默认 `1`。 - `结果变量`:默认 `读取结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.value`:读取值数组。线圈和离散输入返回布尔数组,寄存器返回数值数组。 ### 操作:Modbus TCP 写入 实际动作 - 使用指定 `ConnectionId` 写入 Modbus 数据区。 - 支持写线圈和保持寄存器。 - 单点写会根据写入区域使用对应功能码,多点写会根据数组或多值输入使用批量写功能码。 - 地址按连接命令中的地址基准解释。 传入参数 - `连接ID`:必填。由 Modbus TCP 连接命令返回。 - `写入区域`:默认 `HoldingRegister`。支持公式,公式结果可返回 `Coil`、`HoldingRegister`。数字值按枚举序号解释:`0=Coil`、`1=HoldingRegister`,不是 Modbus 功能码。 - `起始地址`:默认 `0`。 - `值`:必填。线圈写入 `true/false` 或 `1/0`;保持寄存器写入 `0` 到 `65535`;多点写可传数组、JSON 数组或逗号分隔值。 - `结果变量`:默认 `写入结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.value`:写入值数组。即使只写入一个点,也返回数组。 ### 操作:Modbus TCP 断开 实际动作 - 根据 `ConnectionId` 关闭并移除 Modbus TCP 连接。 传入参数 - `连接ID`:必填。 - `结果变量`:默认 `断开操作结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 ## 分类:Modbus RTU 连接器 ### 操作:Modbus RTU 连接 实际动作 - 通过串口建立 Modbus RTU 连接。 - 如果启用复用,并且已存在相同端点、请求超时、重试次数和地址基准都一致的健康连接,则直接复用原连接。 - 如果启用强制重连,则先断开相同端点的已有连接,再重新建立连接。 - 连接级参数会保存默认 `SlaveId`、请求超时、重试次数和地址基准,后续读写命令共用这些设置。 传入参数 - `串口名`:必填,例如 `COM3`。测试台架可使用 `pipe:`。 - `波特率`:默认 `9600`,支持公式,公式结果应为整数波特率。 - `数据位`:默认 `Eight`。 - `校验位`:默认 `None`,支持公式,公式结果可返回 `None`、`Odd`、`Even`、`Mark` 或 `Space`。 - `停止位`:默认 `One`。 - `串口流控`:默认 `None`。 - `请求超时毫秒`:默认 `3000`。 - `默认SlaveId`:默认 `1`。 - `重试次数`:默认 `2`。读取请求失败后重试;写入请求默认不重试,避免重复触发设备动作。 - `地址基准`:默认 `OneBased`。`ZeroBased` 表示输入地址直接作为协议地址,`OneBased` 表示发送前减 1。 - `复用已有连接`:默认 `true`。 - `强制重连`:默认 `false`。 - `结果变量`:默认 `连接信息`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.connectionId`:连接唯一标识。 - `ResultTo.reused`:是否复用了已有连接。 ### 操作:Modbus RTU 读取 实际动作 - 使用指定 `ConnectionId` 读取 Modbus RTU 数据区。 - 支持线圈、离散输入、输入寄存器、保持寄存器。 - 地址按连接命令中的地址基准解释。 - 读取数量为 `1` 时,结果中的 `value` 仍然是数组。 传入参数 - `连接ID`:必填。由 Modbus RTU 连接命令返回。 - `读取区域`:默认 `HoldingRegister`。支持公式,公式结果可返回 `Coil`、`DiscreteInput`、`InputRegister`、`HoldingRegister`。数字值按枚举序号解释:`0=Coil`、`1=DiscreteInput`、`2=InputRegister`、`3=HoldingRegister`,不是 Modbus 功能码。 - `起始地址`:默认 `0`。 - `读取数量`:默认 `1`。 - `结果变量`:默认 `读取结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.value`:读取值数组。线圈和离散输入返回布尔数组,寄存器返回数值数组。 ### 操作:Modbus RTU 写入 实际动作 - 使用指定 `ConnectionId` 写入 Modbus RTU 数据区。 - 支持写线圈和保持寄存器。 - 单点写会根据写入区域使用对应功能码,多点写会根据数组或多值输入使用批量写功能码。 - 地址按连接命令中的地址基准解释。 传入参数 - `连接ID`:必填。由 Modbus RTU 连接命令返回。 - `写入区域`:默认 `HoldingRegister`。支持公式,公式结果可返回 `Coil`、`HoldingRegister`。数字值按枚举序号解释:`0=Coil`、`1=HoldingRegister`,不是 Modbus 功能码。 - `起始地址`:默认 `0`。 - `值`:线圈写入 `true/false` 或 `1/0`;保持寄存器写入 `0` 到 `65535`;多点写可传数组、JSON 数组或逗号分隔值。 - `结果变量`:默认 `写入结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.value`:写入值数组。即使只写入一个点,也返回数组。 ### 操作:Modbus RTU 断开 实际动作 - 根据 `ConnectionId` 关闭并移除 Modbus RTU 连接。 传入参数 - `连接ID`:必填。 - `结果变量`:默认 `断开操作结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 ## 分类:RS232 连接器 ### 操作:RS232 连接 实际动作 - 打开 RS232 串口链路。 - 如果启用复用并且已存在相同端点的健康连接,则直接复用原连接。 - 如果启用强制重连,则先断开相同端点的已有连接,再重新建立连接。 传入参数 - `串口名`:必填,例如 `COM1`。测试台架可使用 `pipe:`。 - `波特率`:默认 `9600`,支持公式,公式结果应为整数波特率。 - `数据位`:默认 `Eight`。 - `校验位`:默认 `None`,支持公式,公式结果可返回 `None`、`Odd`、`Even`、`Mark` 或 `Space`。 - `停止位`:默认 `One`。 - `串口流控`:默认 `None`。 - `方向控制`:默认 `AutoAdapter`。RS232 通常保持默认。 - `方向切换延时毫秒`:默认 `0`。 - `连接超时毫秒`:默认 `3000`。 - `响应超时毫秒`:默认 `1000`。 - `空闲结束毫秒`:默认 `50`。 - `复用已有连接`:默认 `true`。 - `强制重连`:默认 `false`。 - `结果变量`:默认 `连接信息`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.connectionId`:连接唯一标识。 - `ResultTo.reused`:是否复用了已有连接。 ### 操作:RS232 发送 实际动作 - 使用指定 `ConnectionId` 发送串口数据。 - 可按文本、十六进制或 Base64 解析发送内容。 - 可选择追加终止符。 - 可选择发送后不接收、读取当前可用响应、读取固定长度响应或读取到终止符。 传入参数 - `连接ID`:必填。由 RS232 连接命令返回。 - `发送内容`:必填。 - `内容格式`:默认 `Text`。可选 `Text`、`Hex`、`Base64`。 - `文本编码`:默认 `Utf8`。可选 `Utf8`、`Ascii`、`Unicode`。 - `追加终止符`:默认 `false`。 - `终止符`:默认换行符 `\r\n`。 - `终止符格式`:默认 `Text`。可选 `Text`、`Hex`、`Base64`。 - `接收模式`:默认 `None`。可选 `None`、`ReadAvailable`、`FixedLength`、`Terminator`。 - `期望响应字节数`:默认 `0`。接收模式为 `FixedLength` 时使用。 - `响应超时毫秒`:默认 `1000`。 - `空闲结束毫秒`:默认 `50`。 - `结果变量`:默认 `发送结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.payload`:发送或接收命令得到的有效载荷。 - `ResultTo.payload.length`:payload 字节数。 - `ResultTo.payload.text`:payload 按所选编码解码后的文本。 - `ResultTo.payload.hex`:payload 的十六进制文本。 - `ResultTo.payload.base64`:payload 的 Base64 文本。 ### 操作:RS232 接收 实际动作 - 使用指定 `ConnectionId` 从串口读取数据。 - 支持读取当前可用响应、读取固定字节数或读取到终止符。 传入参数 - `连接ID`:必填。由 RS232 连接命令返回。 - `接收模式`:默认 `ReadAvailable`。可选 `ReadAvailable`、`FixedLength`、`Terminator`。 - `期望响应字节数`:默认 `0`。接收模式为 `FixedLength` 时使用。 - `终止符`:默认换行符 `\r\n`。接收模式为 `Terminator` 时使用。 - `终止符格式`:默认 `Text`。可选 `Text`、`Hex`、`Base64`。 - `文本编码`:默认 `Utf8`。可选 `Utf8`、`Ascii`、`Unicode`。 - `响应超时毫秒`:默认 `1000`。 - `空闲结束毫秒`:默认 `50`。 - `结果变量`:默认 `接收结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.payload`:接收到的有效载荷。 - `ResultTo.payload.length`:payload 字节数。 - `ResultTo.payload.text`:payload 按所选编码解码后的文本。 - `ResultTo.payload.hex`:payload 的十六进制文本。 - `ResultTo.payload.base64`:payload 的 Base64 文本。 ### 操作:RS232 断开 实际动作 - 根据 `ConnectionId` 关闭并移除 RS232 串口链路。 传入参数 - `连接ID`:必填。 - `结果变量`:默认 `断开操作结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 ## 分类:RS485 连接器 ### 操作:RS485 连接 实际动作 - 打开 RS485 串口链路。 - 如果启用复用并且已存在相同端点的健康连接,则直接复用原连接。 - 如果启用强制重连,则先断开相同端点的已有连接,再重新建立连接。 - 半双工 RS485 适配器可通过方向控制参数设置发送期间 RTS 的电平和发送后的恢复延时。 传入参数 - `串口名`:必填,例如 `COM1`。测试台架可使用 `pipe:`。 - `波特率`:默认 `9600`,支持公式,公式结果应为整数波特率。 - `数据位`:默认 `Eight`。 - `校验位`:默认 `None`,支持公式,公式结果可返回 `None`、`Odd`、`Even`、`Mark` 或 `Space`。 - `停止位`:默认 `One`。 - `串口流控`:默认 `None`。 - `方向控制`:默认 `AutoAdapter`。可选 `AutoAdapter`、`RtsHighDuringSend`、`RtsLowDuringSend`。 - `方向切换延时毫秒`:默认 `0`。 - `连接超时毫秒`:默认 `3000`。 - `响应超时毫秒`:默认 `1000`。 - `空闲结束毫秒`:默认 `50`。 - `复用已有连接`:默认 `true`。 - `强制重连`:默认 `false`。 - `结果变量`:默认 `连接信息`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.connectionId`:连接唯一标识。 - `ResultTo.reused`:是否复用了已有连接。 ### 操作:RS485 发送 实际动作 - 使用指定 `ConnectionId` 发送串口数据。 - 可按文本、十六进制或 Base64 解析发送内容。 - 可选择追加终止符。 - 可选择发送后不接收、读取当前可用响应、读取固定长度响应或读取到终止符。 - 发送时会按连接配置处理 RS485 方向控制。 传入参数 - `连接ID`:必填。由 RS485 连接命令返回。 - `发送内容`:必填。 - `内容格式`:默认 `Text`。可选 `Text`、`Hex`、`Base64`。 - `文本编码`:默认 `Utf8`。可选 `Utf8`、`Ascii`、`Unicode`。 - `追加终止符`:默认 `false`。 - `终止符`:默认换行符 `\r\n`。 - `终止符格式`:默认 `Text`。可选 `Text`、`Hex`、`Base64`。 - `接收模式`:默认 `None`。可选 `None`、`ReadAvailable`、`FixedLength`、`Terminator`。 - `期望响应字节数`:默认 `0`。接收模式为 `FixedLength` 时使用。 - `响应超时毫秒`:默认 `1000`。 - `空闲结束毫秒`:默认 `50`。 - `结果变量`:默认 `发送结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.payload`:发送或接收命令得到的有效载荷。 - `ResultTo.payload.length`:payload 字节数。 - `ResultTo.payload.text`:payload 按所选编码解码后的文本。 - `ResultTo.payload.hex`:payload 的十六进制文本。 - `ResultTo.payload.base64`:payload 的 Base64 文本。 ### 操作:RS485 接收 实际动作 - 使用指定 `ConnectionId` 从串口读取数据。 - 支持读取当前可用响应、读取固定字节数或读取到终止符。 传入参数 - `连接ID`:必填。由 RS485 连接命令返回。 - `接收模式`:默认 `ReadAvailable`。可选 `ReadAvailable`、`FixedLength`、`Terminator`。 - `期望响应字节数`:默认 `0`。接收模式为 `FixedLength` 时使用。 - `终止符`:默认换行符 `\r\n`。接收模式为 `Terminator` 时使用。 - `终止符格式`:默认 `Text`。可选 `Text`、`Hex`、`Base64`。 - `文本编码`:默认 `Utf8`。可选 `Utf8`、`Ascii`、`Unicode`。 - `响应超时毫秒`:默认 `1000`。 - `空闲结束毫秒`:默认 `50`。 - `结果变量`:默认 `接收结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。 - `ResultTo.payload`:接收到的有效载荷。 - `ResultTo.payload.length`:payload 字节数。 - `ResultTo.payload.text`:payload 按所选编码解码后的文本。 - `ResultTo.payload.hex`:payload 的十六进制文本。 - `ResultTo.payload.base64`:payload 的 Base64 文本。 ### 操作:RS485 断开 实际动作 - 根据 `ConnectionId` 关闭并移除 RS485 串口链路。 传入参数 - `连接ID`:必填。 - `结果变量`:默认 `断开操作结果`。 返回值的结构 - `ResultTo.success`:命令是否执行成功。 - `ResultTo.errCode`:统一错误码,`0` 表示成功。 - `ResultTo.message`:错误或状态消息。 - `ResultTo.elapsedMs`:命令耗时,单位毫秒。