EnergyWizard Open

Har du ett husbatteri?

Husbatteri

EnergyWizard kan styra ett husbatteri som en del av hela huset, inte som en egen ö. Batteriet konkurrerar med elbilen, värmepumpen, spabadet och exporten om samma watt. Därför fattas besluten i samma motor som styr allt annat: hur elbilen laddar, effekttaket, huvudsäkringen, elpriset och solöverskottet. Allt styrs via batteriets egen Home Assistant-integration, utan egen protokollkod.

Status: byggt och testat med simulerade anrop, men ännu aldrig kört mot ett riktigt batteri. Har du ett? Hör av dig - det är precis det vi behöver.

Tre lägen

LägeVad händer
samarbete (standard)Ett annat system styr batteriet, till exempel växelriktarens egen BESS eller Predbat. EnergyWizard läser batteriet, visar det och räknar med det, men skriver aldrig dit.
styrEnergyWizard väljer batteriets läge enligt reglerna nedan.
avBatteriet ignoreras.

Batteriets fem lägen

När EnergyWizard styr väljer det kvart för kvart ett av fem lägen. Batteriets egna lägesnamn (till exempel "Self Use" eller "Force Charge") kopplas till de här fem:

De fem lägena: auto, håll, vila, ladda och ladda ur, med flödet mellan sol, nät, hus och batteri

Vilka batterier kan styras?

Batteri / integration i Home AssistantLäserStyr
Solax Gen4-6 (Solax Modbus)✅✅ alla fem lägen
Growatt (Solax Modbus)✅✅ auto, håll, ladda, ladda ur
FoxESS lokalt (foxess_modbus)✅✅ auto, håll, ladda, ladda ur + effekt
Solis hybrid, t.ex. S6-EH3P (solis_modbus), med BYD, Dyness, Pylontech m.fl.✅✅ auto, ladda, ladda ur + effekt
Fronius Gen24 (fronius_modbus), t.ex. med BYD HVS✅✅ alla utom vila + effekt
HomeWizard Plug-In Battery (HA:s inbyggda HomeWizard)✅✅ auto, håll, vila, ladda
FoxESS via molnet (foxess-ha)✅auto och håll
Felicity Solar (ha_felicity)✅nej, integrationens egen styrning sköter det (se nedan)
SolarEdge, GivEnergy, Huawei Luna, Sonnen, Victron, Pylontech m.fl.✅om du kopplar lägena själv (exempel längst ner)

Allt utom läsningen är byggt mot integrationernas källkod och ännu inte kört mot ett riktigt batteri.

Reglerna (i prioritetsordning)

  1. Gammal data: svarar inte batteriet eller elmätaren tar växelriktaren över (auto).
  2. Säkringen överbelastas: batteriet laddar ur för att avlasta huvudsäkringen.
  3. Effekttaket är nått: batteriet täcker toppen.
  4. Minuspris: batteriet laddar från nätet.
  5. Elbilen laddar från nätet: batteriet håller - det töms inte i bilen.
  6. Elbilen solladdar: över din prioritetsnivå får bilen solöverskottet före batteriet.
  7. Reservnivå: under den sparas batteriet till strömavbrott.
  8. Dygnsplanen: när den räknats fram bestämmer den resten (se nedan).
  9. Utan plan - billig timme med dyrare kvar: batteriet sparas till de dyra timmarna.
  10. Annars: växelriktarens självförbrukning.

Dygnsplanen

Var femtonde minut räknar EnergyWizard fram den billigaste planen för resten av dygnet och morgondagen - kvart för kvart: när batteriet ska ladda, sparas, laddas ur eller bara täcka huset. Planen tar hänsyn till elpriset (fullt köppris och vad du får för såld el), husets förväntade förbrukning, solprognosen, elbilens laddplan (batteriet töms aldrig i bilen), batteriets verkningsgrad, reservnivån och hur snabbt det kan ladda. Den undviker att byta läge i onödan, och energi som blir kvar vid planens slut räknas försiktigt så att batteriet används när det lönar sig i stället för att hamstras.

Planen syns i Planen framåt ("Batteriet laddar 01:00-03:45"), som ett eget band i tidslinjen och i "Just nu" med hur mycket den beräknas spara mot ren självförbrukning. Säkerhetsreglerna ovan går alltid före planen.

Varje beslut syns med sin förklaring i "Just nu" på översikten och i appen.

Exempel på ett vinterdygn: batteriet laddar på natten, laddar ur vid morgon- och kvällstopparna och täcker huset däremellan

Planeringsstil

Under Inställningar → Batteri väljer du hur mycket planen ska lita på sol- och förbrukningsprognosen, i fem steg från Mycket försiktig till Mycket djärv. En försiktig plan räknar med mindre sol och mer förbrukning än prognosen och sparar mer i batteriet till senare. En djärv plan tror på prognosen och använder batteriet mer, vilket tjänar mest när prognosen stämmer. Balanserad är standard.

De fem planeringsstilarna: hur solprognos och förbrukning räknas och hur mycket som sparas i batteriet

Reservnivån, säkringsskyddet och effekttaket gäller likadant i alla stilar. Stilen ändrar bara hur planen räknar, aldrig säkerheten.

Får batteriet sälja till nätet?

Med Tillåt batteriet att sälja till nätet påslaget (standard) kan planen ladda ur mot nätet när priset är så högt att det lönar sig efter förluster och slitage. Stänger du av det täcker batteriet bara husets egen förbrukning. Det kan vara klokt om ditt elavtal ger lite betalt för såld el eller om elnätsbolaget tar ut en avgift för inmatning.

På: batteriet kan sälja till nätet. Av: batteriet täcker bara huset

Säkerhet

Planen lär sig ditt batteri

Slitage räknas med. Varje urladdad kWh kostar batteriet en bit av sin livslängd - som standard 0,30 kr/kWh (cycle_cost; räkna cellernas pris / (kapacitet × antal cykler)). Planen laddar därför bara ur när prisskillnaden täcker både förluster och slitage, och varje lägesbyte kostar också lite, så batteriet inte växlar fram och tillbaka i onödan.

Ur historiken lär sig EnergyWizard batteriets verkliga verkningsgrad, användbara kapacitet och faktiska maxeffekt, och hur mycket solprognosen brukar slå fel timme för timme hos just dig, och husets förbrukning per veckodag och timme (medianen de senaste fyra veckorna - effektvakten använder en försiktigare 85:e percentil, men för planering ger medianen en ärligare förväntan). Planen använder det inlärda, men bara när det finns tillräckligt med data och värdena är fysiskt rimliga - annars gäller det du skrivit i inställningarna. Varje dag räknas också ut vad batteriet faktiskt sparade igår: vad elen hade kostat utan batteriet minus vad den kostade.

Solax Modbus (Solax och Growatt)

Kör du Solax Modbus behöver du inte byta integration. Entitetsväljaren känner igen den och fyller i lägena själv:

Lägesnamnen kommer från integrationens egen källkod. Det är ännu inte kört mot ett riktigt batteri - hör av dig om du testar!

FoxESS

En FoxESS-laddbox (t.ex. A7300P/L07P) styrs via OCPP, som andra OCPP-laddare.

Solis (med BYD, Dyness m.fl.)

Med Pho3niX90/solis_modbus (S6-EH1P, S6-EH3P och andra hybrider) fyller entitetsväljaren i styrningen själv: rullgardinen RC Force Charge/Discharge och effektreglagen i watt. Batteriet bakom (BYD HVS, Dyness, Pylontech …) styrs alltid via växelriktaren. En egen BYD-integration kan visa celldata, men den laddar inte batteriet.

Fronius Gen24 med BYD HVS

Med redpomodoro/fronius_modbus fyller entitetsväljaren i Storage Control Mode: Auto, Block Discharging (håll), Charge from Grid och Discharge to Grid, plus effekten i watt. Slå på Modbus i växelriktarens webbsida och tillåt styrning. Den inbyggda Fronius-integrationen kan bara läsa.

BYD-batteriet laddas alltid via växelriktaren. Integrationerna bbr111/byd_hvs och redpomodoro/byd_battery_box ger bra avläsning (laddnivå, celler, temperaturer) men styr inget. Har du både en BYD-integration och Solis eller Fronius väljer entitetsväljaren växelriktaren, eftersom det är den som kan styra.

HomeWizard Plug-In Battery

Styrs via Battery group charging strategy på P1-mätaren: Net zero (auto), Net zero (charge only) (håll), Standby (vila) och One-time full charge (ladda). "Ladda ur mot nätet" finns inte i HomeWizard; i auto täcker batteriet huset ändå. P1-mätaren blir samtidigt husets elmätare. Slå på Current phase 1-3 i Home Assistant (de är avstängda som standard) så får säkringsskyddet riktiga ampere.

Felicity Solar

Kör du partach/ha_felicity (T-REX 5K, 6K, 10K, 25K och 50K via Modbus) känner entitetsväljaren igen batteriet och föreslår laddnivå och effekt, men bara för avläsning. Integrationen har en egen prisstyrning (EMS) för batteriet, och om två system styr samma batteri slåss de. Dessutom skriver integrationens val "Backup mode" i själva verket Economic mode till T-REX 5/10K, så EnergyWizard kan inte välja läge säkert den vägen. Låt därför ha_felicity sköta batteriet. EnergyWizard ser det, räknar med det i effektvakten och planen för resten av huset, och skriver aldrig dit.

Visar effekten minus när batteriet laddar? Lägg till power_invert: true under battery:, så vänds tecknet.

Så ställer du in det

Entitetsväljaren hittar batteriet och skriver control: samarbete som säker start. För styr anger du vilket av batteriets egna lägen som motsvarar varje avsikt - exakt de alternativ din select-entitet visar i Home Assistant:

battery:
  enabled: true
  driver: generic
  capacity_kwh: 10
  control: styr          # samarbete | styr | av
  reserve_soc: 20        # sparas alltid till strömavbrott
  priority_soc: 50       # över detta får elbilen solen först
  max_power_w: 5000      # batteriets max laddeffekt (för planen)
  cycle_cost: 0.30       # slitage, kr per urladdad kWh
  plan: true             # dygnsplan (false = bara reglerna)
  plan_style: balanced   # very_careful | careful | balanced | bold | very_bold
  allow_export: true     # false = batteriet täcker bara huset
  power_invert: false    # true om effektsensorn visar + vid urladdning
  entities:
    soc: sensor.batteri_soc
    power: sensor.batteri_effekt            # + = laddar
    mode_select: select.batteriets_lage
    discharge_power: number.urladdningseffekt   # valfri
  modes:
    auto: "Self-use"
    hold: "..."
    idle: "..."
    charge: "..."
    discharge: "..."

Låt Predbat se EnergyWizards planerade elbilsladdning

EnergyWizard publicerar sin laddplan för elbilen som sensorn sensor.smartbox_planerad_last i Home Assistant. Attributet predbat har exakt det format Predbats load_forecast läser (tidsstämplar med stigande kWh, kontrollerat mot Predbats källkod). Då planerar Predbat batteriet med vetskap om att bilen ska ladda 11 kW kl 02-05, istället för att bli överraskad. Lägg till i Predbats apps.yaml:

  load_forecast:
    - sensor.smartbox_planerad_last$predbat

Undvik dubbelräkning: Predbats egen prognos bygger på husets historiska last, och den innehåller redan tidigare elbilsladdning. Slå därför på Predbats car_charging_hold och peka car_charging_energy på laddarens energisensor, så att elbilen räknas bort ur historiken och bara kommer tillbaka via EnergyWizards plan. Bara elbilen ingår: värmepumpen och spabadet styrs minut för minut och har ingen plan framåt att publicera. Overifierat mot en riktig Predbat-installation, så hör gärna av dig om du provar.