学习笔记18--urdf中的活动关节加载到gazebo中,整个模型碰就飞起来或者重力异常问题解决

环境:ubuntu16.04 ros-kinetic gazebo7.16

针对的是关节类型活动类型的,如下面案例中:

<joint name="axis_to_link" type="revolute">

问题表现:模型在gazebo世界中出现重力异常,或者漂浮状态,甚至飞起状况.

原因是:加载urdf模型到gazebo中时候,我们没有定义活动关节的pid,导致gazebo无法进行该活动关节的计算,导致上述情况出现.

解决方式:在启动urdf模型的launch文件中添加加载一个语句,加载一个yaml文件,里面写有活动关节的pid参数(这个需要调整至合适的,一般随便填写也可以解决了上述的问题表现的.)
launch文件添加语句:

<rosparam command="load file="$(find package_a)/路径/xx.yaml"/>

yaml文件中pid定义样式:

gazebo_ros_control:
  pid_gains:
    # these gains are used by the gazebo_ros_control plugin
    axis_to_link:
      p: 500.0
      i: 0.01
      d: 300.0

通过添加pid的定义,可以解决了urdf模型因为活动关节原因异常情况发生.

这里要注意的是yaml文件的填写样式,否则,没办法正常把关节的pid给到gazebo的.

你可能感兴趣的:(urdf,gazebo)