第三节:横滚动力学模型

好,咱们进入正题。

横滚控制,说白了就是让飞行器绕着它的机头方向转。你打遥控器的右摇杆,飞机向右倾斜——这个动作背后,是一套完整的动力学模型在支撑。

我个人习惯,在讲参数整定之前,先把模型讲透。为什么?因为你不懂模型,调参就是瞎蒙。我见过太多人上来就调PID,结果飞机乱晃,最后连问题出在哪都不知道。

3.1 横滚轴的运动方程

先看最基本的运动方程。对于四旋翼飞行器,横滚轴的转动可以用下面这个方程描述:

Jx * φ'' = τx - (Jz - Jy) * θ' * ψ' - Kd * φ'

这里:

  • Jx:绕X轴的转动惯量(横滚轴)
  • φ'':横滚角加速度
  • τx:施加在横滚轴上的力矩
  • (Jz - Jy) * θ' * ψ':陀螺效应项
  • Kd * φ':空气阻尼项

嗯,这里要注意。这个方程看着复杂,但实际飞控里我们通常会做简化。为什么?因为陀螺效应项在横滚轴上影响相对较小,尤其是小角度机动时。

核心要点:横滚运动方程的本质是「力矩 = 转动惯量 × 角加速度 + 阻尼 + 耦合项」。你调参时调的PID,本质上就是在补偿这些物理量。

3.2 力矩与角速度的关系

接下来是关键——力矩怎么来的?

对于四旋翼,横滚力矩来自左右电机的推力差。具体来说:

τx = L * (T2 - T4)

其中:

  • L:电机到飞行器重心的力臂长度
  • T2、T4:右侧和左侧电机的推力

你看,这个关系其实很直接。力矩正比于力臂长度和推力差。我在项目中遇到过一个问题:力臂长度测量不准,导致模型参数偏差,结果PID参数怎么调都不对。后来用卡尺重新量了一遍,问题就解决了。

角速度和力矩之间还有个重要关系——稳态时:

φ' = τx / Kd

也就是说,你给一个恒定的力矩,最终会达到一个恒定的角速度。这个特性在整定P参数时非常有用。

实战技巧:我建议你在做参数整定前,先测一下这个比例关系。具体做法:给一个固定油门差,看横滚角速度稳定在多少。这个数据能帮你快速估算出合适的P值范围。

3.3 模型简化与假设

实际飞控里,我们不会用完整的非线性模型。太复杂了,算不过来。常用的简化假设有这几个:

  1. 小角度假设:横滚角小于30°时,sin(φ) ≈ φ,cos(φ) ≈ 1
  2. 忽略陀螺耦合:横滚轴和俯仰轴、偏航轴的耦合项在小机动时影响很小
  3. 阻尼线性化:空气阻尼近似为线性阻尼,即阻尼力矩正比于角速度
  4. 电机响应一阶模型:电机推力变化近似为一阶惯性环节

做了这些简化后,横滚轴的模型就变成了一个二阶系统:

Jx * φ'' + Kd * φ' = τx

你想想看,这个模型是不是清爽多了?二阶系统,两个参数:转动惯量Jx和阻尼系数Kd。PID整定的核心,就是针对这个简化模型来设计控制器。

注意:简化模型有适用范围。如果你做大机动飞行(比如翻滚动作),小角度假设就不成立了。我曾经有一次在测试中忽略了这一点,结果飞机在60°横滚角时出现了明显的振荡。嗯,从那以后我每次做大机动测试前,都会重新检查模型假设是否成立。

3.4 知识体系总览

为了让你更直观地理解这一章的内容,我画了一张图:

横滚动力学模型知识体系 横滚动力学模型 运动方程 Jx·φ'' = τx - 耦合项 - 阻尼项 力矩与角速度关系 τx = L·(T2 - T4),稳态 φ' = τx/Kd 模型简化与假设 小角度假设、忽略耦合 阻尼线性化、电机一阶模型 简化结果:二阶系统 Jx·φ'' + Kd·φ' = τx PID参数整定的理论基础

这张图把这一章的核心逻辑串起来了。从完整的运动方程出发,经过力矩与角速度的关系分析,再到合理的模型简化,最终得到一个可用的二阶系统模型。这个模型,就是后面所有参数整定工作的基础。

记住:模型是控制的上限,算法只是逼近这个上限的手段。模型建得准,参数整定事半功倍;模型建得偏,调参就是事倍功半。


专注资料整理