You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求用InfluxDB Flux计算家庭光伏系统能耗与馈网电量的正确语句

家庭光伏电表数据的购电/馈网电量计算(Flux修正)

场景背景

使用Shelly 3EM记录带光伏电站的家庭三相电表数据,其中一相为电网消耗+光伏发电的总和信号,功率采样周期5秒,数据存储于InfluxDB,通过Grafana可视化。已实现净功率计算(正值为购电,负值为馈网),现需准确计算实际购电量与馈网电量(单位:Wh)。

原语句问题

原计算购电量的Flux语句得到的结果(约181000)远大于实际值(约3kWh),核心问题:

  • integral使用v.windowPeriod作为单位,导致积分单位错误:功率单位是W,采样周期5秒,积分应先得到瓦秒(Ws),再转换为瓦时(Wh),而非直接用窗口周期计算。

正确Flux语句

1. 计算实际购电量(从电网购入的电量)

from(bucket: "Stromverbrauch")
  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
  |> filter(fn: (r) => r["_measurement"] == "shelly_em3_main")
  |> filter(fn: (r) => r["_field"] == "power1" or r["_field"] == "power2" or r["_field"] == "power3")
  |> pivot(rowKey: ["_time"], columnKey: ["_field"], valueColumn: "_value")
  |> map(fn: (r) => ({r with _value: r.power1 + r.power2 + r.power3}))
  |> drop(columns: ["power1", "power2", "power3"])
  // 仅保留购电时段的正功率
  |> map(fn: (r) => ({r with _value: if r._value > 0 then r._value else 0.0}))
  // 按秒积分得到瓦秒,转换为瓦时(1 Wh = 3600 Ws)
  |> integral(unit: 1s)
  |> map(fn: (r) => ({r with _value: r._value / 3600.0}))
  |> yield(name: "grid_import_wh")

2. 计算馈网电量(光伏过剩送入电网的电量)

from(bucket: "Stromverbrauch")
  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
  |> filter(fn: (r) => r["_measurement"] == "shelly_em3_main")
  |> filter(fn: (r) => r["_field"] == "power1" or r["_field"] == "power2" or r["_field"] == "power3")
  |> pivot(rowKey: ["_time"], columnKey: ["_field"], valueColumn: "_value")
  |> map(fn: (r) => ({r with _value: r.power1 + r.power2 + r.power3}))
  |> drop(columns: ["power1", "power2", "power3"])
  // 仅保留馈网时段的负功率,取绝对值转为正值
  |> map(fn: (r) => ({r with _value: if r._value < 0 then -r._value else 0.0}))
  |> integral(unit: 1s)
  |> map(fn: (r) => ({r with _value: r._value / 3600.0}))
  |> yield(name: "grid_export_wh")

关键说明

  • 积分单位用1s确保计算的是瓦秒(Ws),除以3600后得到标准瓦时(Wh),和电表读数单位一致。
  • 不要提前使用aggregateWindow(除非需要降采样优化),原始采样数据的积分结果更准确。

内容的提问来源于stack exchange,提问作者WolfiG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 17:54:54