Gazebo 核心功能与关键配置
三、核心功能与关键配置
物理与场景
| 功能 | 关键参数 | 说明 |
| 物理引擎 | 求解器类型 | 新一代默认使用其一,Classic 可在多种引擎间切换;接触丰富场景要换更合适的求解器 |
| 步长 | 最大步长 | 通常取毫秒量级;步长越大越快,但接触和约束会不稳定 |
| 求解迭代次数 | 迭代上限 | 提高能改善接触稳定,代价是速度 |
| 实时因子 | 目标值 | 调试时可限制上限,保证仿真时间与真实时间比例稳定 |
| 关节控制器 | 位置/速度/力矩 | 与 ros2_control 结合时用对应的硬件接口插件 |
常用传感器插件
| 传感器 | 输出 | 说明 |
| 相机 | 图像 | 可设分辨率、帧率、视场角 |
| 深度相机 | 深度图与点云 | 需要图形后端支持 |
| 激光雷达 | 扫描或点云 | 分 CPU 与 GPU 两类,GPU 版能模拟更密的线束 |
| IMU | 角速度、线加速度、姿态 | 噪声模型要按真实器件设,否则融合算法测不出问题 |
| 接触传感器 | 接触力与位置 | 用于碰撞检测与力控验证 |
| 力/力矩传感器 | 关节或末端受力 | 机械臂拖拽与装配仿真常用 |
传感器插件的更新频率要与使用它的算法匹配:雷达设在十赫兹以上、IMU 设在百赫兹量级是常见做法,具体数值按需求定。频率设得过高会直接拖垮实时因子。
桥接话题映射
| ROS2 话题 | Gazebo 话题 | 说明 |
/cmd_vel | 对应的速度指令话题 | 通常只前进不出,是把 ROS2 到 Gazebo 的方向写反了 |
/odom | 里程计话题 | 差速插件通常直接产生 |
/scan | 激光话题 | 注意消息类型要与桥接声明一致 |
/clock | 仿真时钟 | 必须桥接,否则 use_sim_time 没有时间源 |
/tf | 由插件直接发布 | 多数情况下仿真侧直接发 TF,不需要桥接 |
