Webots 简介
来源 https://zhuanlan.zhihu.com/p/137901286
1、引言
随着机器人技术的不断发展,越来越多的小伙伴开始成为机器人开发者。在机器人开发过程中,经常需要对机器人进行仿真,这时就需要用到机器人仿真软件。机器人仿真软件用于机器人算法的设计、测试和验证,可以大幅提高开发者的工作效率,降低开发成本。
Webots是一款优秀的机器人仿真软件,功能强大,易于使用。但由于Webots开源时间比较晚,在国内的市场占有率较低,目前使用Webots的开发者还不是很多。
Webots由Cyberbotics公司开发,是一款开源的多平台机器人仿真软件,为机器人的建模、编程和仿真提供了完整的开发环境。Webots内核基于开源动力学引擎ODE和OpenGL,可以在Windows,Linux和macOS上运行,并且支持多种编程语言(C/C++,Python,Java,MATLAB)。
Webots简单易用,文档齐全,支持多种类型的机器人,是一款非常优秀的机器人仿真平台软件。以下视频是Webots示例项目的实机演示视频,大家可以直观了解以下Webots。
我从2017年开始接触webots,现在主要用webots做四足机器人的仿真。在学习webots的过程中,发现网上系统的Webots中文教程比较少,因此我在这里尝试给大家写一份简易的Webots机器人仿真教程,以供参考。由于我本人精力有限,对webots的学习和使用并不算精通,教程中出现错误在所难免,也欢迎大家指出教程中的错误之处,以便我及时改正以免造成误导。
2、教程结构
本教程为简易教程,旨在帮助大家快速上手Webots,并不打算所有内容全讲一遍,但是熟悉Webots之后查阅官方文档也很简单。教程结构如下图所示。
教程结构
教程主要分为webots功能介绍和实践项目两个部分。功能介绍部分会逐一介绍webots概况,操作界面,机器人的建模,控制器和常用节点。实践项目有三个,包括四轮小车,倒立摆和四足机器人。实践项目都非常简单,弱化了控制算法部分,项目目的在于通过实践帮助大家熟悉webots的基础功能,希望想学习webots的小伙伴能有所收获。
3、Webots与其他机器人仿真平台
除了webots外,机器人仿真软件还有许多,较常用的如V-rep,Gazebo,Matlab,Adams等。V-rep是一款非常受欢迎的开源机器人仿真软件,由Coppelia robotics公司开发,内置多种不同的动力学引擎。V-rep与Webots一样支持多种类型的机器人仿真,支持多种不同的编程语言,支持Windows,Linux,macOS操作系统。Gazebo也是一款开源免费的机器人仿真器,与ROS兼容,常用于ROS中对机器人仿真,但Gazebo易用不高。Matlab机器人工具箱也可用于机器人仿真,但对某些复杂的机器人进行仿真时操作起来很复杂,不易用。Adams是MSC公司的机械系统动力学仿真软件,多用于汽车行业。用于机器人动力学仿真时常与matlab联合仿真,易用性较差。
与上述机器人仿真软件相比,Webots最大的优势在于功能强大的同时又简单易用。一方面Webots专为机器人仿真设计,功能强大。可直接建模,编程,仿真。仿真过程具有较好的视觉效果,且易于导出展示。另一方面Webots非常易用,学习成本低。支持多平台,多语言,具有完善的文档和示例用于参考。
但Webots也有许多缺点。首先,Webots建模过程比较繁琐,对于闭链结构机器人的支持不够完善,使用webots仿真并联机器人会比较麻烦。其次,Webots仿真过程数据不能自动保存,可视化做得也不是很好,使用较为不便。最后,Webots的中文支持也很一般,控制台不支持中文,软件界面中文翻译不完整,文档也没有中文版。
各位小伙伴在选择机器人仿真软件时可根据不同的仿真平台特点按需选择,仿真软件只是工具,适合自己项目、能提高开发效率、降低开发成本的工具才是好工具。
============= End