磁场越强,角度也可能越错! HALL 与 TMR 手册里都写“工作磁场范围”,其实不是同一个参数

首发于公众号「如是有为」 · 查看原文

磁场越强,角度也可能越错! HALL 与 TMR 手册里都写“工作磁场范围”,其实不是同一个参数

磁场越强,角度也可能越错

做磁编码器的人,很容易养成一个直觉:磁铁靠近一点,磁场强一点,信号大一点,噪声占比就低一点。

于是设计讨论最后经常收敛成一句话:

“要不把磁铁再做强一点?”

这句话有时候能救命。

也有时候,会亲手把原本还能用的角度曲线推坏。

真正的问题,不在于磁场到底是 20 mT、60 mT 还是 300 mT,而在于数据手册里那个看起来很简单的 mT,到底在约束信号链的哪一层。

TI 的 TMAG5170A2 给出了 ±75 mT、±150 mT、±300 mT 三档磁场范围,而且 X、Y、Z 三个轴可以独立配置。

TDK 的 TAS2141-AAAB 则给出了 20–80 mT 的 External Magnetic Field 条件,并列出相应的角度性能。

看到这里,很容易有人拿计算器:

300 mT 比 80 mT 大这么多,是不是前者“抗磁场能力”就是后者的四倍?

不是。

甚至这两个数字,本来就不应该这么比。

TMAG5170A2这个轴的磁场分量,怎样映射进数字转换范围?

TAS2141这颗 TMR 角度桥,在什么磁场条件下声明它的角度性能?

先看最简单的一圈磁场

假设一块径向磁化磁铁在芯片上方旋转,芯片看到理想的平面旋转磁场:

Bx = B cos θ

By = B sin θ

如果 B = 60 mT,那么 X、Y 两个分量都在 −60~+60 mT 之间变化。

对 TMAG5170A2 来说,选择 ±75 mT 档,意味着单轴还剩大约 15 mT 的峰值余量。

如果机械变化把磁场幅值推到了 90 mT,那么在某些角度下就可能超出当前量程。把量程切到 ±150 mT,可以重新获得测量余量。

但是事情到这里才刚刚开始。因为量程扩大,不等于精度免费增加。

TMAG5170 内部使用 12-bit ADC。官方资料同时说明,在开启平均时,结果可以扩展到 16-bit 结果字;但 16-bit 输出,并不等价于真正获得了 16-bit 独立物理分辨率。

所以从 ±75 mT 切到 ±300 mT,在一个简化的“相同数字编码空间”模型下,同样大小的磁场变化,占到的数字刻度自然会减少。

你得到的是:更大的过量程余量。
你没有得到的是:免费的四倍角度分辨率。

更麻烦的不是饱和,而是圆心跑了

现在仍然保持 B = 60 mT,但在 X 方向叠加一个固定外场 Bo = 20 mT。

Bx = 60 cos θ + 20

By = 60 sin θ

原本以原点为圆心的磁场轨迹,被整体向右平移了 20 mT。

在真实机械角 θ = 90° 时,本来应该看到 (0, 60),现在却变成 (20, 60)。如果直接做 atan2:

θm = atan2(60, 20) ≈ 71.565°

Δθ ≈ −18.435°

18 度。

这已经不是“精度稍微掉一点”,而是角度直接歪掉一大截。

最有意思的地方是:如果你嫌 ±75 mT 会超量程,把 TMAG5170A2 改成 ±150 mT,芯片确实可以把这个错误矢量完整测下来。

但角度还是错。
因为你只是避免了削顶,并没有消除那个 20 mT 的外场。

换句话说,量程足够,只能证明芯片把错误磁场测完整了;它不能证明这个磁场仍然代表真实机械角。

那磁场做强一点是不是就好了?

有一定道理。还是刚才那 20 mT 外场,如果目标旋转磁场从 60 mT 提高到 120 mT:

θm = atan2(120, 20)

Δθ ≈ −9.462°

确实从 18.4° 降到了 9.46°。

所以“把磁场增强”并不是一句完全错误的话。它提高了目标磁场与固定外场之间的比值。

但代价也马上出现:Hall 信号链可能需要切换更大的量程;如果使用的是一颗对工作磁场有明确要求的 TMR 角度桥,你还必须重新确认有没有把器件推离厂家声明的磁场条件。

TAS2141-AAAB 的官方参数页给出的 External Magnetic Field 是 20–80 mT。它同时给出典型 25°C 角度精度 ±0.1°、全温区 ±0.6°。

这不能理解成 80 mT 是悬崖、81 mT 芯片就突然坏掉;但也绝不能反过来理解成:磁场越强,TMR 输出一定越漂亮。

最阴的一种错误:两个轴都没超量程,角度还是错十八度

TMAG5170 有一个很好用的能力:X、Y、Z 可以分别配置量程。

做三维磁场测量非常方便,但如果你自己拿 X、Y 原始码做角度,这也给工程师挖了一个坑。

假设 X 轴配置为 ±75 mT,Y 轴配置为 ±150 mT。真实机械角是 45°,所以实际磁场满足:

Bx = By

物理磁场明明一样大,但因为两路满量程不同,如果直接看未经统一尺度换算的数字码,一个轴每 mT 对应的码数可能大约是另一个轴的两倍。

于是原本应该是 1:1 的正交矢量,被你喂给 atan2 时可能变成近似 2:1:

atan2(1, 2) ≈ 26.565°

45° − 26.565° = 18.435°

芯片没坏,磁铁没掉,ADC 没饱和。

只是你把两把刻度不同的尺子,直接塞进了同一个三角函数。

即使量程完全相同,圆也可能偷偷变成椭圆

假设两轴量程完全一样,但 Y 通道增益比 X 多 1%。可以写成:

X = cos θ

Y = (1 + ε) sin θ

ε = 0.01

对于很小的增益失配,角度误差的一阶近似是:

Δθ ≈ (ε / 2) sin 2θ

因此最大误差大约为:

Δθmax ≈ 0.005 rad ≈ 0.286°

更重要的不是这个 0.286°,而是它的形状。因为里面出现了 sin 2θ,所以误差会在机械一圈里出现两个周期。

为什么很多角度误差图不是一个随机毛刺,而是非常漂亮地长出一阶、二阶、四阶谐波?因为角度计算前面那条“圆”,其实早就已经不是圆了。

偏置圆心平移

增益失配圆变椭圆

非正交椭圆倾斜

最后 atan2 很无辜。它只是忠实地告诉你:“你给我的这个点,相对于原点就是这个方向。”

TMR 也逃不过这条信号链

有时候讨论到了这里,会冒出另一个过度简化的说法:

“那是 Hall 的问题,TMR 是桥,天然就直接出 sin/cos。”

也没这么便宜。

TAS2141 的确是一颗 TMR 全桥式、差分 Sin/Cos 模拟输出角度传感器。但桥后面还要有电路。

两路差分输出以后,真实系统里仍然可能面对:放大器增益失配、输入失调、共模范围、ADC 参考、电源纹波、通道同步、PCB 不对称,以及后续软件标定。

所以 TMR 这个名字,并没有替后面的模拟链和数字链把作业写完。反过来,Hall 也不能只盯着一个 ADC 位数,就宣布整机角度性能。

最终角度误差始终属于整条链。

真正该测的,不是一点磁场,而是一整圈轨迹

如果让我做这个验证,我最不愿意看到的一张表就是:

气隙中心磁场
1.5 mm86 mT
2.0 mm68 mT
2.5 mm53 mT

因为这张表几乎什么都没告诉我。

真正应该保存的是:整整一圈。

对于 Hall:

(Bx(θ), By(θ))

再加参考角:

θref

对于 TMR bridge,则至少保存两路经过定义清楚的差分信号:

Vsin(θ)

Vcos(θ)

然后把它们画在 XY 平面里。

边缘被切平可能是过量程

圆心离开原点可能存在 DC offset 或外场

圆变成椭圆检查两轴增益

椭圆还有倾斜继续检查正交误差

如果这些东西随温度、气隙、转速或者电机电流改变,那就别再把它叫作“一次标定能解决的问题”。

还有一个特别容易把人骗到的参数:Unlimited

TMAG5170 的绝对最大额定值里,磁通密度 BMAX 写的是:Unlimited。

这句话特别值得编码器工程师记住,因为同一颗磁传感器,完全可能同时存在三种“磁场边界”:

01器件会不会被磁场弄坏

02磁场还能不能被正常测出来

03最终角度还能不能满足系统要求

Unlimited、±300 mT、最终 ±0.x°,根本不是同一列参数。

如果有人把它们抄进 Excel 以后,只保留“最大磁场”这一栏,那么表格做得越漂亮,误导得可能越彻底。

所以“磁场越强越好”,这句话只说对了一半

磁场增强以后,目标信号相对于随机噪声和某些固定干扰可能会变得更有优势。这是真的。

但与此同时,它可能逼迫 Hall 传感器切换更大量程;降低单位磁场占据的数字编码比例;改变采样、平均与动态响应之间的权衡;把某些角度桥推出厂家声明的工作磁场条件;放大磁路非线性、偏心和结构误差的重要性。

最后甚至只是——
把一个本来就错误的磁场矢量,测得更加清楚。

所以我现在越来越不喜欢一句话:

“这个磁铁多少 mT?”

这问题问得太早了。

我更关心的是:它转一整圈以后,磁场轨迹是什么形状?经过传感器、模拟前端、ADC、增益补偿和 atan2 以后,这条轨迹最后变成了多少角度误差?

磁场的数字,必须顺着整条信号链一直往后追。

一直追到角度。

在那里,才知道这颗更强的磁铁,到底是在帮你——还是在帮错误变得更清楚。

公开来源

TI:TMAG5170 数据手册 SBASAF4,型号量程、ADC、轴配置及角度增益/偏置补偿。
TDK:TAS2141-AAAB 数据手册,推荐磁场条件与角度桥性能。
文中的 60 / 120 mT、20 mT 外场、18.435°、9.462°、以及 1% 增益失配对应约 0.286° 等数字,均为给定假设下的数学分析,不是两款器件的实测横评结果。

应作如是观
公众号「如是有为」二维码

关注公众号「如是有为」

微信扫一扫,新文章先在公众号发出。