USR模块
USR-W610s
USR-W610s 是一款工业级双串口服务器,支持 RS-485 与 RS-232 两路串口同时工作,并内置以太网 + WiFi 双网口。其核心功能之一是 Modbus RTU → Modbus TCP 协议转换:将挂载在 RS-485 总线上的 Modbus RTU 从站设备透明转换为 Modbus TCP 服务端,供以太网侧客户端(WCS、SCADA 等)直接读写。
网络拓扑
RS-485 接线说明
RS-485 为差分半双工总线,接线时须严格区分极性,A(+)接 A(+),B(−)接 B(−):
| W610s 端子 | 从站设备端 | 说明 |
|---|---|---|
| COM1 A+(或标注 D+) | 从站 A+(或 D+) | 同极性对接,高电平有效端 |
| COM1 B−(或标注 D−) | 从站 B−(或 D−) | 同极性对接,低电平有效端 |
| GND | 从站 GND | 建议连接,消除共模噪声 |
网络配置(网络 → LAN / WiFi)
W610s 支持两种接入方式,按现场情况选择其一:
- 有线接入:进入 网络 → LAN,修改 IP 地址、子网掩码及网关,确保上位机与设备处于同一网段即可互通。
- 无线接入:进入 网络 → 无线客户端(WiFi STA),连接现场 WiFi,同样需确认 IP 与上位机在同一网段。

串口配置(串口服务器 → 串口设置)
串口参数须与所接 RS-485 设备的出厂/配置参数完全一致,包括波特率、数据位、停止位与校验方式,请以设备随附手册或实际配置为准。
| 参数 | 说明 |
|---|---|
| 波特率 | 常见值:9600 / 19200 / 38400 / 115200,按设备手册填写 |
| 数据位 | 通常为 8 |
| 停止位 | 通常为 1 |
| 校验 | NONE / ODD / EVEN,按设备手册填写 |
| 打包时间 | 设为 0(自动打包,串口静默后即触发上送) |
| 打包长度 | 设为 1000(单包上限,Modbus RTU 报文通常远小于此值) |

通信配置(串口服务器 → 通信配置)
在此将 COM1-485 绑定到 Modbus TCP 服务端,实现协议转换。
| 参数 | 值 | 说明 |
|---|---|---|
| 启用 | ON | 开启此通道 |
| 名字 / 描述 | TCPS_1 | 标识名,可自定义 |
| 本地端口 | 502 | Modbus TCP 标准端口 |
| 最大客户端连接数 | 2 | 同时允许 2 个客户端,可调整至 16 |
| 超出连接数量 | KICK | 新连接踢出最旧连接 |
| 传输模式 | ModbusRTU | 启用 RTU → TCP 协议转换 |
| 主机轮询 | OFF | 由客户端主动发起请求 |
| 通道绑定 | COM1-485 | 对应 RS-485 串口 |
| 离线数据缓存 | OFF | 断线期间不缓存数据 |

USR-M050
USR-M050 是一款专为工业自动化、设备监控、能源管理、智能仓储等场景设计的新一代智能网口 IO 控制器。该产品集成 2 路数字输入(DI)与 2 路数字输出(DO),支持扩展多种类型 IO 采集与控制功能;具备灵活的通信能力,支持双频 WiFi、以太网及蜂窝网络连接。
DI / DO 接线说明
- DI(数字输入):每路独立带 COM 端,干、湿接点兼容。
- 接干接点时,将 DI 与对应 COM 短接即置
1(短接 = 闭合 = 高)。 - 接湿接点时,DI 上送
9–36V判为高(1),0–2V判为低(0)。
- 接干接点时,将 DI 与对应 COM 短接即置
- DO(数字输出):为继电器无源(干接点)输出,输出动作时 NO 与 COM 导通(闭合),本身不带电,需由外部回路供电。
干接点与湿接点
DI 接入的信号源分两类,接线方式不同,切勿混淆:
干节点(无源触点):现场器件只是一个"纯开关"——继电器触点、行程开关、按钮,自己不输出任何电压。这时候要用的 24V 是你系统自己提供的,让它穿过这个触点再送到 DI。
湿节点(有源触点):现场器件自带电源、自己输出电平,比如三线制 PNP 接近开关、PLC/仪表的晶体管输出,它直接吐一个 +24V(或 0V)信号给 DI。
配置说明
-
完成网络接入与通讯参数配置:根据现场网络环境选择以太网/WiFi/蜂窝网络接入方式,并设置 IP、网关等网络参数(确保上位机可与设备互通)。

-
配置Socket通讯参数:进入通讯-Socket配置界面,开启使能,设置设备的Socket模式,端口号。

-
开启Modbus协议转化:进入IO监控-IO采集-协议转化,开启协议转换,协议类型Modbus,对照点表确认 DI/DO 与寄存器地址的对应关系;随后使用 Modbus 客户端按正确的功能码与偏移地址进行读写测试。

Modbus 协议点表(示例)
| 序号 | 名称 | 点表地址 | 数据类型 | 权限 |
|---|---|---|---|---|
| 1 | DO01 | 000001 | BOOL | 可读可写 |
| 2 | DO01_延时控制 | 400001 | U32 | 可读可写 |
| 3 | DO02 | 000002 | BOOL | 可读可写 |
| 4 | DO02_延时控制 | 400003 | U32 | 可读可写 |
| 5 | DI01 | 100001 | BOOL | 只读 |
| 6 | DI02 | 100002 | BOOL | 只读 |
0xxxx / 1xxxx / 4xxxx 的“正确读取地址”换算
很多设备手册/点表会用 “带前缀的十进制地址” 表示寄存器类型与序号,例如 000001、100001、400001。
但在 Modbus 实际通讯(Modbus TCP/RTU 的 PDU)里,地址字段使用的是 从 0 开始的偏移地址(0-based offset)。因此需要先把点表地址换算成偏移地址,再选择正确的功能码去读。
1)DO01(000001,BOOL)怎么读/写
000001属于 0xxxx:Coils(线圈)- 功能码:读
01(Read Coils),写单线圈05(Write Single Coil) - 偏移地址换算:
000001→ 偏移地址0000002→ 偏移地址1
因此:
- 读取 DO01:从地址
0开始读1个线圈(得到一个 BOOL)。 - 写入 DO01:对线圈地址
0写FF00(开)或0000(关)。 - HSL 使用地址:0 ,1
2)DI01(100001,BOOL)怎么读
100001属于 1xxxx:Discrete Inputs(离散输入)- 功能码:读
02(Read Discrete Inputs) - 偏移地址换算(常见约定):
100001→ 偏移地址0100002→ 偏移地址1
因此:
- 读取 DI01:从地址
0开始读1个离散输入(得到一个 BOOL)。 - HSL 使用地址:x=2;0 ,x=2;1
3)DO01_延时控制(400001,U32)怎么读/写
400001属于 4xxxx:Holding Registers(保持寄存器)- 功能码:读
03(Read Holding Registers),写单寄存器06或多寄存器10 - 偏移地址换算(常见约定):
400001→ 偏移地址0