מנהל הטעינה cFos מאפשר הערכה דינאמית של נוסחאות. פונקציונליות זו זמינה לדלפק מסוג "ביטוי" ולכללי טעינה מסוג "נוסחה".
כך שתוכל להגדיר מטרים המחשבים ערכים ממדים או מארזי קיר אחרים ולשמור אותם מוכנים ולהציג אותם. חוקי הטעינה יכולים גם לחשב באופן דינמי את זרם הטעינה באמצעות נוסחאות וגם גישה למדרי ותיבות קיר (כולל מטרים מסוג "ביטוי").
הפעולות הבאות אפשריות עם הנוסחאות:
+ - * / % | חיבור, חיסור, כפל, חילוק, מודולוס |
& | | AND ו-OR |
^ | חישוב הספק, למשל 10 ^ 2 = 100 |
min(x,y) | מינימום של x ו- y, אפשר יותר מ -2 ארגומנטים |
max(x,y) | מקסימום x ו- y, אפשר יותר מ -2 ארגומנטים |
abs(x) | כמות מוחלטת של x, למשל ABS (-2) = 2 |
clamp(x,min,max) | ערך x = min (אם x < min), x = max (אם x > max), אחרת שמור על x |
round(x) | עיגול x למספר שלם. דוגמה: עיגול למקום עשרוני אחד: עגול (10*x)/10. |
sqrt(x) | שורש ריבועי של x |
exists(x) | true אם המשתנה x קיים, אחרת false |
הביטויים ההגיוניים הבאים אפשריים גם:==
(שווה ל) !=
(לא שווה), <
(פחות מ), <=
(פחות או שווה ל), >
(גדול מ), >=
(גדול מ או שווה ל) !
(לא), ||
(הגיוני או), &&
(הגיוני ו-) ?
(אופרטור מותנה, x ? y : z
, מחזיר y אם x נכון, אחרת z)
זה מאפשר, למשל, כיבוי הזרם בהתאם לתנאים: M1.current >= 6500 ? M1.current : 0
מספק את הזרם של M1 אם הוא גדול מ-6.5A ו-0 אחרת, מה שמפסיק את הטעינה. עבור תנאים כאלה, אפשר גם לבצע שאילתות קלט (ראה להלן)
השמות הבאים אפשריים:
Mx | מונה עם מזהה התקן x, למשל M1 |
Ex | EVSE עם מזהה התקן x, למשל E1 |
כמו כן, ניתן לגשת למונים וירטואליים כגון עודפי שמש, חשמל קנוי או "הספק עבור EVSEs" (הספק זמין עבור wallboxes) על ידי הגדרת המונה ולאחר מכן שימוש במזהה המכשיר המתאים בנוסחה.
לאחר מכן ניתן לגשת לערכים בודדים של המכשירים באמצעות נקודה. אלה נקראים כך:
current_l1 | זרם שלב 1 ב- mA |
current_l2 | זרם שלב 2 ב- mA |
current_l3 | זרם שלב 3 ב- mA |
current | זרם השלב הנוכחי ב- mA (עם כללי הטעינה, מנהל הטעינה שואל את כל השלבים בזה אחר זה; עם מטרים מסוג "ביטוי", השלב המתאים אליו הנוסחה מתייחסת. אם ציינת נוסחה עבור " הנוכחי L1 ", תוכל להשמיט את השדות עבור זרם L2 ו- L3. לאחר מכן נעשה שימוש בנוסחה של זרם L1) |
power_w | הספק פעיל נוכחי בוואטים |
offered | Wallbox: זרם זמין כרגע ב-mA |
import_wh | אנרגיה קשורה ב- Wh |
export_wh | אנרגיה מוזנת ב- Wh |
dt | הזמן שחלף מאז העדכון האחרון (בשניות), רק למונה "ביטוי", ראה גם CM._dt. |
inputN | מספר קלט N של המכשיר, 1 = פעיל, 0 = לא פעיל, N הוא מספר הקלט, החל מ-1. |
soc | SOC, רמת טעינה באחוזים (מונה/זיכרון) - אם נתמך על ידי המכשיר |
id | מזהה מכשיר, מזהה Modbus |
txn_duration | משך העסקה הנוכחית בשניות (wallbox) |
charging_dur | זמן טעינה בפועל של העסקה הנוכחית בשניות (Wallbox) |
txn_energy | אנרגיה טעונה של העסקה הנוכחית ב-Wh (wallbox) |
min_current | זרם טעינה מינימלי ב-mA (EVSE) |
max_current | זרם טעינה מרבי ב-mA (EVSE) |
state | סטטוס: המתנה אחת, 2 מחוברות לחשמל, 3 טעינות, 4 טעינות עם אוורור, 5 שגיאות, 6 לא מקוונות (EVSE) |
cphases | מספר שלבי הטעינה (0-3) |
pphases | מספר שלבי הטעינה החזויים (0-3) |
lb_cur_l1 | זרם מחושב זרם של שלב 1 ב-mA (wallbox). רק בזמן חישוב כללי הטעינה של Wallbox, אחרת 0 |
lb_cur_l2 | זרם מחושב זרם של שלב 2 ב-mA (wallbox). רק בזמן חישוב כללי הטעינה של Wallbox, אחרת 0 |
lb_cur_l3 | זרם מחושב זרם של שלב 3 ב-mA (wallbox). רק בזמן חישוב כללי הטעינה של Wallbox, אחרת 0 |
lb_cur | זרם מחושב כרגע של השלב הנוכחי ב-mA (wallbox). רק במהלך חישוב כללי הטעינה של Wallbox, אחרת 0. מנהל הטעינה שואל את כל השלבים בזה אחר זה. |
surplus_pcur | זרם עודף PV לכל שלב (חזוי) ב-mA |
surplus_wanted | 1 אם כבר הוחל כלל עודף PV, אחרת 0 |
budget | קוט"ש או דקות בתקציב הנוכחי |
budget_amount | בתקציב הנוכחי מקסימום קוט"ש או דקות |
budget_used | קוט"ש או דקות בשימוש בתקציב הנוכחי |
com_err | 1 אם יש שגיאת COM, אחרת 0 |
com_err2 | 1 אם יש שגיאת COM של יותר מ-12 שניות, אחרת 0 |
reactive_power | מפרט הספק תגובתי בוואטים (אם המכשיר תומך בכך), ערכים חיוביים: אינדוקטיבי, ערכים שליליים: קיבולי |
switch_phases | עבור wallboxes עם מיתוג פאזה: מיתוג פאזה ידני, 1 = 1-פאזי, 3 = 3-פאזי, -1 = מיתוג פאזה אוטומטי |
departure | זמן יציאה ISO 15118 כחותמת זמן ליחידה (עבור קופסאות קיר התומכות בכך, אחרת 0) |
req_energy | ISO 15118 אנרגיה נדרשת ב-Wh (עבור קופסאות קיר שתומכות בכך, אחרת 0) |
plugin_start | חותמת זמן של יוניקס, זמן הכנסת הכבל |
plugin_energy | אנרגיה שנטענה עד כה ב-Wh מרגע חיבור הכבל |
M1.current_l1 | זרם של מטר M1, שלב 1 |
E2.import_wh | Wh בשימוש ב- EVSE E2 |
E3.power_w | כוח טעינה נוכחי של E3 בוואט |
אם אתה משתמש בנוסחאות עבור מונה מסוג "ביטוי", אתה יכול גם להשמיט את מזהה המכשיר. אז שמות השדות מתייחסים למד זה, למשל, 'power_w' הוא אז ההספק של מד זה בוואט. באמצעות 'dt' תוכל ליישם כמה פונקציות נוספות, למשל במונה מסוג "Expression":
import_wh + M1.power_w * dt / 3600
מעדכן את האנרגיה שנרכשה על סמך ההספק בזמן העדכון האחרון(power_w * (20 - dt) + M1.power_w * dt) / 20
מחליק את העוצמה במהלך 20 השניות האחרונות.date
date.year | השנה הנוכחית |
date.month | חודש מ-0..11 |
date.day | יום מ-1..31 |
date.weekday | יום חול ראשון=0, שני=1, שלישי=2, ... שבת=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.dst | 0 = שעון חורף, 1 = שעון קיץ |
date.timestamp | Unix timespamp, secs since 1.1.1970 |
PB (nur cFos Power Brain)
PB.input1 | S0 Input 1, 1 = פעיל, 0 = לא פעיל |
PB.input2 | S0 Input 2, 1 = פעיל, 0 = לא פעיל |
CM משתני מנהל טעינה
ניתן להגדיר משתנים אלו על ידי מנהל המערכת תחת "תצורה". לדוגמה, אם המנהל מגדיר את המשתנה 'var_x' ל-1.5, CM.var_x מחזיר את הערך 1.5.
משתנים מוגדרים מראש:
_num_charging: מספר קופסאות ה-wallbox הנטענות כעת
_num_charging1: מספר קופסאות ה-wallbox בטעינה כעת, 1 אם אף אחת לא נטענת
_max_total_current: זרם מקסימלי של חיבור הבית בmA לפאזה
_max_total_evse_current: זרם מקסימלי עבור wallboxes בmA לכל שלב
_מחיר: מחיר חשמל נוכחי
_מחיר_רמת: רמת מחירי חשמל נוכחית, -2=יקר מאוד, -3=יקר, -4=רגיל, -5=זול, -6=זול מאוד
_עודף: עודף שמש נוכחי בוואט
_org_surplus: עודף שמש כפי שמנהל הטעינה היה מחשב אותו ללא תלות בנוסחאות שלו
_storage_home_max_capacity: קיבולת אחסון כוללת, בית, אם צוין בתצורת המונה, ב-Wh
_storage_home_capacity: קיבולת אחסון נוכחית, בית, אם צוין בתצורת המונה, ב-Wh
_storage_all_max_capacity: קיבולת אחסון כוללת, הכל, אם צוין בתצורת המונה, בWh
_storage_all_capacity: קיבולת אחסון נוכחית, הכל, אם צוין בתצורת המונה, ב-Wh
_max_total_current_prc: אחוז מזרם הטעינה הכולל המרבי הזמין. ניתן לכתוב משתנה זה גם (דרך הגדרות מד ומשתני Charging Manager).
_dt: הזמן מאז העדכון האחרון שעבר (בשניות).
שימוש בחפצים גלובליים:
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
הודעה:
תחת מונים מותאמים אישית תמצא גם הוראות כיצד להשתמש בנוסחאות עם משתנים ותפוקות גלובליות של Charging Manager.
GM מונים גלובליים
GM.grid_demand | הפניה לרשת |
GM.consumed | צְרִיכָה |
GM.produced | דוֹר |
GM.consumed_evse | צריכת מכוניות חשמליות |
GM.available_evse | כוח זמין |
GM.surplus | עודף PV |
GM.storage_home | בית זיכרון |
GM.storage_all | זיכרון הכל |
GM.error | ביצועים דרך טעויות |
שימוש במונים גלובליים
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.
ברצונך להגביל בנוסף את זרם הטעינה ביחס למד צריכת דירה. לשם כך, תוכל להגדיר 16000 - M1.current
M1 הוא המונה שמודד את צריכת הדירה. ניהול העומס של cFos Charging Manager מנסה תחילה לספק ל-wallbox את הזרם המקסימלי ביחס לקיבולת חיבור הבית, אך לאחר מכן מגביל זאת ל -16A פחות צריכת הדירה.
באמצעות min_price(s), max_price(s) אתה יכול לקבוע את המחיר הזול ביותר מספק האנרגיה שלך באירו, לפיו המחירים מתבצעים מהשעה הנוכחית ועד שניות המקסימליות של היום או למחרת, למשל המחיר הזול ביותר עד 7:00 בבוקר בלילה. לדוגמה, אתה יכול ליצור כלל טעינה עם התנאי CM._price <= min_price(25200) לטעינה בזמן הזול ביותר, אך עם התנאי שברצונך לצאת לדרך מ-8:00 בבוקר (בהנחה של שעה אחת של זמן טעינה). באופן דומה, ישנן שתי הפונקציות min_price_secs(s) ו-max_price_secs(s), אשר מחזירות את שעת ההתחלה של המחיר הזול ביותר בשניות של היום שהתחיל. לאחר מכן תוכל להשוות זאת עם date.daysecond, למשל.