Du hast Fragen zum Thema Gebäudeautomation, KNX, Home-Assitant, Node-Red und co. oder möchtest dich einfach nur zu dem Thema mit anderen austauschen? Dann schaue doch gerne mal auf unserem Discord-Community-Server vorbei: discord.gg/E22QbYzQkD Mein neuer Vdieokurs, die Modbus-Fibel zu einem vergünstigten Preis, für die nächsten 30 Tage: www.udemy.com/course/modbus-fibel/?couponCode=RU-vid.NEU23
Klasse Video, wie gewohnt. In wie fern verhält es sich wenn man verschiedene Dinge über modbus / Node Red ins KNX bringen möchte. Heizungen haben (je nach Hersteller ein eigenes Modbusprotokoll), genauso wie Lüftungsanlagen und erst recht alles was mit PV/BMS zu tun hat. Bekomme ich da alle Informationen über eine Modbusschnittstelle oder muss ich für jedes System eine eigene Modbusschnittstelle einbauen?
Freut mich, dass dir das Video gefällt. Da kann man leider keine allgemeine Aussage treffen. I.d.R. benötigt jedoch jedes Systen dass ich abfragen möchte eine eigene Modbusschnittstelle. Bei Klimageräten ist es aber bspw. häufig so, dass die Modbusschnittstelle am interen Klimaanlagen-Bus hängt und darüber dann alle Geräte abgefragt werden können. Die Modbusschnittstelle auf Geräte Seite ist aber oftmals gar kein Problem, da dies bereits als Standardprotokoll implementiert ist. Auf KNX-Seite bin ich mir gerade nicht ganz sicher ob die gängigen Gateways bspw. von Weinzierl mehrere Slaves abfragen können. Das müsste man im Datenblatt mal nachschauen. Mit der Node-Red Bibliothek ist das aber definitiv möglich.
Super erklärt Torben, vielen Dank. Hab jetzt auch einen Flow mit mehreren Injects und Intervallen gebaut, allerdings wird mir nach 10 Sekunden immer nur das Ergebnis aus dem 1. Inject im Debugfenster angezeigt. Wenn ich das Intervall in jedem Inject um 1 Sekunde höher als das vorhergehende einstelle, dann klappt es auch. Aber das muss doch auch gleichzeitig funktionieren oder? Wenn ich die injects einzeln vorne anklicke, dann bekomme ich die einzelnen Ergebnisse auch angezeigt. Gibt es da eine Einstellung die ich noch machen muss, damit mir alle Ergebnisse im Debugfenster gleichzeitig angezeigt werden? Viele Grüße, Andi
Kannst du den nachvollziehen ob das Nachrichtenobjekt noch bis zun Modbus Node kommt? Also am besten mal ein Debug Node parallel zum Modbus Noder erstellen
Hallo ein sehr guter Beitrag. Ich habe selbst ein Wago SPS 750-881 in Gebäudeautomation eingesetzt. Die wird mit der Codesys 2.3 programmiert. Mit Hilfe von Node-Red lese ich von meinem PV-Wechselrichter (Huawei) die Daten aus und stelle in IoBroker zur Verfügung um die zu später zu visualisieren. Ich kann aus IoBroker mit einer Modbus-Instanz die Register von Wago-SPS auslesen und schreiben. Direkt im Node-Red habe ich die Vorgehensweise noch nicht gekannt. Das Thema ist nicht so schwer, wenn man erst verstanden hat, was für Regel zu beachten sind. Auf RU-vid habe so ein gut erklärtes Modbus - Node-Red Aufgabe nicht gefunden. Ich würde gerne ein Video von Ihnen sehen wie man Werte (Digitale, Integer, Gleitkomma) in die Wago SPS schreibt. Schöne Grüße
Würde gerne einen Wert aus einem SMA Wechselrichter auslesen. In der Modbusbeschreibung wird folgendes angegeben: CNT (WORD) = 4 / Typ = U64 / Format = FIX0 / Zugriff RO Was muss ich hier im buffer-parser hinterlegen um den Wert richtig auszulesen? Danke!
Sehr gut erklärt ,mit Modbus Read funktioniert das auslesen ,das inject mit Modbus Flex Getter gibt egal bei was den Fehler aus "Error: Invalid property expression: unexpected ' ' at position 7" komme da leider nicht weiter .Hoffe auf einen Tip
Dann brauchst du eine entsprechende USB-Schnittstelle die du an deinen Node-Red-Server anschließt. Du kannst die gleiche Bibliothek benutzten in Node-Red musst beim Modbus-Server in der Config-Node nur einstellen das die Verbindung über Seriell geschehen soll
Hallo, kannst du bitte ein Video mit Modbus mit Intesis Modbus IR universal AC zuschicken, ich will wiesen wie man Klimaanlage und ihren werte mit NodeRed und Intesis Modbus Gerät und unser klimaanlage programmieren kann. Vielen dank für dein Tolle Videos!
Super, gibt es auch eine Video von Node Red wo Modbus als Server benutz werden kann. Ich möchte ein verbindug zu einer SPS die als Client (Master) konfiguriert ist aufbauen.
mehrere Adressen auf einmal auslesen ist ja recht einfach wenn diese aufeinander folgen (wie im video 24,25,26,27) - aber gibt es eine Möglichkeit mehrere Adressen auf einmal auszulesen wenn diese nicht so aufeinander folgen? z.b.0,1,5,6,70,71,105,106)? ist es eine blöde Idee mehrere flex getter nodes zu verwenden? ich lese 2 stromzähler aus, der übersicht halber wollte ich 2 separate flows aufbauen, aber vom video have ich den eindruckk bekommen dass dies keine gute idee ist da ich dann auch 2 flex getter nodes aktiv verwenden würde. besser einen und alle abfragen über den mit queue? Danke! :)
Hallo Torben, danke für das super Video. Ich habe jetzt schon erfolgreich Werte mit 1-2 Register (1-4 Byte) gelesen und mit dem buffer-parser interpretiert. Wenn ich aber einen Wert mit 4 Register (8 Byte) lesen und dann mit dem buffer-parser als biguint64 interpretieren will bekomme ich die folgende Fehlermeldung: msg : error "TypeError: Cannot mix BigInt and other types, use explicit conversions". Hast du vielleicht eine Ahnung woran das liegen könnte? MfG Manfred
Servus Torben Ledermann, habe Modbus ausprobiert. Wollte ausgelesene Daten "Gleidkommazahl" an CCu auf eine SysVar schreiben. Jedoch gelingt mir nicht Temp1 aus dem Parser an die CCU zu übergeben. Wäre schön hierzu ein Video zu haben.
Wahnsinn... ich blicke leider selbst nach dem Video noch nichts. Versuche meinen Logarex LK13BE Zähler über die RS485 auszulesen, direkt ins HomeAssistant über die Modbus Schnittstelle direkt im HomeAssistant und kriege es leider einfach nicht hin. Finde aber leider auch nichts zu dem Logarex LK13BE auf welchem Register das liegt oder wie ich da heran gehen soll...
Hi bist du sicher dass der Zähler Modbus kann? Ich habe mir mal das Datenblatt angeschaut. Der hat zwar eine RS485 Schnittstelle worüber Daten ausgelesen werden können, aber wenn ich das richtig sehe nur per SML. Vlt. kannst du mit der Bibliothek was anfangen: node-red-contrib-smartmeter
Hallo Torben, danke schonmal für den Super Content. Wenn ich jetzt aber mehrere Modbus Geräte abfragen möchte im selben Flow, so übernehmen sie alle immer die Servereinstellungen von der geänderten Node. Ist es möglich im selben Flow Read-Nodes mit unterschiedlichen Servereinstellungen zu konfigurieren? Lg Gavin
Das geht problemlos. Dafür legst du einfach einen neuen Server in der Konfiguration des Nodes an. Also dort wo der "geerbte" Server drin steht klickst du drauf und legst einen neuen an
Hallo, versuche gerade ebenfalls mit Node-Red und modbus auf das KSEM (Kostal Smart Energy Meter) zuzugreifen. Aber ich scheiter bereits beim "Active" !! Die Verbindung geht auf connected, dann wieder auf reconnecting in 2.000 ms, aber nicht auf activ. Woran kann es liegen ?
Hallo Torben, tolle Erklärung, danke Das Auslesen klappt bei mir mit dem Modbus-Read Node genau wie von Dir beschrieben. Bei Übernahme der Daten auf den Flex Getter mit dem inject node bekomme ich aber immer die Fehlermeldung ""Error: Modbus exception 2: Illegal data address (register not supported by device)" - Die Eingabedaten sind aber sicher identisch und das Modbus Gerät blieb unverändert. Hast Du eine Idee was das sein könnte? Danke
Das ist eine Fehlermeldung vom Modbus Gerät welches du ausliest. Du liest scheinbar ein Register aus, welches auf dem Gerät nicht existiert. Überprüfe bitte mal die Registeradresse mit der im Handbuch des Geräts
Hallo Torben, vielen Dank für deine Informationen. Gibt es eine Möglichkeit aus dem Modbus gelesene Daten in Home Assistant zu übergeben? z.B. Betriebsstatus, Leistung und Energie. Ich würde gerne meine Wallbox über node red addon an home assistant übergeben.
Frage : Ich will die Analogwerte meines Wechselrichter auslesen und es klappt auch genau alles wie in dem Video - nur ich bekomme keine Werte - da steht auch active aber beim Debug zeigt der mir nichts
Hallo Torben, danke für deine sehr informativen Videos. Ich bin neu in Node-Red und habe angefangen meine neue Solaranlage über Modbus-TCP zu visualisieren und den Eigenverbrauch zu optimieren. Vieles ist mir gelungen aber beim Auslesen des SMA-Wechselrichters habe ich ein Problem. Ich lese die aktuelle Leistung welche als vorzeichenbehafteter int32 Wert zur Verfügung steht ohne Nachkommastellen. Ich lese über Modbus-Flex-Getter aus und gehe dann auf einen Buffer-Parser. dort habe ich int32 (be) definiert und ich erhalte auch die korrekten Zahlen wenn der Wert > 0 ist. Geht der Wert auf 0 dann wird der Hexwert 0x80 0x0 0x0 0x0 geliefert was dann einen grossen Minus Wert ergibt. Aendere ich den Typ auf Float (be) dann wird mir bei 0 der richtige Wert angezeigt jedoch nicht wenn der Wert grösser als 0 ist. Was mache ich falsch? Wäre super wenn du helfen könntest Gruss Peter
Hallo Peter, hast du evtl. mal einen Link zu einer Registerbeschreibung für den SMA Wechselrichter. Zu Not würde ich den Fehlerhaften Wert über ein Switch Node einfach rausfiltern, wenn es sowieso nur den Wert 0 betrifft.