logo资料库

webots使用介绍.pdf

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
Webots 基于 ODE 开源动力学仿真软件 (http://www.ode.org/) 下面通过一个例子快速上手 webots 1. 新建项目 安装完 Webots 6.4.3 后,双击出来欢迎界面,如下 点第一个 Guided Tour 可以看它自带的例子。点右下角的“Your Project”就新建了一个项目,软件的 主界面分为四大块。 1) 3D 窗口用于显示仿真环境(基于 openGL)(新建后系统默认设置是一个棋盘形的平地以及视角、 灯光、重力加速度等) 2) 场景树用于显示仿真环境中的物体属性,鼠标双击仿真环境中的物体即可看到场景树中对应的信 息。里面有 Worldinfo 等几个项,含义以后再说。 3) 代码区用于显示世界文件或控制器的代码,webots 自带 IDE(MinGW, 编程语言支持 C/C++、 Python、Java 等),也可以用其他 IDE,如 visual studio。 4) 控制台显示调试的信息和控制器的输出参数。
2. 编写控制器程序——controller 什么是控制器? 建立世界模型和机器人模型相当于搭建实验场地和物理平台。这时的机器人相当于没有装操作系 统的电脑,什么也干不了。要想让机器人干点什么就要通过控制器程序控制它。可以用以下程序语言: C,C++,Java,Python,Matlab。一个控制器程序可以给多个机器人同时用,但一个机器人一次只 能用一个控制器。 操作: 点工具栏上的 向导(wizard)——>新项目目录,弹出 这是选择你新建的文件放置的位置。选好后确定。 再进入 向导(wizard)——>新机器人控制器 选 C 语言即可,确定,弹出文件名窗口,给你的文件夹起个名吧,最好别用中文。
起好名后确定,弹出 看到了吧,它会自动在你选择的位置新建以上文件和目录。我起的名字是 turn。确定后在左面出 现了控制器的程序模版: 对此修改即可,我们先写个简单的控制器,功能是让机器人转圈。 程序代码如下,将其完全覆盖原来的模版即可: #include #include #define TIME_STEP 32 int main(int argc, char **argv)
{ wb_robot_init(); // set up the speeds wb_differential_wheels_set_speed(100, 200); do { } while (wb_robot_step(TIME_STEP) != -1); wb_robot_cleanup(); return 0; } 复制后点编辑区上工具栏上的 保存,再点 编译,最后点 生成可执行文件。 如果没有错误,会出现: 选是,则仿真环境被重置。 3. 导入机器人 先选中选择场景树的最后一项 Solid,再在最上面一列图标中的倒数第三个 ,叫 Add new。如果看 不到就调整一下场景树栏的宽度。 弹出这个 展开最后一项,选择 EPuck,点加入。
于是,一个小机器人就出现在 3D 窗口中了: 先说一下鼠标的使用: 在 3D 窗口中: 左键——调整视角 中键——缩放 右键——平移 Shift+左键——移动选中物体 Shift+中键——调整选中物体的高度 Shift+右键——按旋转轴旋转选中物体 双击选中物体——出现信息框(双击机器人试试) 在场景树中展开 Worldinfo 项,找到 runRealTime 项,在最下面的框中勾选 目的是让机器人仿真和控制器程序同步。如果是 false 则机器人能运行多快就多快。 展开 epuck 项 变为
找到 controller 项,下面有对应的选项: 它默认的控制器是 void,要选我们自己的,点省略号“…”,出来: 如果你刚才的程序没问题,这里会出现你生成的程序(后缀名是 exe,可以去看看),我的是 turn。 4. 仿真 点 3D 窗口上 中间的箭头 开始仿真,机器人就开始走了,再点 仿真结束,机器人停止。 未完待续
分享到:
收藏