Дакументацыя

Чытанне і кіраванне cFos Charging Manager праз Modbus

У дадатак да HTTP і MQTT, cFos Charging Manager таксама забяспечвае Modbus API. Гэта па ўзоры SunSpec. У канфігурацыі дыспетчара зарадкі вы можаце ўказаць параметр порта TCP або COM-порта, а таксама ідэнтыфікатар Modbus у раздзеле «Настройкі адраса SunSpec». Гэта азначае, што менеджэр зарадкі cFos праслухоўвае порт TCP або COM-порт з указанымі параметрамі і Modbus ID і Modbus ID + 1. Агульныя значэнні, параметры, сцягі і зменныя дыспетчара зарадкі даступныя пад ідэнтыфікатарам Modbus. Прылады (насценныя скрынкі і лічыльнікі), устаноўленыя ў дыспетчару зарадкі, могуць быць запытаны праз ID + 1. У якасці функцыі Modbus вы можа выкарыстоўваць 3 і 4 для чытання і 6 і 16 для запісу . Увага: у Raspberry для праграм з правамі адміністратара зарэзерваваны TCP-парты ніжэйшыя за 1024. Таму лепш выбраць больш высокі нумар порта, напрыклад, 1502.

У спецыфікацыі SunSpec Modbus сцвярджаецца, што дыяпазон адрасоў Modbus пачынаецца з ідэнтыфікатара "SunS", а затым змяшчае так званыя мадэлі SunSpec. Кожная мадэль мае нумар ключа мадэлі са зрушэннем 0 і даўжыню астатніх рэгістраў, якія належаць да мадэлі са зрушэннем 1. Затым значэнні мадэлі вынікаюць са зрушэння 2. Важна: Вы павінны сканаваць дыяпазон адрасоў SunSpec і заўсёды перавышаць даўжыню са зрушэннем 1. Не мяркуйце фіксаваную даўжыню або фіксаваныя адрасы рэгістраў, таму што вельмі верагодна, што з часам мы дадамо дадатковыя значэнні да мадэляў. Мадэль 1 (Common) заўсёды ідзе першай з інфармацыяй пра вытворцу, нумары версій і г.д. Калі ласка, загрузіце спецыфікацыі SunSpec Modbus ад SunSpec Alliance для атрымання падрабязнай інфармацыі. Дыяпазон адрасоў SunSpec для cFos Charging Manager пачынаецца з адраса 40000.

cFos Charging Manager першапачаткова адлюстроўвае наступныя значэнні пад ідэнтыфікатарам Modbus у адпаведнасці з агульнай мадэллю, як мадэль 213 (трохфазны лічыльнік, плавае):
Спасылка на сетку
Усяго спажыўцоў
Агульны вытворца
PV лішак
Выкарыстоўваецца магутнасць Wallbox
Даступнае выкананне wallbox
Прадукцыйнасць памылак

Затым варта "карыстальніцкая" мадэль 60000 з параметрамі ўстаноўкі cFos Charging Manager: у залежнасці ад мадэлі і даўжыні ў цяперашні час існуе 8 плаваючых значэнняў: максімальны агульны ток, рэзерв, авердрафт, максімальны агульны ток Wallbox у мА на фазу, максімальны перакос фазы (у мА), актыўнае кіраванне нагрузкай (1 = актыўнае, 0 = неактыўнае), перакос, уключаючы спажыўца (1 = актыўны, 0 = неактыўны), максімальны агульны ток у працэнтах. Гэта глабальныя параметры Charging Manager, якія таксама можна задаць у карыстальніцкім інтэрфейсе. Змены гэтых значэнняў захоўваюцца (з максімальнай затрымкай 150 секунд). Працэнт ад агульнага току можна выкарыстоўваць для дынамічнага рэгулявання магутнасці зарадкі, напрыклад, па запыце аператара сеткі.

Затым ідзе «карыстальніцкая» мадэль 60001. 32 рэгістры (16 біт) адпавядаюць мадэлі і даўжыні. Яны могуць утрымліваць значэнні 0 і 1 і чытаць або запісваць да 32 сцягоў Charging Manager. Затым стан гэтых сцягоў можа быць запытаны ў формулах з дапамогай CM._flag1 да CM._flag32 і выкарыстаны для вылічэнняў.

Затым варта «карыстальніцкая» мадэль 60002. Магчымыя зменныя дыспетчара зарадкі адпавядаюць мадэлі і даўжыні. Для кожнай зменнай даступна 22 рэгістра. Першыя 20 рэгістраў - гэта радок Modbus для імя зменнай (занадта доўгія імёны будуць скарочаны). Наступныя 2 рэгістры ўтрымліваюць бягучае значэнне з плаваючай колькасцю зменнай. Калі вы запісваеце значэнне з плаваючай часткай зменнай Charging Manager, вы выдаляеце любую існуючую формулу і ўсталёўваеце для зменнай фіксаванае значэнне.

Лічыльнікі і насценныя скрынкі, наладжаныя ў Charging Manager, адлюстроўваюцца наступным чынам у Modbus ID + 1. Як SunSpec Model 113, насценныя скрынкі пашыраны двума 16-бітнымі рэгістрамі. Зрушэнне 62 паказвае стан Wallbox (1=чаканне, 2=падключана, 3=зарадка, 4=зарадка з вентыляцыяй, 5=памылка), а зрушэнне 63 паказвае ідэнтыфікатар прылады. 1 = E1, 2 = E2 і г. д. Лічыльнікі прадстаўлены мадэллю 213, пашыранай 2 16-бітнымі рэгістрамі. Пры зрушэнні 126 роля лічыльніка (0=дысплей, 1=спажыванне, 2=вытворчасць, 3=забеспячэнне сеткі, 4=спажыванне электрамабіляў, 5=сховішча дома, 6=захоўванне ўсяго), пры зрушэнні 127 з'яўляецца ID прылады (-1 для M1, -2 для M2 і г.д.). Калі лічыльнік з'яўляецца памяццю (роля 5 або 6), за мадэллю 213 варта мадэль 124, якая пашырана 16-бітным рэгістрам.Ідэнтыфікатар прылады зноў знаходзіцца са зрушэннем 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: Напружанне (В)
Зрушэнне 12: Напружанне L1 (В)
Зрушэнне 14: Напружанне L2 (В)
Зрушэнне 16: Напружанне L3 (В)
Зрушэнне 26: 50 Гц
Зрушэнне 28: магутнасць (Вт)
Зрушэнне 30: магутнасць L1 (Вт)
Зрушэнне 32: магутнасць L2 (Вт)
Зрушэнне 34: магутнасць L3 (Вт)
Зрушэнне 36: Уяўная магутнасць (ВА)
Зрушэнне 38: Уяўная магутнасць L1 (ВА)
Зрушэнне 40: Уяўная магутнасць L2 (ВА)
Зрушэнне 42: Уяўная магутнасць L3 (ВА)
Зрушэнне 44: Рэактыўная магутнасць (ВАр)
Зрушэнне 60: Экспарт, актыўная магутнасць (Вт·гадз)
Зрушэнне 68: Імпарт, актыўная магутнасць (Вт·гадз)
Зрушэнне 126: Роля (з Modbus ID + 1)
Зрушэнне 127: ID прылады (для Modbus ID + 1)

Спіс значэнняў для мадэлі 113:
Зрушэнне 0: 113
Зрушэнне 1: Даўжыня
Зрушэнне 2: Агульныя токі L1-L3 (A)
Зрушэнне 4: ток L1 (A)
Зрушэнне 6: ток L2 (A)
Зрушэнне 8: ток L3 (A)
Зрушэнне 16: Напружанне L1 (В)
Зрушэнне 18: Напружанне L2 (В)
Зрушэнне 20: Напружанне L3 (В)
Зрушэнне 22: магутнасць (Вт)
Зрушэнне 24: 50 Гц
Зрушэнне 26: Уяўная магутнасць (ВА)
Зрушэнне 32: Імпарт, актыўная магутнасць (Вт·гадз)
Зрушэнне 62: стан (з Modbus ID + 1)
Зрушэнне 63: ID прылады (для Modbus ID + 1)

Спіс значэнняў для мадэлі 124:
Зрушэнне 0: 124
Зрушэнне 1: Даўжыня
Зрушэнне 2: Максімальная магутнасць зарадкі/разрадкі (Вт)
Зрушэнне 3: працэнт бягучага ліміту магутнасці зарадкі
Зрушэнне 4: працэнт бягучага ліміту магутнасці разраду
Зрушэнне 8: стан зарадкі ў працэнтах
Зрушэнне 18: Каэфіцыент маштабавання для зрушэння 2
Зрушэнне 19: Каэфіцыент маштабавання для зрушэнняў 3 і 4
Зрушэнне 26: ID прылады (для Modbus ID + 1)

Спіс значэнняў для мадэлі 60000:
Усе значэнні ў float, доступ для чытання/запісу, выклікаюць абнаўленне флэш-памяці, гэта значыць не мяняйце часта, каб пазбегнуць пашкоджання.
Зрушэнне 0: 60000 (unt16, толькі для чытання)
Зрушэнне 1: Даўжыня (uint16, толькі для чытання)
Зрушэнне 2: максімальны агульны ток (мА)
Зрушэнне 4: запас магутнасці (мА)
Зрушэнне 6: авердрафт (мА)
Зрушэнне 8: максімальны агульны ток Wallbox (мА)
Зрушэнне 10: макс. перакос фазы (мА)
Зрушэнне 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
...