4. 主控系统数据采集与信号处理
主控系统的控制决策建立在“它看到的机组状态”之上,而它看到的状态完全来自传感器采集与信号处理链路。风速、风向、转速、桨距角、功率、温度这几类信号,物理形态各不相同:风速风向来自超声波或机械式风传感器,转速来自接近开关或编码器脉冲,桨距角来自变桨系统的角度反馈,功率来自变流器或并网点的电参量,温度来自 PT100/PT1000 或 NTC 热电阻。主控系统要做的不是简单“读进来”,而是把不同电气形态、不同量纲、不同噪声特性的原始信号,统一转换成可信、可比、可用于控制和保护的工程量。
一、采集链路:从物理量到主控可用值
典型采集链路可以概括为:传感器 → 信号调理/变送 → 采集通道 → 原始码值 → 标定换算 → 滤波 → 有效性判断 → 工程量。以风速为例,超声波风速仪通常通过 RS-485/Modbus 直接输出 m/s 数值,主控只需按寄存器地址读取并做量程校验;而 4~20mA 输出的风速变送器,则需要经过 AI 通道采样得到 0~27648 或 0~32767 的原始码值,再按量程线性换算。转速信号常见为每转 N 个脉冲,主控通过高速计数或定时捕获计算频率,再换算为 rpm。桨距角反馈可能是 0~10V 或 4~20mA 对应 0°~90°,功率则多来自变流器通信或功率变送器。
采集环节必须明确三件事:量程、参考方向、采样周期。例如风向以正北为 0°、顺时针为正,桨距角以顺桨方向为正,转速以叶轮顺时针为正,这些约定必须在标定表、通信协议和图示中保持一致,否则后续控制逻辑会出现方向性错误。采样周期方面,风速风向常用 100ms~1s,转速与功率需要 10ms~100ms,温度可放宽到 1s。采样过快会浪费 CPU 与总线带宽,过慢则可能漏掉转速超速等快速事件。
二、标定:把码值变成工程量
标定的本质是建立“原始值—工程量”的映射。对线性模拟通道,常用两点标定:取量程下限对应码值 x1 与工程量 y1,量程上限对应 x2 与 y2,则斜率 k=(y2−y1)/(x2−x1),截距 b=y1−k·x1。例如某 4~20mA 风速变送器量程 0~50m/s,AI 通道 4mA 对应码值 5530、20mA 对应 27648,则 k=50/(27648−5530)≈0.00226,b=−5530×0.00226≈−12.5。当读到码值 16000 时,风速≈16000×0.00226−12.5≈23.7m/s。若传感器带零点偏移,必须用现场实测的零点码值修正 b,而不是直接套用理论值。
对通信型传感器,标定更多体现为“寄存器解析 + 比例系数”。例如某风速仪寄存器 40001 存放风速×10 的整数,读到 237 表示 23.7m/s;桨距角反馈若为 0~10V 对应 0°~90°,则需先按电压通道标定,再乘 9°/V。温度 PT100 通常由专用模块直接输出温度值,但若用电阻采集,则需按 Pt100 分度表或 Callendar-Van Dusen 公式换算。标定完成后应把 k、b、量程、单位、方向约定写入参数表并做版本管理,避免现场更换传感器后沿用旧系数。
三、滤波:抑制噪声但别引入过大滞后
风速、功率这类信号噪声大,转速、桨距角则要求响应快,滤波参数必须区别对待。工程上最常用一阶低通滤波:y(n)=α·x(n)+(1−α)·y(n−1),α 越小越平滑但滞后越大。若采样周期 Ts=100ms,希望等效时间常数 τ≈1s,则 α=Ts/(τ+Ts)=0.1/1.1≈0.091。对转速信号,τ 通常取 0.1~0.3s,避免超速保护被滤掉;对温度信号,τ 可取 5~10s。滑动平均滤波适合抑制周期性干扰,窗口长度 N 与采样周期共同决定滞后,N 过大时风速变化会被“抹平”,影响变桨响应。
需要强调的是,滤波不能替代有效性判断。若传感器断线后输出恒为 0 或满量程,低通滤波只会让错误值缓慢爬升,反而更难识别。因此应在滤波前先做通道状态判断,滤波后仍保留原始值用于故障录波。
四、异常值处理与有效性判断
异常值常见有四类:断线/超量程(码值低于 3.6mA 对应值或高于 21mA 对应值)、跳变(相邻周期变化超过物理可能速率)、冻结(长时间方差为零)、越限(超出传感器量程或机组允许范围)。处理策略应分级:断线立即置无效并触发告警;跳变可先限幅再观察,连续多次跳变则判故障;冻结需结合机组状态判断,停机时风速不变属正常,运行时转速冻结则危险。
以转速为例,若额定 1800rpm、采样 20ms,则单周期最大合理变化约 1800×0.02/10≈3.6rpm(按 10s 惯性估算),若某周期从 1500 跳到 1750,应判为可疑值并保持上一有效值,同时计数;连续 3 次可疑则触发转速信号故障。对风速,可设合理变化率 5m/s²,超过则限幅。对桨距角,若三支叶片反馈差异超过 2°,应报警并检查变桨系统,而不是简单取平均。
五、一个可参考的采集处理参数示例
| 信号 | 典型量程 | 采样周期 | 滤波方式 | 异常判断 |
|---|---|---|---|---|
| 风速 | 0~50 m/s | 100 ms | 一阶低通 τ=1 s | 变化率>5 m/s² 限幅 |
| 风向 | 0~360° | 500 ms | 滑动平均 N=5 | 跳变>30°/周期 剔除 |
| 转速 | 0~2000 rpm | 20 ms | 一阶低通 τ=0.2 s | 跳变>5 rpm 计数 |
| 桨距角 | 0~90° | 50 ms | 一阶低通 τ=0.1 s | 三叶片差>2° 报警 |
| 功率 | −500~3000 kW | 100 ms | 滑动平均 N=3 | 超量程 置无效 |
| 温度 | −40~150 ℃ | 1 s | 一阶低通 τ=10 s | 断线 置无效告警 |
这张表不是固定标准,而是说明“不同信号要用不同参数”的思路。实际项目中,标定系数、滤波时间常数、异常阈值都应写入主控参数文件,并支持现场标定与版本追溯。只有采集可信、标定准确、滤波合理、异常可判,主控系统后续的转矩控制、变桨控制和保护逻辑才有可靠基础。