2、认识Gazebo界面:启动Gazebo、主窗口布局、菜单栏详解、工具栏功能、世界面板与模型面板

好,咱们正式开始动手了。这一章我带你把Gazebo的界面摸个透。说实话,我第一次打开Gazebo时,看着满屏的英文和按钮,心里是有点懵的。但别怕,这东西就像你新买的车——方向盘、油门、刹车,位置搞清楚,剩下的就是熟练工。

2.1 启动Gazebo

启动方式很简单。打开终端,敲一行命令:

gazebo

嗯,就这么简单。但如果你像我一样,喜欢在ROS环境下工作,建议用:

roslaunch gazebo_ros empty_world.launch

为什么推荐后者?因为这样启动的Gazebo会自动和ROS的通信节点连上。我早期做项目时,直接敲gazebo启动,结果后面想用ROS控制机器人,发现话题接不上,折腾了半天。说白了,roslaunch方式帮你把“网线”提前插好了。

小提示:第一次启动可能会慢一些,因为Gazebo要加载一堆模型库。耐心等,别急着关。

2.2 主窗口布局

启动后,你会看到一个大窗口。我把它分成几个区域,你记一下:

  • 3D场景区:中间最大的那块,是你机器人跑动的地方。说白了,这就是你的“虚拟试验场”。
  • 左侧面板:默认显示“世界面板”和“模型面板”。这里管着场景里的所有东西。
  • 顶部菜单栏:文件、编辑、视图……标准的软件菜单。
  • 工具栏:一排小图标,用来添加物体、移动视角、运行仿真。
  • 底部状态栏:显示仿真时间、实时因子等信息。我一般不看它,除非仿真卡了。

你想想看,这个布局是不是很像一个3D建模软件?没错,Gazebo本质上就是一个带物理引擎的3D编辑器。

2.3 菜单栏详解

菜单栏我挑几个常用的讲,其他的你以后慢慢摸索。

菜单 常用功能 我的经验
File Open World, Save World, Exit 保存世界文件时,我习惯用.world后缀,方便后续加载
Edit Undo, Redo, Preferences Preferences里可以调渲染质量,电脑配置低的话,把阴影关掉
View Toolbars, Grid, Origin 我经常关掉网格,看着清爽一些
Window Topic Visualization, Log 调试时打开Topic Visualization,能看到所有话题数据
Help About, Tutorials 遇到问题先看Tutorials,比百度靠谱
重点:Save World这个功能,我建议你每调整一次场景就保存一次。我曾经调了半小时的灯光和模型位置,结果忘了保存,一关全没了。那种感觉,嗯,你懂的。

2.4 工具栏功能

工具栏在菜单栏下面,一排小图标。我把它们从左到右列出来:

  1. 选择模式(Select):默认状态,用来点击和选中模型。
  2. 平移模式(Translate):选中模型后,用这个可以移动它的位置。
  3. 旋转模式(Rotate):调整模型的朝向。
  4. 缩放模式(Scale):改变模型大小。注意,这个会改变物理属性,慎用。
  5. 撤销/重做(Undo/Redo):和编辑菜单一样。
  6. 添加模型(Add Model):点开后会弹出模型库,你可以拖拽模型到场景里。
  7. 添加灯光(Add Light):给场景加光源。
  8. 添加摄像头(Add Camera):固定视角的摄像头。
  9. 播放/暂停(Play/Pause):控制仿真时间的流动。
  10. 重置(Reset):把仿真时间归零,模型回到初始位置。

我个人习惯,把“选择模式”和“平移模式”用快捷键切换。默认快捷键是Esc选选择,G选平移。你试试,比用鼠标点图标快多了。

2.5 世界面板与模型面板

左侧这两个面板,是管理场景的核心。

世界面板(World)

这里管的是整个仿真环境的“大背景”。比如:

  • Physics:重力、摩擦力、时间步长。我一般不改,除非做特殊仿真。
  • Scene:背景颜色、阴影、网格。调成自己喜欢的颜色就行。
  • Atmosphere:大气参数,比如气压、温度。做无人机仿真时可能会用到。

模型面板(Models)

这里列出了场景里所有的模型。每个模型展开后,可以看到它的:

  • Links:刚体部件,比如机器人的轮子、机身。
  • Joints:关节,连接两个Link的东西。
  • Plugins:插件,用来给模型添加自定义功能,比如传感器数据输出。
注意:在模型面板里,你可以右键点击模型,选择“Delete”删除它。但如果你误删了,别慌,用Ctrl+Z撤销。不过有些版本不支持撤销删除,所以删之前想清楚。

2.6 本章知识结构图

下面这张图,帮你把本章的知识点串起来。我画的是Gazebo界面的核心逻辑:

Gazebo主窗口 菜单栏 工具栏 左侧面板 世界面板 模型面板 Physics Scene Links Joints 核心:菜单管设置,工具栏管操作,面板管内容

这张图你看懂了吗?说白了,Gazebo的界面就三个层次:菜单栏管全局设置,工具栏管即时操作,面板管场景内容。你把这个逻辑记住,以后用任何仿真软件都能快速上手。

我的习惯:每次打开Gazebo,我第一件事是检查左侧面板的Physics参数,确保重力是9.8。有一次我忘了检查,结果机器人飘在天上,我还以为代码写错了,折腾了半小时才发现是重力被改成了0。嗯,从那以后,我养成了这个习惯。

可可精品资料库