最近做实验,需要使用Webots仿真平台。记录一下Webots中的一些概念和常用的操作。

一些概念

  • world:整个你可以看见的仿真环境,包括机器人和机器人所在的场景,以.wbt为扩展名,存储在world目录中。
  • controller:控制仿真环境中虚拟机器人的控制器,可以是C++、python、java、matlab等语言编写,放置在每个Webots项目的“ controllers”子目录中。
  • motion:定义的一些列的虚拟机器人动作,比如,前进,后退,左转、右转,握手等等。

  • 场景树:描述整个仿真环境的一种结构,如下图:image-20210803200917964

    • WorldInfo:包含模拟场景的全局参数。
    • Viewpoint:定义主要视点相机参数。
    • TexturedBackground:定义场景的背景。
    • TexturedBackroundLight:定义与上述背景关联的光。
    • RectangleArena:定义场景中的方形棋盘。
    • WoodBox:定义场景中的三个木箱。

    每个节点都是场景中的元素,可以改元素下的属性(物体的大小、墙体的厚度、物体的位置等),来调整仿真环境。

world的操作查看方式

使用鼠标在3D视图中移动视点:

  • 视图旋转:左按钮移动

  • 视图平移:右按钮移动

  • 视图缩放:滚轮

  • 物体位置调整——移动:选中物体,鼠标移动到物体的坐标轴箭头处,可以激活当前该轴向的物体位置调节功能。拖过鼠标可以调节物体位置。image-20210803202027162

  • 物体姿态调整——转动:同理。选中物体,鼠标移动到物体的转动坐标轴处,可激活当前该转轴向的物体姿态调节功能。鼠标拖动可以调节物体姿态。

当然,最方便的还是选中物体,shift+鼠标左键移动来将物体移动到某位置位置,shift+鼠标右键移动 来控制物体的旋转。

你需要做的事情

  1. 搭建wrold(环境 + 机器人 + 物体等)
  2. 编写控制机器人的控制器controller,来完成你需要实现的机器人行为功能。
  3. 设置机器人的控制器为你写好的controller。设置方式如下图image-20210803205502071

tips

  • 修改Webots world保存时,首先要暂停模拟并将其重新加载到初始状态,即主虚拟计时器应显示0:00:00:000。否则,每次保存时,每个3D对象的位置都会累积错误。因此,对wrold的修改都应按以下顺序执行:暂停,重置,修改和保存仿真。

Webots教程

推荐csdn博主“我是。”的教程“熊猫飞天”的教程image-20210803212647750image-20210803214508910