RS485测试

一、控制柜接口板透传RS485测试

接口板透传RS485指将RS485接到了接口板可以由软件进行配置,具有统一的映射端口号:ttyIfaceBrd

注意:接口板透传485功能需要ARCS:0.31.0分支搭配固件:v1.1.1版本以上进行测试,v1.1.1以下版本不具备接口板透传485功能

1. 准备工具

USB转RS485串口线、XCOM V2.3、杜邦线(两根)

XCOM V2.3: https://download.aubo-robotics.cn/3rd-party/XCOM_V2.3.zip

2. 连接线缆

将一根九针的USB转485线通过杜邦线连接至控制柜,iS接线方式为引脚1连485_A,引脚2连485_B,新C控制柜引脚1连A2,引脚2连B2,如下图所示。

目前只有iS控制柜与新C控制柜支持接口板透传RS485功能,其他型号暂不支持,如需使用RS485功能可使用原生RS485(接到工控机上的RS485)与USB转RS485

iS控制柜 新C控制柜
485 IO 丝印 485_A, 485_B A2, B2
映射端口号 ttyIfaceBrd ttyIfaceBrd

3. 配置串口信息

/root/arcs_ws/aubo_control.conf[[RobotHw]]下的[RobotHw.options]项中增加如下配置,如不增加默认为波特率115200、停⽌位1和⽆校验。

  [ifacebrd_serial]
        baudrate = "115200" # 控制柜接口板透传RS485串口支持的波特率 "4800" "9600" "19200" "38400" "57600" "115200"
            stopbits = "1" # 控制柜接口板RS485串口支持的停止位 "1" "0.5" "1.5" "2"
            parity = "none" # 控制柜接口板透传RS485串口支持的校验位 "none" "even" "odd"

/root/arcs_ws/aubo_control.conf中配置位置如下所示。

[[RobotHw]]
location = "extensions/hardware_interface/hardware_interface.so"
bundle = "robot_driver"  
alias = "robot_driver1"
[RobotHw.options]
    friction_model_version = 3
    port_mac = "01:01:01:01:01:01"
    joints = [ 1, 2, 3, 4, 5, 6 ]
    slave_joints = [ 11, 12, 13, 14, 15, 16 ]
    tool = 9
    base = 8
    master_board = 1
    slave_board = 2
    sync_period = 5000
    can_port_mode = "DUAL_CAN_INV"
    tool_bus_type = 1 # 末端串⼝类型 0-modbus 1-485串⼝ 2-⼒传感器
    baudrate = "115200" # 末端串⼝⽀持的波特率 "4800" "9600" "19200" "38400" "57600" "115200"
    stopbits = "1" # 末端串⼝⽀持的停⽌位 "1" "0.5" "1.5" "2"
    parity = "none" # 末端串⼝⽀持的校验位 "none" "even" "odd"
      [ifacebrd_serial]
        baudrate = "115200" # 控制柜接口板透传RS485串口支持的波特率 "4800" "9600" "19200" "38400" "57600" "115200"
        stopbits = "1" # 控制柜接口板RS485串口支持的停止位 "1" "0.5" "1.5" "2"
        parity = "none" # 控制柜接口板透传RS485串口支持的校验位 "none" "even" "odd"

4. 进行测试

  1. 配置完成后需要重启aubo_control
systemctl restart aubo_control
  1. 使用ls /dev/tty*指令,在设备列表中会多出一项:ttyIfaceBrd如下图所示。

  1. 终端输入 cutecom 回车打开cutecom工具,若无法打开则需要输入下列指令进行安装后在打开。

    也可使用指令echo "test" > /dev/ttyIfaceBrd直接向电脑的XCOM v2.3串口助手发送数据,cat /dev/ttyIfaceBrd查看串口助手发送的数据

sudo apt-get install cutecom

  1. 笔记本双击打开串口助手XCOM V2.3,选择串口(如果没有说明未通讯或线缆连接错误),波特率、停止位、数据位、校验位如图所示。点击打开串口

chicken_breas

  1. 笔记本(Windows系统)使用XCOM V2.3发送信息,另一端的调试助手cutecom可以打印对应信息;同样,使用调试助手cutecom发送信息,XCOM V2.3也打印信息。

chicken_breas

chicken_breas

二、控制柜原生485测试

控制原生485指RS485串口接到了工控机上,不同控制柜RS485串口号不一致

1. 准备工具

USB转RS485串口线、XCOM V2.3、杜邦线(两根)。

XCOM V2.3: https://download.aubo-robotics.cn/3rd-party/XCOM_V2.3.zip

2. 连接线缆

以iS控制柜为例,将一根九针的USB转RS485线通过杜邦线连接至控制柜,接线方式为引脚1连引角1,引脚2连引脚2,如下图所示。

其它控制柜RS485串口信息如下表所示。

IS 改进型控制柜 新C S/ES3/ES5 Mini控制盒
485 IO 丝印 RS485 Modbus RTU A1 B1 485+ 485- COM2
端口号 ttyS2 ttyS2 ttyS0 ttyS7 ttyS2
UI 展示 RS485 Modbus RTU [I/O] A1, B1 [I/O] 485+, 485- COM2

3. 配置参数

  1. 进入控制柜的终端,设置串口的波特率、数据位、奇偶校验和停止位。

    默认设置波特率:115200、数据位8位、无奇偶校验位、停止位为1位

stty -F /dev/ttyS2 115200 cs8 -parenb -cstopb
  • /dev/ttyS2 表示ttyS2串口设备文件的路径
  • 115200表示波特率的大小
  • cs8表示数据位8位
  • -parenb表示无奇偶校验位 # parenb-parodd为偶校验,parodd parodd:奇校验
  • -cstopb表示停止位为1位 #cstopb停止为2

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

stty -F /dev/ttyUSB0 -a

image-20240115141447412

4. 进行测试

  1. 终端输入 cutecom 回车打开cutecom工具,若无法打开则需要输入下列指令进行安装后在打开。

也可使用指令echo "test" > /dev/ttyIfaceBrd直接向电脑的XCOM v2.3串口助手发送数据,cat /dev/ttyIfaceBrd查看串口助手发送的数据

sudo apt-get install cutecom

  1. 笔记本双击打开串口助手XCOM V2.3,选择串口(如果没有说明未通讯或线缆连接错误),波特率、停止位、数据位、校验位如图所示。点击打开串口

chicken_breas

  1. 笔记本(Windows系统)使用XCOM V2.3发送信息,另一端的调试助手cutecom可以打印对应信息;同样,使用调试助手cutecom发送信息,XCOM V2.3也打印信息。

chicken_breas

chicken_breas

三、末端RS485测试

末端485指机械臂末端上的RS485串口,具备末端RS485的机械臂在末端一般有两个IO口,其中四芯的为末端RS485通讯接口

1. 准备工具

四芯485末端线、USB转RS485串口线、XCOM V2.3、cutecom

笔记本(Windows系统)下载的串口助手:XCOM V2.3 https://download.aubo-robotics.cn/3rd-party/XCOM_V2.3.zip

控制柜(Ubuntu系统)下载:cutecom

sudo apt-get install cutecom

2. 连接线缆

四芯末端线缆线序说明:

网络定义 线缆颜色
VCC 棕色
GND 黑色
T/R+ 白色
T/R- 蓝色

485转usb线可能出自不同厂商,正负极丝印可能为485+/485-,或是A/B,亦或是TR+/TR-,甚至部分叫作D+/D-。以实际情况接线即可

chicken_breas

3. 配置参数

修改/root/arcs_ws/aubo_control.conf如下⾯配置:末端为485、波特率115200、停⽌位1和⽆校验。

tool_bus_type = 1 # 末端串⼝类型 0-modbus 1-485串⼝ 2-⼒传感器
baudrate = "115200" # 末端串⼝⽀持的波特率 "4800" "9600" "19200" "38400" "57600" "115200"
stopbits = "1" # 末端串⼝⽀持的停⽌位 "1" "0.5" "1.5" "2"
parity = "none" # 末端串⼝⽀持的校验位 "none" "even" "odd"

示例:

[[RobotHw]]
location = "extensions/hardware_interface/hardware_interface.so"
bundle = "robot_driver"
alias = "robot_driver1"
[RobotHw.options]
    friction_model_version = 3
    bus_driver = "pcap:enp2s0"
    port_mac = "01:01:01:01:01:01"
    joints = [ 1, 2, 3, 4, 5, 6 ]
    slave_joints = [ 11, 12, 13, 14, 15, 16 ]
    tool = 9
    base = 8
    master_board = 1
    slave_board = 2
    sync_period = 5000
    can_port_mode = "DUAL_CAN_INV"
        tool_bus_type = 1 # 末端串⼝类型 0-modbus 1-485串⼝ 2-⼒传感器
        baudrate = "115200" # 末端串⼝⽀持的波特率 "4800" "9600" "19200" "38400" "57600" "115
        200" "230400" "460800"
        stopbits = "1" # 末端串⼝⽀持的停⽌位 "1" "0.5" "1.5" "2"
        parity = "none" # 末端串⼝⽀持的校验位 "none" "even" "odd"

4. 进行测试

  1. 配置完成后,重启aubo_control
systemctl restart aubo_control
  1. 待上电松刹⻋后,在 /dev 设备列表⾥⾯会多出⼀项: ttyRobotTool。
ls /dev/tty*

chicken_breas

  1. 通讯线组装后,一头连接机械臂末端,另一头连接笔记本。

  2. 控制柜打开 cutecom,终端输入 cutecom 敲击回车即可打开。

cutecom

chicken_breas

  1. 笔记本双击打开串口助手XCOM V2.3,选择串口(如果没有说明未通讯或线缆连接错误),波特率、停止位、数据位、校验位如图所示。点击打开串口

chicken_breas

  1. 笔记本(Windows系统)使用XCOM V2.3发送信息,另一端的调试助手cutecom可以打印对应信息;同样,使用调试助手cutecom发送信息,XCOM V2.3也打印信息。

chicken_breas

chicken_breas

results matching ""

    No results matching ""