动手学Moveit2 | 运行配置好的机械臂功能demo

今天接着昨天的说,昨天配置好了moveit2自定义机械臂的功能包,但是并没有带你一起运行和测试,今天就带你一起测试下。

1. 安装依赖

如果你直接colcon build之后尝试launch例程的时候,八成会出错,因为还缺少关于ROS2 Control相关的功能包,接着我们来安装下:

第一个是controller-manager,原因简单,这个功能包用于管理控制器。

sudo apt install ros-humble-controller-manager -y

第二个是我们在moveit配置中用到的两个控制器,一个关节轨迹控制器,另一个是关节状态发布器。同样用apt 安装。

sudo apt install ros-humble-joint-trajectory-controller ros-humble-joint-state-broadcaster -y

如果没安装可能就会看到下面的错误,放一下,以示警醒

[ros2_control_node-4] [ERROR] [1663329034.856220363] [controller_manager]: Loader for controller 'test_group_controller' (type 'joint_trajectory_controller/JointTrajectoryController') not found.
[ros2_control_node-4] [ERROR] [1663329034.856438365] [controller_manager]: Loader for controller 'joint_state_broadcaster' (type 'joint_state_broadcaster/JointStateBroadcaster') not found.

2.检查配置文件

之所以再运行前检查下配置文件,是小鱼发现生成的配置文件还有一个小bug,关于Moveit2的Action客户端所要连接的服务的命名空间名称的。
打开文件src/elite_moveit2/elite_ec66_moveit_config/config/moveit_controllers.yaml,检查配置文件中是否有action_ns这一项配置,若无则手动添加一个,其值设置为follow_joint_trajectory即可。

# MoveIt uses this configuration for controller management

moveit_controller_manager: moveit_simple_controller_manager/MoveItSimpleControllerManager

moveit_simple_controller_manager:
  controller_names:
    - test_group_controller

  test_group_controller:
    type: FollowJointTrajectory
    joints:
      - joint1
      - joint2
      - joint3
      - joint4
      - joint5
      - joint6
    action_ns: follow_joint_trajectory
    default: true

目前发现的坑就这一个,接着我们开始运行demo吧。

3. 编译运行Demo

接着我们就可以来编译代码并运行了,同样使用colcon 位置别搞错了我,在src的同级目录下运行

colcon build

接着运行

source install/setup.bash 
ros2 launch elite_ec66_moveit_config demo.launch.py


不出意外你将看到下面界面

接着我们让机械臂规划运动到HOME姿态
在这里插入图片描述

4.总结

通过这个小demo你可以直观的感受moveit2的强大,但还有很多需要我们探索的,比如机械臂是如何规划的,规划的过程中如何结合环境信息,规划的时候机械臂如何求解,如何和真实的机械臂对接等等,这些都需要你来进一步探索,今天就到这里,明天给大家秀一下小仙女焊的fishbot运控板。

  • 9
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值