Skip to content

踩坑Robotics Stack Exchange2024-11-29

Gazebo 如何以非 0 仿真时钟启动 ​

本文由 AI 根据公开内容整理,可能有误,请以原文为准:How can you start gazebo with a non-0 simulated clock time?(Robotics Stack Exchange #104397)

状态:已解决

问题 ​

Gazebo 启动时仿真时钟从 0 开始,代码若对小于 10 秒的时间戳执行减 10 秒等时间运算可能报错;提问者想修改初始 clock stamp。

环境 ​

Gazebo / Ignition 仿真环境

解决办法 ​

  1. 让依赖仿真时间的 ROS 节点设置 use_sim_time,确保共享同一时钟;对显式时间差计算先做时间戳检查或错误处理。
  2. 启动目标 world(不生成机器人),让 Gazebo 运行几秒后保存 world。
  3. 编辑保存得到的 .world 文件,在 SDF <world> 的 <state> 中调整 <sim_time> 为期望起始时间。
  4. 之后启动 Gazebo 时加载这个修改后的 world 文件;原文称未发现可通过 Gazebo ROS launch 文件直接设置的更简单方法。

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

来源

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

  1. Robotics Stack Exchange #104397:How can you start gazebo with a non-0 simulated clock time?访问 2026-10-22