发布时间: 2026-01-12

机器人做ModbusRtu主站(控制柜端口)


 

1.简介

本片文档适用于CS系列使用modbus_rtu通讯,本篇以机器人与电脑端通讯助手建立配置连接及读取和发送数据示列。目前CS系列支持modbus_rtu做主站。

2.modbus_rtu接线说明

控制柜modbus_rtu硬件接线说明,使用 RS-485 串行通信接口。

串口连接器引脚图如下所示:Pin3:RS485-,Pin4:RS485+

 

通过485 转 USB通讯线用于电脑端与机器人模拟通讯,实际接线可直接接入设备 RS-485 正负端。

 

 

3.脚本解析

3.1 控制柜modbus_rtu通讯配置

serial_config(True, 115200, 0, 1, 8, True)

功能: 该指令用于打开或关闭机器人控制柜 RS-485 通信功能,并对其进行配置。

 注意内参

True:打开串口通讯

115200:波特率

0:串口奇偶校验为不校验

1:串口停止位

8:串口的位宽 ,modbus_rtu则必须为8

True 时为 Modbus-rtu 模式, 指定为 False 时为 RS485 模式,不指定时使用默认 参数 False,

返回值: 如果配置成功,返回 True,如果配置失败,返回 False,

 

serial_mode() 该指令用于查询机器人控制柜 RS-485 处于何种模式下。 返回值: “MODBUS-RTU”或“RS485”,若二者均未使能,则为“CLOSE”。

 

serial_modbus_read_registers(1,5,2,0)指令,该指令用于读取机器人控制柜modbus_rtu通信的数据。

 注意内参

1:从站地址

5:寄存器地址

1:待读取数据长度

0:超时时间,小于等于1等待时间无限长

返回值:[0,0]

 

serial_modbus_write_registers(1,1,[18])指令,该指令用于发送机器人控制柜modbus_rtu通信的数据。

 注意内参

1:从站地址

1:寄存器地址

18:写入的数据

返回值:1 成功写入寄存器的数量,小于等于0视为写入失败。

 

 更多脚本指令及内填写参数可参考 CS 脚本手册。

 

4.建立连接

打开串口调试助手Modbus slave,连接参数需要设置 com 号、选择与机器人设置对应的波特率、数据位长度、校验方式和停止位长度,填写完成后确认打开串口建立连接。

无 NO connection为连接成功。

写入控制柜modbus_rtu通信配置及查询模式脚本运行

在监控里查看返回值,ret 返回值是 true 为配置成功,如果配置失败,返回 False,mode为modbus rtu模式。

5. 数据发送和读取

控制柜写入寄存器

运行脚本后可在调试助手端接收到机器人发送的数值

随后运用调试助手向寄存器5写入2,运行读取寄存器脚本。

通过监视查看读取的值

 

6. 程序示例

global ret             定义变量
global mode            定义变量
global read_data       定义变量
global read_data1      定义变量
ret=serial_config(True,115200,0,1,8,True)打开机器人控制柜 RS-485 通信功能
mode=serial_mode() 查询机器人控制柜 RS-485 处于何种模式下
read_data1=serial_modbus_read_registers(1,5,1,0)读取从站寄存器5数值
read_data=serial_modbus_write_registers(1,1,[18]) 从站寄存器地址1写入18
 

 

提交反馈