目录
1.主要仿真平台分类
1.Gazebo
2.Airsim
3.二者对比
参考文献
无人机常见仿真平台:6款常见的无人机仿真开发平台(附超详细特点功能对比)
Gazebo:Willow Garage 的工程师 John Hsu 将ROS和PR2集成整合进了 Gazebo 中,使 Gazebo 成为 ROS环境中主要工具之一。直到2012年,Gazebo从 williow Garage 中脱离并有开源机器人基金会(Open Source Robotics Foundation (OSRF))进行管理与开发。目前 Gazebo 是智能机器人领域应用较为广泛的仿真平台之一,具有多样的物理引擎、传感器模型和 3D场景等模块化设计,同时也具有模拟一般机器人连接部件和关节结构,如复杂的机械手臂或双足机器人。可以和ROS无缝链接。支持多种机型,rover,plane, standard_vtol等。
Airsim:具有高还原度的物理引擎和逼真的视觉场景两大特点,其物理引擎可支持主流无人机协议(如 MavLink)的高频实时硬件在环(HITL)的仿真。同时支持无人机类型、飞控和通信协议的拓展性更新与修改,适用于 pixhawk 飞控及PX4 固件,同时具备普通相机,立体相机,激光雷达,全球定位系统,IMU,磁力计等传感器。不仅可以使用C 和python代码来控制无人机,还可以使用PX4的飞行器遥控器。但是吃电脑硬件的一个,对显卡,CPU,内存要求均最高。安装过程中“坑”是最多的,目前github上更新维护较慢。
概念:Gazebo是一款3D动态模拟器,能够在复杂的室内和室外环境中准确有效地模拟机器人群。与游戏引擎提供高保真度的视觉模拟类似,Gazebo提供高保真度的物理模拟,其提供一整套传感器模型,以及对用户和程序非常友好的交互方式。
用途:测试机器人算法,设计机器人,用现实场景进行回归测试
系统要求:
Gazebo官方建议,Gazebo目前最好在Ubuntu或者其他的Linux发行版上运行。同时您的计算机需要具有以下功能:
1.专用GPU:Nvidia卡往往在Ubuntu中运行良好
2.至少是Intel I5或同等产品的CPU
3.至少500MB的可用磁盘空间
4.安装尽可能高版本的Ubuntu Trusty
注意:
1.只有cpu的情况下也是可以运行Gazebo的,但是场景过于庞大时频繁会出现闪退和卡死。
2.当可用内存过低运行内存而导致界面闪退(这样你的心血就没了),为了避免这种情况最好使用8G+的内存。
3.不同版本的linux发行版下的Gazebo使用并无太大差别,但是还是建议使用ubuntu,毕竟官方教程都是在ubuntu下运行的。
存在的问题:虽然Gazebo 功能丰富,但场景搭建与渲染部分已落后于当代发展,很难创建无人机仿真所需的与现实视觉环境相似的大型场景。
背景:现如今机器视觉和人工智能飞速发展,但是仿真软件中的环境不够逼真,直观看起来比较假,同时背景环境也不够丰富,并不能充分验证计算机视觉等相关算法。AirSim 就是在这种情况下应运而生的,它将四旋翼的动力学模型与游戏引擎(虚幻引擎 Unreal)相结合,借助游戏引擎强大的视觉渲染能力和丰富的场景,弥补了这一缺陷。
概念:在近几年AirSim发展迅速,是一款可以在物理和视觉上达到逼真模拟环境的平台。在此平台不仅有很多开源测试环境还模拟了汽车无人机等动力学模型,甚至于对天气、灯光控制也做出了很好的模拟效果,多平台的支持使AirSim有很大的发展前景。
用途:是由微软开源的无人机/无人车仿真工具,其本质是UE4(虚幻(游戏)引擎)的一个插件。它是一个开源的、可跨平台的并支持PX4和Ardupilot进行软件在环仿真的平台;并且,AirSim还支持PX4进行硬件在环仿真,以实现物理和视觉逼真的仿真,所以Airsim可以在任何UE4的3D场景地图中运行,可以充分利用epic商城提供的免费、付费地图。。
AirSim是作为一个 Unreal 插件开发的,也就是说可以投放到任何一个Unreal环境中。AirSim的目标是将其开发为人工智能研究平台,用于测验机器人的深度学习、计算机视觉和强化学习算法。为此,AirSim还公开API接口,以独立于平台的方式进行检索数据和控制系统。
优点在于:
1.PX4支持,并且支持其他多种飞行模式。
2.Python支持完善,官方提供大量python demo,可以快速进行算法可行性验证。
3.开箱即用,几乎内置所有你可能用到的设备,传感器:吊舱、深度相机、红外相机、雷达、imu、GPS等。你只需简单地修改启动配置文件就能拥有。
4.自带目标识别功能(从UE4端获取,非视觉识别)可以用于生成深度学习训练数据。
5.自带天气修改功能,呼风唤雨,就在此刻。
6.依靠于强大UE4,你甚⾄可以不用写⼀行代码就能实现地图搭建,物体移动,让无人机在你创造的世界中玩耍。
7.Linux/Windows支持。
安装:QGC、PX4和AirSim安装教程_哔哩哔哩_bilibili
课程:零基础同学的福利,带你走进Airsim 的大门 - 知乎
显然仿真效果上AirSim优于Gazebo,但是AirSim本身没有直接支持移动机械臂的仿真不过可以通过组合使用AirSim和其他库来实现这个目的。
例如,你可以使用一个机械臂模拟器(例如ROS的MoveIt或者Gym中的机械臂环境)来控制机械臂的运动,并将其与AirSim模拟器进行集成。这样就可以在AirSim中模拟一个带有机械臂的无人机或其他移动平台。
如果你想在AirSim中直接集成机械臂的模拟,可能需要自己进行一些开发工作。例如,你可以使用AirSim的自定义车辆或物体功能来创建一个代表机械臂的对象,并为其添加适当的物理属性和运动控制。
总之,虽然AirSim本身可能没有直接支持移动机械臂的仿真,但是通过组合使用其他库和自定义开发,可以实现这个功能。
补充:
机械臂仿真软件介绍:关于机械臂仿真的几款软件简介
1.微软开源仿真器AirSim ROS接口-CSDN博客
1.PX4仿真(gazebo,jmavsim,airsim)_make px4_sitl gazebo-CSDN博客
2.技术分享 | Airsim初探-用游戏引擎做仿真_阿木实验室的博客-CSDN博客
3.gazebo入门教程(一) 安装,UI介绍 - 古月居
4.PX4官方动态 | AirSim初见面_强化学习接口 px4_阿木实验室的博客-CSDN博客
5.Airsim仿真_DWQY的博客-CSDN博客
7.QGC、PX4和AirSim的安装_qgc不同版本下载链接_星云智能的博客-CSDN博客
8.AirSim:深度学习时代研究无人机的利器? - 哔哩哔哩
9.无人系统引入AirSim软件仿真的意义和实现手段 - 知乎