cFos Charging Manager gør det muligt at foretage dynamisk evaluering af formler. Denne funktionalitet er tilgængelig for en måler af typen "Expression" og for opkrævningsregler af typen "Formula".
Du kan derfor oprette målere, der beregner værdier fra andre målere eller EVSE'er og holder dem klar og viser dem. Opladningsreglerne kan også bruge formler til dynamisk at beregne opladningsstrømmen og også få adgang til målere og EVSE'er (herunder målere af typen "Expression").
Følgende operationer er mulige med formlerne:
+ - * / | Addition, subtraktion, multiplikation, division |
^ | Beregning af effekt, f.eks. 10^2 = 100 |
min(x,y) | Minimum af x og y, mere end 2 argumenter muligt |
max(x,y) | Højst x og y, mere end 2 argumenter muligt |
abs(x) | Absolut værdi af x, f.eks. abs(-2) = 2 |
sqrt(x) | Kvadratrod af x |
Desuden er følgende logiske udtryk mulige:==
(lig), !=
(ulig), <
(mindre), <=
(mindre lig), >
(større), >=
(større lig), !
(ikke), ||
(logisk eller), &&
(logisk og), ?
(betinget operatør, f.eks. x ? y : z
, returnerer y hvis x er sandt, ellers z
)
Dette gør det f.eks. muligt at slukke for strømmen afhængigt af forholdene: M1.current >= 6500 ? M1.current : 0
returnerer strømmen i M1, hvis den er større end 6,5 A, og 0 i modsat fald, hvilket sætter opladningen på pause. For sådanne betingelser er det også muligt at forespørge indgange (se nedenfor)
Følgende navne er mulige:
Mx | Måler med enheds-ID x, f.eks. M1 |
Ex | EVSE med enheds-ID x, f.eks. E1 |
Det er også muligt at få adgang til virtuelle målere, f.eks. soloverskud, netudtag eller "Power avail. for EVSEs", ved at konfigurere måleren og derefter bruge det tilsvarende enheds-id i formlen.
Du kan derefter få adgang til de enkelte værdier af enhederne ved hjælp af punktet. Disse kaldes på følgende måde:
current_l1 | Strøm i fase 1 i mA |
current_l2 | Strøm i fase 2 i mA |
current_l3 | Strøm i fase 3 i mA |
current | Strømmen for den aktuelle fase i mA (for opladningsregler forespørger Charging Manager alle faser efter hinanden; for målere af typen "Expression" gælder den respektive fase, som formlen henviser til. Hvis du har angivet en formel for "Current L1", kan du udelade felterne for Current L2 og L3. Så anvendes formlen for strøm L1) |
power_va | Aktuel effekt i Watt/VA (afhængig af målerens type kan der her angives tilsyneladende effekt eller aktiv effekt) |
power_w | Aktuel aktiv effekt i watt |
opower_va | Wallbox: Den aktuelle effekt i VA, der tilbydes for alle 3 faser. |
import_wh | Trækket energi i Wh |
export_wh | Indsprøjtet energi i Wh |
dt | Den tid, der er gået siden den seneste seneste opdatering (i sekunder) |
inputN | Indgangsnummer N for enheden, 1 = aktiv, 0 = inaktiv |
soc | SOC, opladningsniveau i procent (måler/lager) |
txn_duration | Varigheden af den aktuelle transaktion i sekunder (EVSE) |
txn_energy | Opladet energi for den aktuelle transaktion i Wh (EVSE) |
min_current | Mindste opladestrøm i mA (EVSE) |
max_current | Maksimal opladestrøm i mA (EVSE) |
state | Status: 1 venter, 2 tilsluttet, 3 oplader, 4 oplader med ventilation, 5 fejl, 6 offline (EVSE) |
M1.current_l1 | Strøm fra måler M1, fase 1 |
E2.import_wh | Forbrugt Wh fra EVSE E2 |
E3.power_va | Nuværende opladningseffekt fra E3 |
Hvis du bruger formlerne til en måler af typen "Expression", kan du også udelade enheds-id'et. Så henviser feltnavnene til denne måler, f.eks. er "power_va" så denne målers effekt i Watt/VA. Du kan bruge "dt" til at realisere nogle få udvidede funktioner, f.eks. i en måler af typen "Expression":
import_wh + M1.power_va * dt / 3600
opdaterer den tilførte energi baseret på strømmen i det seneste opdateringstidspunkt(power_va * (20 - dt) + M1.power_va * dt) / 20
udjævner effekten i de sidste 20 sekunder.date
date.year | Igangværende år |
date.month | Måned fra 0..11 |
date.day | Dag fra 1..31 |
date.weekday | Ugedag Mo=0, Tir=1, ... Søn=6 |
date.yearday | Dag i året fra 0..366 |
date.hour | Timer fra 0..23 |
date.minute | Minut fra 0..60 |
date.second | Andet fra 0..60 |
date.daysecond | Andet på denne dag fra 0..86399 |
date.dayminute | Minutter på denne dag fra 0..1439 |
date.dst | 0 = vintertid, 1 = sommertid |
PB (cFos Power brain only)
PB.input1 | S0 Input 1, 1 = aktiv, 0 = inaktiv |
PB.input2 | S0 Input 2, 1 = aktiv, 0 = inaktiv |
CM Variabler for Charging Manager
Disse variabler kan indstilles af administratoren under "Konfiguration". Hvis administratoren f.eks. indstiller variablen "var_x" til 1,5, returnerer CM.var_x værdien 1,5.
Foruddefinerede variabler:
_num_opladning: Antal wallboxes, der i øjeblikket oplades
_num_charging1: Antal wallboxer, der i øjeblikket oplades, 1, hvis ingen er i gang med at oplade
_max_total_effekt: Maksimal effekt for husets tilslutning i W
_max_total_evse_power: Maksimal effekt for EVSE'erne i W
Benutzung der globalen Objekte:
charge 8A starting at 8:00am: date.dayminute >= 480 ? 8000 : 0
charge 16A on Saturday and Sunday: date.weekday == 5 || date.weekday == 6 ? 16000 : 0
charge 6A if input 2 active: PB.input2 ? 6000 : 0
charge 6A if CM variable non-zero: cm.var1 ? 6000 : 0
Du ønsker desuden at begrænse opladningsstrømmen med hensyn til en forbrugsmåler af en lejlighed. For at gøre dette kan du oprette en opladningsregel med formlen 16000 - M1.current
.
M1 er den måler, der måler lejlighedens forbrug. Belastningsstyringen i cFos Charging Manager forsøger først at forsyne EVSE'en med den maksimale strøm i forhold til husets tilslutningseffekt, men begrænser derefter denne til 16 A minus lejlighedens forbrug.