第1章:课程导论与预备知识
各位同学,欢迎来到《LQR控制无人机轨迹跟踪调参实战》的第一课。
我是你们这门课的主讲。做了十几年飞控算法,从最早的PID调参调到吐,到后来接触LQR,说实话,有种「终于找到组织了」的感觉。今天咱们先打好基础,把LQR控制理论、无人机动力学模型,还有必备的数学工具捋一遍。
1.1 LQR控制理论概述
LQR,全称Linear Quadratic Regulator,线性二次型调节器。名字听着唬人,说白了就是:给系统找个最优的控制量,让状态误差和控制代价都尽可能小。
我刚开始接触LQR时,总觉得它是个黑盒子。后来自己手推了一遍Riccati方程,才明白它的优雅之处。你想想看,我们控制无人机,无非是想让它飞得稳、跟得准。PID也能做,但LQR有个天然优势——它考虑了状态之间的耦合。
举个例子。四旋翼无人机的俯仰和滚转,其实是耦合的。你用PID调俯仰,滚转那边可能就抖起来了。LQR呢?它通过状态反馈矩阵K,一次性把多个状态变量协调好。我在项目中遇到过一架大四轴,PID调了三天,悬停还是晃。换成LQR,半天搞定。嗯,这就是状态空间法的威力。
这里的Q和R,就是咱们后面要反复调参的对象。Q惩罚状态误差,R惩罚控制量。你希望无人机跟得紧?Q调大。你希望电机别太累?R调大。就这么简单。
1.2 无人机动力学模型基础
做控制,不懂模型等于盲人摸象。无人机的动力学模型,我习惯把它拆成两部分:运动学和动力学。
- 运动学:描述位置、速度、姿态角之间的关系。说白了就是几何关系,不涉及力。
- 动力学:描述力、力矩如何产生加速度和角加速度。这才是核心。
对于四旋翼无人机,我们通常做几个假设:
- 机体是刚体(别指望它变形)
- 质量分布均匀
- 小角度假设(滚转俯仰角小于30°)
有了这些假设,模型可以简化为:
状态变量 x = [x, y, z, φ, θ, ψ, u, v, w, p, q, r]ᵀ
其中:
x,y,z —— 位置
φ,θ,ψ —— 滚转、俯仰、偏航角
u,v,w —— 线速度(机体坐标系)
p,q,r —— 角速度(机体坐标系)
我曾经犯过一个错:忽略了偏航角ψ的积分漂移。结果无人机在天上转圈圈,我还以为是LQR参数没调好。后来发现,是模型里没加偏航修正。所以,模型越精确,控制效果越好,但也要考虑实时性。
1.3 数学工具回顾:线性代数与状态空间
做LQR,线性代数是基本功。别怕,咱们只捡最常用的说。
1.3.1 矩阵运算
你至少得会:
- 矩阵乘法(尤其是状态反馈 Kx 的计算)
- 矩阵转置(代价函数里到处都是 xᵀQx)
- 特征值与特征向量(判断系统稳定性)
我记得刚入行时,手算一个3x3矩阵的逆,算了半小时还错了。现在都用工具,但理解物理意义比会算更重要。
1.3.2 状态空间方程
状态空间方程是LQR的基石。标准形式:
ẋ = Ax + Bu
y = Cx + Du
其中:
- A —— 系统矩阵(描述状态如何自演化)
- B —— 输入矩阵(控制量如何影响状态)
- C —— 输出矩阵(哪些状态可观测)
- D —— 前馈矩阵(通常为0)
举个例子。无人机的高度通道,状态可以选为 [z, v_z]ᵀ,输入是油门。那么:
ẋ = [0 1] [z] + [0] u
[0 0] [v_z] [1/m]
你看,A矩阵的右上角是1,表示位置对速度的积分关系。左下角是0,表示没有弹簧力。这就是最简单的积分链模型。
1.4 本章知识体系总览
下面这张图,是我手绘的本章知识结构。你可以把它当作整个课程的导航图。
1.5 避坑指南
最后,分享几个我这些年踩过的坑:
- 状态变量顺序别搞混。我习惯按 [位置, 姿态, 线速度, 角速度] 排列,这样A矩阵的物理意义最清晰。
- 单位制统一。角度用弧度,别混着度。有一次我角度用度,角速度用弧度/秒,结果LQR算出来的K矩阵完全不对。
- 先仿真,后实飞。LQR参数在仿真里调好了,再上真机。我见过有人直接上真机调,炸了三次。嗯,学费有点贵。
好了,第一章就到这里。记住:LQR不是魔法,是数学。把基础打牢,后面调参才能游刃有余。