一片风机叶片为什么要装2颗编码器:2颗差了 2°,系统怎么安全停下来?

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

一片风机叶片为什么要装2颗编码器:2颗差了 2°,系统怎么安全停下来?

一片风机叶片为什么要装两颗编码器:两颗差了 2°,问题就不再是精度

我们平时看到风机,三片巨大的叶片一直围着中心旋转。

但很多人不知道:每一片叶片自己其实还能再转。

不是绕着风机中心转,而是像拧螺丝一样,绕着叶片自己的长轴转。风电行业把这个动作叫做变桨。

一片风机叶片为什么要装2颗编码器:2颗差了 2°,系统怎么安全停下来?

变桨其实很好理解:风小时让叶片多“吃风”,风大时把叶片拧开一点;需要停机时,再把叶片转到几乎兜不住风的位置。

一片风机叶片为什么要装2颗编码器:2颗差了 2°,系统怎么安全停下来?

叶片不只绕轮毂转,它还会绕自己的长轴改变迎风角度。

风机真正的“油门”,藏在轮毂里面

风小的时候,叶片转到一个更容易兜住风的位置,希望多拿一点能量。风越来越大以后,如果叶片还保持原来的角度,叶轮转速和结构载荷都会继续往上走。

所以风大以后,控制系统会把叶片慢慢拧开,让它少吃一点风。如果遇到极端大风、设备故障或者需要紧急停车,则会继续往“几乎不吃风”的方向转,让叶轮失去大部分驱动力。

行业里把最后这个动作叫顺桨。这里不用死记术语,只要记住一句:把叶片拧到不太吃风的位置,让机器安全慢下来。

轮毂里的传动链

变桨电机 → 减速箱 → 小齿轮 → 叶根齿圈 → 整片叶片

一片大型风机叶片可能有几十米甚至上百米长,重量以吨计。电机要转很多圈,经过减速以后,叶片才缓慢转几度。

问题也因此出现:电机已经转了,不等于叶片一定真的转到了。中间还有减速箱、齿轮副、回差、机械连接和叶根轴承。

于是控制器必须不断回答一个非常朴素的问题:叶片现在到底在哪里?

为什么一片叶片,还要两条位置反馈?

一种典型的冗余变桨架构,会从两个不同地方观察同一片叶片。

电机端看的是电机转了多少,再根据减速比推算叶片理论上应该到哪里。

叶根端更靠近最终输出端,回答的是叶片实际上到了哪里。

一片风机叶片为什么要装2颗编码器:2颗差了 2°,系统怎么安全停下来?

正常的时候,两边当然应该基本对得上。比如电机端换算后认为叶片是 15.1°,叶根侧读到 15.3°,这很正常。

但如果某一天变成:

电机端换算15.1°

叶根端实测17.3°

两路都在线,但已经差了 2.2°。

2°差的真正含义,不是“精度差了一点”

公开的变桨系统资料里,可以看到类似的工程设置:两路桨距角实时比较,差值还在允许范围内就继续认为反馈可信;超过设定门限,则进入故障处理。

这里的约 2° 应理解为某些具体系统里的工程门限,不是所有风机统一执行的行业常数。

但这个数字特别有意思。因为它意味着超过某条线以后,工程师关心的已经不是“±0.1° 还是 ±0.2°”,而是:我还能不能继续相信现在这个叶片位置?

一片风机叶片为什么要装2颗编码器:2颗差了 2°,系统怎么安全停下来?

最麻烦的不是一颗死了,而是两颗都活着

如果一颗编码器彻底掉线,反而比较容易处理。通信消失、CRC 异常、电源异常、状态位报警——至少系统很明确:这一条不能用了。

真正麻烦的是两颗都正常通信、都有数据、谁也没有明显报警,但两颗给出的角度已经明显不一样。

两通道冗余最容易被误解的一点

两个传感器给出不同答案,只能证明“至少有一路不可信”,却不能自动证明“A 错、B 对”。

所以双编码器最重要的作用,首先不是纠错,而是检错。

更不能把 15° 和 17° 一平均,得到 16°,然后假装问题解决了。两个可疑答案的平均值,不会凭空变成真相。

而且两颗编码器,甚至不是在测同一根轴

如果一颗在电机端,一颗在叶根端,中间隔着整条机械传动链。电机端的读数必须先经过减速比、圈数和安装零位关系,换算成叶片角度,再和叶根端比较。

θblade,m = θm / i + θ0

Δθ = | θblade,m − θblade,r |

其中 θm 是电机累计位置,i 是总减速比,θ0 是安装零位关系。真实系统还会叠加齿轮回差、弹性变形、正反转迟滞、多圈关系等误差。

所以两路位置长期对不上,问题甚至未必在编码器。可能是减速箱,可能是齿轮啮合,可能是机械连接松动,也可能是某一路圈数或零位出了问题。

电机端告诉控制器:

“按照电机和传动比,我认为叶片应该到这里了。”

叶根端告诉控制器:

“我看到叶片实际上在这里。”

那两颗真的吵起来以后,听谁的?

最直觉的答案是“听更准的那颗”。但规格书精度更高,并不等于这一刻它一定没坏。

另一个直觉是“永远听电机端”。也不够。如果机械传动链出了问题,电机端恰恰可能是那个看起来完全正常、实际上已经无法代表叶片的信号。

所以真正的安全逻辑,不是现场猜谁对,而是在设计阶段就把状态机和降级路径写死:

| 两路一致:

正常闭环。

| 明确知道一路掉线:

按架构切换到可用反馈。

| 两路都活着但严重不一致:

不再把它当普通精度误差,而是进入故障状态,按预设安全路径把叶片往不吃风的位置转。

这才是“冗余”真正开始变成功能安全的地方:不要求系统在所有故障下都神奇地猜出谁对,而要求它在已经无法确定谁对的时候,仍有一条可控的安全退出路径。

做到芯片这一层,问题就具体了

到了编码器芯片这一层,我反而不会先和风电客户聊 24 bit、26 bit 还是 30 bit。因为这里首先要弄清楚的是:这颗芯片在整条位置链里负责哪一段?

一片风机叶片为什么要装2颗编码器:2颗差了 2°,系统怎么安全停下来?

这里比较的是器件在系统里的“角色”,不是把文章写成参数排行榜。

电机端:KTM5900 更像是在“看电机”

昆泰芯 KTM5900 是 24 bit 绝对角度 TMR 磁性编码器方案,官方资料给出的信号链包含最高 2 MSPS 的 16 bit SAR ADC,用来读取差分正余弦信号并进行高速角度计算。

把它放在变桨电机侧,关注点首先是高速、低延迟地知道电机这一瞬间在哪里。它解决的是电机侧单圈位置反馈这一类问题。

叶根端:KTM5800 更像是在“看叶片”

KTM5800 的思路不一样。它是一颗 30 bit 绝对角度细分器,可以接 AMR/TMR,也可以接光编、光栅、磁栅等外部正余弦前端;官方资料给到最高 4096 个周期/对极输入。

如果叶根侧采用大直径多极磁环、磁栅或其他周期式标尺,这类芯片的价值就在于把周期内细分 + 周期位置组合成高分辨率的叶片位置。

国外成熟器件里也能看到类似的编码器处理思路

iC-Haus iC-TW29 将高分辨率插值器与周期跟踪/位置组合放在同一颗 encoder processor 里,可跟踪每圈最多 4096 个输入周期,形成最高 26 bit 单圈位置,并支持 BiSS、ABZ、UVW 等输出。

它还把多圈问题明确拆开:完整的 multiturn absolute encoder 仍需外部 revolution counter。这个边界非常重要。

30 bit,并不等于“掉电以后还知道叶片在哪里”

这是风电应用里最容易被 bit 数带偏的一件事。

假设一颗编码器做到 24 bit,理论量化分辨率已经是:

360° / 2242^{24} ≈ 0.0000215°

数字已经漂亮得惊人。但如果电机要转几十圈,叶片才完成一次大角度变桨,那么“这一圈分得多细”和“掉电以后我还知不知道第几圈”,完全是两回事。

多圈到底靠机械齿轮、电子计数、能量采集式圈数记录、备用电源还是其他方式保存,必须看整套编码器怎么设计。KTM5800 是角度细分器,不能笼统等同于“完整的断电多圈绝对编码器”。

所以一台风机,为什么值得放这么多编码器?

三叶片风机如果每片叶片采用两路位置反馈,仅变桨位置检测就是 6 路。再加偏航等其他位置测量,一台机器上的位置传感器密度并不低。

表面看,这是多装了几颗编码器。

实际上真正买到的是:第二条观察机械位置的物理路径。

最后真正要回答的,不是 bit

两颗编码器几年都不吵架的时候,冗余几乎没有存在感。真正体现价值的,是某一天它们第一次给出两个不同答案:

“我已经不知道谁对了,这台机器还能不能安全地停下来?”

资料边界说明

· “约 2°”用于说明公开工程实例中的一致性门限,不应理解为全行业统一标准。

· KTM5800 / KTM5900 参数依据昆泰芯公开产品资料;iC-TW29 参数依据 iC-Haus 公开资料。

· 文中电机端/叶根端的器件安排用于解释系统角色,具体量产方案仍取决于整机的机械结构、冗余架构、多圈实现和安全策略。

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

关注公众号「如是有为」

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