# 数据契约 — 东方电气 DEC DF93-1500 直驱PMSG (龙口一期-东气, 山东龙口 / 华电) # schema_v2 SOP 标准件 (2026-07-18, 新场 onboard)。 # # ★★ 本契约验的是 **name-based 归一化后** parquet (scripts/longkou_dongqi_assemble.py 输出 canonical 列名), # 非原始 xlsx。东气层高度异质 (DF93 内≥3套命名: 标准82/83/201/17列 + A变体81列带仪表位号) → # 装配器按精确别名列表逐台 name-map 到 canonical (memory 新艾里 position-based 串列教训: 禁列序读)。 # ★★ 仅 **DF93-1500 (23台)**; DF110-2500 (6台: 6/7/8/12/13/14) 列名体系另异 rated2500, **单独契约**。 # # reuse: 东方电气 DEC 直驱族 (库内 dec_df121_2500_jinhuashan / dongfang_dec_3p2mw_zyx2); DF93变体语义本场重验。 schema_version: 2 meta: oem: 东方电气 DEC (东电新能源) model: DF93-1500 直驱PMSG (无齿轮箱) topology: direct_drive_pmsg # ✅机型doc明标'直驱' + 数据无齿箱温+主轴承D/N端+发电机转速=转子转速~9-17rpm rated_kw: 1500 # ✅实证: 归一化功率曲线 ws[9,11)中位=1500kW; per台p99~1520-1627 rotor_d_m: 93 hub_height_m: 80 source_farm: 龙口一期-东气 (山东龙口, 华电) n_machines: 23 # ✅ DF93 = 东气29台 − DF110的6台(6/7/8/12/13/14) sub_model_note: "东气混子型: DF93-1500(23台, 本契约) + DF110-2500(6台, 单独契约); 分母必分子型(郭家店99/116教训)" layout: format: "xlsx per机号目录(1-29去DF110) per2月段; **归一化经 assembler** (原始多schema)" encoding: xlsx assemble: "scripts/longkou_dongqi_assemble.py (name-based 精确别名映射 → canonical列; 机号=DQ; 台15/20 A变体81列/台5/24 17列精简 均归一)" schema_variants: "标准82列×13 + 83列×4 + 201列×3(富, 含'超出范围'flag) + 17列×2(精简, 缺扭角/舱外/偏航/N端) + A变体81列×1(仪表位号命名'定子温度U1 304AI2-1'/'电缆缠绕角度')" sampling: turbine_10min_s: 600 window: "东气全年2025 (部分台延至2026-03; per台窗不一)" turbine_10min: sampling_s: 600 required: [有功功率, 风速] # 分析下界 (台15 A变体亦有; 17列精简台亦有) machine_col: _tid time_col: 时间 columns: 时间: {role: timestamp} 有功功率: canonical_id: WTUR_W unit: kW valid_range: [-150, 1700] observed_range: [-17, 1664] # ✅ 归一化 p99~1520-1627(DF93 rated1500 plateau); 负=空转寄生真物理 self_ref_note: "别名 Scada有功功率/IPR有功功率/有功功率 跨schema; 装配器 name-map" trap: "负值=空转寄生耗电真物理禁clip" 风速: canonical_id: WMET_horWdSpd unit: m/s valid_range: [0, 40] observed_range: [0.15, 20.46] self_ref_risk: high # 机舱风+**本场无测风塔** → 绝对达成率/Cp INSUFFICIENT(铁律) trap: "别名 测量所得风速/Scada监视风速/瞬时测量风速; 前两者同源复制非冗余; ⚠台15(A变体)风速p50=0待核(疑长停或列义异)" 定子U温: canonical_id: WGEN_TmpStaU unit: degC valid_range: [-40, 200] observed_range: [9, 90] semantic: "直驱PMSG定子三相(U/V/W)独立 → 相间不平衡可做(待验是否如乾安corr=1.00齐动); 别名含A变体'发电机定子温度U1 304AI2-1'" 定子V温: {canonical_id: WGEN_TmpStaV, unit: degC, valid_range: [-40, 200], observed_range: [9, 90]} 定子W温: {canonical_id: WGEN_TmpStaW, unit: degC, valid_range: [-40, 200], observed_range: [9, 90]} 主轴承D温: canonical_id: WTRM_TmpMainBrgDE unit: degC valid_range: [-40, 130] observed_range: [6, 80] semantic: "直驱主轴承驱动端(D)/非驱动端(N)双端 → 配对差可做; 脂润滑无油浴不配冷浸" 主轴承N温: {canonical_id: WTRM_TmpMainBrgNDE, unit: degC, valid_range: [-40, 130], observed_range: [6, 80], note: "17列精简台(5/24)缺N端 → 那2台只D端"} 舱外温: canonical_id: WNAC_ExtTmp unit: degC valid_range: [-50, 60] observed_range: [-5, 23] trap: "🟡 **cross-turbine可用性未验(provisional)**: 单台变动合理(-5~23山东季节), 但**跨台极差19.8℃**(测试样本, 疑窗混淆非传感器: 各台窗不一有的冬有的到2026夏) → **同窗跨台核前禁作环温锚/ρ归一**(区别我G-OEM初判'可用', 谨慎降provisional); 17列精简台(5/24)/部分缺此列" 舱内温: {canonical_id: WNAC_IntTmp, unit: degC, valid_range: [-50, 80], observed_range: [-5, 45], note: "机舱空气温度; 别名 机舱空气3秒滤波温度/机舱空气温度"} 机舱位置扭角: canonical_id: WNAC_Dir_unwrapped unit: deg valid_range: [-900, 900] # ★非[0,360) observed_range: [-440, 616] trap: "★**unwrap电缆扭角非方位角**(同乾安yaw): A变体列名'电缆缠绕角度'**明示扭角**坐实此解读; range±1.7转; cable_twist可做禁作地理朝向; 17列精简台缺" 偏航误差: canonical_id: WYAW_YawErr unit: deg valid_range: [-185, 185] observed_range: [-180, 180] note: "对风误差; 静态/动态偏航可做; 别名 用于偏航跟随的偏航误差/偏航方向反向角度; 17列精简台缺" 发电机转速: canonical_id: WGEN_Spd unit: rpm valid_range: [-2, 22] observed_range: [-0.28, 17.19] semantic: "★直驱→发电机转速=转子转速(~9-17rpm低速, 非DFIG~1500rpm); 17列精简台缺" 有功电量: canonical_id: WTUR_TotWh unit: kWh valid_range: [0, 1000000000] observed_range: [22440000, 27700000] trap: "累计计数器 → 差分作分母; per台对齐投运; 别名 Scada有功正电量/给SCADA正向有功总电度,float" 发电总时间: canonical_id: WTUR_TotGenTime unit: s valid_range: [0, 100000000000] observed_range: [193000000, 221000000] semantic: "★可用率A_op: 发电总时间/工作总时间 = 时间基可用率(比乾安完整度更直接)" 工作总时间: {canonical_id: WTUR_TotOpTime, unit: s, valid_range: [0, 100000000000], observed_range: [193000000, 230000000]} cleaning: physical: - "有功功率负值=空转寄生真物理禁clip" - "valid_range界外→NaN非clamp" - "🔴变压器油面温度=850全场哨兵死通道(未纳canonical=已排除); 其余哨兵族待扫" semantic: - "机舱位置扭角 unwrap → 禁按[0,360)clip(削真扭角)" - "风速自指+无测风塔 → 绝对达成率INSUFFICIENT" - "舱外温 cross-turbine 同窗核前禁作环温锚(provisional)" - "有功电量/发电总时间 累计量 → 差分" derive: - "10min已是时均层(非瞬时快照, 东气原生10min); A_op=发电总时间增量/工作总时间增量" traps: - "★**多schema name-based**: DF93内≥3套命名(标准/17列精简/A变体仪表位号) → 装配器精确别名映射, 禁position读(新艾里教训)" - "★**分子型**: DF93(23台,本契约rated1500) vs DF110(6台,rated2500,单独契约); 混曲线=大叶轮假超发" - "★**扭角非方位角**: A变体'电缆缠绕角度'坐实; [-440,616]±1.7转" - "★**舱外温cross-turbine未验**: 跨台19.8℃(疑窗混淆), 同窗核前provisional" - "★**17列精简台(5/24)/A变体(15/20)通道少**: 缺扭角/舱外/偏航/N端等 → 那些台温度/偏航轴不可做, per台schema感知" - "变压器油温=850全场哨兵(死), 已排除canonical"