NEWS
Modbus - Erste Schritte
-
Hmm. Habe zZ kein Zugriff auf ein Broker. Muss mich dazu später äussern…
-
Für alle, die ein ähnliches Problem wie bei mir haben, ich habe es nun folgendermaßen gelöst.
-
Eine alte Version aus dem GIT geladen und manuell in den entsprechenden Ordner kopiert.
-
iobroker neu gestartet.
-
nun wird mir eine neue Version angezeigt.
-
aus dem Backend geupdatet
-
läuft 8-)
Es ging also ohne Neuinstallation und angst zu haben, dass irgendwas verloren geht.
-
-
Hm, wenn die noch nicht freigegeben ist, warum ist die dann schon verfügbar bzw. wird einem ganz normal über die Adapterseite angeboten?
Wollte ja einen Downgrade machen auf 0.4.10 aber da sagt er mir leider das wäre nicht mehr verfügbar. ` Habe nun mein Broker zur Hand. Also: vorgeschlagen wird zZ 0.5.0 das ist richtig. Wenn der Adapter installiert ist und dein Admin-Reiter im Experten-Modus steht, kannst Du ältere Versionen ganz rechts mit dem Dropdown auswählen. Offensichtlich gehen die 0.4.8 - 0.4.10 nicht mehr !!?? Aber die 0.4.7 lässt sich installieren.
-
Habe mittlerweile die Objecte manuell angelegt.
Hoffe das der Adapter in nicht allzu ferner Zukunft gefixt wird.
Gruß
Mirko
-
Hallo Leute,
Ich nutze jetzt einfach mal dieses Thema, da dieses Thema schon länger ruht und ich somit keine
aktuellen Gespräche störe.
Ich bin auch am herum basteln (anders darf man das nicht nennen) mit dem Modbus Adapter.
Jetzt habe ich ein Problem:
Meine Anlage gibt nicht nur Temperatur, Drehzahlen, Drucke aus, sondern auch Statusmeldungen.
Das ganze sieht dann so aus, dass z.B. die 30010 einen Wert liefert welcher unter Objekte z.B als Wert 5 anliegt.
Nun ist in meiner Beschreibung eine Liste hinterlegt welcher Status sich hinter 5 verbirgt.
Wie kann man es lösen das ich in vis den richtigen Status stehen habe und nicht nur eine Zahl angezeigt bekomme.
Danke
Tobi
-
Hallo zusammen,
ich hoffe ich komme nicht mit einer für euch allzu leichten Basic-Frage aber ich habe folgendes Problem. Ich möchte meine Stiebel Eltron Wärmepumpe mittels ModBus auslesen und steuern. Das Handbuch von Stiebel-Eltron zu den jeweiligen Befehlen befindet sich hier:
https://www.stiebel-eltron.de/content/d … a95add.pdf
Mein Problem ist - wahrscheinlich nur mangels Unkenntnis und weil das Thema Modbus für mich komplett neu ist - ich bekomme generell eine Verbindung mit einem grünen Lämpchen hin. Sobald ich aber unter Eingangsregister oder Holding Registers etwas eintrage wird entweder nichts unter Objekte angezeigt oder im Log erscheint ein Hinweis, dass der Registerwert ungültig ist. Ich habe es mit den beiden Häckchen für Alias und ohne probiert. Z. B. mit dem auszulesenden Wert Eco-Temperatur (Holding) mit der laut Doku Modbus-Adresse 1511. Ich habe versucht es mit 1511 oder mit 41511 zu adressieren, beides funktioniert nicht und auch nicht mit Kombination Alias ja/nein. Was mache ich denn hier falsch? Egal welche Kombination ich probiere, ich erhalte einfach keine Werte…. Hat schon einmal jemand ein Stiebel-Eltron-Gerät angebunden?
-
Hallo Leute,
Ich nutze jetzt einfach mal dieses Thema, da dieses Thema schon länger ruht und ich somit keine
aktuellen Gespräche störe.
Ich bin auch am herum basteln (anders darf man das nicht nennen) mit dem Modbus Adapter.
Jetzt habe ich ein Problem:
Meine Anlage gibt nicht nur Temperatur, Drehzahlen, Drucke aus, sondern auch Statusmeldungen.
Das ganze sieht dann so aus, dass z.B. die 30010 einen Wert liefert welcher unter Objekte z.B als Wert 5 anliegt.
Nun ist in meiner Beschreibung eine Liste hinterlegt welcher Status sich hinter 5 verbirgt.
Wie kann man es lösen das ich in vis den richtigen Status stehen habe und nicht nur eine Zahl angezeigt bekomme.
Danke
Tobi `
Bin unterwegs deshalb kann ich nicht genau nach sehen.
Aber z.b. Ein Text Widget nehmen und so einstellen das es z.B. Bei dem Wert “5” sichtbar wird und dir dann den Text / Status anzeigt den du hinterlegt hast.
Gesendet von iPhone mit Tapatalk Pro
-
Hallo zusammen,
ich hoffe ich komme nicht mit einer für euch allzu leichten Basic-Frage aber ich habe folgendes Problem. Ich möchte meine Stiebel Eltron Wärmepumpe mittels ModBus auslesen und steuern. Das Handbuch von Stiebel-Eltron zu den jeweiligen Befehlen befindet sich hier:
https://www.stiebel-eltron.de/content/d … a95add.pdf
Mein Problem ist - wahrscheinlich nur mangels Unkenntnis und weil das Thema Modbus für mich komplett neu ist - ich bekomme generell eine Verbindung mit einem grünen Lämpchen hin. Sobald ich aber unter Eingangsregister oder Holding Registers etwas eintrage wird entweder nichts unter Objekte angezeigt oder im Log erscheint ein Hinweis, dass der Registerwert ungültig ist. Ich habe es mit den beiden Häckchen für Alias und ohne probiert. Z. B. mit dem auszulesenden Wert Eco-Temperatur (Holding) mit der laut Doku Modbus-Adresse 1511. Ich habe versucht es mit 1511 oder mit 41511 zu adressieren, beides funktioniert nicht und auch nicht mit Kombination Alias ja/nein. Was mache ich denn hier falsch? Egal welche Kombination ich probiere, ich erhalte einfach keine Werte…. Hat schon einmal jemand ein Stiebel-Eltron-Gerät angebunden? `
Leider nur ein iPhone gerade zum lesen.
Die Anleitung sagt nichts darüber aus (oder ich habe es überlesen) welches Format die Werte haben und ob die Angabe der Register Adresse eventuell dezimal oder hex ist.
Hast du mal versucht die 1501 umzurechnen?
Steht in der Doku irgendwo etwas darüber welche Art Datenwort als Antwort geliefert wird z.b. Little endian, big endian, Anzahl der Bits?
Gesendet von iPhone mit Tapatalk Pro
-
Habe die 1501 in 5DD umgerechnet aber auch das funktioniert nicht. Im Log erscheint dann Invalid holding register address: -39996
Hm, nein zum Datentyp habe ich auch nichts gefunden.
Nur das hier:
` > „Read/Write Holding Register“-
Objekte sind sowohl lesbar als auch schreibbar
-
Auslesen der Register über Funktionscode 03 („Read Holding
Registers“)
- Schreiben über Funktionscode 06 (“Write Single Register”)
oder Funktionscode 16 (“Write multiple Registers”)
Für nicht verfügbare Objekte wird der Ersatzwert „32768 (0x8000H)“
ausgegeben.
Einige Statusobjekte sind bitcodiert (B0 - Bx). Die jeweils entsprechenden
Statusinformationen sind unter „Codierung“ dokumentiert
(z. B. Verdichter läuft ja/nein). `
-
-
Mal anders umgerechnet?
Mit 5377 versucht ?
Gesendet von iPhone mit Tapatalk Pro
-
` > var id = 'modbus.0.holdingRegisters.40082_Autarkie_Eigenverbrauch';
createState('e3dc.modbus.Autarkie');
createState('e3dc.modbus.Eigenverbrauch');
on(id, function (obj) {
setState('e3dc.modbus.Autarkie', (obj.state.val >> & 0xFF, true);
setState('e3dc.modbus.Eigenverbrauch', obj.state.val & 0xFF, true);
}); `
DANKEhttp://onlinespielen888.bid/kostenlos-automatenspiele-automatenspiele-kostenlos-ohne-anmeldung! -
Habe die 1501 in 5DD umgerechnet aber auch das funktioniert nicht. Im Log erscheint dann Invalid holding register address: -39996
Hm, nein zum Datentyp habe ich auch nichts gefunden.
Nur das hier:
` > „Read/Write Holding Register“-
Objekte sind sowohl lesbar als auch schreibbar
-
Auslesen der Register über Funktionscode 03 („Read Holding
Registers“)
- Schreiben über Funktionscode 06 (“Write Single Register”)
oder Funktionscode 16 (“Write multiple Registers”)
Für nicht verfügbare Objekte wird der Ersatzwert „32768 (0x8000H)“
ausgegeben.
Einige Statusobjekte sind bitcodiert (B0 - Bx). Die jeweils entsprechenden
Statusinformationen sind unter „Codierung“ dokumentiert
(z. B. Verdichter läuft ja/nein).
Hast du das mal mit der anderen Umrechnung versucht?
Was steht im log wenn du den Register Wert so einstellst wie er in der Doku steht?
Dann gerade mal Anleitung gelesen und das gefunden:
Das ISG nutzt folgende 16 Bit-Register: „Read Input Register“ -- Objekte sind nur lesbar -- Auslesen der Register über Funktionscode 04 („Read Input Registers“) Beispiel: Um das Register 30501 auszulesen, wird die Adresse 501 mit dem Funktionscode 04 angesprochen.
Also sollten alle Lesbaren Register 16-bit daten worte sein.
Bist du sicher das dein Stiebel Eltron gerät die gewählte Adresse unterstützt?
-
-
Folgendes habe ich jetzt getestet:
Modus: RTU over TCP
Port: 502
Geräte ID: 1
Aliases benutzen: True
Direkte Adressen benutzen (bei Aliases): True
Holding Registers:
Modbus-Adresse: 1502
Name: Komfort-Temperatur
Typ: Unsigned 16 bit (Big Endian)
Länge: 2
Faktor: 1
Offest: 0
Rolle: value.temperature
Im ioBroker-Log erscheint dann folgender Error-Eintrag:
Invalid holding register address: -38499
Du hattest weiter oben ja auch geschrieben, ich solle einmal die Adresse 5377 testen. Hier kommt dann folgende Meldung:
Invalid holding register address: -34624
Ich bin mir sicher, dass meine Wärmepumpe diese Werte unterstützt, habe es ja auch mit mehreren anderen bereits probiert. Das Parsen über die Webseite funktioniert z. B. auch, aber da kann ich halt nicht steuern. Hm, ich habe keine Ahnung was hier weiterhelfen könnte. Vielleicht mitsniffern des Ports?
-
Hi,
RTU over TCP ist zu 99,9% falsch.
Nur TCP sollte richtig sein.
Wireshark könnte helfen.
Debug log hast du aktiviert für den Modbus Adapter?
Port und ID sollte stimmen wenn an der WP nichts verändert.
Gesendet von iPad mit Tapatalk Pro
-
Hi,
RTU over TCP ist zu 99,9% falsch.
Nur TCP sollte richtig sein.
Wireshark könnte helfen.
Debug log hast du aktiviert für den Modbus Adapter?
Port und ID sollte stimmen wenn an der WP nichts verändert. `
Hi,also zunächst RTU over TCP war tatsächlich falsch. Wenn ich TCP auswähle und Alias deaktiviere gibt es im Log auch keine Fehler mehr.
So sehen die Einstellungen nun aus:
Das Wireshark-Protokoll z. B. bei Abfrage der Adresse 507 Aussentemperatur sieht wie im Screenshot aus (192.168.0.30 ist ioBroker, 192.168.0.35 die Wärmepumpe):
Eigentlich sieht das für mich so aus, als ob es funktionieren würde. Aber in ioBroker sehe ich die Werte nicht unter "Objekte":
Hast du noch eine Idee, was noch falsch sein könnte?
:shock:
Danke schon einmal für die bisherigen Tipps!!
-
Hi,
Ist die Adresse wirklich nur 3 Stellig oder ist das vielleicht ein HEX Wert der umgerechnet werden muss?
Mal das Beispiel aus der Anleitung versucht?
Und wenn ich mich richtig erinnere muss Serialport installiert sein, das scheint bei dir noch zu fehlen.
Bin gerade etwas knapp mit der Zeit wegen Renovierung.
Sorry.
-
Hi,
Ist die Adresse wirklich nur 3 Stellig oder ist das vielleicht ein HEX Wert der umgerechnet werden muss?
Mal das Beispiel aus der Anleitung versucht?
Und wenn ich mich richtig erinnere muss Serialport installiert sein, das scheint bei dir noch zu fehlen.
Bin gerade etwas knapp mit der Zeit wegen Renovierung.
Sorry. `
Tausend Dank, jetzt funktionierts!
Nach Installation des Serialport-Pakets werdne mir die Werte angezeigt. Etwas erschwerend war noch, dass in der Stiebel Eltron-Doku die Adressen nicht stimmen, man muss dort immer -1 rechnen. Jetzt habe ich nur noch einen Fehler im Eventlog von ioBroker ("Serial is not available"), scheint aber nicht kritisch zu sein weil funktioniert ja.
Danke dir sehr!
-
Freut mich das es jetzt klappt.
Gern geschehen
Gesendet von iPad mit Tapatalk Pro
-
Hallo,
ich habe gerade angefangen mich in den ioBroker etwas einzuarbeiten.
Mit dem ModBus Adapter habe ich aber Probleme. Ich möchte mein E3DC damit abfragen. Aber ich bekomme irgendwie keine Verbindung hin.
Den ModBus habe ich am E3DC freigeschalten:
Den Adapter konfiguriert:
Ich bekomme immer einen Verbindungsfehler:
Anbei auch das Protokoll:
__modbus.0 2017-11-04 17:21:41.826 warn Poll error count: 8 code: 'App Timeout'
modbus.0 2017-11-04 17:21:38.823 warn Poll error count: 7 code: 'App Timeout'
modbus.0 2017-11-04 17:21:35.798 info Disconnected from slave 192.168.178.38
modbus.0 2017-11-04 17:21:35.798 warn Poll error count: 6 code: 'App Timeout'
modbus.0 2017-11-04 17:21:35.783 warn Poll error count: 5 code: {'errorCode':130,'exceptionCode':1,'message':'ILLEGAL FUNCTION'}
modbus.0 2017-11-04 17:21:33.612 warn Poll error count: 4 code: {'errorCode':130,'exceptionCode':1,'message':'ILLEGAL FUNCTION'}
modbus.0 2017-11-04 17:21:32.774 warn Poll error count: 3 code: 'App Timeout'
modbus.0 2017-11-04 17:21:30.595 warn Poll error count: 2 code: {'errorCode':130,'exceptionCode':1,'message':'ILLEGAL FUNCTION'}
modbus.0 2017-11-04 17:21:27.572 warn Poll error count: 1 code: {'errorCode':130,'exceptionCode':1,'message':'ILLEGAL FUNCTION'}
modbus.0 2017-11-04 17:21:27.557 info Connected to slave 192.168.178.38
modbus.0 2017-11-04 17:21:27.304 info starting. Version 0.5.4 in F:/ioBroker/node_modules/iobroker.modbus, node: v4.5.0
host.MichaW-PC 2017-11-04 17:21:26.789 info instance system.adapter.modbus.0 started with pid 12352__
Wer hat eine Idee und kann mir helfen.
Gruß
Michael
-
Was genau ist denn E3DC ?
Stromspeicher?
Sicher das der Standart Modbus spricht?
Bin etwas verwirrt wegen der Protokoll Auswahl in deinem screenshot.
Wie heißt den das gerät genau?
Gesendet von iPhone mit Tapatalk Pro