cFos Charging Manager - formler

cFos Charging Manager tillater dynamisk evaluering av formler. Denne funksjonaliteten er tilgjengelig for en teller av typen "Uttrykk" og for lasting av regler av typen "Formel".

Så du kan sette opp målere som beregner verdier fra andre målere eller veggbokser og holde dem klare og vise dem. Ladereglene kan også dynamisk beregne ladestrømmen ved hjelp av formler og også få tilgang til målere og veggbokser (inkludert målere av typen "Uttrykk").

Følgende operasjoner er mulige med formlene:

+ - * / %Addisjon, subtraksjon, multiplikasjon, divisjon, modul
& |bitvis OG og ELLER
^Effektberegning, f.eks. 10 ^ 2 = 100
min(x,y)Minimum x og y, mer enn 2 argumenter mulig
max(x,y)Maksimalt x og y, mer enn 2 argumenter mulig
abs(x)Absolutt mengde x, f.eks abs (-2) = 2
sqrt(x)Kvadratrot av x
exists(x)sant hvis variabelen x eksisterer, ellers usann

Følgende logiske uttrykk er også mulige:

== (lik) != (ikke lik), < (mindre enn), <= (mindre enn eller lik), > (større enn), >= (større enn eller lik) ! (ikke), || (logisk eller), && (logisk og) ? (Betinget operator, x ? y : z, returnerer y hvis x er sant, ellers z)

Dette tillater for eksempel å slå av strømmen avhengig av forhold: M1.current >= 6500 ? M1.current : 0 leverer strømmen til M1 hvis den er større enn 6,5A og 0 ellers, noe som stopper ladingen. For slike forhold er det også mulig å spørre inndata (se nedenfor)

Følgende navn er mulige:

MxTeller med enhets -ID x, f.eks. M1
ExEVSE med enhets -ID x, f.eks. E1

Det er også mulig å få tilgang til virtuelle målere som soloverskudd, kjøpt elektrisitet eller "Strømtilgang. For EVSE -er" (strøm tilgjengelig for veggbokser) ved å sette opp måleren og deretter bruke den tilsvarende enhets -IDen i formelen.

Individuelle verdier for enhetene kan deretter nås ved hjelp av et punkt. Disse kalles som følger:

current_l1Fase 1 strøm i mA
current_l2Fase 2 strøm i mA
current_l3Fase 3 strøm i mA
currentStrøm for gjeldende fase i mA (med laderegler, spør Charging Manager alle faser etter hverandre; med målere av typen "Uttrykk" gjelder den respektive fasen som formelen refererer til. Hvis du har angitt en formel for " Gjeldende L1 ", du kan utelate feltene for strøm L2 og L3. Deretter brukes formelen for strøm L1)
power_vaStrøm i watt/VA (avhengig av målertype, tilsynelatende effekt eller ekte effekt kan leveres her)
power_wGjeldende aktiv effekt i watt
opower_vaWallbox: Tilbys for tiden ytelse i VA relatert til alle 3 fasene.
import_whRelatert energi i Wh
export_whEnergi tilført i Wh
dtTiden siden den siste siste oppdateringen (i sekunder)
inputNInndatanummer N for enheten, 1 = aktiv, 0 = inaktiv
socSOC, ladenivå i prosent (teller/minne)
idEnhets-ID, Modbus-ID
txn_durationVarighet av gjeldende transaksjon i sekunder (wallbox)
txn_energyLadet energi for gjeldende transaksjon i Wh (wallbox)
min_currentMinimum ladestrøm i mA (EVSE)
max_currentMaksimal ladestrøm i mA (EVSE)
stateStatus: 1 venter, 2 plugget inn, 3 lader, 4 lader med ventilasjon, 5 feil, 6 offline (EVSE)
cphasesAntall lastefaser (0-3)
pphasesAntall anslåtte lastefaser (0-3)

eksempel
M1.current_l1Strøm av måler M1, fase 1
E2.import_whBrukte Wh av EVSE E2
E3.power_vaNåværende ladeeffekt på E3

Hvis du bruker formlene for en teller av typen "Uttrykk", kan du utelate enhets -IDen. Da refererer feltnavnene til denne måleren, f.eks. 'Power_va' er da effekten til denne måleren i watt/VA. Med 'dt' kan du implementere noen få ekstra funksjoner, for eksempel i en teller av typen "Uttrykk":

  • Som en formel for 'import_wh': import_wh + M1.power_va * dt / 3600 oppdaterer trukket energi basert på strømmen under den siste oppdateringstiden
  • Som en formel for 'power_va': (power_va * (20 - dt) + M1.power_va * dt) / 20 utjevner effekten de siste 20 sekundene.

globale variabler

date

date.yearDette året
date.monthmåned fra 0..11
date.daydag fra 1..31
date.weekdayUkedag Man=0, Tir=1, ... Søn=6
date.yeardaydag i året fra 0..366
date.hourtime fra 0..23
date.minuteminutter fra 0..60
date.secondandre fra 0..60
date.daysecondAndre av denne dagen fra 0..86399
date.dayminuteDagens minutt fra 0..1439
date.dst0 = vintertid, 1 = sommertid

PB (cFos Power brain only)

PB.input1S0 Input 1, 1 = aktiv, 0 = inaktiv
PB.input2S0 Input 2, 1 = aktiv, 0 = inaktiv

CM Charging manager variabler

Disse variablene kan settes av admin under "Konfigurasjon". For eksempel, hvis administratoren setter variabelen 'var_x' til 1,5, returnerer CM.var_x verdien 1,5.

Forhåndsdefinerte variabler:
_num_charging: Antall wallboxer som lades for øyeblikket
_num_charging1: Antall wallboxes som lader for øyeblikket, 1 hvis ingen lader
_max_total_power: Maksimal effekt for husforbindelsen i W
_max_total_evse_power: Maksimal effekt for EVSE-ene i W
_pris: Gjeldende strømpris
_prisnivå: Gjeldende strømprisnivå, -2=svært dyrt, -3=dyrt, -4=normalt, -5=billig, -6=svært billig

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

Søknad eksempel

Du vil i tillegg begrense ladestrømmen med hensyn til en forbruksmåler i en leilighet. For å gjøre dette kan du sette opp 16000 - M1.current
M1 er måleren som måler forbruket til leiligheten. Laststyringen til cFos Charging Manager prøver først å gi wallboxen maksimal strøm med hensyn til husets tilkoblingskapasitet, men begrenser så dette til 16A minus leilighetsforbruket.