เอกสาร

cFos Charging Manager - สูตร

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
ExEVSE พร้อมรหัสอุปกรณ์ 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กำลังไฟฟ้าที่ใช้งานปัจจุบันเป็นวัตต์
offeredWallbox: ปัจจุบันมีกระแสไฟฟ้าในหน่วย mA
import_whพลังงานที่เกี่ยวข้องใน Wh
export_whพลังงานที่ป้อนใน Wh
dtเวลาที่ผ่านไปนับตั้งแต่การอัปเดตครั้งล่าสุด (เป็นวินาที) สำหรับตัวนับ "Expression" เท่านั้น โปรดดู CM._dt ด้วย
inputNอินพุตหมายเลข N ของอุปกรณ์, 1 = ใช้งานอยู่, 0 = ไม่ใช้งาน, N คือหมายเลขอินพุต เริ่มต้นด้วย 1
socSOC ระดับการชาร์จเป็นเปอร์เซ็นต์ (ตัวนับ/หน่วยความจำ) - หากอุปกรณ์รองรับ
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_wanted1 หากกฎส่วนเกิน PV ถูกนำมาใช้แล้ว มิฉะนั้นจะเป็น 0
budgetkWh หรือนาทีของงบประมาณปัจจุบัน
budget_amountในงบประมาณปัจจุบันสูงสุด kWh หรือนาที
budget_usedkWh หรือนาทีที่ใช้ในงบประมาณปัจจุบัน
com_err1 หากมีข้อผิดพลาด COM มิฉะนั้น 0
com_err21 หากมีข้อผิดพลาด COM ยาวกว่า 12 วินาที มิฉะนั้น 0
reactive_powerข้อกำหนดพลังงานรีแอกทีฟเป็นวัตต์ (หากอุปกรณ์รองรับ) ค่าบวก: อินดัคทีฟ ค่าลบ: คาปาซิทีฟ
switch_phasesสำหรับวอลล์บ็อกซ์ที่มีการสลับเฟส: การสลับเฟสแบบแมนนวล, 1 = 1 เฟส, 3 = 3 เฟส, -1 = การสลับเฟสอัตโนมัติ
departureเวลาออกเดินทาง ISO 15118 เป็นการประทับเวลาหน่วย (สำหรับวอลล์บ็อกซ์ที่รองรับสิ่งนี้ ไม่เช่นนั้น 0)
req_energyISO 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': import_wh + M1.power_w * dt / 3600 อัปเดตพลังงานที่ซื้อตามกำลังในช่วงเวลาอัปเดตที่ผ่านมา
  • ตามสูตรสำหรับ 'power_w': (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.dst0 = เวลาฤดูหนาว 1 = เวลาฤดูร้อน
date.timestampUnix timespamp, secs since 1.1.1970

PB (nur cFos Power Brain)

PB.input1S0 Input 1, 1 = ใช้งานอยู่ 0 = ไม่ใช้งาน
PB.input2S0 Input 2, 1 = ใช้งานอยู่ 0 = ไม่ใช้งาน

CM ตัวแปรตัวจัดการการชาร์จ

ผู้ดูแลระบบสามารถตั้งค่าตัวแปรเหล่านี้ภายใต้ "การกำหนดค่า" ตัวอย่างเช่น หากผู้ดูแลระบบตั้งค่าตัวแปร 'var_x' เป็น 1.5 CM.var_x จะส่งกลับค่า 1.5

ตัวแปรที่กำหนดไว้ล่วงหน้า:
_num_charging: จำนวนวอลล์บ็อกซ์ที่กำลังชาร์จอยู่
_num_charging1: จำนวนวอลล์บ็อกซ์ที่กำลังชาร์จ 1 ถ้าไม่มีการชาร์จ
_max_total_current: กระแสไฟฟ้าสูงสุดของการเชื่อมต่อบ้านในหน่วย mA ต่อเฟส
_max_total_evse_current: กระแสสูงสุดสำหรับวอลล์บ็อกซ์ในหน่วย mA ต่อเฟส
_price: ราคาไฟฟ้าปัจจุบัน
_price_level: ระดับราคาไฟฟ้าปัจจุบัน -2=แพงมาก -3=แพง -4=ปกติ -5=ถูก -6=ถูกมาก
_surplus: ส่วนเกินพลังงานแสงอาทิตย์ปัจจุบันในหน่วยวัตต์
_org_surplus: ส่วนเกินของพลังงานแสงอาทิตย์ตามที่ตัวจัดการการชาร์จจะคำนวณโดยไม่ขึ้นกับสูตรของตัวเอง
_storage_home_max_capacity: ความจุรวม, หน้าแรก หากระบุในการกำหนดค่าตัวนับ เป็น Wh
_storage_home_capacity: ความจุปัจจุบัน, หน้าแรก หากระบุไว้ในการกำหนดค่าตัวนับ ในหน่วย Wh
_storage_all_max_capacity: ความจุรวม ทั้งหมด หากระบุในการกำหนดค่าตัวนับ เป็น Wh
_storage_all_capacity: ความจุปัจจุบัน ทั้งหมด หากระบุในการกำหนดค่าตัวนับ เป็น Wh
_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 ได้ เป็นต้น