ROS2 Humble中JetBot自定义电机节点与SLAM/Nav2集成问题
JetBot ROS 2 Humble SLAM Toolbox集成问题排查
我在基于JetPack 4.x的Jetson Nano Waveshare JetBot ROS AI套件上,通过Docker运行ROS 2 Humble(该套件原生支持ROS1)。用Python(rclpy)编写了自定义电机/里程计节点,通过串口/dev/ttyACM0(115200波特率)控制JetBot并发布轮式里程计(支持可选IMU输入);同时使用RPLidar A1(连接/dev/ttyACM1),其/scan数据可在RViz中正常显示。
电机节点可正常启动并发布/odom,遥操作能正常控制机器人移动,但与SLAM Toolbox和Nav2集成时遇到问题:SLAM Toolbox无法生成并发布地图(/map无更新)。
正常工作项
- RPLidar的
/scan数据正常 - 电机节点的
/odom已发布 - 遥操作可正常驱动机器人
异常项
- SLAM Toolbox无法生成地图
需协助解决的问题
- 在不使用ros2_control的前提下,确保构建正确的TF树(
map → odom → base_link) - 自定义电机节点是否需要单独的关节状态发布器
- 排查为何在
/scan和/odom数据有效的情况下,SLAM Toolbox仍无法发布地图
内容的提问来源于stack exchange,提问作者Amit Kore
相关产品推荐
相关产品推荐

