You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

多机器人场景下如何让tb3_0的slam_gmapping订阅/scan_new话题

问题核心原因

你执行的命令存在两个问题:

  • 你提前设置了ROS_NAMESPACE=tb3_0,所有未显式加全局前缀/的话题都会自动带上tb3_0/命名空间前缀,你写的scan:=scan_new实际会把gmapping的scan输入映射到tb3_0/scan_new,和你需要的全局话题/scan_new不匹配。
  • gmapping的私有参数不需要加set_前缀,rosrun中设置节点私有参数的规则是_参数名:=参数值。

正确命令

ROS_NAMESPACE=tb3_0 rosrun gmapping slam_gmapping scan:=/scan_new _base_frame:=tb3_0/base_footprint _odom_frame:=tb3_0/odom _map_frame:=tb3_0/map

验证方法

命令启动后,可以执行下面的命令确认gmapping订阅的话题是否正确:

rosnode info /tb3_0/slam_gmapping

在输出的Subscriptions字段中,能看到订阅的话题包含/scan_new即为配置成功。

内容的提问来源于stack exchange,提问作者AmirulJ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 01:18:02