cFos Charging Manager ช่วยให้สามารถประเมินสูตรแบบไดนามิกได้ ฟังก์ชันนี้มีให้สำหรับตัวนับประเภท "นิพจน์" และสำหรับการโหลดกฎประเภท "สูตร"
ดังนั้นคุณจึงสามารถตั้งค่าเมตรที่คำนวณค่าจากมิเตอร์หรือกล่องติดผนังอื่น ๆ และเตรียมให้พร้อมและแสดงไว้ กฎการชาร์จยังสามารถคำนวณกระแสการชาร์จแบบไดนามิกโดยใช้สูตร และยังเข้าถึงมาตรวัดและกล่องติดผนัง (รวมถึงมาตรวัดประเภท "นิพจน์")
การดำเนินการต่อไปนี้เป็นไปได้ด้วยสูตร:
+ - * / % | การบวก ลบ คูณ หาร โมดูลัส |
& | | ระดับบิต 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 = นาที (ถ้า x < นาที), x = สูงสุด (ถ้า x > สูงสุด) มิฉะนั้น ให้เก็บ x |
round(x) | ปัดเศษ x เป็นจำนวนเต็ม ตัวอย่าง: ปัดเศษเป็นทศนิยม 1 ตำแหน่ง: ปัดเศษ(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 |
นอกจากนี้ยังสามารถเข้าถึงเครื่องวัดเสมือน เช่น พลังงานแสงอาทิตย์ส่วนเกิน ไฟฟ้าที่ซื้อ หรือ "Power avail. for EVSEs" (พลังงานที่มีให้สำหรับวอลล์บ็อกซ์) โดยการตั้งค่ามิเตอร์ จากนั้นใช้รหัสอุปกรณ์ที่เกี่ยวข้องในสูตร
ค่าส่วนบุคคลของอุปกรณ์นั้นสามารถเข้าถึงได้โดยใช้จุด สิ่งเหล่านี้เรียกว่า:
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 | เวลาที่ผ่านไปนับตั้งแต่การอัปเดตครั้งล่าสุด (เป็นวินาที) สำหรับตัวนับ "Expression" เท่านั้น โปรดดู CM._dt ด้วย |
inputN | อินพุตหมายเลข N ของอุปกรณ์, 1 = ใช้งานอยู่, 0 = ไม่ใช้งาน, N คือหมายเลขอินพุต เริ่มต้นด้วย 1 |
soc | SOC ระดับการชาร์จเป็นเปอร์เซ็นต์ (ตัวนับ/หน่วยความจำ) - หากอุปกรณ์รองรับ |
id | รหัสอุปกรณ์, รหัส Modbus |
txn_duration | ระยะเวลาของธุรกรรมปัจจุบันเป็นวินาที (วอลล์บ็อกซ์) |
charging_dur | เวลาโหลดจริงของธุรกรรมปัจจุบันในหน่วยวินาที (Wallbox) |
txn_energy | พลังงานที่เรียกเก็บของธุรกรรมปัจจุบันในหน่วย Wh (วอลล์บ็อกซ์) |
min_current | กระแสไฟชาร์จขั้นต่ำในหน่วย mA (EVSE) |
max_current | กระแสไฟชาร์จสูงสุดใน mA (EVSE) |
state | สถานะ: กำลังรอ 1, เสียบปลั๊ก 2 เครื่อง, ชาร์จ 3 เครื่อง, ชาร์จ 4 เครื่องพร้อมระบบระบายอากาศ, 5 ข้อผิดพลาด, 6 ออฟไลน์ (EVSE) |
cphases | จำนวนขั้นตอนการโหลด (0-3) |
pphases | จำนวนขั้นตอนการโหลดที่คาดการณ์ไว้ (0-3) |
lb_cur_l1 | กระแสไฟฟ้าที่คำนวณได้ของเฟส 1 ในหน่วย mA (วอลล์บ็อกซ์) ขณะคานวณกฎการชาร์จของ Wallbox เท่านั้น ไม่เช่นนั้นจะเป็น 0 |
lb_cur_l2 | กระแสไฟฟ้าที่คำนวณได้ในปัจจุบันของเฟส 2 ในหน่วย mA (วอลล์บ็อกซ์) ขณะคานวณกฎการชาร์จของ Wallbox เท่านั้น ไม่เช่นนั้นจะเป็น 0 |
lb_cur_l3 | กระแสไฟฟ้าที่คำนวณได้ในปัจจุบันของเฟส 3 ในหน่วย mA (วอลล์บ็อกซ์) ขณะคานวณกฎการชาร์จของ Wallbox เท่านั้น ไม่เช่นนั้นจะเป็น 0 |
lb_cur | กระแสที่คำนวณในปัจจุบันของเฟสปัจจุบันในหน่วย mA (วอลล์บ็อกซ์) ในระหว่างการคำนวณกฎการชาร์จของ Wallbox เท่านั้น ไม่เช่นนั้นจะเป็น 0 ตัวจัดการการชาร์จจะสอบถามทุกขั้นตอนทีละขั้นตอน |
surplus_pcur | กระแสไฟฟ้าส่วนเกิน PV ต่อ (คาดการณ์) เฟสในหน่วย mA |
surplus_wanted | 1 หากกฎส่วนเกิน PV ถูกนำมาใช้แล้ว มิฉะนั้นจะเป็น 0 |
budget | kWh หรือนาทีของงบประมาณปัจจุบัน |
budget_amount | ในงบประมาณปัจจุบันสูงสุด kWh หรือนาที |
budget_used | kWh หรือนาทีที่ใช้ในงบประมาณปัจจุบัน |
com_err | 1 หากมีข้อผิดพลาด COM มิฉะนั้น 0 |
com_err2 | 1 หากมีข้อผิดพลาด COM ยาวกว่า 12 วินาที มิฉะนั้น 0 |
reactive_power | ข้อกำหนดพลังงานรีแอกทีฟเป็นวัตต์ (หากอุปกรณ์รองรับ) ค่าบวก: อินดัคทีฟ ค่าลบ: คาปาซิทีฟ |
switch_phases | สำหรับวอลล์บ็อกซ์ที่มีการสลับเฟส: การสลับเฟสแบบแมนนวล, 1 = 1 เฟส, 3 = 3 เฟส, -1 = การสลับเฟสอัตโนมัติ |
departure | เวลาออกเดินทาง ISO 15118 เป็นการประทับเวลาหน่วย (สำหรับวอลล์บ็อกซ์ที่รองรับสิ่งนี้ ไม่เช่นนั้น 0) |
req_energy | ISO 15118 พลังงานที่ต้องการในหน่วย Wh (สำหรับวอลล์บ็อกซ์ที่รองรับสิ่งนี้ ไม่เช่นนั้น 0) |
plugin_start | การประทับเวลา Unix เวลาที่เสียบสายเคเบิล |
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.1.11 |
date.day | วันที่ 1..31 |
date.weekday | วันธรรมดา อาทิตย์=0 จันทร์=1 อังคาร=2 ... เสาร์=6 |
date.yearday | วันของปีตั้งแต่ 0..366 |
date.hour | ชั่วโมงจาก 0.2.23 |
date.minute | นาทีจาก 0..60 |
date.second | วินาทีจาก 0..60 |
date.daysecond | วินาทีของวันนี้ จาก 0.8.86399 |
date.dayminute | นาทีของวันนี้ตั้งแต่ 0.1.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=แพงมาก, -3=แพง, -4=ปกติ, -5=ถูก, -6=ถูกมาก |
_surplus | ส่วนเกินของพลังงานแสงอาทิตย์ในปัจจุบันเป็นวัตต์ |
_org_surplus | ส่วนเกินของพลังงานแสงอาทิตย์ ซึ่งคำนวณโดย Charging Manager โดยไม่ขึ้นกับสูตรของตัวเอง |
_storage_home_max_capacity | ความจุรวมของหน่วยเก็บข้อมูล บ้าน ถ้าระบุไว้ในการกำหนดค่ามิเตอร์ ในหน่วย Wh |
_storage_home_capacity | ความจุปัจจุบันของหน่วยเก็บข้อมูล บ้าน ถ้าระบุไว้ในการกำหนดค่ามิเตอร์ ในหน่วย Wh |
_storage_all_max_capacity | ความจุรวมของหน่วยเก็บข้อมูลทั้งหมด หากระบุไว้ในการกำหนดค่ามิเตอร์ ในหน่วย Wh |
_storage_all_capacity | ความจุปัจจุบันของหน่วยเก็บข้อมูลทั้งหมด หากระบุไว้ในการกำหนดค่ามิเตอร์ ในหน่วย Wh |
_storage_home_soc | SoC ปัจจุบัน/หน่วยเก็บแบตเตอรี่ที่มีบทบาท "บ้าน" หากได้ระบุความจุสำหรับอุปกรณ์จัดเก็บข้อมูลอย่างน้อยหนึ่งเครื่อง ตัวจัดการการชาร์จจะใช้ข้อมูลนี้สำหรับการคำนวณ มิฉะนั้น ตัวแปรนี้จะให้ SoC ปัจจุบันของอุปกรณ์จัดเก็บข้อมูลตัวแรกที่พบซึ่งมีบทบาทเป็น "ที่เก็บ" |
_storage_all_soc | 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
สังเกต:
ภายใต้ Custom Counters คุณจะพบคำแนะนำเกี่ยวกับวิธีการใช้สูตรกับตัวแปรและเอาต์พุตของ 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) ราคาถูกที่สุดถึง 07.00 น. ตอนกลางคืน ตัวอย่างเช่น คุณสามารถสร้างกฎการเรียกเก็บเงินโดยมีเงื่อนไข CM._price <= min_price(25200) เพื่อเรียกเก็บเงินในเวลาที่ถูกที่สุด แต่มีเงื่อนไขที่คุณต้องการออกเดินทางตั้งแต่เวลา 8.00 น. (สมมติว่าใช้เวลาชาร์จ 1 ชั่วโมง)). ในทำนองเดียวกัน มีสองฟังก์ชัน min_price_secs(s) และ max_price_secs(s) ซึ่งส่งคืนเวลาเริ่มต้นของราคาที่ถูกที่สุดในหน่วยวินาทีของวันที่เริ่มต้น จากนั้นคุณสามารถเปรียบเทียบสิ่งนี้กับ date.daysecond ได้ เป็นต้น
ตอนนี้ cFos Charging Manager สามารถอ่าน SoC และระยะของรถได้ผ่านทาง TRONITY API (www.tronity.io) คุณสามารถลงทะเบียนบัญชีส่วนตัวกับ TRONITY จากนั้นลงทะเบียนรถหนึ่งคันหรือมากกว่านั้นได้ จากนั้นคุณสามารถเพิ่ม TRONITY ID และความลับ TRONITY ลงในอินเทอร์เฟซผู้ใช้ "Configuration" ของ cFos Charging Manager
ใช้ปุ่ม "รับข้อมูลยานพาหนะ" เพื่อแสดงรายการยานพาหนะของคุณที่ลงทะเบียนกับ TRONITY ยานพาหนะแต่ละคันจะแสดงรายการพร้อม ID ใช้ ID นี้สำหรับนิพจน์และ/หรือกฎการชาร์จด้วย Charging Manager เช่น V1.soc
หรือ V1.range
หากยานพาหนะของคุณมี ID 1 V1.soc
คือสถานะการชาร์จปัจจุบันเป็นเปอร์เซ็นต์ V1.range
คือระยะทางปัจจุบันเป็นกิโลเมตร ตัวอย่างเช่น คุณสามารถสร้างเงื่อนไขเช่น V1.soc < 50
ซึ่งจะเป็นจริงหาก SoC น้อยกว่า 50%