csic_h102n_2000_jishan_p2_full.yaml 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. # 数据契约 — 吉山二期-full (farm#15, 大唐) — 重庆海装 CSIC H102N-2000, 2MW DFIG geared
  2. # 🔴🔴 数据误标: `松门风电场\松门.zip(10GB)` 实为 **吉山二期风机#25-48** (CSV名"吉山二期风机N"); 真松门数据缺.
  3. # 填 farm#3 缺口: 当时吉山二期(重庆海装)仅薄数据(3台1min)→ 此=全量1秒227列富.
  4. meta:
  5. farm: 吉山二期 (误存松门folder)
  6. farm_code: JS2F
  7. oem: 重庆海装 CSIC
  8. model: H102N-2000 (2MW DFIG geared; 江西; rated2000=有功功率设置)
  9. topology: dfig_geared
  10. rated_kw: 2000
  11. n_turbines_with_data: 24 # #25-48
  12. province: 江西
  13. sampling: {sec_s: 1}
  14. windows: {sec: "2024-08-01 ~ 2024-10-24 (~85天, 日文件; 秋窗)"}
  15. data_location: "🔴 F:\\datang\\松门风电场\\松门.zip (误标; 内含吉山二期风机25-48, 2040 CSV日文件)"
  16. met_mast: absent
  17. power_curve_table: absent
  18. event_table: status_code_present # 风机状态(bitmask 32=发电) + 故障时间(可利用率)内置 + 有功功率设置(限电)
  19. encoding: gbk
  20. prior_work: "farm#3 吉山二期 light onboard(重庆海装新OEM第13家, 数据薄仅3台1min); 本=全量upgrade"
  21. reuse: "重庆海装H102N-2000 farm#3已入OEM KB; 本场227列full schema补全"
  22. provenance: "scripts/sm_survey.py, sm_goem2.py"
  23. # ============ sec 层 (227列超富; 1秒; 24台) — 用~18关键列 ============
  24. turbine_sec:
  25. required: [有功功率, 风速, 风机状态]
  26. columns:
  27. 时间: {canonical_id: timestamp, parse: datetime}
  28. 有功功率: {canonical_id: WAPC_active_power, unit: kW, valid_range: [-100, 2200], note: "rated2000"}
  29. 有功功率设置: {canonical_id: WAPC_power_setpoint, unit: kW, note: "🟢限电直接! range20-2000, <2000=降功率限电(此窗降到20=重限电时段)"}
  30. 风速: {canonical_id: WMET_wind_speed_nacelle, unit: m/s, self_ref_risk: true, note: "+风速1/2/机舱外"}
  31. 风向: {canonical_id: WYAW_error_relative, unit: deg, note: "🟢机舱相对风向(180=正对; raw全台聚180±11) → yaw误差=风向-180, 全台±3°对风良好(lite审修名实: 初版误判'地理')"}
  32. 偏航方位角: {canonical_id: WYAW_nacelle_position_cumulative, note: "🔴累积绝对编码器(337-558°任意零点) → 勿用于yaw重构(初版误用'风向-偏航方位角'致±80°假INSUFFICIENT)"}
  33. 风轮转速: {canonical_id: WROT_speed, unit: rpm, valid_range: [0, 25]}
  34. 1#叶片实际角度: {canonical_id: WROT_pitch_1, unit: deg, note: "🔴集距死(spread0.010°); +2/3#"}
  35. 机舱X方向振动: {canonical_id: WNAC_vibration_x, valid_range: [-5, 5], note: "🔴clip(唐兴教训); 本窗~0需验是否死"}
  36. 机舱Y方向振动: {canonical_id: WNAC_vibration_y, valid_range: [-5, 5]}
  37. 齿轮箱油温: {canonical_id: WTRM_gearbox_oil_temp, unit: degC, note: "+进口油温/高速轴前后端温度/压力"}
  38. 齿轮箱高速轴前端温度: {canonical_id: WTRM_gearbox_hss_temp, unit: degC}
  39. 发电机绕组u1温度: {canonical_id: WGEN_stator_temp_u, unit: degC, note: "+v1/w1"}
  40. 发电机前轴承温度: {canonical_id: WGEN_bearing_front_temp, unit: degC, note: "+后轴承"}
  41. 电网频率: {canonical_id: WGRID_frequency, unit: Hz, note: "+3相V/I → 限电脱网交叉验"}
  42. 风机状态:
  43. canonical_id: WTUR_state
  44. note: "★bitmask: 32=发电96%(主), 4/8/16/2 rare(停/故障/过渡, 待cross-tab解码); 单台风机状态全0弃"
  45. 故障时间(可利用率): {canonical_id: WTUR_fault_time_avail, note: "🟢内置可利用率计数器(累积故障时间; 吉山一期式built-in, 优先但先验真glitchy昌平坳教训)"}
  46. cleaning:
  47. physical:
  48. - "有功功率 clip[-100,2200]; 风轮clip[0,25]"
  49. - "🔴 X/Y振动 clip[-5,5] (唐兴教训); 振动用median"
  50. semantic:
  51. - "风速=机舱风 self_ref → 无mast → 绝对功率曲线 INSUFFICIENT"
  52. - "🟢 限电=有功功率设置<rated 直接(不靠同步性); 分节流vs binding(唐龙SOP#37)"
  53. - "偏航=风向-偏航方位角 重构(候选, 验对齐); 风机状态32=发电派生; 内置可利用率优先但验真"
  54. - "集距死→叶片不平衡靠振动(若X/Y非死)"
  55. traps:
  56. - "🔴🔴 松门folder误标=吉山二期-full; 真松门缺; CSV名'吉山二期风机'坐实"
  57. - "🔴 X/Y振动必clip+median(唐兴); 内置可利用率先验真(昌平坳glitchy教训)"
  58. - "🟢 限电有setpoint直接列(分节流vs binding 唐龙SOP#37); 风机状态bitmask待解码"
  59. - "★ 集距死; 2040 CSV日文件×24台×1秒=~176M行 heavy clean; 无mast→绝对INSUFFICIENT"
  60. - "🟡 重庆海装H102N-2000=farm#3第13 OEM全量upgrade(当时薄)"