Pengurus Pengisian cFos membolehkan penilaian formula yang dinamik. Fungsi ini tersedia untuk kaunter jenis "Ekspresi" dan untuk memuatkan peraturan jenis "Rumus".
Oleh itu, anda boleh menetapkan meter yang mengira nilai dari meter atau kotak dinding lain dan memastikannya tetap siap dan memaparkannya. Peraturan pengecasan juga dapat mengira arus pengecasan secara dinamis menggunakan formula dan juga mengakses meter dan kotak dinding (termasuk meter dari jenis "Ekspresi").
Operasi berikut boleh dilakukan dengan formula:
+ - * / % | Penambahan, penolakan, pendaraban, pembahagian, modulus |
& | | bitwise DAN dan ATAU |
^ | Pengiraan kuasa, misalnya 10 ^ 2 = 100 |
min(x,y) | Minimum x dan y, lebih daripada 2 argumen mungkin |
max(x,y) | Maksimum x dan y, lebih daripada 2 argumen mungkin |
abs(x) | Jumlah x yang mutlak, mis. Abs (-2) = 2 |
clamp(x,min,max) | Nilai x = min (jika x < min), x = max (jika x > max), jika tidak, kekalkan x |
sqrt(x) | Bundarkan x kepada integer. Contoh: Bundarkan kepada 1 tempat perpuluhan: bulat(10*x)/10. |
sqrt(x) | Akar segiempat sama x |
exists(x) | benar jika pembolehubah x wujud, jika tidak salah |
Ungkapan logik berikut juga mungkin:==
(sama dengan) !=
(tidak sama dengan), <
(kurang dari), <=
(kurang dari atau sama dengan), >
(lebih besar daripada), >=
(lebih besar daripada atau sama dengan) !
(bukan), ||
(logik atau), &&
(logik dan) ?
(Pengendali bersyarat, x ? y : z
, mengembalikan y jika x benar, sebaliknya z)
Ini membenarkan, sebagai contoh, mematikan arus bergantung pada keadaan: M1.current >= 6500 ? M1.current : 0
membekalkan arus M1 jika ia lebih besar daripada 6.5A dan 0 sebaliknya, yang menjeda pengecasan. Untuk keadaan sedemikian, anda juga boleh membuat pertanyaan input (lihat di bawah)
Nama berikut mungkin:
Mx | Berbanding dengan ID peranti x, misalnya M1 |
Ex | SETIAP dengan ID peranti x, misalnya E1 |
Anda juga boleh mengakses meter maya seperti lebihan suria, elektrik yang dibeli atau "Power avail. for EVSEs" (kuasa tersedia untuk wallboxes) dengan menyediakan meter dan kemudian menggunakan ID peranti yang sepadan dalam formula.
Nilai-nilai individu peranti kemudian dapat diakses menggunakan titik. Ini disebut sebagai berikut:
current_l1 | Fasa 1 semasa di mA |
current_l2 | Fasa 2 semasa di mA |
current_l3 | Fasa 3 semasa di mA |
current | Arus fasa semasa dalam mA (dengan peraturan pengecasan, Pengecas Pengisian menanyakan semua fasa satu demi satu; dengan meter dari jenis "Ekspresi", fasa masing-masing yang dirujuk oleh formula berlaku. Sekiranya anda telah menentukan formula untuk " L1 semasa, anda boleh menghilangkan medan untuk aliran L2 dan L3. Kemudian formula untuk aliran L1 digunakan) |
power_va | Kuasa semasa dalam watt/VA (bergantung pada jenis meter, kuasa nyata atau kuasa sebenar dapat dibekalkan di sini) |
power_w | Kuasa aktif semasa dalam watt |
opower_va | Wallbox: Pada masa ini ditawarkan prestasi dalam VA yang berkaitan dengan semua 3 fasa. |
import_wh | Tenaga berkaitan di Wh |
export_wh | Tenaga dimasukkan dalam Wh |
dt | Masa sejak kemas kini terakhir yang terakhir (dalam beberapa saat) |
inputN | Input nombor N peranti, 1 = aktif, 0 = tidak aktif |
soc | SOC, tahap cas dalam peratus (kaunter/ingatan) |
id | ID Peranti, ID Modbus |
txn_duration | Tempoh transaksi semasa dalam beberapa saat (kotak dinding) |
txn_energy | Tenaga yang dicaj untuk transaksi semasa dalam Wh (kotak dinding) |
min_current | Arus pengecasan minimum dalam mA (EVSE) |
max_current | Arus pengecasan maksimum dalam mA (EVSE) |
state | Status: 1 menunggu, 2 dipasang, 3 mengecas, 4 mengecas dengan pengudaraan, 5 ralat, 6 di luar talian (EVSE) |
cphases | Bilangan fasa pemuatan (0-3) |
pphases | Bilangan fasa pemuatan yang diramalkan (0-3) |
budget | kWj mengikut bajet semasa |
budget_amount | Pada kWj maksimum belanjawan semasa |
budget_used | kWj digunakan pada belanjawan semasa |
com_err | 1 jika terdapat ralat COM, jika tidak 0 |
com_err2 | 1 jika terdapat ralat COM lebih lama daripada 12 saat, jika tidak 0 |
M1.current_l1 | Arus meter M1, fasa 1 |
E2.import_wh | Wh terpakai dari EVSE E2 |
E3.power_va | Kuasa pengecasan semasa E3 |
Sekiranya anda menggunakan formula untuk pembilang jenis "Ekspresi", anda boleh menghilangkan ID peranti. Kemudian nama medan merujuk pada meter ini, misalnya 'power_va' adalah kekuatan meter ini dalam watt/VA. Dengan 'dt' anda dapat melaksanakan beberapa fungsi tambahan, misalnya di penghitung jenis "Ekspresi":
import_wh + M1.power_va * dt / 3600
mengemas kini tenaga yang ditarik berdasarkan kuasa semasa masa kemas kini terakhir(power_va * (20 - dt) + M1.power_va * dt) / 20
melancarkan kuasa selama 20 saat terakhir.date
date.year | tahun semasa |
date.month | bulan dari 0..11 |
date.day | hari dari 1..31 |
date.weekday | Hari dalam minggu Isn=0, Sel=1, ... Ahad=6 |
date.yearday | hari dalam setahun dari 0..366 |
date.hour | jam dari 0..23 |
date.minute | minit dari 0..60 |
date.second | kedua daripada 0..60 |
date.daysecond | Kedua hari ini dari 0..86399 |
date.dayminute | Minit hari ini dari 0..1439 |
date.dst | 0 = masa musim sejuk, 1 = masa musim panas |
PB (cFos Power brain only)
PB.input1 | S0 Input 1, 1 = aktif, 0 = tidak aktif |
PB.input2 | S0 Input 2, 1 = aktif, 0 = tidak aktif |
CM Mengecas pembolehubah pengurus
Pembolehubah ini boleh ditetapkan oleh pentadbir di bawah "Konfigurasi". Contohnya, jika pentadbir menetapkan pembolehubah 'var_x' kepada 1.5, CM.var_x mengembalikan nilai 1.5.
Pembolehubah yang dipratentukan:
_num_charging: Bilangan kotak dinding yang sedang dicas
_num_charging1: Bilangan kotak dinding sedang dicas, 1 jika tiada yang mengecas
_max_total_current: Arus maksimum sambungan rumah dalam mA setiap fasa
_max_total_evse_current: Arus maksimum untuk kotak dinding dalam mA (setiap fasa)
_harga: Harga elektrik semasa
_paras_harga: Paras harga elektrik semasa, -2=sangat mahal, -3=mahal, -4=biasa, -5=murah, -6=sangat murah _lebihan: Lebihan suria semasa dalam watt _org_surplus: Lebihan suria sebagai Pengurus Pengecasan akan mengiranya secara bebas daripada formulanya sendiri
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
Anda juga ingin menghadkan arus pengecasan berkenaan dengan meter penggunaan di sebuah apartmen. Untuk melakukan ini, anda boleh menetapkan 16000 - M1.current
M1 ialah meter yang mengukur penggunaan apartmen. Pengurusan beban Pengurus Pengecasan cFos mula-mula cuba menyediakan peti dinding dengan arus maksimum berkenaan dengan kapasiti sambungan rumah, tetapi kemudian mengehadkan ini kepada 16A tolak penggunaan pangsapuri.