ROS Group 产品服务
Product Service 开源代码库
Github 官网
Official website 技术交流
Technological exchanges 激光雷达
LIDAR ROS教程
ROS Tourials 深度学习
Deep Learning 机器视觉
Computer Vision
底盘驱动问题
-
版本是Noetic,安装完成之后,找不到底盘驱动程序,但是底盘驱动安装了,也可以从usb中看到底盘是连接的,不知道怎么弄了。
-
在ROS Noetic中,如果您已经确认底盘驱动程序已正确安装并且可以通过USB与计算机建立连接,但是ROS仍然无法找到或识别底盘驱动程序,这可能是由以下几个原因引起的:
-
ROS节点未启动:
确保相关的ROS节点和服务已经启动,例如底盘通信节点。通常会有类似drive_node
或者base_driver
等节点负责读取USB端口的数据并转换为ROS话题。您可以检查启动脚本或通过命令行启动这些节点:rosrun your_package drive_node
-
ROS参数配置错误:
您可能需要在ROS参数服务器上配置正确的USB端口名称。查看您的驱动程序源码或相关配置文件,确保指定的USB串口路径正确。例如,在roslaunch
脚本中可能包含如下内容:...
确认
/dev/ttyUSB0
或相应端口号指向您底盘连接的实际串口。 -
依赖问题:
可能ROS驱动依赖的库或ROS包没有正确安装或版本不匹配。确保所有依赖项都已正确安装和更新至与Noetic相匹配的版本。 -
设备规则(udev rules):
在某些Linux发行版中,可能需要自定义udev规则来确保USB设备权限正确。例如,创建一个udev规则文件,如/etc/udev/rules.d/99-chassis-serial.rules
,内容如下:SUBSYSTEMS=="usb", ATTRS{idVendor}=="vendor_id", ATTRS{idProduct}=="product_id", MODE="0666", GROUP="dialout"
其中
vendor_id
和product_id
是底盘USB设备的供应商ID和产品ID,确保ROS用户属于 dialout 组。 -
驱动程序兼容性:
检查底盘驱动程序是否完全针对ROS Noetic进行了适配。有时驱动可能基于旧版ROS编写,需要更新或移植。
一旦您确定了问题所在,就可以针对性地解决问题以使ROS能够识别和使用底盘驱动程序。
-
-
@lyon 要自己添加udev规则创建底盘串口的符号连接 /dev/ttyUSB001
-
@weijiz
我看udev规则里面有这个,名称也对的上。我也跟着用户手册中的教程13做了一下,还是没有反应。找不到ttyusb001. -
@lyon https://community.bwbot.org/topic/16624/ubuntu中用udev规则绑定usb串口和映射别称的办法
-
@xiaoqiang 好了 谢谢大佬