เอกสาร

อ่านและควบคุม cFos Charging Manager ผ่าน Modbus

นอกเหนือจาก HTTP และ MQTT แล้ว cFos Charging Manager ยังมี Modbus API อีกด้วย นี่เป็นโมเดลตาม SunSpec ภายใต้การกำหนดค่าตัวจัดการการชาร์จ คุณสามารถระบุพอร์ต TCP หรือพารามิเตอร์พอร์ต COM เช่นเดียวกับ Modbus ID ภายใต้ "การตั้งค่าที่อยู่ SunSpec ซึ่งหมายความว่า cFos Charging Manager จะรับฟังพอร์ต TCP หรือพอร์ต COM ภายใต้พารามิเตอร์ที่ระบุและไปยัง Modbus ID และ Modbus ID + 1 ค่าตัวจัดการการชาร์จทั่วไป พารามิเตอร์ แฟล็ก และตัวแปรมีให้ใช้งานภายใต้ Modbus ID อุปกรณ์ (วอลล์บ็อกซ์และเมตร) ที่ตั้งค่าไว้ในตัวจัดการการชาร์จสามารถสอบถามได้ภายใต้ ID + 1 เนื่องจากฟังก์ชัน Modbus คุณ สามารถใช้ 3 และใช้ 4 สำหรับการอ่าน และ 6 และ 16 สำหรับการเขียน ข้อควรพิจารณา: บน Raspberry พอร์ต TCP ที่ต่ำกว่า 1024 สงวนไว้สำหรับโปรแกรมที่มีสิทธิ์ของผู้ดูแลระบบ ดังนั้นจึงควรเลือกหมายเลขพอร์ตที่สูงกว่า เช่น 1502

ข้อมูลจำเพาะของ SunSpec Modbus ระบุว่าช่วงที่อยู่ของ Modbus เริ่มต้นด้วยตัวระบุ "SunS" จากนั้นจึงประกอบด้วยโมเดลที่เรียกว่า SunSpec แต่ละรุ่นมีหมายเลขคีย์โมเดลที่ออฟเซ็ต 0 และความยาวของรีจิสเตอร์ที่เหลือที่เป็นของโมเดลที่ออฟเซ็ต 1 จากนั้นค่าของโมเดลจะตามมาจากออฟเซ็ต 2 สิ่งสำคัญ: คุณควรสแกนช่วงที่อยู่ SunSpec และมีความยาวเกินที่ออฟเซ็ต 1 เสมอ อย่าถือว่ามีความยาวคงที่หรือที่อยู่การลงทะเบียนคงที่ เนื่องจากมีโอกาสมากที่เราจะเพิ่มค่าเพิ่มเติมให้กับโมเดลเมื่อเวลาผ่านไป โมเดล 1 (ทั่วไป) มาก่อนเสมอพร้อมรายละเอียดของผู้ผลิต หมายเลขเวอร์ชัน ฯลฯ โปรดดาวน์โหลดข้อมูลจำเพาะของ SunSpec Modbus จาก SunSpec Alliance สำหรับข้อมูลโดยละเอียด ช่วงที่อยู่ของ SunSpec สำหรับ cFos Charging Manager เริ่มต้นด้วยที่อยู่ 40000

cFos Charging Manager เริ่มแรกจะแสดงค่าต่อไปนี้ภายใต้ Modbus ID ตามรุ่นทั่วไปเช่นรุ่น 213 (มิเตอร์สามเฟส, ลอย):
การอ้างอิงตาราง
ผู้บริโภคทั้งหมด
ผู้ผลิตทั้งหมด
พีวีส่วนเกิน
กำลังไฟฟ้าของวอลล์บ็อกซ์ที่ใช้
ประสิทธิภาพวอลล์บ็อกซ์ที่มีอยู่
ประสิทธิภาพการทำงานผิดพลาด

จากนั้นปฏิบัติตามรุ่น "กำหนดเอง" 60000 พร้อมการตั้งค่าพารามิเตอร์ของ cFos Charging Manager: ตามรุ่นและความยาว ปัจจุบันมีค่าลอยตัว 8 ค่า: กระแสรวมสูงสุด, สำรอง, เงินเบิกเกินบัญชี, กระแสรวมวอลล์บ็อกซ์สูงสุดใน mA ต่อเฟส, การเอียงเฟสสูงสุด (ในหน่วย mA), การจัดการโหลดทำงานอยู่ (1 = ทำงานอยู่, 0 = ไม่ใช้งาน), เอียงรวมถึงผู้ใช้บริการ (1 = ทำงาน, 0 = ไม่ใช้งาน), กระแสไฟฟ้ารวมสูงสุดเป็นเปอร์เซ็นต์ นี่คือพารามิเตอร์ตัวจัดการการชาร์จส่วนกลางที่สามารถตั้งค่าใน UI ได้เช่นกัน การเปลี่ยนแปลงค่าเหล่านี้จะถูกบันทึก (โดยมีความล่าช้าสูงสุด 150 วินาที) เปอร์เซ็นต์ของกระแสไฟฟ้าทั้งหมดสามารถใช้เพื่อปรับกำลังการชาร์จแบบไดนามิกได้ เช่น ตามคำขอของผู้ให้บริการเครือข่าย

ตามด้วยโมเดล "กำหนดเอง" 60001 32 รีจิสเตอร์ (16 บิต) เป็นไปตามโมเดลและความยาว สิ่งเหล่านี้สามารถมีค่า 0 และ 1 และอ่านหรือเขียนแฟล็กตัวจัดการการชาร์จได้สูงสุด 32 รายการ สถานะของแฟล็กเหล่านี้สามารถสอบถามในสูตรโดยใช้ CM._flag1 ถึง CM._flag32 และใช้สำหรับการคำนวณ

จากนั้นตามด้วยรุ่น "กำหนดเอง" 60002 ตัวแปรตัวจัดการการชาร์จ ที่เป็นไปได้จะเป็นไปตามรุ่นและความยาว มีรีจิสเตอร์ 22 รีจิสเตอร์สำหรับแต่ละตัวแปร รีจิสเตอร์ 20 ตัวแรกเป็นสตริง Modbus สำหรับชื่อตัวแปร (ชื่อที่ยาวเกินไปจะถูกตัดทอน) รีจิสเตอร์ 2 รายการต่อไปนี้มีค่าทศนิยมปัจจุบันของตัวแปร เมื่อคุณเขียนค่าทศนิยมของตัวแปรตัวจัดการการชาร์จ คุณจะลบสูตรที่มีอยู่และตั้งค่าตัวแปรให้เป็นค่าคงที่

มิเตอร์และวอลล์บ็อกซ์ที่ตั้งค่าไว้ในตัวจัดการการชาร์จจะแสดงดังต่อไปนี้ภายใต้ Modbus ID + 1 เนื่องจาก SunSpec รุ่น 113 วอลล์บ็อกซ์ได้รับการขยายเพื่อรวมรีจิสเตอร์ 16 บิตสองตัว Offset 62 แสดงสถานะของวอลล์บ็อกซ์ (1=กำลังรอ 2=เสียบปลั๊ก 3=กำลังชาร์จ 4=กำลังชาร์จโดยมีการระบายอากาศ 5=ข้อผิดพลาด) และออฟเซ็ต 63 แสดง ID อุปกรณ์ 1 = E1, 2 = E2 เป็นต้น ตัวนับแสดงด้วยโมเดล 213 ขยายด้วยรีจิสเตอร์ 16 บิต 2 ตัว ที่ออฟเซ็ต 126 คือบทบาทของตัวนับ (0=จอแสดงผล 1=ปริมาณการใช้ 2=การผลิต 3=อุปทานกริด 4=ปริมาณการใช้รถยนต์ไฟฟ้า 5=บ้านเก็บของ 6=การจัดเก็บทุกอย่าง) ที่ออฟเซ็ต 127 คือ ID อุปกรณ์ (-1 สำหรับ M1, -2 สำหรับ M2 ฯลฯ) หากตัวนับเป็นหน่วยความจำ (บทบาท 5 หรือ 6) โมเดล 213 จะตามด้วยโมเดล 124 ซึ่งขยายด้วยรีจิสเตอร์ 16 บิต ID อุปกรณ์จะอยู่ที่ออฟเซ็ต 26 อีกครั้ง เพื่อให้อุปกรณ์แสดงภายใต้ Modbus ID + 1 คุณต้องเปิดใช้งาน "เผยแพร่ข้อมูลอุปกรณ์ผ่าน Modbus" ในการตั้งค่าอุปกรณ์

Aufstellung Start-Addressen der Modelle:
Modbus ID:
Model: 1, Addr: 40002
Model: 213, Addr: 40070, Netzbezugszähler
Model: 213, Addr: 40196, Summe Verbraucher
Model: 213, Addr: 40322, Sume Erzeuger
Model: 213, Addr: 40448, PV Überschuss
Model: 213, Addr: 40574, Genutzte Wallboxleistung
Model: 213, Addr: 40700, Verfügbare Wallboxleistung
Model: 213, Addr: 40826, Fehler-Leistung
Model: 60000, Addr: 40952
Model: 60001, Addr: 40970
Model: 60002, Addr: 41004
Die konkreten Start-Addressen können bei späteren Versionen des cFos Charging Managers variieren, daher sollte der Register-Bereich, wie oben beschrieben, gescannt werden.
Modbus ID + 1:
Modelle und Startadressen hängen von den eingeblendeten Geräten ab.

รายการค่าสำหรับรุ่น 213:
ออฟเซ็ต 0: 213
ออฟเซ็ต 1: ความยาว
ออฟเซ็ต 2: กระแสรวม L1-L3 (A)
ออฟเซ็ต 4: ปัจจุบัน L1 (A)
ออฟเซ็ต 6: ปัจจุบัน L2 (A)
ออฟเซ็ต 8: ปัจจุบัน L3 (A)
ออฟเซ็ต 10: แรงดันไฟฟ้า (V)
ออฟเซ็ต 12: แรงดันไฟฟ้า L1 (V)
ออฟเซ็ต 14: แรงดันไฟฟ้า L2 (V)
ออฟเซ็ต 16: แรงดันไฟฟ้า L3 (V)
ออฟเซ็ต 26: 50Hz
ออฟเซ็ต 28: กำลัง (W)
ออฟเซ็ต 30: พาวเวอร์ L1 (W)
ออฟเซ็ต 32: พาวเวอร์ L2 (W)
ออฟเซ็ต 34: พาวเวอร์ L3 (W)
ออฟเซ็ต 36: กำลังไฟฟ้าปรากฏ (VA)
ออฟเซ็ต 38: กำลังปรากฏ L1 (VA)
ออฟเซ็ต 40: กำลังปรากฏ L2 (VA)
ออฟเซ็ต 42: กำลังปรากฏ L3 (VA)
ออฟเซ็ต 44: กำลังไฟฟ้ารีแอกทีฟ (VAr)
ออฟเซ็ต 60: ส่งออก, กำลังไฟฟ้าที่ใช้งาน (Wh)
ออฟเซ็ต 68: นำเข้า, กำลังไฟฟ้าที่ใช้งาน (Wh)
ออฟเซ็ต 126: บทบาท (พร้อม Modbus ID + 1)
ออฟเซ็ต 127: รหัสอุปกรณ์ (สำหรับ Modbus ID + 1)

รายการค่าสำหรับรุ่น 113:
ออฟเซ็ต 0: 113
ออฟเซ็ต 1: ความยาว
ออฟเซ็ต 2: กระแสรวม L1-L3 (A)
ออฟเซ็ต 4: ปัจจุบัน L1 (A)
ออฟเซ็ต 6: ปัจจุบัน L2 (A)
ออฟเซ็ต 8: ปัจจุบัน L3 (A)
ออฟเซ็ต 16: แรงดันไฟฟ้า L1 (V)
ออฟเซ็ต 18: แรงดันไฟฟ้า L2 (V)
ออฟเซ็ต 20: แรงดันไฟฟ้า L3 (V)
ออฟเซ็ต 22: กำลัง (W)
ออฟเซ็ต 24: 50Hz
ออฟเซ็ต 26: กำลังไฟฟ้าปรากฏ (VA)
ออฟเซ็ต 32: นำเข้า, กำลังไฟฟ้าที่ใช้งาน (Wh)
ออฟเซ็ต 62: สถานะ (พร้อม Modbus ID + 1)
ออฟเซ็ต 63: รหัสอุปกรณ์ (สำหรับ Modbus ID + 1)

รายการค่าสำหรับรุ่น 124:
ออฟเซ็ต 0: 124
ออฟเซ็ต 1: ความยาว
ออฟเซ็ต 2: กำลังชาร์จ/คายประจุสูงสุด (W)
ออฟเซ็ต 3: เปอร์เซ็นต์ของขีดจำกัดกำลังการชาร์จปัจจุบัน
ออฟเซ็ต 4: เปอร์เซ็นต์ของขีดจำกัดกำลังคายประจุปัจจุบัน
ออฟเซ็ต 8: สถานะการชาร์จเป็นเปอร์เซ็นต์
ออฟเซ็ต 18: ตัวคูณสเกลสำหรับออฟเซ็ต 2
ออฟเซ็ต 19: ตัวคูณสเกลสำหรับออฟเซ็ต 3 และ 4
ออฟเซ็ต 26: รหัสอุปกรณ์ (สำหรับ Modbus ID + 1)

รายการค่าสำหรับรุ่น 60000:
ค่าทั้งหมดในการเข้าถึงแบบโฟลต การอ่าน/เขียน ทำให้แฟลชได้รับการอัปเดต กล่าวคือ อย่าเปลี่ยนบ่อยเพื่อหลีกเลี่ยงความเสียหาย
ออฟเซ็ต 0: 60000 (unt16 อ่านอย่างเดียว)
ออฟเซ็ต 1: ความยาว (uint16 อ่านอย่างเดียว)
ออฟเซ็ต 2: กระแสรวมสูงสุด (mA)
ออฟเซ็ต 4: พลังงานสำรอง (mA)
ออฟเซ็ต 6: เงินเบิกเกินบัญชี (mA)
ออฟเซ็ต 8: กระแสรวมวอลล์บ็อกซ์สูงสุด (mA)
ออฟเซ็ต 10: การเอียงเฟสสูงสุด (mA)
ออฟเซ็ต 12: 1 = การจัดการโหลดใช้งานอยู่ 0 = ไม่ได้ใช้งาน
ออฟเซ็ต 14: 1 = เพิ่มการบริโภคในบ้านเข้ากับความไม่สมดุล 0 = ไม่ได้ใช้งาน
ออฟเซ็ต 16: เปอร์เซ็นต์ของกระแสรวมสูงสุด ไม่ได้บันทึก สามารถเปลี่ยนแปลงได้บ่อยครั้ง

รายการค่าสำหรับรุ่น 60001:
ค่าทั้งหมด 0 หรือ 1, int16, การเข้าถึงแบบอ่าน/เขียน, ไม่ได้บันทึก, สามารถเปลี่ยนแปลงได้บ่อยครั้ง
ออฟเซ็ต 0: 60001 (uint16 อ่านอย่างเดียว)
ออฟเซ็ต 1: ความยาว (uint16 อ่านอย่างเดียว)
ออฟเซ็ต 2: CM._flag1
...
ออฟเซ็ต 33: CM._flag32

รายการค่าสำหรับรุ่น 60002:
ค่าทั้งหมดลอยตัว เข้าถึงแบบอ่าน/เขียน ไม่ได้บันทึก สามารถเปลี่ยนแปลงได้บ่อยครั้ง ออฟเซ็ต 0: 60002 (uint16 อ่านอย่างเดียว)
ออฟเซ็ต 1: ความยาว (uint16 อ่านอย่างเดียว)
ออฟเซ็ต 2..22: ชื่อตัวแปรตัวจัดการการชาร์จ 1
ออฟเซ็ต 23..24: ตัวแปรตัวจัดการการชาร์จมูลค่า 1
ออฟเซ็ต 25..45: ชื่อตัวแปรตัวจัดการการชาร์จ 2
ออฟเซ็ต 46..47: ตัวแปรตัวจัดการการชาร์จมูลค่า 2
...