Modbus RTU串口通信测试

1. 准备

两根USB转RS485串口线、两根杜邦线、XCOM软件、MobaXterm软件、MODSIM软件。

XCOM软件下载链接: https://download.aubo-robotics.cn/3rd-party/XCOM_V2.3.zip

MobaXterm软件说明文档:34 使用 MobaXterm 远程管理目标设备 · GitBook (aubo-robotics.cn)

2. 测试串口通信的操作步骤

  1. 将两根九针的USB转RS485串口线通过杜邦线连接在一起。接线方式是引脚1连引脚1、引脚2连引脚2,如下图所示。

    image-20240115151114870

  2. 将两个USB分别连接电脑和控制柜。

    image-20240115153051959

  3. 也可将一根九针的USB转RS485串口线通过杜邦线直接接到控制柜上引脚1接RS485+,引脚2接RS485-,如图所示。

  4. 各型号控制柜中485丝印及软件展示串口号如表所示。

    | | 控制柜类型 | IS | 改进型控制柜 | 新C | S/ES3/ES5 | Mini控制盒 | | ------------- | ----------- | ------------------ | ------------ | ------------ | ---------------- | ----------- | | 接口板485 | 485 IO 丝印 | 485_A, 485_B | 无 | A2, B2 | 无 | COM2 | | | 映射端口号 | ttyIfaceBrd | 无 | ttyIfaceBrd | 无 | ttyIfaceBrd | | | UI 展示 | [I/O] 485_A, 485_B | 无 | [I/O] A2, B2 | 无 | COM2 | | 原生 485 | 485 IO 丝印 | RS485 | Modbus RTU | A1 B1 | 485+ 485- | 无 | | | 端口号 | ttyS2 | ttyS2 | ttyS0 | ttyS7 | 无 | | | UI 展示 | RS485 | Modbus RTU | [I/O] A1, B1 | [I/O] 485+, 485- | 无 |

    | 扩展485(不区分控制柜型号) | Tool RS485 | 端口号 | ttyRobotTool | | ------------------------- | ------------- | ------- | ----------------------------------------- | | | | UI 展示 | Tool RS485 工具 RS485 | | | USB-RS485 | 端口号 | ttyUSB* - 示例为 ttyUSBxx | | | | UI 展示 | USB-RS485 (xx) - xx 为 ttyUSBxx 中 xx |

  5. 打开MobaXterm,在控制柜的终端中输入命令 dmesg|grep usb,用来查看控制柜上的ttyUSB*端口是否识别到USB串口线设备。

dmesg|grep usb

image-20240115140417979

表示这个USB设备已经被识别成功,并且是一个全速(full-speed)的USB设备,编号3,设备名是FT232R USB UART。

image-20240115155512843

表示这根USB转485串口线已经连接到ttyUSB0端口。

  1. 在电脑中,打开设备管理器,查看端口号。如下图所示,电脑中识别的端口号是COM3。

image-20240115160200387

  1. 打开控制柜的终端,设置串口的波特率、数据位、奇偶校验和停止位。
stty -F /dev/ttyUSB0 115200 cs8 -parenb -cstopb
  • /dev/ttyUSB0 表示ttyUSB0串口设备文件的路径
  • 115200表示波特率的大小
  • cs8表示数据位8位
  • -parenb表示无奇偶校验位
  • -cstopb表示停止位为1位

  • 打开控制柜的终端,查询串口参数。

stty -F /dev/ttyUSB0 -a

image-20240115141447412

  1. 在电脑上打开XCOM软件,选择串口号,设置波特率、停止位、数据位、校验位,点击打开串口

image-20240115162215393

  1. 在控制柜的终端中,使用echo向串口发送数据,电脑端XCOM软件会打印出接收到的数据。
echo "test" > /dev/ttyUSB0

image-20240115162708755

  1. 在控制柜的终端中,使用cat来读取串口中的数据。
cat /dev/ttyUSB0

打开XCOM软件,输入数据,点击发送。

image-20240115163508959

控制柜终端会打印出接收到的数据。

image-20240115163816107

3. Modbus RTU 通信的操作步骤

  1. 通过USB转RS485转接线连接电脑和控制柜。

  2. 在示教器的配置-现场总线-Modbus界面中,点击添加Modbus单元,选择RTU模式,新建一个Modbus RTU设备。

    image-20240115165654567

  3. 设置串口号、波特率、奇偶校验、数据位和停止位。

    image-20240115165759075

  4. 打开MODSIM软件,连接端口号。

    image-20240115170054840

  5. 设置波特率、奇偶校验、数据位和停止位,点击确定

    image-20240115170133069

  6. 在示教器和MODSIM中分别新建Modbus信号,在MODSIM软件中修改信号类型和地址,与平板中的Modbus信号相对应。

    MODSIM中的信号类型包括以下4种:

    • INPUT STATUS 表示数字输入
    • COIL STATUS 表示数字输出
    • INPUT REGISTER 表示寄存器输入
    • HODLING REGISTER 表示寄存器输出

      image-20240115171030779

      image-20240115171455658

      绿色对号图标表示通信成功,红色感叹号图标表示通信不成功。

results matching ""

    No results matching ""