cFos Ücretlendirme Yöneticisi formüllerin dinamik olarak değerlendirilmesini sağlar. Bu işlevsellik, "İfade" tipindeki bir sayaç ve "Formül" tipindeki ücretlendirme kuralları için kullanılabilir.
Bu nedenle, diğer sayaçlardan veya EVSE'lerden değerleri hesaplayan ve bunları hazır tutan ve görüntüleyen sayaçlar kurabilirsiniz. Şarj kuralları ayrıca şarj akımını dinamik olarak hesaplamak için formüller kullanabilir ve ayrıca sayaçlara ve EVSE'lere ("İfade" türündeki sayaçlar dahil) erişebilir.
Formüller ile aşağıdaki işlemler mümkündür:
+ - * / % | Toplama, çıkarma, çarpma, bölme, modülüs |
& | | bitsel VE ve VEYA |
^ | Güç hesaplaması, örneğin 10^2 = 100 |
min(x,y) | Minimum x ve y, 2'den fazla argüman mümkün |
max(x,y) | Maksimum x ve y, 2'den fazla argüman mümkündür |
abs(x) | X'in mutlak değeri, örneğin abs(-2) = 2 |
clamp(x,min,max) | Değer x = min (x < min ise), x = max (x > max ise), aksi takdirde x'i sakla |
round(x) | X'i tam sayıya yuvarlayın. Örnek: 1 ondalık basamağa yuvarlama: round(10*x)/10. |
sqrt(x) | X'in karekökü |
exists(x) | x değişkeni varsa true, yoksa false |
Ayrıca, aşağıdaki mantıksal ifadeler de mümkündür:==
(eşit), !=
(eşit olmayan), <
(daha az), <=
(daha az-eşit), >
(daha büyük), >=
(daha büyük-eşit), !
(değil), ||
(mantıksal Or), &&
(mantıksal And), ?
(koşul operatörü, örneğin x ? y : z
, x doğruysa y, aksi takdirde z
döndürür)
Bu, örneğin akımın koşullara bağlı olarak kapatılmasını sağlar: M1.current >= 6500 ? M1.current : 0
, M1'in akımı 6,5A'den büyükse akımı döndürür, aksi takdirde 0 döndürür ve bu da şarjı duraklatır. Bu tür koşullar için girişleri sorgulamak da mümkündür (aşağıya bakın)
Aşağıdaki isimler mümkündür:
Mx | Birim kimliği x olan sayaç, örneğin M1 |
Ex | Cihaz kimliği x olan EVSE, örneğin E1 |
Ayrıca, sayacı ayarlayarak ve ardından formülde ilgili cihaz kimliğini kullanarak güneş enerjisi fazlası, şebeke çekişi veya "Power avail. for EVSEs" (duvar kutuları için mevcut güç) gibi sanal sayaçlara erişmek de mümkündür.
Daha sonra nokta aracılığıyla birimlerin tek tek değerlerine erişebilirsiniz. Bunlar aşağıdaki gibi çağrılır:
current_l1 | Faz 1'in mA cinsinden akımı |
current_l2 | Faz 2'nin mA cinsinden akımı |
current_l3 | Faz 3'ün mA cinsinden akımı |
current | Geçerli fazın mA cinsinden akımı (şarj kuralları için Şarj Yöneticisi tüm fazları birbiri ardına sorgular; "İfade" tipindeki sayaçlar için formülün atıfta bulunduğu ilgili faz geçerlidir. "Akım L1" için bir formül belirlediyseniz, Akım L2 ve L3 alanlarını atlayabilirsiniz. O zaman L1 akımı için formül kullanılır) |
power_w | Watt cinsinden mevcut aktif güç |
offered | Wallbox: MA cinsinden sunulan akım |
import_wh | Wh cinsinden çekilen enerji |
export_wh | Wh cinsinden enjekte edilen enerji |
dt | Son geçmiş güncellemeden bu yana geçen süre (saniye cinsinden) |
inputN | Ünitenin giriş numarası N, 1 = aktif, 0 = inaktif |
soc | SOC, yüzde cinsinden şarj seviyesi (sayaç/depolama) |
id | Cihaz Kimliği, Modbus Kimliği |
txn_duration | Geçerli işlemin saniye cinsinden süresi (EVSE) |
charging_dur | Geçerli işlemin saniye cinsinden gerçek şarj süresi (Wallbox) |
txn_energy | Geçerli işlemin Wh cinsinden şarj edilmiş enerjisi (EVSE) |
min_current | MA cinsinden minimum şarj akımı (EVSE) |
max_current | MA cinsinden maksimum şarj akımı (EVSE) |
state | Durum: 1 bekliyor, 2 takılı, 3 şarj oluyor, 4 havalandırma ile şarj oluyor, 5 hata, 6 çevrimdışı (EVSE) |
cphases | Şarj fazlarının sayısı (0-3) |
pphases | Öngörülen şarj aşamalarının sayısı (0-3) |
surplus_pcur | MA cinsinden (öngörülen) faz başına PV aşırı akımı |
surplus_wanted | 1, bir PV fazlası kuralı zaten uygulanmışsa, aksi takdirde 0 |
budget | Mevcut bütçede kWh |
budget_amount | Mevcut bütçede maksimum kWh |
budget_used | Mevcut bütçede kullanılan kWh |
com_err | cOM hatası varsa 1, aksi takdirde 0 |
com_err2 | 12 saniyeden daha uzun bir süre COM hatası varsa 1, aksi takdirde 0 |
M1.current_l1 | M1 sayacının akımı, faz 1 |
E2.import_wh | EVSE E2'nin tüketilen Wh değeri |
E3.power_w | E3'ün watt cinsinden mevcut şarj gücü |
"İfade" türünde bir sayaç için formülleri kullanırsanız, cihaz kimliğini de atlayabilirsiniz. Daha sonra alan adları bu ölçüm cihazına atıfta bulunur, örneğin 'power_w' bu ölçüm cihazının watt cinsinden gücüdür. 'dt' aracılığıyla, örneğin "Expression" tipindeki bir sayaçta birkaç genişletilmiş fonksiyon gerçekleştirebilirsiniz:
import_wh + M1.power_w * dt / 3600
, geçmiş güncelleme süresindeki güce dayalı olarak kaynaklı enerjiyi günceller(power_w * (20 - dt) + M1.power_w * dt) / 20
son 20 saniyedeki gücü düzeltir.date
date.year | Cari yıl |
date.month | 0..11 arası ay |
date.day | 1..31'den itibaren gün |
date.weekday | Hafta içi Mo=0, Sal=1, ... Güneş=6 |
date.yearday | Yıl içinde 0..366 arası gün |
date.hour | 0..23 arası saat |
date.minute | 0..60 arası dakika |
date.second | 0..60 arası saniye |
date.daysecond | Bu günün saniyesi 0..86399 |
date.dayminute | Bu günün 0..1439 arası dakikası |
date.dst | 0 = kış saati, 1 = yaz saati |
PB (nur cFos Power Brain)
PB.input1 | S0 Input 1, 1 = aktif, 0 = inaktif |
PB.input2 | S0 Input 2, 1 = aktif, 0 = inaktif |
CM Şarj Yöneticisi Değişkenleri
Bu değişkenler yönetici tarafından 'Yapılandırma' altında ayarlanabilir. Örneğin, yönetici 'var_x' değişkenini 1,5 olarak ayarlarsa, CM.var_x 1,5 değerini döndürür.
Önceden tanımlanmış değişkenler:
_num_charging: Şu anda şarj olan duvar kutusu sayısı
_num_charging1: Şu anda şarj olan duvar kutularının sayısı, hiçbiri şarj olmuyorsa 1
_max_total_current: Faz başına mA cinsinden ev bağlantısının maksimum akımı
_max_total_evse_current: Faz başına mA cinsinden duvar kutuları için maksimum akım
_price: Güncel elektrik fiyatı
_price_level: Mevcut elektrik fiyat seviyesi, -2=çok pahalı, -3=pahalı, -4=normal, -5=ucuz, -6=çok ucuz
_surplus: Watt cinsinden mevcut güneş enerjisi fazlası
_org_surplus: Ücretlendirme Yöneticisi tarafından kendi formüllerinden bağımsız olarak hesaplanacak olan güneş enerjisi fazlası
Küresel nesnelerin kullanımı:
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
Not:
Özel Sayaçlar altında, global Charging Manager değişkenleri ve çıktıları ile formüllerin nasıl kullanılacağına ilişkin talimatları da bulacaksınız.
GM Küresel sayaçlar
GM.grid_demand | Şebeke referansı |
GM.consumed | Tüketim |
GM.produced | Nesil |
GM.consumed_evse | Tüketim e-arabaları |
GM.available_evse | Mevcut güç |
GM.surplus | PV fazlası |
GM.storage_home | Memory Home |
GM.storage_all | Memory Everything |
GM.error | Hata yoluyla performans |
Global sayaçların kullanımı
Jeder Zähler hat die Felder power_w, current, current_l1, current_l2, current_l3, import_wh und export_wh,
z.B. GM.prod_pwr.current_l1 oder GM.cons_pwr.power_w
. Bei 'current' wird der Strom der gerade betrachteten Phase ausgewertet. Ströme werden in mA geliefert, Leistung in W, Energie in Wh.
Bir dairenin tüketim ölçerine göre şarj akımını ek olarak sınırlamak istiyorsunuz. Bunu yapmak için 16000 - M1.current
formülüyle bir şarj kuralı oluşturabilirsiniz.
M1, dairenin tüketimini ölçen sayaçtır. cFos Şarj Yöneticisinin yük yönetimi ilk olarak EVSE'ye ev bağlantı gücüne göre maksimum akımı sağlamaya çalışır, ancak daha sonra bunu dairenin tüketimi eksi 16A ile sınırlar.