概要
记录论文中使用到的部分技术:基于Matlab 实现PX4代码开发、硬件在环仿真以及部署全流程
环境安装
版本:Matlab 2023b + PX4 v1.12.3 或 Matlab 2024a + PX4 v1.14.0
主要安装Simulink + UAV Toolbox Support Package for PX4 Autopilots,其中工具箱版本主要依赖Matlab版本.
2023b安装px4_cygwin提供PX4提供编译工具链支持。2024a采用WSL2提供PX4环境。
Ref: https://ww2.mathworks.cn/help/uav/px4-spkg.html
Matlab如何与PX4集成
Matlab选择硬件平台为PX4飞控板后,可以将simulink代码通过UAV Toolbox Support Package for PX4 Autopilots编译成一个PX4模块载入到飞控中。并且可以实现Simulink中的控制,估计,导航等功能。
PX4 的总体架构
PX4 的高级软件架构包括用于存储、外部连接、驱动程序、uORB 发布-订阅消息总线以及飞行堆栈组件的模块。
PX4 Architecture (Image courtesy: https://dev.px4.io/v1.9.0/en/concept/architecture.html)

例如:
- uORB 发布-订阅消息总线
- 控制器
- 状态估计器
- 输出驱动器
- 传感器输入等
Matlab支持的接口


无人机控制技术细节
通用 PX4 架构中的位置控制器和姿态与速率控制器模块可以替换成自定义控制器。从而为特殊构型无人机提供高效的开发方式,而且可以充分利用硬件在环仿真来调试。此外,借助自定义通信协议,可以轻松实现额外控制器,并不局限于传统多旋翼平台。

其他
自定义消息接口并不友好,保存自定义日志接口并不理想。实际通过自定义高帧率串口协议实现和上位机通信以及日志保存。

6304

被折叠的 条评论
为什么被折叠?



