图 19-7 · 五步实验路线:从读懂一棵树到查任意两位姿

本图回答的问题:五步分别针对 ros2 launch car1_description display.launch.py 的哪个部分,动手做什么、看什么输出?

① 理解树概念 URDF 的 link/joint = frame/边 · node list ② 发布静态边 fixed 关节 → /tf_static echo 读回 · 与 URDF 对账 ③ 发布动态边 拖滑块 → /joint_states → /tf 持续刷新 hz > 0 ④ 可视化验证 view_frames + RViz rqt_tf_tree ⟳ 点刷新 ⑤ 查询相对位姿 tf2_echo 父 子 或 Buffer.lookup_transform 看得见:3 节点在场 整棵树轮廓认全 看得见:echo 数值 = URDF 原值 看得见:拖滑块四处 同动(角/tf/rviz/查边) 看得见:frames.pdf + RViz 轴与帧名 看得见: [0.000, 0.000, 0.029] 两处高频错:frame 名大小写差一个字符 · target/source 顺序写反 前者 Frame does not exist,后者坐标直接飞出(等于求了逆变换) 调试三板斧 echo 查单边 → frames 查全树 → RViz 看效果 五步走完 = 单边、全树、现场三重证据齐 → 05 节验收六条逐条打勾
✅ 结论:五步各有产出,末步的对账数字来自首步读过的 URDF ⚠️ 风险:名字与顺序两类错都会让第 ⑤ 步查询落空 🔍 验证:04 节各步命令卡逐条执行 · 05 节验收 6 条
EXP-19 · TF2 坐标系变换