NEWS
[gelöst] Modbus-TCP Verbindung mit SAX-Batterie
-
Hallo
bräuchte mal eure Hilfe bezüglich der Modbus-TCP Verbindung mit einer SAX-Power Batterie
habe schon ein paar Sachen mit Modbus-TCP erfolgreich verbunden, aber mit der Anleitung von dem Ding komme ich nicht zurecht.
Ausschnitt aus der Anleitung:
hab denen dann mal geschrieben und hab dann eine Excelliste bekommen:
so hab ich es mal getestet was aber nicht funktioniert:
kann mich bitte jemand in die richtige Richtung schupsen,
vielen Dank schon mal
mfg
Farmer -
hat keiner eine Idee???
Schade
-
Hi,
im Moment warte ich noch auf die Auslieferung des Speichers...
Ich habe aber gesehen, dass in deinem Modbus EXCEL-Sheet ein Unit-Identifier von Hex40 (= 64 Dezimal) angegeben ist.
Versuche doch einmal bei den Verbindungsparametern im IOBroker-Adapter die Geräte-ID 64 für den SAX-Speicher einzutragen.
Damit sollte es dann eigentlich funktionieren.
BG
Stefan -
@jockel du bist der beste
so bekomme ich eine Verbindung hin,jetzt muss ich es nur schaffen das die Daten auch passen
Hast du vielleicht noch eine Idee als was ich sie auslesen muss??wenn ich das Register 48 (Leistung des Smartmeters) z.B. nehme, egal was ich als typ nehme, es ist nicht annähernd der Wert der in der Visu des Sax angezeigt wird
-
Prima, sehr schön dass es geklappt hat!
Leider ist die Beschreibung der Modbus-Register von SAX nicht so toll
Es gibt zum Beispiel beim Schaltzustand noch den Zustand 4 (Standby?) wie ich herausgefunden habe.
Um den Wert der Visu zu bekommen, muss man die Leistung des Speichers (16384 - ist glaube ich fix, steht auch im Excel sheet) von der Leistung des Smartmeters abziehen!!
Das ganze habe ich dann im Adapter (P_Gesamt) unter Formel mit x-sf['47'] selbst realisiert. Bitte beachte, dass dazu beim Einlesen vom Leistungswert des Speichers (47) SF markiert werden muss. Damit bildet man ein Werte-Array, welches dann später zum Berechnen benutzt werden kann.
Da Grundsätzlich bei allen Werten vom Speicher nur 2 Datenbytes gesendt werden (SAX-Excel Sheet), solltest Du den Datentyp im Adapter auf 16Bit einstellen.
Anbei meine Konfiguration wie es funktionieren sollte:Gib bitte mal Bescheid, ob dass auch bei dir klappt
VG
Stefan -
@jockel
Hast Recht, bin mittlerweile auch auf den Berechnungswert gekommen ich subtrahiere einfach die 16384 Vom eingelesenen wert und dann stimmen die daten, ich lese alles mit unsigned 16 bit big endian, dann steht bei schaltzustand die 1 und nicht die 4 und schon passt wieder allesWenn ich wieder zu Hause bin, kann ich screenshots mat dazu legen
-
Nachtrag:
Geht noch einfacher. Habe gerade gesehen, dass im SAX-Excel Sheet 16384 als Offset für beide Register 47 und 48 steht. Super versteckt
Damit kann man sich das Umrechnen gleich sparen und einfach das Offset direkt im Adapter eintragen:Somit entfält auch der zusätzliche Datenpunkt P_Gesamt.
So, damit sollte dann alles zur Zufriedenheit laufen
-
@jockel
Ah ja, auf das bin ich noch nicht gekommen, werde ich morgen gleich testen -
Perfekt!
damit könenn wir den Case schließen ! -
-
für alle die über den Eintrag fallen.
aktuell hab ich es mit folgenden Einstellungen gelöst.
(Benötigt wird der Modbus adapter)
da ich da nur Daten lesen will muss nur das Register Holding ausgefüllt werden
und schon bekommt die Nötigen Daten die der Speicher ausgibt
vielen Dank noch mal an @Jockel