PX4项目学习::(七)飞控栈算法梳理

无人机算法分为三种,分别为捷联式惯性导航系统、滤波算法和估计算法 (卡尔曼滤波器)、飞行控制算法(PID算法)。

Px4控制算法综述
1commander和navigator产生期望位置

2position_estimator是当前位置,attitude_estimator是当前姿态;LPE和EKF2融合了两个估算;三选一即可

3通过pos_ctrl产生期望姿态,通过att_ctrl产生pwm的数值

4最后通过mixer和motor_driver控制4个电机
 

Firmware/src/modules
【内部包含算法应用部分的代码实现,包含包含姿态结算、姿态控制、配置结算、位置控制、落地检测、sensor 初始化、系统配置、uORB、commander等】
modules中的 代码模块 && 各模块功能

  1. attitude_estimator_q使用mahony 的互补滤波算法实现姿态解算
  2. commander:实现整个控制模式代码;如起飞前的sensor的校准算法、安全开关使能、飞行模式切换、pixhawk硬件上的显示定义等
  3. land_detector:飞行过程中使用land模块检测降落以及着陆状态;并发布”vehicle_land_detected“的topic,内部会监测z轴速度和加速度等状态参数。考虑了使用不同机型(多旋翼、固定翼、垂直起降等)时机体状体、推力、运动不同(每种机型都有其各种的算法)
  4. local_position_estimatorLPE算法实现位置解算,类似简单的EKF,一个预测一个修正
  5. mavlink:和地面站的通讯协议,结合地面站QGC源代码配合修改或仅仅调用mavlink内部的API接口,即可通过无线信号将所需要的数据显示在地面站QGC上(该方法是一种实时监测”目标数据“的方法)
  6. mc_att_control:姿态控制的算法实现,姿态的内外环PID控制,外环控制角度,内环控制角速度
  7. mc_pos_control:位置控制的算法实现,位置的内外环PID控制,外环控制速度,内环控制加速度
  8. sensors各种传感器的相关参数(包含数据流中的异常检测、传感器校准、陀螺仪加速度计参数)
  9. systemlib:系统所需的参数列表。
  10. uORB:进程间的通信,系统中的数据流

px4算法研究之基础知识整理 - 程序员大本营 (pianshen.com)

(27条消息) 1.Px4控制算法综述_xiaoxilang的博客-CSDN博客_px4飞控算法

px4代码解析(一):航点位置到点判据 (360doc.com)

PX4算法解析(二):L1制导律进阶 (360doc.com)

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值