يسمح مدير الشحن cFos Charging Manager بالتقييم الديناميكي للصيغ. تتوفر هذه الوظيفة لعداد من النوع "تعبير" ولقواعد الشحن من النوع "صيغة".
يمكنك بالتالي إعداد عدادات تقوم بحساب القيم من عدادات أو صناديق حائط أخرى والاحتفاظ بها وعرضها. يمكن لقواعد الشحن أيضًا حساب تيار الشحن ديناميكيًا باستخدام الصيغ والوصول أيضًا إلى العدادات وصناديق الحائط (بما في ذلك العدادات من نوع "التعبير").
يمكن إجراء العمليات التالية باستخدام الصيغ التالية:
+ - * / % | الجمع والطرح والضرب والقسمة والمقياس والجمع والطرح والضرب والقسمة والمقياس |
& | | التوافق والاختيار بالتقسيط |
^ | حساب القوة، على سبيل المثال 10^2 = 100 |
min(x,y) | الحد الأدنى من س و ص، أكثر من وسيلتين ممكنة |
max(x,y) | الحد الأقصى لـ x و y، أكثر من وسيلتين ممكنة |
abs(x) | القيمة المطلقة ل x، على سبيل المثال القيمة المطلقة (-2) = 2 |
clamp(x,min,max) | القيمة x = الحد الأدنى (إذا كان x < الحد الأدنى)، x = الحد الأقصى (إذا كان x > الحد الأقصى)، وإلا احتفظ ب x |
round(x) | تقريب س إلى عدد صحيح. مثال: التقريب إلى منزلة عشرية واحدة: تقريب (10*x)/10. |
sqrt(x) | الجذر التربيعي ل x |
exists(x) | صواب في حالة وجود المتغير x، وإلا خطأ |
التعبيرات المنطقية التالية ممكنة أيضًا:==
(متساوٍ)، !=
(غير متساوٍ)، <
(أصغر)، <=
(أصغر-متساوٍ)، >
(أكبر)، >=
(أكبر-متساوٍ)، !
(ليس)، |
(منطقية أو)، &&
(منطقية و)، |
(عامل الشرطية، على سبيل المثال س؟ ص: ض،
تُرجع ص إذا كان س صحيحًا، وإلا ض)
يسمح ذلك بإيقاف تشغيل التيار حسب الظروف، على سبيل المثال M1.current >= 6500 ?
M1 .current : 0
يُرجع تيار M1 إذا كان أكبر من 6.5 أمبير و0 خلاف ذلك، حيث يتم إيقاف الشحن مؤقتًا. لمثل هذه الشروط، من الممكن أيضًا الاستعلام عن المدخلات (انظر أدناه)
الأسماء التالية ممكنة:
Mx | عداد بمعرف الجهاز x، على سبيل المثال M1 |
Ex | صندوق حائط بمعرف الجهاز x، على سبيل المثال E1 |
من الممكن أيضًا الوصول إلى العدادات الافتراضية، مثل فائض الطاقة الشمسية أو استهلاك الشبكة أو "الطاقة المتوفرة للمركبات الكهربائية الكهربائية والميكانيكية" (الطاقة المتوفرة لصناديق الحائط)، من خلال إعداد العداد ثم استخدام معرّف الجهاز المقابل في الصيغة.
يمكنك بعد ذلك الوصول إلى القيم الفردية للأجهزة باستخدام النقطة. يتم استدعاؤها على النحو التالي:
current_l1 | تيار المرحلة 1 بالمللي أمبير |
current_l2 | تيار المرحلة 2 بالمللي أمبير |
current_l3 | تيار المرحلة 3 بالمللي أمبير |
current | تيار المرحلة الحالية بالمللي أمبير (بالنسبة لقواعد الشحن، يستعلم مدير الشحن عن جميع المراحل واحدة تلو الأخرى؛ بالنسبة للعدادات من نوع "التعبير"، تنطبق المرحلة المعنية التي تشير إليها الصيغة. إذا كنت قد حددت صيغة "التيار L1"، يمكنك حذف الحقلين للتيار L2 و L3. ثم يتم استخدام صيغة التيار L1) |
power_w | الطاقة النشطة الحالية بالواط |
offered | صندوق الحائط التيار المعروض بالمللي أمبير |
import_wh | الطاقة المشتراة بالواط |
export_wh | الطاقة المغذية للشبكة بالواط |
dt | الوقت المنقضي منذ آخر تحديث (بالثواني)، فقط لعدادات "التعبير"، انظر أيضًا CM._dt. |
inputN | رقم الإدخال N للجهاز، 1 = نشط، 0 = غير نشط، N هو رقم الإدخال، بدءاً من 1. |
soc | SOC، مستوى الشحن بالنسبة المئوية (العداد/الذاكرة) - إذا كان الجهاز يدعمه |
id | معرّف الجهاز، معرّف مودبوس |
txn_duration | مدة المعاملة الحالية بالثواني (Wallbox) |
charging_dur | وقت الشحن الفعلي للمعاملة الحالية بالثواني (صندوق الحائط) |
txn_energy | الطاقة المشحونة للمعاملة الحالية بوحدة Wh (صندوق الحائط) |
min_current | الحد الأدنى لتيار الشحن بالمللي أمبير (صندوق الحائط) |
max_current | الحد الأقصى لتيار الشحن بالمللي أمبير (صندوق الحائط) |
state | الحالة: 1 في الانتظار، 2 موصولة بالشاحن، 3 يتم الشحن، 4 يتم الشحن مع التهوية، 5 خطأ، 6 غير متصل (صندوق حائط) |
cphases | عدد مراحل الشحن (0-3) |
pphases | عدد مراحل الشحن المتوقعة (0-3) |
lb_cur_l1 | التيار المحسوب حاليًا للمرحلة 1 بالمللي أمبير (صندوق الحائط). فقط أثناء حساب قواعد شحن صندوق الحائط، وإلا 0 |
lb_cur_l2 | التيار المحسوب الحالي للمرحلة 2 بالمللي أمبير (صندوق الحائط). فقط أثناء حساب قواعد شحن صندوق الحائط، وإلا 0 |
lb_cur_l3 | التيار المحسوب حاليًا للمرحلة 3 بالمللي أمبير (صندوق الحائط). فقط أثناء حساب قواعد شحن صندوق الحائط، وإلا 0 |
lb_cur | التيار المحسوب للمرحلة الحالية بالمللي أمبير (صندوق الحائط). فقط أثناء حساب قواعد شحن صندوق الحائط، وإلا 0. يستعلم مدير الشحن عن جميع المراحل واحدة تلو الأخرى. |
surplus_pcur | التيار الكهروضوئي الزائد لكل مرحلة (متوقعة) بالمللي أمبير |
surplus_wanted | 1 إذا تم تطبيق قاعدة الفائض الكهروضوئي بالفعل، وإلا فصفر |
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 ISO كطابع زمني للوحدة (لصناديق الحائط التي تدعم ذلك، وإلا 0) |
req_energy | ISO 15118 الطاقة المطلوبة بالواط (لصناديق الحائط التي تدعم ذلك، وإلا 0) |
plugin_start | الطابع الزمني لنظام Unix، وقت إدخال الكابل |
plugin_energy | الطاقة المشحونة مسبقًا في Wh من وقت توصيل الكابل |
M1.current_l1 | تيار العداد M1، المرحلة 1 |
E2.import_wh | Wh الذي يستهلكه Wallbox E2 |
E3.power_w | طاقة الشحن الحالية ل E3 بالواط |
إذا كنت تستخدم الصيغ الخاصة بمقياس من النوع "Expression"، يمكنك أيضًا حذف معرف الجهاز. تشير أسماء الحقول عندئذٍ إلى هذا المقياس، على سبيل المثال "power_w" هي قوة هذا المقياس بالواط. باستخدام "dt"، يمكنك تحقيق بعض الدوال الموسعة، على سبيل المثال في عداد من النوع "Expression":
استيراد_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 | أيام الأسبوع SO=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 | عدد الصناديق الحائطية التي يتم شحنها حالياً |
_num_charging1 | عدد صناديق الحائط التي يتم شحنها حالياً، 1 في حالة عدم وجود صناديق حائط يتم شحنها |
_max_total_current | التيار الأقصى للوصلة المنزلية بالمللي أمبير لكل مرحلة |
_max_total_evse_current | الحد الأقصى للتيار للصناديق الحائطية بالمللي أمبير لكل مرحلة |
_price | سعر الكهرباء الحالي |
_price_level | المستوى الحالي لأسعار الكهرباء، -2= غالي جداً، -2= غالي جداً، -3= غالي جداً، -4= عادي، -5= رخيص، -6= رخيص جداً |
_surplus | الفائض الحالي من الطاقة الشمسية بالواط |
_org_surplus | فائض الطاقة الشمسية حيث أن مدير الشحن كان سيحسبه بشكل مستقل عن الصيغ الخاصة به |
_storage_home_max_capacity | السعة الإجمالية للتخزين، المنزل، إذا كانت محددة في تكوين العداد، بالواط |
_storage_home_capacity | السعة الحالية للمخزن، المنزل، إذا كانت محددة في تكوين العداد، بالواط |
_storage_all_max_capacity | السعة التخزينية الإجمالية، الكل، إذا كانت محددة في تكوين العداد، بالواط |
_storage_all_capacity | السعة الحالية للتخزين، الكل، إذا كانت محددة في تكوين العداد، بالواط |
_storage_home_soc | SoC الحالي لتخزين البطارية (أنظمة التخزين) مع دور "المنزل". إذا تم تحديد السعة لنظام تخزين واحد على الأقل، فإن مدير الشحن يستخدم ذلك للحساب، وإلا فإن هذا المتغير يوفر سعة التخزين الحالية لأول نظام تخزين تم العثور عليه مع دور "المنزل". |
_storage_all_soc | SoC الحالي لتخزين البطارية (أنظمة التخزين) مع دور "المنزل + السيارة". إذا تم تحديد السعة لنظام تخزين واحد على الأقل، فإن مدير الشحن يستخدم ذلك للحساب، وإلا فإن هذا المتغير يوفر سعة التخزين الحالية لأول نظام تخزين تم العثور عليه مع دور "المنزل + السيارة". |
_max_total_current_prc | النسبة المئوية لإجمالي تيار الشحن الأقصى المتاح. يمكن أيضًا كتابة هذا المتغير (من خلال تعريفات العداد ومتغيرات مدير الشحن) |
_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
تلميح:
تحت العدادات المعرفة من قبل المستخدم ستجد أيضًا تعليمات حول كيفية استخدام الصيغ مع متغيرات ومخرجات مدير الشحن العام.
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 في البداية تزويد صندوق الحائط بالتيار الأقصى فيما يتعلق بطاقة التوصيل المنزلي، ولكنها بعد ذلك تحد من ذلك إلى 16 أمبير مطروحًا منه استهلاك الشقة.
باستخدام 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.daysecond، على سبيل المثال.
يمكن الآن لمدير الشحن cFos Charging Manager قراءة مركز التحكم في السيارة ونطاقها عبر واجهة برمجة تطبيقات TRONITY(www.tronity.io). يمكنك تسجيل حساب شخصي في TRONITY ثم تسجيل سيارة واحدة أو أكثر. يمكنك بعد ذلك إضافة معرّف TRONITY الخاص بك وسر TRONITY في واجهة المستخدم "التهيئة" في مدير الشحن cFos Charging Manager.
استخدم زر "الحصول على بيانات المركبة" لعرض قائمة بالمركبات المسجلة في TRONITY. يتم سرد كل مركبة بمعرف. استخدم هذا المعرف للتعبيرات و/أو قواعد الشحن مع مدير الشحن، على سبيل المثال V1.soc
أو V1.range
إذا كانت مركبتك تحمل المعرف 1. V1.soc
هو حالة الشحن الحالية بالنسبة المئوية. V1.range
هو النطاق الحالي بالكيلومترات. على سبيل المثال، يمكنك إنشاء شرط مثل V1.soc <50،
وهو صحيح إذا كانت نسبة الشحن أقل من 50%.