Files
amadeus_26/docs/Transmit/usb_device_setup.md

1.7 KiB

USB 串口设备权限设置指南

文件说明

文件 说明
99-usb-serial.rules udev 规则文件,固定设备名称和权限
setup_usb_permissions.sh 自动化设置脚本

操作步骤

方法一:使用自动化脚本(推荐)

cd ~/code/amadeus_26
./setup_usb_permissions.sh

方法二:手动设置

  1. 识别设备 VID/PID
# 查看 CH340 设备信息
udevadm info -a -n /dev/ttyUSB0 | grep -E "idVendor|idProduct"

# 查看 IMU 设备信息  
udevadm info -a -n /dev/ttyUSB1 | grep -E "idVendor|idProduct"
  1. 安装 udev 规则
sudo cp 99-usb-serial.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger
  1. 添加用户权限
sudo usermod -aG dialout $USER
  1. 生效
  • 重新插拔 USB 设备,或重启系统
  • 注销并重新登录,使权限生效

设备映射

设置完成后,设备将以固定名称出现:

设备 固定名称 原名称
CH340 发送模块 /dev/ttyCH340 /dev/ttyUSB0
IMU 模块 /dev/ttyIMU /dev/ttyUSB1

验证

# 检查设备链接
ls -la /dev/ttyCH340 /dev/ttyIMU

# 检查权限
ls -la /dev/ttyUSB*

使用

修改 launch 文件中的默认设备路径:

# launch/uart_transmitter.launch.py
serial_port_arg = DeclareLaunchArgument(
    'serial_port',
    default_value='/dev/ttyCH340',  # 使用固定名称
    description='CH340 串口设备路径'
)

运行节点:

ros2 launch amadeus_26 uart_transmitter.launch.py
# 或指定 IMU 设备
ros2 launch amadeus_26 uart_transmitter.launch.py serial_port:=/dev/ttyIMU