课程目录:PIXHAWK飞控培训
4401 人关注
(78637/99817)
课程大纲:

          PIXHAWK飞控培训

 

 

PIXHAWK飞控系统(固定翼)二次开发培训
1基础部分
PIXHAWK系统介绍:简述APM、PX4、PIXHAWK之间的历史变迁关系,以及平台间优势和劣势的比较。
系统架构概述:概述PX4源码组织结构,让大家从整体对PX4有所感知,了解每个文件的作用。
系统编译过程:讲述系统从上电开始所执行的动作,如何由单片机的启动过渡到操作系统,过渡到应用程序,后执行启动脚本。
启动过程描述:简述启动过程中mavlink的启动、sensor的启动、算法的启动等,加深对系统的理解,铺垫二次开发。
进程机制uORB:uORB是PX4系统中进程间通信(IPC)的一种机制,在PX4系统掌管着系统中所有的信息流,通过实例教授大家如何使用uORB打通进程间通信。
串级PID简介:PID是一种简单而又极美的控制算法,系统中的控制过程使用PID了,而且是串级过程。
系统参数介绍:对系统级别关键参数进行解释说明,如安全开关,解算带速,USB的链接检查,日志模式,机架类型等。
2 逻辑理解
功能模块整体介绍:高屋建瓴的介绍飞控整体数据流的执行过程,以及模块间的相互关系,对飞行控制有个系统的认识和整体的把握。
多冗余设计:介绍系统冗余设计的概念,多传感器的冗余设计,主副处理器的协同工作,源码分析多传感器的选择机制。
Commander决策分析:飞行模式的决策部分,结合源码学习模式切换的后退机制和故障保护策略,了解commander是如何影响姿态和位置的控制过程。
Navigator之takeoff:梳理navigator,模块的功能作用,分析数据的处理流程,结合源码学习takeoff的执行过程。
Navigator之land:分析数据处理流程,结合源码学习navigator中land的执行过程。
Navigator之loiter:分析数据处理流程,结合源码学习navigator中loiter的执行过程。
Navigator之missition:分析数据处理流程,结合源码学习navigator中missition的执行过程。
3 算法分析
姿态解算:简述EKF基础知识,阐述EKF2融合多传感器解算姿态的过程,结合源码分析解算过程,说明注意事项。
位置解算:简述位置坐标系间的转换关系,梳理EKF2中位置估计的过程,结合源码理解算法的实现。
姿态控制:梳理PX4中固定翼姿态控制的实现流程,讲述手动或自动下姿态控制响应的不同,
补充欧拉角速度和机体角速度之间的区别,结合源码学习姿态控制算法实现的过程。
L1控制:讲述制导算法基础知识以及在固定翼位置控制中的应用和源码的实现。
TECS算法:简述总能量控制算法的理论依据,以及在固定翼中的应用和源码实现。
位置控制:阐述固定翼源码中位置控制的实现过程,手动模式的下位置控制、定高模式下的位置控制、定点模式下的位置控制的不同实现过程。
AUTO模式:讲述固定翼位置控制源码中部分AUTO的控制实现,如takeoff在位置控制中的多情况分类处理,以及land的复杂逻辑。
4 实践尝试
自定义信息流:利用uorb创建新的msg,铺垫功能的二次开发。
NSH调试:简述NSH的调试过程,分析进程的运行频率。
Log日志分析:简述系统中两种Logger的不同,以及初步分析的简介。
Mixer实践:阐述Mixer脚本的定义以及PWM输出配置。