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

本文介绍在Ubuntu16.04环境下,使用ROS Kinetic和Gazebo7.16时,URDF模型出现重力异常、漂浮或飞起的情况。原因在于未定义活动关节的PID参数。解决方案是在launch文件中加载包含PID参数的yaml文件,通过正确配置PID参数,使URDF模型在Gazebo中稳定运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境: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的.

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值