多旋翼无人机进阶教程
- 多旋翼 /
- 无人机 /
- 系统 /
- 学习 /
- 教程 /
无人机是一个系统的工程,不可谓不庞大。
开源飞控盛行,重复造轮子的工作实在无需再做。
但是若决定真正的去研究飞控,必须从本质出发,熟悉并了解其实现原理。
纷繁复杂的资料,让人无法分辨。
笔者不才,现根据自己的学习经历整理出一套多旋翼无人机的系统学习教程,愿能让你少走弯路,也是对自己的一个总结。
主要针对PX4项目。
航模概念扫盲
无论你是一个纯粹的新手,或者是对无人机已经了然于心,笔者都推荐认真阅读一下Crazepony的wiki。从这里你能够对无人机的前世今生、相关术语、基本组成以及作用有一定的感性的认识。
以下是该wiki的介绍:
这里是Craze团队提供的航模维基百科。
下面的介绍航模基本概念,开源飞行控制器,多悬翼飞行器基本组成等内容。希望我们的努力能够为新手入门提供帮助和指导。
姿态
在真正开始之前,首先要真正理解飞行器的姿态是什么。你会怎么样去描述一架无人机的当前状态?
以及其表示方法:四元数、欧拉角、方向余弦矩阵的意义与原理。
参考文献:
- 捷联惯性导航技术。张天光等。24-33,捷联姿态表达式。
- 惯性导航。秦永元。5-9,常用关系式;287-304,捷联惯性导航系统。
- A Guide To using IMU (Accelerometer and Gyroscope Devices) in Embedded Applications.(译文链接) → 传感器数据处理
- DCM TUTORIAL – AN INTRODUCTION TO ORIENTATION KINEMATICS (REV 0.1) → 姿态表示方法推导
- Direction Cosine Matrix IMU: Theory(译文链接) → DCM入门必读
- KINEMATICS OF MOVING FRAMES → 运动学
- Lecture 2: Dynamic modeling of MAVs → 动力学
姿态估计
在理解了姿态的表示方法后,就需要进行姿态估计/解算了。即怎么使用已有的传感器准确的表示出飞行器的当前姿态。可以说是一种传感器的数据融合过程。目前常用的方法有:Mahony互补滤波、Madgwick的梯度下降法、以及卡尔曼滤波及其各种变体。
参考文献:
- A complementary filter for attitude estimation of a fixed-wing UAV → ECF
- Nonlinear Complementary Filters on the Special Orthogonal Group → NCF
- An efficient orientation filter for inertial and inertial/magnetic sensor arrays → GD
- An Introduction to the Kalman Filter(译文链接) → 卡尔曼滤波器介绍
- Novel Quaternion Kalman Filter → 综述性文章
- Indirect Kalman Filter for 3D Attitude Estimation → 值得一看的文章
- A practical approach to Kalman filter and how to implement it(译文链接) → 卡尔曼滤波推导实现
- Understanding the Basis of the Kalman Filter Via a Simple and Intuitive Derivation → 卡尔曼滤波概率推导
- Keeping a Good Attitude: A Quaternion-Based Orientation Filter for IMUs and MARGs → 个人觉得很不错却没能复现
- IMU Data Fusing: Complementary, Kalman, and Mahony Filter → IMU数据融合方法比较
姿态\位置控制
姿态控制控制姿态,控制飞行器到达目标的姿态。也就是让目标姿态与当前姿态之间的误差最小化。姿态控制作为位置控制的内环,其输出直接关系到力矩的分配。四旋翼飞行器是一种典型的欠驱动系统。目前常用的控制方法有:线性二次型最优控制 (Linear Quadratic Regulator, LQR) 、反步 (Backstepping) 控制法、 PID(Proportional – Integral – Derivative) 控制、自抗扰控制(Active Disturbance Rejection Control, ADRC)、滑模 (Sliding Mode) 控制。
- 四轴PID讲解 → 建议查看
- High Performance Full Attitude Control of a Quadrotor on SO(3) → 倾转分离控制
- Minimum Snap Trajectory Generation and Control for Quadrotors → PX4引用
- The future of PID control
- Backstepping and sliding-mode techniques applied to an indoor micro quadrotor → 反步法
- Feedback Linearization vs. Adaptive Sliding Mode Control for a Quadrotor Helicopter
- From PID to Active Disturbance Rejection Control → 向韩老师致敬
- Active Disturbance Rejection Control for MEMS Gyroscopes
身为不搞控制的双控烟酒僧,很惭愧。
系统建模
很抱歉把这一章放在这个位置。
相信仔细学习了上面的资料并且在查阅了相关的文献后后你已经对无人机有了一定的认识了。
接下来可以更加系统的学习多旋翼飞行器的系统结构了,分析系统的模型已经整个算法的组织。
贴一张文献1的图:
参考资料:
- Multirotor Aerial Vehicles Modeling, Estimation, and Control of Quadrotor → 说这是No.1不知道谁有意见
- Trajectory Generation and Control for Quadrators → Kumar的学生,毕业论文
- Modelling and control of a large quadrotor robot → X-4 Flyer
- Modelling, Identification and Control of a Quadrotor Helicopter → 值得一看
- Design and Control of quadrotors with application to autonomous flying → 看这个应该够了
- 多旋翼飞行器设计与控制 → 重磅!北航全权老师的课件,慕课链接
- Robotics:Areial Robotics → 宾夕法尼亚大学慕课,Kumar主讲
- 飞控漫谈 → 一字并肩王博士
读完这些,可以说飞控的基本的控制已经能够从原理到物理意义已经熟悉了。
以上只是最基本的飞行性能的实现,非常之底层。而现在的趋势是能够做一些上层应用,视觉导航、避障……
开源飞控的出现,极大的促进了无人机的发展,拿来就能用,三个研究生就敢说开公司。
Pixhawk算是其中的佼佼者,接下来介绍一些关于PX4系统的资料,官方出版物,以及个人推荐的论坛博客。
关于PX4
官方参考文献:
- PIXHAWK: A Micro Aerial Vehicle Design for Autonomous Flight using Onboard Computer Vision → Pixhawk应该的样子
- PIXHAWK: A System for Autonomous Flight using Onboard Computer Vision → 是用CV的
- Full Autonomous Quadcopter for Indoor 3D Reconstruction Without External Sensors → Pixhawk的整体设计
- PX4: A Node-Based Multithreaded Open Source Robotics Framework for Deeply Embedded Platforms → PX4软件
- Onboard Object Recognition on the PIXHAWK Micro Air Vehicle → 目标识别
- An open source and open hardware embedded metric optical flow CMOS camera for indoor and outdoor applications → PX4 Flow
- Optic Flow-Based Vision System for Autonomous 3D Localization and Control of Small Aerial Vehicles
- A New Nonlinear Guidance Logic for Trajectory Tracking → L1导航
- MAVLink Tutorial for Absolute Dummies (Part –I) → Mavlink
- SLAM
PX4的学习资料
官方资料:
- PX4开发指南(中文版链接)
- PX4用户指南
- Pixhawk官网
- PX4自驾仪固件
- Pixhawk_ETHZ
- 官方GITTERPX4/Firmware
- 官方GITTERPX4/PX4Devguide
- 官方每周讨论PX4 Discuss
- QGC用户指南
- Mavlink官网
- NuttX
网友总结:
不定期更新
无情链接: