首页 > 解决方案 > Turtlebot 在 Gazebo ROS Kinetic 中无意中自行移动

问题描述

当我开始在 Gazebo 中模拟 Turtlebot 时,它会自行缓慢移动(线性和有角度)。如果我检查 Gazebo 发布的 'odom' 消息,总会有一个小转折(线性 x 和角度 z)。几分钟后,您可以在 Gazebo GUI 中清楚地看到更改后的姿势。这也发生在 Gazebo 中生成的其他一些简单对象(如圆柱体)上。我已经在机器人和世界 URDF 中测试了其他摩擦值,但没有成功。

要重现该问题,您可以简单地从 turtlebot_gazebo 包运行 turtlebot_world.launch 并查看“odom”消息:

roslaunch turtlebot_gazebo turtlebot_world.launch &
rostopic echo /odom

200 秒后,我看到它有轻微的旋转(几度),但几乎处于相同的位置。如果您查看地面上的接触点,您会发现车轮之间存在连续振荡,这会导致小的数值积分误差累积。

凉亭联络点

示例奥多姆:

header: 
  seq: 20117
  stamp: 
    secs: 201
    nsecs: 190000000
  frame_id: "odom"
child_frame_id: "base_footprint"
pose: 
  pose: 
    position: 
      x: 1.59948835343e-07
      y: 6.79624858795e-07
      z: 0.0
    orientation: 
      x: 0.0
      y: 0.0
      z: -0.0384809462098
      w: 0.999259334096
  covariance: [0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1000000.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1000000.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1000000.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.05]
twist: 
  twist: 
    linear: 
      x: 6.49424452091e-06
      y: 0.0
      z: 0.0
    angular: 
      x: 0.0
      y: 0.0
      z: -0.000414815298426
  covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
---

系统:Ubuntu 16.04(内核 4.15),ROS Kinetic(最新版本的所有相关软件包,Gazebo 7)。

标签: rosgazebo-simu

解决方案


推荐阅读