9.浅谈ROS_control

概念

在这里插入图片描述
如上图所示,ROS control就是中间的controller + RobotHW部分,在编写完机器人的urdf文件之后,为了使机器人的关节和ros control关联,需要在urdf文件做出一些修改,RobotHW是对机器人硬件的软件抽象,在urdf中定义,对于controller来说,ros_control本身提供一些位置、速度、力控制器。

修改

transmission

    <transmission name="tran1">
        <type>transmission_interface/SimpleTransmission</type>
        <joint name="head_pan_joint">
            <hardwareInterface>EffortJointInterface</hardwareInterface>
        </joint>
        <actuator name="motor1">
            <hardwareInterface>EffortJointInterface</hardwareInterface>
            <mechanicalReduction>1</mechanicalReduction>
        </actuator>
    </transmission>

gazebo

    <gazebo>
        <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">
            <robotNamespace>/pi_robot</robotNamespace>
            <robotSimType>gazebo_ros_control/DefaultRobotHWSim</robotSimType>
        </plugin>
    </gazebo>

launch

<node name="controller_spawner" pkg="controller_manager" type="spawner" respawn="false"
    output="screen" ns="/pi_robot" args="head_pan_joint_position_controller head_tilt_joint_position_controller torso_joint_position_controller left_shoulder_forward_joint_position_controller right_shoulder_forward_joint_position_controller left_shoulder_up_joint_position_controller right_shoulder_up_joint_position_controller left_elbow_joint_position_controller right_elbow_joint_position_controller left_wrist_joint_position_controller right_wrist_joint_position_controller joint_state_controller"/>

这里是运行了controller_manager节点,命令如下:

  • load
  • unload
  • start
  • stop
  • spawn: load & start
  • kill: stop & unload
    文件中选用了spawn。

yaml

pi_robot:
  # Publish all joint states -----------------------------------
  joint_state_controller:
    type: joint_state_controller/JointStateController
    publish_rate: 50  
  
  # Position Controllers ---------------------------------------
  head_pan_joint_position_controller:
    type: effort_controllers/JointPositionController
    joint: head_pan_joint
    pid: {p: 100.0, i: 0.01, d: 10.0}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

lilili~

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

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

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

打赏作者

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

抵扣说明:

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

余额充值