3. SCADA系统基础:SCADA系统架构、数据采集频率、常见数据标签与点表
各位好,咱们今天聊聊SCADA系统。说实话,我在风场摸爬滚打这些年,SCADA系统就像我的老伙计。你想想看,一个风场几十台甚至上百台风机,没有SCADA,你根本不知道它们是在好好发电还是在偷懒。
SCADA,全称是Supervisory Control And Data Acquisition,也就是监控与数据采集系统。说白了,它就是风场的“眼睛”和“耳朵”。我习惯把它比作风场的神经中枢——从每台风机采集数据,传到中控室,再让运维人员做出决策。
3.1 SCADA系统架构
SCADA系统的架构,我一般分成三层来讲。这三层缺一不可,就像盖房子,地基、主体、屋顶都得有。
核心架构三层模型:
- 现场层(底层):风机上的传感器、PLC、变桨系统、变频器等。它们负责采集原始数据,比如风速、转速、温度、电压等。
- 通信层(中间层):负责把现场层的数据传上去。常见的有光纤环网、4G/5G、WiFi等。嗯,这里要注意,通信延迟和丢包率直接影响数据质量。
- 监控层(顶层):中控室的服务器、操作员站、历史数据库。数据在这里展示、存储、分析。
我个人习惯把现场层叫做“前线”,通信层叫“运输线”,监控层叫“指挥部”。前线打得好不好,运输线通不通畅,指挥部能不能看清战况,这三个环节一个都不能掉链子。
下面我画了一张架构图,帮你直观理解这三层的关系:
这张图你看明白了吗?数据从现场层往上走,控制指令从监控层往下发。我在项目中遇到过通信层光纤被挖断的情况,结果整个风场的数据都断了,那叫一个抓狂。所以通信冗余设计真的很重要。
3.2 数据采集频率
数据采集频率,说白了就是SCADA系统多久从风机上“问”一次数据。这个频率不是随便定的,得看数据类型和用途。
| 数据类型 | 典型采集频率 | 用途说明 |
|---|---|---|
| 模拟量(风速、功率、温度) | 1秒 ~ 10秒 | 实时监控、性能分析 |
| 状态量(启停、故障、并网) | 事件触发(变化即上报) | 故障报警、状态切换 |
| 累计量(发电量、运行小时数) | 1分钟 ~ 10分钟 | 电量结算、运维统计 |
| 高频振动数据 | kHz级别(独立采集系统) | 齿轮箱、轴承故障诊断 |
我的经验之谈:
我曾经在某个项目里,把风速的采集频率设成了100毫秒一次。结果呢?数据量暴增,服务器直接扛不住了。后来我改成1秒一次,再做个10秒平均值,效果反而更好。记住,不是频率越高越好,够用就行。
为什么会这样?你想想看,风速本身就在不停波动,100毫秒的采样反而引入了大量噪声。对于性能分析来说,1秒或10秒的均值已经足够。但对于故障诊断,比如齿轮箱的振动分析,那就得用高频采集了,这时候SCADA系统本身的反而不够用,得靠独立的CMS(状态监测系统)。
3.3 常见数据标签与点表
数据标签,也叫Tag或Point。每个标签代表一个具体的测量值或状态。点表呢,就是这些标签的清单,相当于风场数据的“户口本”。
我刚开始做数据工程师时,最头疼的就是点表。一个风场几百个标签,命名还不统一,有的叫“WindSpeed”,有的叫“WS”,有的叫“风速”。后来我学乖了,一定要在项目初期就把点表规范定好。
3.3.1 常见数据标签分类
- 气象类:风速、风向、环境温度、气压、湿度。这些是基础中的基础。
- 电气类:有功功率、无功功率、电压、电流、频率、功率因数。
- 机械类:叶轮转速、发电机转速、桨叶角度、偏航角度、机舱温度。
- 状态类:运行状态(运行/停机/故障)、并网状态、维护模式、急停状态。
- 累计类:总发电量、总运行时间、总故障次数、总维护次数。
点表示例(部分):
# 风机编号:WTG-01
# 标签名, 数据类型, 单位, 采集频率, 描述
WTG01_WindSpeed, float, m/s, 1s, 风速
WTG01_WindDir, float, deg, 1s, 风向
WTG01_ActivePower, float, kW, 1s, 有功功率
WTG01_ReactivePower, float, kVar, 1s, 无功功率
WTG01_RotorSpeed, float, rpm, 1s, 叶轮转速
WTG01_GenSpeed, float, rpm, 1s, 发电机转速
WTG01_PitchAngle, float, deg, 1s, 桨叶角度
WTG01_NacelleTemp, float, °C, 10s, 机舱温度
WTG01_Status, int, -, event, 运行状态
WTG01_TotalEnergy, float, kWh, 10min, 总发电量
避坑指南:
我曾经接手过一个项目,点表里有个标签叫“Temp”,我以为是环境温度,结果查了半天才发现是齿轮箱油温。差点闹出大问题。所以命名一定要规范,最好加上前缀或后缀来区分位置和类型。比如“Gearbox_OilTemp”就比“Temp”清晰得多。
3.3.2 点表管理要点
点表管理,我总结了三个要点:
- 命名规范统一:建议用“风机编号_参数名_单位”的格式,比如“WTG01_WindSpeed_mps”。别用拼音,也别用缩写,除非你们团队有明确的缩写字典。
- 数据类型明确:float、int、boolean、string,每种类型都要标清楚。我见过把布尔值存成字符串的,查询时还得转换,麻烦得很。
- 采集频率与存储策略:高频数据要不要存原始值?还是存均值?这个得提前想好。我一般建议:原始数据存7天,均值数据存1年,统计特征存永久。
嗯,说到存储策略,我再多嘴一句。很多风场的数据量其实不大,一台风机一天也就几百MB。但如果你把所有数据都存成原始值,一年下来就是几十TB。所以分级存储是个好办法——热数据用SSD,温数据用HDD,冷数据归档到磁带或云存储。
好了,SCADA系统的基础就聊到这儿。记住,SCADA是风场数据采集的起点,也是后续所有数据分析的基础。点表规范了,数据质量才有保障。下一节咱们聊聊数据清洗和预处理,那才是真正考验功夫的地方。
公众号:蓝海资料掘金营,微信deep3321