基于MotionPlanning对Rviz和Gazebo仿真中机械臂的规划和控制

1. 仿真启动

# Rviz启动
ros2 launch ur_moveit_config ur_moveit.launch.py ur_type:=ur5 sim:=true use_sim_time:=true moveit_controller_manager:=joint_trajectory_controller
# Gazebo启动
ros2 launch ur_simulation_gazebo ur_sim_control.launch.py ur_type:=ur5 launch_rviz:=false

2. 控制器确认

ros2 control list_controllers

在这里插入图片描述

3. 修改MoveIt控制器配置

# /opt/ros/humble/share/ur_moveit_config/config/controllers.yaml
controller_names:
  - joint_trajectory_controller  # 仅保留一个控制器

joint_trajectory_controller:
  action_ns: follow_joint_trajectory
  type: FollowJointTrajectory
  default: true
  joints:
    - shoulder_pan_joint
    - shoulder_lift_joint
    - elbow_joint
    - wrist_1_joint
    - wrist_2_joint
    - wrist_3_joint

在这里插入图片描述

4. Rviz控制Gazebo

MoveIt通过/move_action接口将轨迹发送给Gazebo,Gazebo中的UR会跟随RViz的轨迹运动,通过以下命令验证关节状态实时更新:

ros2 topic echo /joint_states

在这里插入图片描述

ur的规划和控制(正常情况)

ur的规划和控制(关节无法抵达情况)

5. 故障排查

ur_moveit_config默认会配置两个控制器scaled_joint_trajectory_controller和joint_trajectory_controller,需要确保MoveIt配置的控制器跟Gazebo激活的保持一致。

cd ~/ros2_ws/src/Universal_Robots_ROS2_Driver/ur_moveit_config
grep -r "scaled_joint_trajectory_controller" .
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

具身小站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值