cFos Charging Manager - формули

Мениджърът за таксуване на cFos позволява динамична оценка на формулите. Тази функционалност е налична за измервателен уред от тип "Израз" и за правила за таксуване от тип "Формула".

Следователно можете да настроите измервателни уреди, които изчисляват стойности от други измервателни уреди или EVSE, поддържат ги готови и ги показват. Правилата за зареждане могат също така да използват формули за динамично изчисляване на тока на зареждане и също така да имат достъп до измервателни уреди и EVSE (включително измервателни уреди от тип "Expression").

Следните операции са възможни с формулите:

+ - * /Събиране, изваждане, умножение, деление
^Изчисляване на мощността, напр. 10^2 = 100
min(x,y)Минимум на x и y, възможни са повече от 2 аргумента
max(x,y)Максимум x и y, възможни са повече от 2 аргумента
abs(x)Абсолютна стойност на x, напр. abs(-2) = 2
sqrt(x)Квадратен корен от x

Освен това са възможни следните логически изрази:

== (равен), != (неравен), < (по-малък), <= (по-малък-равен), > (по-голям), >= (по-голям-равен), ! (не), || (логическо Или), && (логическо И), ? (условен оператор, напр. x ? y : z, връща y, ако x е вярно, в противен случай z)

Това позволява, например, токът да се изключва в зависимост от условията: M1.current >= 6500 ? M1.current : 0 връща тока на M1, ако той е по-голям от 6,5A, и 0 в противен случай, което спира зареждането. За такива условия е възможно също така да се направи запитване към входовете (вж. по-долу)

Възможни са следните имена:

MxИзмервателен уред с идентификационен номер x, напр. M1
ExEVSE с идентификатор на устройството x, напр. E1

Възможен е и достъп до виртуални измервателни уреди, като например излишък от слънчева енергия, потребление на електроенергия от мрежата или "Power avail. for EVSEs" (налична мощност за EVSE), чрез настройване на измервателния уред и използване на съответния идентификатор на устройството във формулата.

След това можете да получите достъп до отделните стойности на единиците чрез точката. Те се извикват по следния начин:

current_l1Ток на фаза 1 в mA
current_l2Ток на фаза 2 в mA
current_l3Ток на фаза 3 в mA
currentТок на текущата фаза в mA (за правилата за зареждане мениджърът за зареждане задава запитвания за всички фази една след друга; за измервателни уреди от тип "Expression" се прилага съответната фаза, за която се отнася формулата. Ако сте задали формула за "Current L1", можете да пропуснете полетата за Current L2 и L3. Тогава се използва формулата за ток L1)
power_vaМощност на тока във ватове/VA (в зависимост от типа на измервателния уред тук може да се посочи видимата или активната мощност)
power_wТекуща активна мощност във ватове
opower_vaСтенна кутия: Предлаганата текуща мощност във VA за всички 3 фази.
import_whИзразходвана енергия в Wh
export_whВпръскана енергия в Wh
dtВремето, което е изминало от последната актуализация (в секунди)
inputNНомер на входа N на устройството, 1 = активен, 0 = неактивен
socSOC, ниво на зареждане в проценти (измервателен уред/хранилище)
txn_durationПродължителност на текущата транзакция в секунди (EVSE)
txn_energyЗаредена енергия на текущата транзакция в Wh (EVSE)
min_currentМинимален ток на зареждане в mA (EVSE)
max_currentМаксимален ток на зареждане в mA (EVSE)
stateСтатус: 1 изчакване, 2 включено, 3 зареждане, 4 зареждане с вентилация, 5 грешка, 6 офлайн (EVSE)

Пример
M1.current_l1Ток на измервателния уред M1, фаза 1
E2.import_whКонсумирани Wh от EVSE E2
E3.power_vaТекуща мощност на зареждане от E3

Ако използвате формулите за измервателен уред от тип "Expression", можете също така да пропуснете идентификатора на устройството. Тогава имената на полетата се отнасят за този измервателен уред, например "power_va" е мощността на този уред във ватове/VA. Можете да използвате 'dt', за да реализирате няколко разширени функции, напр. в измервателен уред от тип "Expression" (Израз):

  • Формула за "import_wh": import_wh + M1.power_va * dt / 3600 актуализира енергията на източника въз основа на мощността през последното време на актуализация
  • Като формула за "power_va": (power_va * (20 - dt) + M1.power_va * dt) / 20 изглажда мощността през последните 20 секунди.

Глобални променливи

date

date.yearТекуща година
date.monthМесец от 0..11
date.dayДен от 1..31
date.weekdayСедмичен ден Mo=0, Tue=1, ... Не=6
date.yeardayДен в годината от 0..366
date.hourЧас от 0..23
date.minuteМинута от 0..60
date.secondСекунда от 0..60
date.daysecondВтора част на този ден от 0..86399
date.dayminuteМинута от този ден от 0..1439
date.dst0 = зимно време, 1 = лятно време

PB (cFos Power brain only)

PB.input1S0 Input 1, 1 = активен, 0 = неактивен
PB.input2S0 Input 2, 1 = активен, 0 = неактивен

CM Променливи на мениджъра за зареждане

Тези променливи могат да бъдат зададени от администратора в раздел "Конфигурация". Например, ако администраторът зададе променливата "var_x" на 1,5, CM.var_x връща стойността 1,5.

Предварително зададени променливи:
_num_charging: Брой стенни кутии, които се зареждат в момента
_num_charging1: Брой на зареждащите се в момента wallbox, 1, ако никой не се зарежда
_max_total_power: Максимална мощност на домашната връзка във W
_max_total_evse_power: Максимална мощност на EVSE във 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

Пример за приложение

Искате допълнително да ограничите тока на зареждане по отношение на измервателния уред за потребление на апартамент. За тази цел можете да създадете правило за зареждане с формулата 16000 - M1.current.
M1 е електромерът, който измерва потреблението на апартамента. Управлението на натоварването на мениджъра за зареждане на cFos първо се опитва да осигури на EVSE максимален ток спрямо мощността на домашната връзка, но след това го ограничава до 16 A минус потреблението на апартамента.