仿真算法验证成功后,如何快速实现真机无缝切换?

Prometheus仿真优势

首先,我们先通过下面这个视频了解一下Prometheus仿真有哪些优势:

Promethus仿真到真机无缝切换视频展示

Prometheus仿真最大的优势之一是采用了模块化设计,对每个操作节点进行了封装,使得仿真到真机可做到无缝移植,开发者无需进行额外修改和适配就可到真机上运行。
大部分开发者在二次开发过程中往往更专注于算法研究,对PX4、Mavros和程序连接等并不太熟悉。为了简化开发者的二次开发难度,我们对Prometheus进行了简化流程,使得开发者无需对底层控制系统进行修改即可实现仿真与真机之间的无缝切换。

Prometheus仿真流程


通过这四步完成控制仿真,相应“惯性系控制”,“机体系控制”,“经纬高控制”,“轨迹控制”,前三步不变,只是修改了第四步相应控制指令文件。

对于仿真控制二次开发,只需要保证前三部分正常运行,在第四部分控制指令程序做修改便可以,这里就可以通过对于”uav_control话题“相关订阅与发布实现相应功能。

Prometheus Demo实机飞行

当开发者二次开发自己的程序或者只是想要将仿真demo实机飞行,以P600进阶版无人机为例,首先无人机开机自启动通信程序”roslaunch prometheus_communication_bridge P600_communication.launch“(即“P600_communication.launch”);然后当地面站通过图数传链路IP连接无人机,无人机执行“roslaunch prometheus_uav_control P600_onboard.launch”(即“P600_onboard.launch”)。

而在“P600_onboard.launch”中主要做了下面四个步骤:
1、启动MAVROS连接飞控
2、设置PX4飞控相关参数
3、运行uav_control控制程序
4、加载uav_control_outdoor.yaml参数文件

最后地面站发送控制指令实现对于无人机控制。其中逻辑也是四个步骤:
1、P600_communication.launch:通信连接
2、P600_onboard.launch:连接飞控PX4
3、P600_onboard.launch:启动uav_control模块
4、Prometheus地面站:发布控制指令

将仿真流程和实机飞行流程进行对比时会发现,两者的四个操作步骤流程是一样的原理,不同的是:
1、通信连接中,仿真是虚拟连接,真机是真实连接。
2、飞控连接中,仿真是连接虚拟飞控prometheus_px4,真机是连接真机飞控PX4。
3、控制模块中,仿真是启动仿真电脑Prometheus:uav_control,真机是启动机载电脑Prometheus:uav_control。
4、控制程序中,仿真是launch运行,真机是Prometheus地面站发布。

由此可见,要将控制demo应用于实机非常简单,以“起飞降落demo”为例:只需要在真机运行前操作开机启动通信(具体步骤为:地面站连接无人机使得P600_onboard.launch运行、连接飞控PX4、启动uav_control模块),然后在机载电脑中运行takeoff_land.launch便可以了。

如果您对Prometheus仿真的具体过程感兴趣,请点击下方链接查看:
https://docs.amovlab.com/Prometheus_Simulation_Development_Kit_wiki/#/src/Prometheus%E4%BB%BF%E7%9C%9F/Prometheus%E4%BB%BF%E7%9C%9F

好物推荐:Prometheus仿真开发套件


Prometheus仿真开发套件是AMOVLAB为Prometheus仿真以及matlab仿真专门打造的一款小型X86计算主机,出厂既预装了仿真所需全部环境及资源,实现开发者上手一键仿真以及更方便快捷进行二次开发。Prometheus仿真开发套件软件分为两个版本,一个版本为Prometheus仿真主机,一个版本为Prometheus+matlab仿真主机,两者硬件相同,所配置资源与环境不同。详见往期文章《新手开发利器:PrometheusV2仿真开发套件,实现一键启动仿真》。

若您对本产品感兴趣,可添加下方微信,我们将给您提供专业的选购建议!