يسمح cFos Charging Manager بالتقييم الديناميكي للصيغ. تتوفر هذه الوظيفة لعداد من النوع "Expression" ولقواعد تحميل من النوع "Formula".
لذا يمكنك إعداد عدادات تحسب القيم من العدادات الأخرى أو المربعات الجدارية وتبقيها جاهزة وتعرضها. يمكن لقواعد الشحن أيضًا حساب تيار الشحن ديناميكيًا باستخدام الصيغ وأيضًا الوصول إلى العدادات ومربعات الحائط (بما في ذلك الأمتار من نوع "Expression").
العمليات التالية ممكنة باستخدام الصيغ:
+ - * / % | الجمع والطرح والضرب والقسمة والمعامل |
& | | أحادي المعامل AND و OR |
^ | حساب القوة ، على سبيل المثال 10 ^ 2 = 100 |
min(x,y) | الحد الأدنى من x و y ، أكثر من وسيطتين ممكنتين |
max(x,y) | الحد الأقصى لـ x و y ، أكثر من وسيطتين ممكنتين |
abs(x) | المقدار المطلق من x ، على سبيل المثال القيمة المطلقة (-2) = 2 |
clamp(x,min,max) | القيمة x = min (إذا كانت x < min) ، x = max (if x > max) ، وإلا احتفظ بـ x |
round(x) | تقريب x إلى عدد صحيح. مثال: التقريب لأقرب منزلة عشرية: التقريب (10*x)/10. |
sqrt(x) | الجذر التربيعي لـ x |
exists(x) | صحيح إذا كان المتغير x موجودًا ، وإلا فهو خطأ |
التعبيرات المنطقية التالية ممكنة أيضًا:==
(يساوي) !=
(لا يساوي) ، <
(أقل من) ، <=
(أصغر من أو يساوي) ، >
(أكبر من) ، >=
(أكبر من أو يساوي) !
(لا) ، ||
(منطقي أو) ، &&
(منطقي و) ?
(العامل الشرطي ، x ? y : z
، يُرجع y إذا كانت x صحيحة ، وإلا z)
هذا يسمح ، على سبيل المثال ، بإيقاف تشغيل التيار حسب الظروف: M1.current >= 6500 ? M1.current : 0
يوفر تيار M1 إذا كان أكبر من 6.5A و 0 وإلا ، مما يؤدي إلى إيقاف الشحن مؤقتًا. لمثل هذه الظروف ، من الممكن أيضًا الاستعلام عن المدخلات (انظر أدناه)
الأسماء التالية ممكنة:
Mx | عداد بمعرف الجهاز x ، على سبيل المثال M1 |
Ex | EVSE مع معرف الجهاز x ، على سبيل المثال E1 |
من الممكن أيضًا الوصول إلى عدادات افتراضية مثل فائض الطاقة الشمسية أو الكهرباء المشتراة أو "توفير الطاقة لـ EVSEs" (الطاقة المتاحة لصناديق الحائط) عن طريق إعداد العداد ثم استخدام معرف الجهاز المقابل في الصيغة.
يمكن بعد ذلك الوصول إلى القيم الفردية للأجهزة باستخدام نقطة. تسمى هذه على النحو التالي:
current_l1 | المرحلة 1 الحالية في مللي أمبير |
current_l2 | المرحلة 2 الحالية في مللي أمبير |
current_l3 | المرحلة 3 الحالية في مللي أمبير |
current | الحالي للمرحلة الحالية في mA (مع قواعد الشحن ، يستعلم مدير الشحن عن جميع المراحل واحدة تلو الأخرى ؛ باستخدام أمتار من نوع "Expression" ، تنطبق المرحلة المعنية التي تشير إليها الصيغة. إذا كنت قد حددت صيغة لـ " L1 الحالي "، يمكنك حذف حقلي التدفق L2 و L3. ثم يتم استخدام صيغة التدفق L1) |
power_w | القوة النشطة الحالية بالواط |
offered | Wallbox: التيار المتوفر حاليًا بوحدة مللي أمبير |
import_wh | الطاقة ذات الصلة في Wh |
export_wh | تغذى الطاقة في Wh |
dt | الوقت منذ آخر تحديث (بالثواني) |
inputN | رقم الإدخال N للجهاز، 1 = نشط، 0 = غير نشط، N هو رقم الإدخال، بدءًا من 1. |
soc | SOC، مستوى الشحن بالنسبة المئوية (العداد/الذاكرة) - إذا كان الجهاز مدعومًا |
id | معرف الجهاز ، معرف مودبوس |
txn_duration | مدة المعاملة الحالية بالثواني (wallbox) |
charging_dur | وقت التحميل الفعلي للمعاملة الحالية بالثواني (Wallbox) |
txn_energy | الطاقة المشحونة للمعاملة الحالية بالواط (wallbox) |
min_current | الحد الأدنى لتيار الشحن بالمللي أمبير (EVSE) |
max_current | الحد الأقصى لتيار الشحن بالمللي أمبير (EVSE) |
state | الحالة: 1 انتظار ، 2 متصل ، 3 شحن ، 4 شحن مع تهوية ، 5 خطأ ، 6 غير متصل بالشبكة (EVSE) |
cphases | عدد مراحل التحميل (0-3) |
pphases | عدد مراحل التحميل المتوقعة (0-3) |
lb_cur_l1 | التيار المحسوب الحالي للمرحلة 1 في مللي أمبير (صندوق الحائط). فقط أثناء حساب قواعد شحن Wallbox، وإلا 0 |
lb_cur_l2 | التيار المحسوب الحالي للمرحلة 2 في مللي أمبير (صندوق الحائط). فقط أثناء حساب قواعد شحن Wallbox، وإلا 0 |
lb_cur_l3 | التيار المحسوب الحالي للمرحلة 3 في مللي أمبير (صندوق الحائط). فقط أثناء حساب قواعد شحن Wallbox، وإلا 0 |
lb_cur | التيار المحسوب حاليًا للمرحلة الحالية بوحدة مللي أمبير (صندوق الحائط). فقط أثناء حساب قواعد شحن Wallbox، وإلا 0. يقوم مدير الشحن بالاستعلام عن جميع المراحل واحدة تلو الأخرى. |
surplus_pcur | التيار الزائد الكهروضوئي لكل مرحلة (متوقعة) بالمللي أمبير |
surplus_wanted | 1 إذا تم بالفعل تطبيق قاعدة فائض الطاقة الكهروضوئية، وإلا 0 |
budget | كيلوواط ساعة أو دقيقة على الميزانية الحالية |
budget_amount | في الميزانية الحالية الحد الأقصى كيلوواط ساعة أو دقيقة |
budget_used | كيلوواط ساعة أو الدقائق المستخدمة في الميزانية الحالية |
com_err | 1 إذا كان هناك خطأ COM ، وإلا 0 |
com_err2 | 1 إذا كان هناك خطأ COM أطول من 12 ثانية ، وإلا 0 |
reactive_power | مواصفات الطاقة التفاعلية بالواط (إذا كان الجهاز يدعم ذلك)، القيم الموجبة: الاستقرائي، القيم السالبة: سعوية |
switch_phases | بالنسبة لصناديق الحائط المزودة بتبديل الطور: التبديل اليدوي للطور، 1 = مرحلة واحدة، 3 = 3 مراحل، -1 = تبديل الطور التلقائي |
departure | وقت المغادرة ISO 15118 كطابع زمني للوحدة (بالنسبة لصناديق الحائط التي تدعم هذا، وإلا 0) |
req_energy | ISO 15118 الطاقة المطلوبة بالواط (بالنسبة لصناديق الحائط التي تدعم ذلك، وإلا 0) |
plugin_start | الطابع الزمني لنظام Unix، وقت إدخال الكابل |
plugin_energy | تم شحن الطاقة حتى الآن بالواط منذ وقت توصيل الكابل |
M1.current_l1 | تيار متر M1 ، المرحلة 1 |
E2.import_wh | تم استخدام Wh من EVSE E2 |
E3.power_w | قوة الشحن الحالية E3 بالواط |
إذا كنت تستخدم الصيغ لعداد من النوع "Expression"، فيمكنك أيضًا حذف معرف الجهاز. ثم تشير أسماء الحقول إلى هذا المقياس، على سبيل المثال، "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 | أيام الأسبوع SUN=0، الإثنين=1، الثلاثاء=2، ... السبت=6 |
date.yearday | يوم من السنة بدءًا من 0.366.000 |
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: عدد صناديق الحائط المشحونة حاليًا
_num_charging1: عدد صناديق الحائط المشحونة حاليًا ، 1 إذا لم يتم شحن أي منها
_max_total_current: الحد الأقصى لتيار التوصيل المنزلي بالمللي أمبير لكل مرحلة
_max_total_evse_current: أقصى تيار لصناديق الحائط في مللي أمبير لكل مرحلة
_ السعر: سعر الكهرباء الحالي
_price_level: مستوى سعر الكهرباء الحالي ، -2 = غالي جدًا ، -3 = غالي ، -4 = عادي ، -5 = رخيص ، -6 = رخيص جدًا
_ الفائض: الفائض الشمسي الحالي بالواط
_org_surplus: فائض الطاقة الشمسية حيث أن مدير الشحن كان سيحسبه بشكل مستقل عن الصيغ الخاصة به
_storage_home_max_capacity: إجمالي سعة التخزين، المنزل، إذا تم تحديدها في تكوين العداد، بالواط
_storage_home_capacity: سعة التخزين الحالية، المنزل، إذا كانت محددة في تكوين العداد، بالساعة
_storage_all_max_capacity: إجمالي سعة التخزين، الكل، إذا تم تحديدها في تكوين العداد، بالواط
_storage_all_capacity: سعة التخزين الحالية، الكل، إذا تم تحديدها في تكوين العداد، بالساعة
_max_total_current_prc: النسبة المئوية لتيار الشحن الإجمالي الأقصى المتاح. ويمكن أيضًا كتابة هذا المتغير (من خلال تعريفات العدادات ومتغيرات مدير الشحن).
استخدام الأشياء العالمية:
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 | فائض الطاقة الكهروضوئية |
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 أولاً تزويد صندوق الشحن بأقصى تيار فيما يتعلق بسعة الاتصال بالمنزل ، ولكن بعد ذلك تحدد ذلك بـ 16A مطروحًا منه استهلاك الشقة.
باستخدام min_price(s)، max_price(s) يمكنك تحديد أرخص سعر من مزود الطاقة الخاص بك باليورو، حيث يتم البحث عن الأسعار من الوقت الحالي إلى الحد الأقصى ثانية من اليوم أو اليوم التالي، على سبيل المثال يوفر min_price(25200). أرخص الأسعار حتى الساعة 7:00 صباحا ليلا. على سبيل المثال، يمكنك إنشاء قاعدة شحن بالشرط CM._price <= min_price(25200) للشحن في أرخص وقت، ولكن بالشرط الذي تريد خصمه من الساعة 8:00 صباحًا (بافتراض ساعة واحدة من وقت الشحن). وبالمثل، هناك الدالتان min_price_secs(s) وmax_price_secs(s)، اللتان ترجعان وقت البدء لأرخص سعر بالثواني من اليوم الذي بدأ. يمكنك بعد ذلك مقارنة ذلك مع date.daysec، على سبيل المثال.