ROS 2 URDF 导入与关节状态发布
ROS2 中加载URDF模型,订阅关节角度,发布各连杆的坐标变换(TF)
作用:根据机器人 URDF 模型和实时关节角度,计算并发布各连杆之间的坐标变换(TF),让其他节点知道机器人每个部件当前的位置和姿态
ros2 run:ROS2 中运行一个功能包里的可执行程序
robot_state_publisher:功能包名,用于发布机器人的关节状态和 TF 变换
robot_state_publisher:可执行文件名(与包名相同),负责读取 URDF 并计算机器人各连杆之间的坐标变换
guanheRobotMachine.urdf:传给节点的参数,即机器人描述文件(URDF 格式)
# 进入 URDF 目录,替换为自己路径
cd /root/ros2_ws/src/robotguanhe/urdf/
# 加载指定的机器人 URDF 模型文件
ros2 run robot_state_publisher robot_state_publisher guanheRobotMachine.urdf

启动图形界面工具,手动模拟和发布机器人的关节角度
作用:提供一个图形界面(滑条窗口),让用户手动调节机器人关节角度,并将这些角度值发布到 /joint_states 话题,供 robot_state_publisher 等节点使用;
ros2 run:运行 ROS2 功能包中的可执行程序
joint_state_publisher_gui:功能包名(提供图形界面版本的关节状态发布器)
joint_state_publisher_gui:可执行文件名(启动一个带滑条窗口的程序)
# 安装 ros-jazzy-joint-state-publisher-gui
sudo apt update
sudo apt install ros-jazzy-joint-state-publisher-gui
# 启动 ros-jazzy-joint-state-publisher-gui
ros2 run joint_state_publisher_gui joint_state_publisher_gui

启动三维可视化工具(ROSt Visualization)
rviz2 是一个 3D 可视化工具,能订阅 ROS2 中的各种话题(TF、点云、图像、地图、路径等),将机器人的物理形态、传感器数据、运动状态和规划结果以图形化的方式实时展示出来,帮助开发者调试和观察机器人行为;
注:先启动 robot_state_publisher 加载 URDF,再打开 rviz2 → 点击 Add 添加 RobotModel → 将 Fixed Frame 设为 base_link(根坐标系),即可看到机器人模型;
ros2 run rviz2 rviz2
# 添加 RobotModel 显示项
# 1、点击 rviz2 左侧面板底部的 Add 按钮(弹出添加显示项的窗口)=>
# 2、选择 By display type 选项卡(按类型浏览)=>
# 3、找到并选中 RobotModel(机器人模型显示插件),并点击 OK 确认
# 设置 Fixed Frame(固定坐标系)
# 1、左侧 Global Options 区域 =>
# 2、找到 Fixed Frame 参数 =>
# 3、改为机器人根坐标系名称(通常是 base_link 或 base_footprint,基于URDF文件)


浙公网安备 33010602011771号