2. 磁力计工作原理:地磁场基础、传感器类型与误差模型
大家好,我是你们的老朋友。今天我们来聊聊磁力计。
说实话,在飞控系统里,磁力计是个让人又爱又恨的传感器。爱它,是因为没有它,你的无人机在悬停时就会像喝醉了酒一样慢慢偏航;恨它,是因为它太容易受干扰了。我见过太多因为磁力计校准失败而炸机的案例。
所以,要理解磁力计校准失败后怎么恢复,咱们得先搞清楚它到底是怎么工作的。嗯,万丈高楼平地起,咱们从最基础的地磁场说起。
2.1 地磁场基础
地球本身就是一个大磁铁。它的磁场从地理南极附近发出,进入地理北极附近。你想想看,我们平时用的指南针,就是靠这个原理指北的。
地磁场有几个关键参数:
- 磁场强度:大约在 25 到 65 微特斯拉(μT)之间。不同地方不一样,赤道附近弱一些,两极附近强一些。
- 磁偏角:地理北极和磁北极之间的夹角。这个角度会随着你所在的位置变化。我在做全球飞控适配时,就吃过这个亏——在国内校准好的飞机,拿到欧洲飞,偏航角直接偏了十几度。
- 磁倾角:磁场线与水平面的夹角。在北半球,磁力线是斜着指向地面的。
对于飞控来说,我们最关心的是:地磁场是一个相对稳定、方向已知的矢量场。这就是我们能用它来测航向的基础。
核心要点:地磁场在局部区域可以看作是恒定不变的。这个「恒定」二字,是磁力计能正常工作的前提。一旦周围出现铁磁物质或大电流,这个前提就不成立了。
2.2 磁力计传感器类型
市面上常见的磁力计,主要有三种类型。我挨个给你们讲讲。
2.2.1 霍尔效应磁力计
这个原理比较简单。当电流通过导体,外加磁场会让载流子偏转,在导体两侧产生电势差。这个电势差就是霍尔电压。
霍尔磁力计的优点是便宜、耐用。但缺点也很明显——灵敏度低,噪声大。说实话,在飞控领域,现在已经很少用纯霍尔器件来做航向测量了。我早期做的一个四轴项目用过,结果发现它连地磁场的微弱变化都测不准,更别提抗干扰了。
2.2.2 磁阻磁力计
这个是目前消费级无人机的主流选择。它的原理是利用某些材料的电阻会随外加磁场变化而变化。最常见的是各向异性磁阻(AMR)传感器。
磁阻传感器的灵敏度比霍尔高得多,功耗也低。我常用的 HMC5883L 和 IST8310 都属于这一类。
不过,它有个毛病——容易饱和。如果遇到强磁场(比如电机大电流),输出会直接卡死。嗯,这里要注意,饱和之后需要一段时间才能恢复。
2.2.3 磁通门磁力计
这个就高端了。磁通门传感器利用磁芯的非线性磁化特性,通过检测二次谐波来测量磁场。它的精度和稳定性是最好的,但价格也最贵,体积也大。
一般在工业级或军用级的飞控上才能见到。我曾经拆过一个昂贵的工业级飞控,里面用的就是磁通门。那精度,确实让人放心。
| 类型 | 灵敏度 | 功耗 | 成本 | 典型应用 |
|---|---|---|---|---|
| 霍尔 | 低 | 中 | 低 | 开关检测、低端罗盘 |
| 磁阻 | 高 | 低 | 中 | 消费级无人机、手机 |
| 磁通门 | 极高 | 高 | 高 | 工业级、军用级飞控 |
2.3 输出特性与误差模型
搞清楚了传感器类型,咱们来看看它输出的是什么,以及会有什么误差。
磁力计的输出,说白了就是三个轴上的磁场分量:Bx、By、Bz。单位通常是高斯(Gauss)或微特斯拉(μT)。1 Gauss = 100 μT。
理想情况下,当传感器水平放置并旋转一周时,Bx 和 By 应该画出一个完美的圆。Bz 则反映磁倾角。
但现实很骨感。误差主要来自以下几个方面:
2.3.1 硬铁误差
这是最常见的误差。硬铁材料(比如永磁体、带磁的螺丝刀)会叠加一个固定的磁场到传感器上。效果就是:测量圆的圆心偏离了原点。
说白了,就是你的传感器读数整体偏了一个固定的值。校准的时候,我们通过旋转传感器,找到这个偏移量,然后减掉它。
避坑指南:我曾经遇到过一架飞机,每次飞完航线都会偏。查了半天,发现是机臂上的一个螺丝被磁化了。换掉螺丝,问题解决。所以,装机时一定要用无磁工具。
2.3.2 软铁误差
软铁误差更隐蔽。它是由周围的铁磁材料(比如电机铁芯、碳纤维机架)引起的。这些材料会改变磁力线的走向,导致传感器在不同方向上的灵敏度不一样。
效果就是:测量圆变成了椭圆。而且这个椭圆还会旋转一个角度。
校准软铁误差,需要计算一个 3x3 的补偿矩阵。这个计算量比硬铁大得多。
2.3.3 比例因子与非正交误差
三个轴的灵敏度可能不完全一样。这就是比例因子误差。另外,三个轴理论上应该互相垂直,但实际制造时会有偏差,这就是非正交误差。
这些误差通常由厂家在出厂时校准,但温度变化后可能会漂移。
2.3.4 综合误差模型
把上面这些误差综合起来,磁力计的测量模型可以写成:
B_measured = S * C_soft * (B_true + H_hard) + n
其中:
- B_measured 是传感器读到的值
- S 是比例因子矩阵(3x3)
- C_soft 是软铁矩阵(3x3)
- B_true 是真实地磁场
- H_hard 是硬铁偏移(3x1)
- n 是噪声
这个模型看着复杂,但实际校准就是求 S、C_soft 和 H_hard 这些参数。一旦求出来,就能反算出真实的 B_true。
警告:校准参数不是一劳永逸的。温度变化、机械结构变形、甚至电池安装位置改变,都可能导致校准参数失效。我建议每次起飞前都做一次快速校准检查。
好了,这一章的内容就到这里。地磁场是基础,传感器类型决定了你的性能上限,而误差模型则是校准的核心。搞懂了这些,下一章我们才能深入讨论校准失败时到底发生了什么。
记住一句话:磁力计校准,本质上就是在求解那个误差模型中的未知参数。参数求对了,航向就准了;参数错了,飞机就乱转了。
我是你们的飞控老司机,咱们下章见。