NEWS
Script zum auslesen eines C.M.I von TA UVR1611
-
Vielleicht noch ein paar Ideen:
-
Ich benutze node-red für die Übertragung an den Modbus Adapter. Siehe Screenshot
-
Screenshot meines Eingangsregisters
-
In der CMI Firmware gab es ein paar Bugfixes den Modbus betreffend. Neueste CMI Firmware ist gerade 1.30.2
-
Ggf. mal den Modbus Adpater auf Debug setzen und schauen ob er auch tatsächlich periodisch neue Werte bekommt
-
Den Modbus Adpater über die Konsole (nicht in der WebUI) neu installieren und schauen ob diese fehlerfrei durchläuft
-
-
Habe alles durchprobiert.
Neuste Firmware auf dem CMI, Modbus Adpater auf Debug gesetzt, Adapter neu installiert über Konsole.
Immer das gleiche Ergebnis: in Richtung Iobroker läuft der Modbus; in Richtung CMI leider nicht.
Scheint am CMI zu liegen.
Nochmal vielen Dank für deine Mühe.
Wenn ich dazu komme teste ich es mal über node-red.
Grüsse
-
Wenn dein CMI einmalig die Daten nach einem Neustart des Modbus Adapter bekommt, dann glaube ich nicht, dass es am CMI liegt. Auch ist das CMI der Master und sitzt deshalb eigentlich nur faul rum und wartet bis ein Slave sich meldet. Heißt, der Modbus Adapter baut für jeden Wert eine neue Verbindung zum Master auf. Ich denke, das Problem liegt irgendwo in deiner ioBroker Instanz.
Du kannst den Modbus auch mit Tools wie z.B. http://www.tuomio.fi/ananas/index.htm testen:
-
Hallo Sineos,
vielen Dank für den Tipp mit dem Tool Ananas.
An ihm konnte ich erkennen, dass es nicht am CMI liegt.
In Ananas wird der Modbus Wert des iobrokers auch nicht aktualisiert.
Dies bezieht sich aber nur auf das Input-Register.
Die Holdings und Coils werden aktualisiert!
Ich kann es mir nicht erklären.
Die Werte in den Objekten des Iobroker werden brav aktualisiert und angezeigt.
Ich weiss nicht weiter.
-
Mir fällt jetzt leider auch nichts mehr ein.
Einzig vielleicht auf https://github.com/ioBroker/ioBroker.modbus ein Issue aufmachen mit Referenz zu diesem Thread. Vielleicht können die Entwickler zusätzliche Debug-Ausgaben hinzufügen, um zu sehen wo was falsch läuft.
-
Und momentan maximal den Modbus-Adapter in Version 1.1.2 verwenden, da die Slave-Option in 2.x broken ist.
-
Lässt sich leider bei mir nicht mehr downgraden..
-
Öhm, doch geht. Brauchst Du aber nicht mehr, weil jetzt eine neuere Variante von 2.0.6 auf Github steht. Die neuste Version (immer noch 2.0.6, aber von Bluefox nachgebessert) tut jetzt bei "Slave" was sie soll.
Lösung: Die Partner-ID auf 0.0.0.0 stellen oder die IP des ioBroker Servers angeben. Das funktioniert bei mir. Den Rest wie bei 1.1.2 lassen.
Nutzt du auch eine UVR? Edit: Dumme Frage
-
Vielen Dank für den Hinweis.
Habe es getestet und es läuft mit der IP 0.0.0.0
Ja, ich benutze auch eine UVR1611 und steuere mit dem Modbus Pumpenabschaltungen usw.
-
Nur sieht es derzeit so aus, als wäre die Logik der coil's umgedreht.
true=false
false=true
-
Hilfe, was sind Coils? Ich übertrage nur einige analoge Messwerte. Und das klappt.
-
Das sind die diskreten Ausgänge des Modbus.
Ich benutzte Sie zum Übertragen von Logikwerten.
-
Kannst Du bitte einige Screenshots machen von den Einstellungen, die Du verwendest, um digitale Werte aus der UVR zu ioBroker zu übertragen und ggf auch zurück? Bei mir steht da z.B. immer 0 im ioBroker, obwohl das CMI am Modbus-Ausgang "Ein" sagt.
-
Verflixt, wo sehe ich denn in Ananas die Coils, d.h. das, was das CMI so an Digitalwerten an den ioBroker sendet?
-
Hallo Stabilostick,
anbei die screenshots des iobroker und der CMI.
Derzeit werden die digitalen Werte anstelle von false, das sie eigentlich sind, mit true angezeigt.
6962_cmi_ausg_nge.png
6962_instances___iobroker.png
6962_objects___iobroker.png -
Danke, klappt.
Hängst Du dich wegen der vertauschten Ein/Aus-Info mit an den Thread viewtopic.php?f=20&t=15202 ran? Habe auch eine Issue auf Github geöffnet: https://github.com/ioBroker/ioBroker.modbus/issues/21.
Wie war es bei Versionen <2.0?
-
Hallo zusammen,
erstmal vielen lieben Dank für die tollen Anleitungen und Beschreibungen hier im Forum.
Ich versuche gerde Werte zwischen einer CMI und dem Modbusadapter hin und her zu schreiben. Mit Temperaturwerten klappt das auch.
Woran ich am verzweifeln bin ist, dass ich keine true/false Werte vom Modbusadapter in die CMI bekomme. Dabei scheitere ich vermutlich schon mit meinem bescheidenen Wissen über Modbus.
Kann mir jemand sagen, was ich genau machen/einstellen muss, damit ich true/false vom Modbusadapter an die CMI übertragen bekomme?
Mein Ziel ist es damit die Heizkreispumpe ein und aus zu schalten.
Übrigens schreibe und lese ich die Temperaturwerte nach der Methode von Sineos. Das klappt wunderbar.
-
Hi Guenni76,
hast du für deine Anfrage eine Brauchbare Lösung erhalten ?
Bei mir hakt es momentan an der gleichen Aufgabenstellung, bekomme keinen Staus an die CMI über den Digitalen Eingang am Modbus….
Danke für einen Hinweis...
-
Hallo Ck83,
nein leider habe ich noch keine Antwort auf meine Frage bekommen und habe die Hoffnung schon ein wenig aufgegeben, deshalb habe ich in letzter Zeit nicht mehr im Forum reingeschaut.
Aber zurück zum Thema:
Ich habe jetzt eine nicht ganz saubere, aber funktionierende, Lösung gefunden die true/false Werte zu umgehen. Statt true/false übergebe ich den Zahlenwert 0 für Heizkreispumpe aus und 1 entsprechend für ein. Denn Zahlenwerte kann ich ja, wie oben geschrieben, übergeben. In der Programmierung auf dem TA-Gerät (bei mir ein CAN I/O45) habe ich dann die Vergleichsfunktion A>B gesetzt, wobei A mein Eingagswert vom Modbus-Adapter ist und B den Fixwert 0 hat. Der Ausgang ist dann ein Boolescher Wert mit dem ich die Pumpe freigebe.
Falls jemand eine "saubere" Lösung des Problems hat wäre das natürlich super!
Grüße
Günni
-
Hi Guenni76,
So ähnlich wollte ich es mit Node-Red auch realisieren und einen Ausgang über Alexa Steuern.
Ich kann zwar Werte des CMI über das Holding Register auslesen aber keine Werte ZUM CMI senden, bzw. werden die Zahlewerte über das 04-read input register nur aktualisiert, wenn ich den Mod-Bus Adapter neu starte…
Logik-Werte bekomme ich garnicht an die CMI weitergeleitet, der Wert bleibt immer auf AUS.
Der Modbusadapter v. 2.0.7 ist auf Slave eingestellt.
könntest du mir Screenshots deiner Einstellung zukommen lassen und wie du die Konfiguration in der CMI und dem Modbusadapter hinterlegt hast ?
Danke für eine Auskunft.