NEWS
Test Adapter sun2000 v0.1.x - Huawei Wechselrichter
-
@bolliy
Guten Morgen,
könntest du noch einen "deviceStatus_Text" einbauen.
z.B. nach diesem Schema:setState(SHI + id + ".DeviceStatus", getU16(Buffer[id-1], 32089)); var deviceStatusName = ""; switch (getState(SHI + id + ".DeviceStatus").val) { case 0: deviceStatusName = "Initializing";break; case 1: deviceStatusName = "Detecting ISO";break; case 2: deviceStatusName = "Detecting irradiation";break; case 3: deviceStatusName = "Grid detecting";break; case 256: deviceStatusName = "Starting";break; case 512: deviceStatusName = "On grid";break; case 513: deviceStatusName = "On grid Power limit";break; case 514: deviceStatusName = "On grid self derating";break; case 768: deviceStatusName = "Shutdown fault";break; case 769: deviceStatusName = "Shutdown command";break; case 770: deviceStatusName = "Shutdown OVGR";break; case 771: deviceStatusName = "Shutdown communication disconnected";break; case 772: deviceStatusName = "Shutdown power limit";break; case 773: deviceStatusName = "Shutdown start manually";break; case 774: deviceStatusName = "Shutdown DC switch OFF";break; case 1025: deviceStatusName = "Grid dispatch cos(Phi)-P curve";break; case 1026: deviceStatusName = "Grid dispatch Q-U curve";break; case 1280: deviceStatusName = "Spot-check";break; case 1281: deviceStatusName = "Spot-checking";break; case 1536: deviceStatusName = "Inspecting";break; case 1792: deviceStatusName = "AFCI self-check";break; case 2048: deviceStatusName = "I V scanning";break; case 2304: deviceStatusName =" DC input detection";break; case 40960: deviceStatusName = "No irradiation";break; default: deviceStatusName = "undefined";break; } setState(SHI + id + ".DeviceStatus_Text", deviceStatusName);Wäre doch gut, wenn man anstatt der Nr. auch einen Text hätte.
mfg
Dieter -
@bolliy
Ist ja nen Ding.Ich habe hier geschaut:
sun2000.0.inverter.0.deviceStatusAber dass bei derived auch was ist, hab ich nicht gefunden.
ok, dann hat man Nr. als auch Text, an unterschiedlichen Stellen, aber gut. -
@bolliy
Ist ja nen Ding.Ich habe hier geschaut:
sun2000.0.inverter.0.deviceStatusAber dass bei derived auch was ist, hab ich nicht gefunden.
ok, dann hat man Nr. als auch Text, an unterschiedlichen Stellen, aber gut. -
@bahnuhr der State sun2000.0.inverter.0.deviceStatus ist der eigentliche Wert aus dem WR. Die Werte im path derived sind die interpretierten bzw. abgeleiteten Informationen dazu.
Stephan
@bolliy
Ja, ist bei dem "noch" von mir genommenen Script grundsätzlich auch so.
Hatte nur das Script geändert und den Text genau unter die Nr. gesetzt. -
@bolliy
Ja, ist bei dem "noch" von mir genommenen Script grundsätzlich auch so.
Hatte nur das Script geändert und den Text genau unter die Nr. gesetzt.@bolliy
Ich bin gerade am umändern (von Script auf Adapter). Ist gar nicht so wenig was man ändern muss.Nochwas ist mir aufgefallen:

Die Werte L1 + L2 + L3 müssten doch "activePower" ergeben. Beim Script was das rechnerisch richtig. Beim Adapter passt dies nicht.Liegt dies an unterschiedlichen Abfrageintervallen ?
-
@bolliy
Ich bin gerade am umändern (von Script auf Adapter). Ist gar nicht so wenig was man ändern muss.Nochwas ist mir aufgefallen:

Die Werte L1 + L2 + L3 müssten doch "activePower" ergeben. Beim Script was das rechnerisch richtig. Beim Adapter passt dies nicht.Liegt dies an unterschiedlichen Abfrageintervallen ?
-
@bolliy
Wäre es sachlogisch, wenn man dies ändern würde.
Denn rechnerisch müsste dies passen. -
@bolliy
Wäre es sachlogisch, wenn man dies ändern würde.
Denn rechnerisch müsste dies passen. -
@bolliy
noch was:
battery.runningStatus
müsste doch auch eine Nr. sein, die vom WR kommt. (analog deviseStatus)
also so:switch (getState(SHI + id + ".Battery.RunningStatus").val) { case 0: Battery_RunningStatus = "offline";break; case 1: Battery_RunningStatus = "standby";break; case 2: Battery_RunningStatus = "running";break; case 3: Battery_RunningStatus = "fault";break; case 4: Battery_RunningStatus = "sleepmode";break; default: Battery_RunningStatus = "undefined";break; } setState(SHI + id + ".Battery.RunningStatus_Text", Battery_RunningStatus);Hier erscheint aber jetzt unter battery der Text.
Müsste denn nach der Logik der Text nicht auch unter derived stehen ? -
@bahnuhr ja,
dann müsste man die Stromstärken und Spannungen auch ins high Interval verlegen, was ggf. die modbus Schnittstelle überfordern würde...@bolliy sagte in Test Adapter sun2000 v0.1.x - Huawei Wechselrichter:
@bahnuhr ja,
dann müsste man die Stromstärken und Spannungen auch ins high Interval verlegen, was ggf. die modbus Schnittstelle überfordern würde...würde ich sachlogisch richtiger finden. Per Script gab es da keine modbus Schnittstellen Probleme.
-
@bolliy
noch was:
battery.runningStatus
müsste doch auch eine Nr. sein, die vom WR kommt. (analog deviseStatus)
also so:switch (getState(SHI + id + ".Battery.RunningStatus").val) { case 0: Battery_RunningStatus = "offline";break; case 1: Battery_RunningStatus = "standby";break; case 2: Battery_RunningStatus = "running";break; case 3: Battery_RunningStatus = "fault";break; case 4: Battery_RunningStatus = "sleepmode";break; default: Battery_RunningStatus = "undefined";break; } setState(SHI + id + ".Battery.RunningStatus_Text", Battery_RunningStatus);Hier erscheint aber jetzt unter battery der Text.
Müsste denn nach der Logik der Text nicht auch unter derived stehen ? -
@bolliy
Sätze wie: "hab ich schon immer so gemacht" sind nicht gut ;-)T'schuldigung; bin gerade intensiv am Testen. Deshalb nerve ich am Feiertag ein bisschen ;-)
-
@bolliy sagte in Test Adapter sun2000 v0.1.x - Huawei Wechselrichter:
@bahnuhr ja,
dann müsste man die Stromstärken und Spannungen auch ins high Interval verlegen, was ggf. die modbus Schnittstelle überfordern würde...würde ich sachlogisch richtiger finden. Per Script gab es da keine modbus Schnittstellen Probleme.
-
@bolliy
Sätze wie: "hab ich schon immer so gemacht" sind nicht gut ;-)T'schuldigung; bin gerade intensiv am Testen. Deshalb nerve ich am Feiertag ein bisschen ;-)
-
@bahnuhr kein Problem :+1: Sofern du hierzu eine Anpassung wünscht, würde ich dich bitten ein issue im github aufzumachen.
@bolliy sagte in Test Adapter sun2000 v0.1.x - Huawei Wechselrichter:
issue im github
mach ich.
edit: angelegt:
https://github.com/bolliy/ioBroker.sun2000/issues/174 -
@bahnuhr kein Problem :+1: Sofern du hierzu eine Anpassung wünscht, würde ich dich bitten ein issue im github aufzumachen.
@bolliy
noch ne Frage.
Auf git steht:

Wenn man nun ein neues Modul mit diesen 21 kw kaufen möchte, funktioniert dies dann nicht ?
-
Und noch ne Frage:
auf git steht:

Klicke ich auf wiki kommt:

Das passt nicht zusammen.
Ich habe bei mir:

und bekomme die Daten einwandfrei ausgelesen.Nach deiner Definition müsste aber doch meine V zu alt sein.
richtig ?
oder anders; was würde jetzt nicht funktionieren ? -
@bolliy
noch ne Frage.
Auf git steht:

Wenn man nun ein neues Modul mit diesen 21 kw kaufen möchte, funktioniert dies dann nicht ?
-
Und noch ne Frage:
auf git steht:

Klicke ich auf wiki kommt:

Das passt nicht zusammen.
Ich habe bei mir:

und bekomme die Daten einwandfrei ausgelesen.Nach deiner Definition müsste aber doch meine V zu alt sein.
richtig ?
oder anders; was würde jetzt nicht funktionieren ?@bahnuhr damit die modbus Abfrage funktioniert, wird mind. 00SPC133 benötigt. Die 10SPC121 wird empfohlen. Andere Versionen werden natürlich auch funktionieren. Es gab aber mit den aktuellen Versionen Probleme. Deshalb lieber eine Version vor der 10SPC200 nehmen.
-
@bahnuhr damit die modbus Abfrage funktioniert, wird mind. 00SPC133 benötigt. Die 10SPC121 wird empfohlen. Andere Versionen werden natürlich auch funktionieren. Es gab aber mit den aktuellen Versionen Probleme. Deshalb lieber eine Version vor der 10SPC200 nehmen.