PX4二次开发(一:PX4架构)

概念

本节包含有关PX4系统架构和其他核心概念的主题。

目录

  1. PX4架构

  1. PX4飞行栈架构

  1. 事件接口

  1. 飞行模式

  1. 飞行任务

  1. 控制分配(混控Mixing)

  1. PWM限制状态机

  1. 系统启动

  1. PX4 SD卡布局

PX4系统架构

以下各节提供了两个 "典型 "PX4系统的PX4硬件和软件堆栈的高级概述;一个是只有一个飞行控制器,另一个是有一个飞行控制器和一个配套计算机(也称为 "任务计算机")。

*注:PX4架构概述提供了关于飞行栈和中间件的信息。ROSMAVSDK中涵盖了机外API。

飞行控制器

下图提供了一个基于飞行控制器的典型 "简单 "PX4系统的高层次概述。

该硬件包括:

  • 飞行控制器(运行PX4飞行栈)。这通常包括内部IMU、罗盘和气压计。

  • 通过I2C、SPI、CAN、UART等连接的传感器(GPS、罗盘、距离传感器、气压计、光流量、气压计、ADSB转发器等)。

  • 相机或其他有效载荷。相机可以连接到PWM输出或通过MAVLink。

  • 用于手动控制的遥控系统(RC Control System, Radio Control System )。

图的左侧显示了软件堆栈,它与图中的硬件部分水平对齐(大约)。

  • 地面站计算机通常运行QGroundControl(或其他一些地面站软件)。它也可能运行机器人软件,如MAVSDK(打开新窗口)或ROS

飞控和配套电脑

下图显示了一个PX4系统,其中包括一个飞行控制器和一个配套计算机(这里称为 "任务计算机")。

飞行控制器运行标准的PX4飞行堆栈,而配套的计算机提供高级功能,如避障碰撞预防。这两个系统使用快速串口或IP链接连接,通常使用MAVLink协议进行通信。与地面站和云端的通信通常通过配套计算机进行路由(例如,使用MAVLink路由器(来自英特尔))。

PX4系统通常在配套计算机上运行Linux操作系统(因为PX4/PX4-Avoidance项目提供为Linux设计的基于ROS的避障库)。与NuttX相比,Linux是一个更好的 "通用 "软件开发平台;有更多的Linux开发人员,并且已经编写了许多有用的软件(例如,用于计算机视觉、通信、云集成、硬件驱动程序)。配套电脑有时也会因为同样的原因而运行安卓系统。

*注:该图显示了通过LTE连接云端或地面站的情况,这种方法已经被许多基于PX4的系统所采用。PX4并不提供专门用于LTE和/或云端整合的软件(这需要定制开发)。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值