如何配置Modbus RTU(RS485)主站通信
进入“通信编程”页面。
通信初始化
- 选择RS485(Modbus RTU)为“主站”模式。
- 设置通信参数。
- 设置 “波特率” 、“数据位” 、“奇偶校验”和“停止位”(请参考通信参数配置限制)。并确保RS485网络中通信参数一致。
- 设置“采集周期T1”和“采集周期T2”。本主站控制器周期性与从站控制器通信、读写数据。每一项数据点有两种扫描周期可以选择。T1以毫秒为单位,设置范围为100~5000ms,T2以秒为单位,设置范围为1~255s。T1优先级高于T2。不同的数据采集点可以选择不同的采集周期,但是在选择和配置此项设置时应综合考虑所配置的串口波特率、数据采集点数量、从设备应答速度、从设备掉线以及T1和T2冲突等情况,选择和设置一个合适的时间。如果时间设置过短或T1配合T2不合理,会产生排在后面的数据点永远无法读取的情况。请参考通信参数的高级设置。
- 设置“超时时间”为Modbus RTU通信超时时间。请参考通信参数的高级设置。
配置通信数据

- 点击“增加行”。
- 添加通信变量数据点与从站数据点的对应关系。
- 设置“通信变量名”。
- 命名后该数据点可作为变量,用于本主站的控制逻辑和显示编程。
- 设置“从设备地址”、“寄存器地址”、“寄存器类型”和“数据类型”。
- 设置数据的“读写方式”。其中“输入寄存器”和“输入继电器”为“只读”方式,“输出寄存器”和“输出继电器”有“只读”、“读写”和“只写”三种方式可选。
- 只读:主站从从站寄存器读取数据。
- 读写:主站循环读取从站数据点,同时,如果主站的通信变量数值变化,则立刻向从站数据点写入主站通信变量的值。
- 只写:主站循环写入从站数据点,同时,如果主站的通信变量数值变化,则立刻向从站数据点写入主站通信变量的值。
- 设置“采样类型”。选择采样周期T1或采样周期T2。
- 当读写方式为“只读”或“读写”时,RWG控制器会自动把Modbus主站的“读”命令打包为数据组。打包的前提条件是:
- 勾选“组“选项。
- 从设备地址相同
- 采样类型相同
- 寄存器地址连续
- 每个组的寄存器数量最大为30
如何设置寄存器地址:
- 对于Bool、Short16、Word16类型的点的连续地址为:n,n+1,n+2….,n为起始地址。如1、2、3、4、5、…….;
- 对于Float类型的点的连续地址为n,n+2,n+4…,n为起始地址。如1、3、5、7、9、…..
例如:

所有的“读“命令会打包成一个命令发送给从设备。写命令暂时不支持打包。
- 重复步骤1到6直到所有通信数据变量设置完成。
- 主站通信设置完成后,本主站可周期性从网络中的从站读取或向其写入数据。
- 循环读和循环写从站数据点的速度取决于“采集周期”参数的设置。
- 写从站数据点的频率取决于对于对应的“通信变量”变化的频率。