Skip to content

踩坑Robotics Stack Exchange2017-03-19

Gazebo SetForce()导致力传到整个模型 ​

本文由 AI 根据公开内容整理,可能有误,请以原文为准:Gazebo joint->SetForce() call applies forces to the whole model. How to circumvent that?(Robotics Stack Exchange #11642)

状态:有绕过办法

问题 ​

在 Gazebo 插件 OnUpdate() 中对转动关节调用 joint->SetForce() 让激光往返旋转时,力会传递到模型其他部分,尤其是承载激光的 chassis,但底盘又不能用固定关节固定到地面。

环境 ​

Gazebo / Ignition 仿真环境

解决办法 ​

  1. 给 chassis 增加足够大的质量,例如在 <link name='chassis'> 的 <inertial> 中设置 <mass>10</mass>,让外力不产生明显加速度。
  2. 如果不想只靠增重,应建模轮子与地面的连接;答案建议用一系列柔性关节模拟与地面的接触,而不是把移动车辆用固定关节固定到地面。

原问题作者:pijemcolu;采纳答案作者:Chuck。原内容依 CC BY-SA 4.0 授权,本页摘要同样依 CC BY-SA 4.0 授权。

来源

本页事实对应的公开页面,以原文为准。

  1. Robotics Stack Exchange #11642:Gazebo joint->SetForce() call applies forces to the whole model. How to circumvent that?访问 2026-10-22