5. Moveit moveit编程与空间规划

1.添加配置文件——controllers.yaml

关联了arm_controller控制器名称,follow_joint_trajectory命名空间,FollowJointTrajectory的action类型(规划轨迹是以action发布的),是否为默认控制器,与该规划组所包含的关节。

controller_list:
  - name: arm_controller
    action_ns: follow_joint_trajectory
    type: FollowJointTrajectory
    default: true
    joints:
      - joint1
      - joint2
      - joint3
      - joint4
      - joint5
      - joint6
      
  - name: gripper_controller
    action_ns: gripper_action
    type: GripperCommand
    default: true
    joints:
      - finger_joint1

注意!这个是后加的!这个个控制器是对标ArbotiX的,在配置助手创建config文件时,并不知道ArbotiX这个控制器,用的是moveit中的虚拟控制器,其中虚拟控制器如下,注意区分!细节在书中P323.

controller_list:
  - name: fake_arm_controller
    type: $(arg fake_execution_type)
    joints:
      - joint1
      - joint2
      - joint3
      - joint4
      - joint5
      - joint6
  - name: fake_gripper_controller
    type: $(arg fake_execution_type)
    joints:
      - finger_joint1
initial:  # Define initial robot poses.
  - group: arm
    pose: home

2.修改启动文件的launch文件

因为默认的是加载ros_controllers.yaml——这个是moveit配置助手的默认生成的,而我要用的是关于ArbotiX的控制器,故需要进行修改,将ros_去掉。修改后如下。同时注意<arg name=" " default=" ">  $(arg moveit_controller_manager)的方式。

<launch>
  <!-- Define the controller manager plugin to use for trajectory execution -->
  <param name="moveit_controller_manager" value="moveit_simple_controller_manager/MoveItSimpleControllerManager" />

  <!-- loads controller list to the param server -->
  <rosparam file="$(find marm_moveit_config)/config/controllers.yaml"/>
</launch>

3.关节空间规划

其launch文件

<launch>
    <!-- 不使用仿真时间 -->
    <param name="/use_sim_time" value="false" />

    <!-- 启动 arbotix driver-->
    <arg name="sim" default="true" />

    <par
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值