cartographer订阅/发布话题

订阅的话题

Cartographer订阅哪些话题,主要由你在 Lua 配置文件中的设置决定。其中,测距数据(Range Data)是必需的,以下几种话题是互斥的,即至少需要提供其中一种。

话题名 消息类型 说明与配置参数
scan sensor_msgs/LaserScan 用于2D或3D建图的单线激光雷达数据。由 num_laser_scans 控制数量,默认为1。
points2 sensor_msgs/PointCloud2 PointCloud2格式的点云数据 。由 num_point_clouds 控制数量。

除了必需的测距数据,Cartographer 还可以通过配置选择性地订阅以下辅助传感器数据,以提高建图精度和鲁棒性。

话题名 消息类型 说明与配置参数
imu sensor_msgs/Imu IMU数据 。在2D建图中可选 ,但在3D建图中必需 。如果Lua配置中启用了 use_imu_data,则会订阅。
odom nav_msgs/Odometry 轮式里程计数据。当 Lua 配置中 use_odometry 设置为 true 时启用。
fix sensor_msgs/NavSatFix GPS数据。当 Lua 配置中 use_nav_sat 设置为 true 时启用。
landmark cartographer_ros_msgs/LandmarkList 已知地标数据。当 Lua 配置中 use_landmarks 设置为 true 时启用。

要求的TF变换 (Required tf Transforms) :Cartographer 期望整个 TF 树中,tracking_frame 到所有传感器帧(如 laser_frame)的变换路径是完整且畅通的。

++tracking_frame 是 Cartographer 在 lua 配置文件中指定的一个坐标帧,它通常是机器人本体上的一个关键点,比如 base_link 或 imu_link。++ 通常由 robot_state_publisher通过URDF来发布,根据 URDF 文件计算并发布各个 link 之间的坐标变换。

当 robot_state_publisher 完成发布后,TF 树中就有了从 map -> odom -> base_link -> laser_frame 这样完整的链条。此时,Cartographer 只需要将 tracking_frame 设为链条上的一个节点(如 base_link 或 imu_link),就能通过 TF 系统随时查询到任何传感器在世界坐标系下的位置了。

发布的话题

话题名 消息类型 说明
submap_list cartographer_ros_msgs/SubmapList 所有子图的列表,包含每个子图的位姿和版本号。这是构建和更新地图的核心数据。
scan_matched_points2 sensor_msgs/PointCloud2 用于扫描匹配的点云。这通常是经过滤波或投影后的点云,便于调试和观察实际参与匹配的数据。
tracked_pose geometry_msgs/PoseStamped 跟踪帧在map坐标系下的位姿 。仅在将 publish_tracked_pose 参数设置为 true 时才会发布。

提供的TF变换 (Provided tf Transforms) :Cartographer 会发布从配置的 map_frame 到 published_frame 的变换。如果启用了 provide_odom_frame,还会发布一个不受回环检测影响的、连续的 odom_frame 到 published_frame 的变换,这主要用于里程计推算。

对于livox_ros_driver2 发布的3D点云数据,需要配置3D建图的 .lua 文件,通过++设置 num_point_clouds = 1 并确保雷达数据被映射到 points2 上++,Cartographer就能正常工作了。

相关推荐
一颗小树x34 分钟前
《VLA系列》TurboVLA 技术解读:用直接 V+L→A 路径实现实时机器人控制
机器人·turbovla·30hz·0.2b
海盗12341 小时前
AI 新闻日报 2026-10-01:OpenAI 把 ChatGPT 变成智能体平台,VS Code 上线多模型编排,国产算力补到内核层
人工智能·chatgpt·机器人·人工智能aigc
FII工业富联科技服务5 小时前
2026工业AI智能体架构全景:从单Agent到多Agent协同的工厂级闭环实践
人工智能·ai·机器人·制造
workflower6 小时前
世界模型向产业上游发掘的热点
人工智能·机器学习·机器人·云计算·无人机
海盗12349 小时前
微软技术日报 2026-10-01:VS Code 1.140 让模型互相挑错,EWS 今天起关停
人工智能·驱动开发·microsoft·机器人·aigc
zhangrelay10 小时前
机器人或计算机智能与时间相关案例汇总(ROS2-ROS1)
linux·笔记·学习·ubuntu·机器人
zhangrelay20 小时前
ROS项目设计案例智能大模型正经乱答案例
linux·笔记·学习·ubuntu·机器人
苏打豆21 小时前
Pinocchio源码阅读——刚体运动物理量空间变换及求导
c++·线性代数·算法·矩阵·机器人
BSD_CGQ1 天前
从工业称重到机器人触觉:柔性压力传感器的跨场景工程适配路径
人工智能·机器人·压力传感器·柔性薄膜压力传感器
硅谷秋水1 天前
WLA³:面向语义、动力学与运动学的世界潜动作建模
人工智能·机器学习·计算机视觉·语言模型·机器人