1. 项目概述:当四旋翼遇上螺旋桨倾斜机构
传统四旋翼无人机通过调节四个固定螺旋桨的转速实现姿态控制,这种结构简单可靠,但存在两个固有局限:一是欠驱动特性(仅有4个控制输入却需控制6个自由度的位姿),二是机动性能受限于单一推力矢量方向。2016年苏黎世联邦理工学院的团队在ICRA会议上首次提出可倾斜旋翼概念,通过增加伺服机构使每个螺旋桨能够独立偏转,这项设计让四旋翼获得了全驱动能力(fully-actuated)。
本项目研究的正是这种具备螺旋桨倾斜机构的进阶版四旋翼系统。我在实验室搭建的实物原型显示,当每个旋翼可沿两个轴向倾斜时(俯仰+横滚),无人机能够实现六自由度完全控制,甚至可以在不改变机体姿态的情况下进行纯平移运动——这是传统四旋翼根本无法做到的。下面这张表格直观对比了两种结构的差异:
| 特性 | 传统四旋翼 | 可倾斜旋翼四旋翼 |
|---|---|---|
| 驱动类型 | 欠驱动(4输入6输出) | 全驱动(8输入6输出) |
| 最大推力方向 | 固定垂直向下 | 动态可调(±30°范围) |
| 悬停效率 | 高 | 降低约15-20% |
| 机动能力 | 基础姿态控制 | 三维空间任意位姿控制 |
注:倾斜机构会增加约200g额外重量,并导致约18%的续航下降,这是换取全驱动能力必须付出的代价
2. 系统建模:从机械结构到动力学方程
2.1 坐标系定义与旋翼动力学
建立数学模型的第一步是明确坐标系。我们采用标准的North-East-Down(NED)地面坐标系$F_G$和机体坐标系$F_B$,其中$F_B$的z轴垂直于旋翼平面。关键创新点在于:每个旋翼增加两个旋转关节,其偏转角记为$\alpha_i$(横滚方向)和$\beta_i$(俯仰方向),i=1,2,3,4对应四个旋翼。
单个旋翼产生的推力矢量在$F_B$中可表示为:
$$
\mathbf{T}_i = R_x(\alpha_i)R_y(\beta_i)\begin{bmatrix}0\0\-f_i\end{bmatrix}
$$
其中$R_x,R_y$是旋转矩阵,$f_i=k_f\omega_i^2$为旋翼推力,$\omega_i$为转速,$k_f$为推力系数。
2.2 全系统动力学方程
通过牛顿-欧拉法推导,得到六自由度动力学方程:
平移动力学:
$$
m\ddot{\mathbf{p}} = R_{BG}\sum_{i=1}^4\mathbf{T}_i + m\mathbf{g}
$$
旋转动力学:
$$
I\dot{\boldsymbol{\omega}} + \boldsymbol{\omega}\times I\boldsymbol{\omega} = \sum_{i=1}^4 (\mathbf{r}_i \times \mathbf{T}_i + \mathbf{M}_i)
$$
其中$R_{BG}$是机体到地面的旋转矩阵,$\mathbf{r}_i$为旋翼位置向量,$\mathbf{M}_i$为旋翼反扭矩。与传统模型不同,这里的$\mathbf{T}_i$方向是动态变化的。
实操中发现:当倾斜角超过25°时,螺旋桨的推力损失会非线性增加,建议在控制器中限制最大倾斜角
3. 控制架构设计:分层递阶控制策略
3.1 控制分配矩阵构建
全驱动系统的核心在于控制分配。我们定义广义控制输入:
$$
\mathbf{u} = [f_1, f_2, f_3, f_4, \alpha_1, \alpha_2, \alpha_3, \alpha_4, \beta_1, \beta_2, \beta_3, \beta_4]^T
$$
通过线性化处理,得到控制效率矩阵$B$满足:
$$
\begin{bmatrix}
\mathbf{F}\
\boldsymbol{\tau}
\end{bmatrix}
= B(\boldsymbol{\alpha},\boldsymbol{\beta})\mathbf{f}
$$
这个6×12矩阵的求逆是本项目的数学难点之一,我们采用加权伪逆法解决:
$$
B^\dagger = W^{-1}B^T(BW^{-1}B^T)^{-1}
$$
3.2 自适应PID控制器实现
位置控制环采用增量式PID:
$$
\mathbf{u}_p(k) = \mathbf{u}_p(k-1) + K_p[\mathbf{e}(k)-\mathbf{e}(k-1)] + K_i\mathbf{e}(k) + K_d[\mathbf{e}(k)-2\mathbf{e}(k-1)+\mathbf{e}(k-2)]
$$
姿态控制则使用基于四元数的几何控制器:
$$
\boldsymbol{\tau} = -k_R\mathbf{e}R - k\Omega\mathbf{e}_\Omega + \boldsymbol{\Omega}\times I\boldsymbol{\Omega}
$$
在Matlab中实现的控制器核心代码片段:
matlab复制function [f, alpha, beta] = control_allocation(F_des, tau_des, params)
% 加权矩阵设置
W = diag([1 1 1 1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1]);
% 伪逆求解
B_pseudo = W\B'/(B/W*B');
u = B_pseudo * [F_des; tau_des];
% 输出分配
f = u(1:4);
alpha = u(5:8);
beta = u(9:12);
end
4. Simulink仿真实现与结果分析
4.1 仿真模型架构
搭建的Simulink模型包含以下关键子系统:
- 环境模块:实现风速扰动和重力场
- 传感器模型:模拟IMU噪声(白噪声+随机游走)
- 控制分配器:实时计算旋翼参数
- 电机动力学:一阶延迟模型 $G(s)=\frac{1}{0.02s+1}$
调试中发现:电机响应延迟超过30ms会导致系统失稳,建议选用响应时间<20ms的伺服电机
4.2 典型工况测试
案例1:空间螺旋轨迹跟踪
matlab复制% 期望轨迹生成
t = 0:0.01:10;
x_des = 2*sin(t);
y_des = 2*cos(t);
z_des = -0.1*t;
仿真结果显示位置跟踪误差RMS值:
- X轴:0.12m
- Y轴:0.15m
- Z轴:0.08m
案例2:抗风扰测试
施加15m/s的突风扰动,与传统四旋翼对比:
| 指标 | 传统四旋翼 | 倾斜旋翼 |
|---|---|---|
| 恢复时间(s) | 3.2 | 1.8 |
| 最大偏差(m) | 1.5 | 0.7 |
| 能量消耗(J) | 285 | 320 |
5. 实机调试经验与问题排查
5.1 机械结构振动抑制
初期飞行测试中出现高频振动问题,通过以下措施解决:
- 在舵机输出轴增加橡胶减震垫
- 旋翼进行动平衡校准(不平衡量<0.1g)
- 控制频率从100Hz提升到200Hz
5.2 常见故障代码速查表
| 故障现象 | 可能原因 | 解决方案 |
|---|---|---|
| 偏航轴持续漂移 | IMU安装偏斜>2° | 重新校准IMU安装姿态 |
| 倾斜机构响应迟缓 | 舵机扭矩不足 | 更换扭矩>3kg·cm的舵机 |
| 悬停时高度波动 | 气压计受旋翼气流影响 | 加装海绵气流隔离罩 |
5.3 参数整定技巧
- PID调参顺序:先调高度Z→再调姿态角→最后调XY位置
- 快速测试法:将D增益从0开始逐步增加,直到出现轻微振荡后回退30%
- 经验公式:$K_p \approx 0.6m/T^2$,其中m为质量,T为期望响应时间
6. 进阶应用与扩展方向
基于现有平台,我们还可以实现:
- 精确载荷投放:通过独立控制推力方向实现毫米级定位
- 接触式作业:保持机体姿态同时施加平面任意方向的力
- 空中对接:多机协同完成物体传递
在最近一次实验中,我们成功让无人机完成了以下动作序列:
- 垂直起飞至2米高度
- 保持机身水平的同时向X轴平移1米
- 在移动过程中机头始终指向固定信标
- 精确降落在30cm×30cm的平台中心
这种机动性能在工业检测、特种运输等领域具有显著优势。虽然系统复杂度更高,但随着嵌入式处理器性能提升和优化算法的应用,这类全驱动无人机必将开辟新的应用场景。