3、位置传感器技术:常用位置传感器类型、信号处理与角度解算、故障诊断与冗余设计

各位工程师朋友,咱们接着聊。EPS 系统里,位置传感器就像人的眼睛。你想想看,没有眼睛,手怎么知道往哪转?电机怎么知道该输出多少力?

我个人习惯把位置传感器比作「方向盘与电机之间的翻译官」。它把机械转角翻译成电信号,告诉控制器:现在方向盘在哪儿,电机转子在哪儿。这个翻译要是出了错,轻则手感怪异,重则系统宕机。所以,这一章咱们就好好聊聊这个「翻译官」的底细。

3.1 常用位置传感器类型

目前 EPS 里主流的传感器,无非三种:霍尔、磁阻、旋变。我一个个说。

3.1.1 霍尔传感器

霍尔传感器,说白了就是利用霍尔效应。当磁场穿过霍尔元件时,会产生一个与磁场强度成正比的电压。通过检测这个电压,就能判断磁铁的位置。

霍尔传感器最大的优点是便宜、简单。但缺点也很明显——精度一般,而且对温度敏感。我在项目中遇到过,夏天高温时霍尔传感器的输出漂移了将近 2 度,导致方向盘回正时总差那么一点点。嗯,后来我们加了温度补偿才搞定。

适用场景:低成本 EPS、非转向管柱直驱的辅助电机。

3.1.2 磁阻传感器

磁阻传感器,利用的是磁阻效应——磁场变化会引起材料电阻变化。相比霍尔,磁阻传感器的精度更高,抗干扰能力也更强。

我个人比较喜欢磁阻传感器。为什么?因为它输出的是正余弦信号,可以通过后续的 CORDIC 算法解算出非常精确的角度。而且它体积小,适合集成在电机内部。

不过要注意,磁阻传感器对安装间隙很敏感。我曾经见过一个案例,因为磁钢和传感器之间的气隙大了 0.5mm,角度误差直接飙到了 3 度。所以,机械公差一定要控制好。

小技巧:磁阻传感器通常需要配合一个「磁钢」使用。磁钢的充磁方向、形状、材料都会影响最终精度。我建议选型时多做几组对比测试。

3.1.3 旋转变压器(旋变)

旋变,是这三种里最「硬核」的。它本质上是一个小型变压器,通过励磁和感应线圈来检测角度。旋变的优点是:耐高温、抗振动、寿命长。缺点嘛,贵,而且需要专门的解码芯片。

在高端 EPS 里,旋变几乎是标配。为什么?因为 EPS 对安全等级要求极高,旋变天生就是「安全型」传感器——它不依赖电子元件,纯电磁感应,故障模式很清晰。

我记得有一次做耐久测试,霍尔传感器在第 500 小时就挂了,而旋变一直撑到 2000 小时还稳稳的。从那以后,我对旋变就多了一份信任。

类型 精度 成本 抗干扰 典型应用
霍尔 ±1°~±3° 一般 低成本 EPS
磁阻 ±0.1°~±0.5° 较好 主流 EPS
旋变 ±0.05°~±0.2° 优秀 高端 EPS

3.2 传感器信号处理与角度解算

传感器输出的原始信号,不能直接用。为什么?因为里面有噪声、有偏移、还有各种干扰。所以,信号处理是必不可少的一步。

3.2.1 信号调理

信号调理,说白了就是「洗一洗」信号。通常包括:

  • 滤波:用低通滤波器滤掉高频噪声。我一般用二阶巴特沃斯,截止频率设在 1kHz 左右。
  • 偏置校正:传感器输出会有直流偏置,需要减去。这个偏置值可以在上电时自学习得到。
  • 幅值归一化:正余弦信号的幅值可能不一致,需要归一化到同一范围。
注意:滤波会引入相位延迟。如果延迟太大,会影响 EPS 的响应速度。我建议在滤波器的阶数和截止频率之间找一个平衡点。

3.2.2 角度解算

角度解算,就是从正余弦信号中算出角度。最常用的方法是 CORDIC 算法。CORDIC 全称是「坐标旋转数字计算机」,它通过迭代逼近的方式计算反正切函数。

代码实现其实不复杂。下面是一个简化的 CORDIC 示例:

// 简化的 CORDIC 角度解算
float cordic_atan2(float y, float x) {
    float angle = 0.0f;
    float x_new, y_new;
    
    // 先处理象限
    if (x < 0) {
        x = -x;
        y = -y;
        angle = 180.0f;
    }
    
    // 迭代 12 次,精度约 0.1°
    for (int i = 0; i < 12; i++) {
        float atan_val = atan_table[i];
        if (y > 0) {
            x_new = x + (y >> i);
            y_new = y - (x >> i);
            angle += atan_val;
        } else {
            x_new = x - (y >> i);
            y_new = y + (x >> i);
            angle -= atan_val;
        }
        x = x_new;
        y = y_new;
    }
    
    return angle;
}

嗯,这里要注意,CORDIC 的迭代次数决定了精度。12 次迭代大概能到 0.1°,16 次能到 0.01°。但迭代越多,计算时间越长。我个人习惯用 14 次,兼顾精度和速度。

3.3 传感器故障诊断与冗余设计

EPS 是安全件,传感器一旦故障,后果很严重。所以,故障诊断和冗余设计是必须的。

3.3.1 常见故障模式

传感器常见的故障有:

  • 短路/断路:信号线断了或者搭铁了。
  • 信号漂移:输出值缓慢偏离真实值。
  • 卡滞:输出值卡在某个固定值不动。
  • 噪声过大:信号抖动剧烈。

我曾经遇到过一个案例,磁阻传感器的输出突然跳变,导致 EPS 瞬间输出一个错误的助力。后来查出来是线束接头进水了。从那以后,我设计时都会要求线束接头做防水处理。

3.3.2 故障诊断策略

故障诊断,说白了就是「看信号正不正常」。常用的方法有:

  • 范围检查:信号是否在合理范围内?比如角度不可能超过 360°。
  • 变化率检查:角度变化率是否合理?如果 1ms 内跳了 10°,那肯定有问题。
  • 一致性检查:如果有两个传感器,它们的差值是否在允许范围内?
关键点:故障诊断的阈值不能太紧,也不能太松。太紧容易误报,太松容易漏报。我一般会根据实测数据,留出 20% 的余量。

3.3.3 冗余设计

冗余设计,就是「多留一手」。EPS 里常见的冗余方案有两种:

  • 双传感器冗余:两个传感器同时工作,互相校验。如果其中一个故障,另一个还能继续工作。
  • 传感器与模型冗余:一个传感器 + 一个观测器模型。当传感器故障时,用模型估算的角度来替代。

我个人更倾向于双传感器冗余。为什么?因为模型估算毕竟有误差,尤其在动态工况下。而双传感器只要设计得当,可以做到无缝切换。

不过,双传感器也有代价——成本翻倍,而且两个传感器的安装位置要精心设计,避免互相干扰。

避坑指南:我曾经遇到过双传感器因为安装偏差导致角度差始终存在。后来我们加了一个「在线校准」功能,每次上电时自动对齐两个传感器的零位。这个功能很实用,推荐你也加上。

3.4 知识体系总览

为了让你更直观地理解这一章的内容,我画了一张图。它把传感器类型、信号处理、故障诊断和冗余设计串在了一起。

位置传感器技术知识体系 位置传感器技术 传感器类型 信号处理与解算 故障诊断与冗余 霍尔传感器 磁阻传感器 旋转变压器 信号调理 CORDIC解算 角度输出 故障模式识别 诊断策略 冗余设计 三种传感器各有优劣,选型需结合成本、精度和安全要求 核心原则:精度够用即可,可靠性永远第一

好了,这一章的内容就到这里。位置传感器是 EPS 的「眼睛」,选对类型、做好信号处理、设计好故障诊断和冗余,你的 EPS 才能「看得清、判得准、靠得住」。


公众号:蓝海资料掘金营,微信deep3321