NEWS
MODBUS - wie CSV importieren
-
@leonundjulie sagte in MODBUS - wie CSV importieren:
Den Wert eines Registers einfach durch senden eines Wertes zu ändern beardf wohl noch eines Kniffs.
nöö!
wie kommst du darauf?Bevor ich auf die restlichen "Spekulationen" eingehe, sag bitte was denn nicht so klappt, wie du es willst.
Was passiert statt dessen? -
@homoran , gern. Ich greife aus den verschiedenen Registern mit Read/write Option mal eines heraus.
Laut Smartfox ist definiert:
Ich habe dieses Register als 41607 übernommen.
Die Web.Oberfläche der Smartfox Software sieht so aus
Es gibt also nicht nur die beiden von Smartfox definierten Statis, sondern auch die an anderer Stelle schon definierten:
- Aus: 3
- A: 0
- A+: 2
- M: 1
Wenn ich den Status via Smartfox-Web-Oberfläche ändere, dann erhalte ich diese Information (0 ... 3) auch im iObroker.
Das wechseln des Status möchte ich aber auch vom iOBroker aus machen, dem Regsiter also den Wert 0 oder 1 oder 2 oder 3 zuweisen. Und genau das funktioniert nicht. Wenn ich den Wert im iOBroker setzte, dann blinkt die gewählte Ziffer 2 oder 3 mal auf und wechselt abschließendn wieder zum vorherigen Stand, im Smartfox passiert gar nichts.
Spontane Spekulation (weil ich ja nicht weis was der MODBUS-Adapter so macht und ich auch noch keine Erklärung dafür gefunden habe, dass man die Register endgegen der Vorgabe von Smartfox alle um -1 kleiner wählen muss): kann es sein, dass ich zum Lesen de Regsiters car charge 1 charge mode das Holdig-Register 41607 und zum Schreiben das Holding-Register 41608 (das von Smartfox defineirte) verwenden muss?
-
@leonundjulie sagte in MODBUS - wie CSV importieren:
Laut Smartfox ist definiert:
Ich habe dieses Register als 41607 übernommen.
Die Web.Oberfläche der Smartfox Software sieht so ausDanke für diese Aufstellung!
leider fehlt die Konfiguration dieses Registers in der Modbus Instanz
-
@leonundjulie sagte in MODBUS - wie CSV importieren:
noch keine Erklärung dafür gefunden habe, dass man die Register endgegen der Vorgabe von Smartfox alle um -1 kleiner wählen muss)
das sollte in der Registerbeschreibung des Gerätsstehen, mit welchem Offset die da arbeiten.
40000 oder 40001 (möglich wäre auch 39999)@leonundjulie sagte in MODBUS - wie CSV importieren:
kann es sein, dass ich zum Lesen de Regsiters car charge 1 charge mode das Holdig-Register 41607 und zum Schreiben das Holding-Register 41608 (das von Smartfox defineirte) verwenden muss?
Das müsste ebenfalls in der Registerbeschreibung stehen.
üblicherweise sind RO Register Inputregister (30xxx) und nur beschreibbare Register Holdingregister (40xxx).
Leider wird das auch nicht immer eingehalten. -
@homoran , ich gehe hier auf Deine beiden Kommentare ein.
Was ein Hersteller sollte und nicht tut ..... any way, der Hersteller hat das veröffentlicht https://smartfox.de/wp-content/uploads/2022/12/Modbus-Register-SMARTFOX-Pro-SMARTFOX-Pro-2-v22e-00.01.03.10.xlsx
Dort ist kein Offset definiert. Das man die Nummern der Register um minus 1 kleiner angeben muss, habe ich nur durch sehr viel Recherche herausgefunden .... demmentsprchend bekomme ich plausieble Werte.
Gruß
Andreas -
@leonundjulie sagte in MODBUS - wie CSV importieren:
Hersteller hat das veröffentlicht
ok!
kann ich leider am Dandy nichts mit anfangen.kannst du bitte die relevanten Teile (allgemeines zu den Modbus Parametern, Angaben zu diesem Beispielregister als Text in code-tags posten?
@leonundjulie sagte in MODBUS - wie CSV importieren:
Dort ist kein Offset definiert.
So wie das in den bisherigen Screenshots zu sehen war, werden anscheinend Hex-Werte angegeben.
Wenn du diese in Dec umrechnest, kommt dann eine 40xxx raus oder eher 1606?Da müsstest du dann entweder ohne Alias arbeiten und genau diese Zahl eintragen oder den offset von 39999-40001 hinzufügen (je nach Gusto des Herstellers) .
könntest du bitte noch
@homoran sagte in MODBUS - wie CSV importieren:
die Konfiguration dieses Registers in der Modbus Instanz
für 41607 nachreichen
-
@homoran manchmal muss man ur drüber reden ... hatte wie zig andere Tomaten auf den Augen In der vom Hersteller bereitgestellen MODBUS-Definition (Excel-Liste) gibt es einen zweiten Reiter. Und auf dem wurden wohl von allen die ersten beiden Zeilen überlesen.
.... es gibt also einen Offset. Zumindest das wäre geklärt.Somit ist meine CSV aus meiner Sicht (eigentlich) richtig - hatte bis dato nur keine Erklärung warum es MINUS 1 sein muss
Gerne nochmals hier die Definition für das Register (Foto von der Originaldatei)
Und das, was ich daraus machte
Ich wiederhole gern: lesen kann man, nur schreiben funktioniert nicht. Und da komme ich wieder auf den Offset zurück. Kann man den pauschal im Adapter angeben (ich habe bis dato nichts gefunden)?
Edit: wenn man den Expertenmode anmacht, dann taucht eine Offsetspalte auf. Ich importiere also nochmals die Porignal CSV respektive TSV und setzt dann in der Spalte bei jedem Register -1?
-
@leonundjulie sagte in MODBUS - wie CSV importieren:
es gibt also einen Offset
@leonundjulie sagte in MODBUS - wie CSV importieren:
die Definition für das Register
oh, doch in Dezimal!
und da steht doch auch, dass nur die Werte 0 und 1 unterstützt werden.
@leonundjulie sagte in MODBUS - wie CSV importieren:
dann taucht eine Offsetspalte auf.
brauchst du nicht.
Du hast doch schon alle Register um 1 erniedrigt -
@homoran Fazit: es geht … Zusammenfassung
-
MODBUS-Adapter (Reiter Allgemeines, Bereich Verbindungsparamter) mit IP-Adresse und Port des SmartFox-Energymanager einrichten (iOBroker als Master)
-
MODBUS-Adapter (Reiter Allgemeines, Bereich Allgemeines): Kreuz bei Nur „Write multiple registers) setzen
-
Im Reiter HOLDING Registers die zuvor bei SMARTFOX heruntergeladenen Register-Konfiguration (Adressen minus 1) eintragen (Import ist weiter oben beschrieben); in der Spalte ABFRAGE Kreuze bei den Registern setzen, die man auslesen möchte
(alle möglichen Fotos sind schon in diesem Thread weiter oben gesendet )
Mehr muss man nicht machen!
Warum es bei mir so stolperte? Keine Ahnung. Jetzt lese ich Werte aus und setze vom iOBroker aus die Modi für die RW-Register des SMARTFOXES, wie es beliebt … alles kommt im SMARTFOX an und wird auch in dessen APP angezeigt.
Danke für die allgemeine Unterstützung!
-
-
@leonundjulie sagte in MODBUS - wie CSV importieren:
Fazit: es geht … Zusammenfassung
und mode 2 und 3 vom Register 41607 wird von Haus aus nicht unterstützt!
(anscheinend aber trotzdem gelesen)