NEWS
Probleme mit dem Modbus Adapter, oder doch der Hardware?
-
-
@peterfido Danke aber ich wollte deswegen jetzt nicht noch ein weiteres Programm verwenden.
Grüße Martin
-
@martin-5 sagte in Probleme mit dem Modbus Adapter, oder doch der Hardware?:
debug: modbus.2 (6993) Socket closed with error
kommt da irgendwo ein Code als Fehler im
@martin-5 sagte in Probleme mit dem Modbus Adapter, oder doch der Hardware?:
debug: modbus.2 (6993) [DevID_1/holdingRegs] Poll address 40107 - 10 registers
oder sind die 10 Register zu viel auf einmal
oder was ist 40107?wie sind die Einstellungen?
was macht der javascript adapter da zeitgleich?
-
@homoran sagte in Probleme mit dem Modbus Adapter, oder doch der Hardware?:
kommt da irgendwo ein Code als Fehler
Nö, nur das was da steht.
oder sind die 10 Register zu viel auf einmal
Ist auch bei einem Register so.
oder was ist 40107?
Das ist das erste Register.
Der Zähler beendet einfach die Verbindung nach 40sek. Setze ich die Pollzeit auf 30 Sekunden passiert das nicht.
Aber da kommt mir eine Idee. Ich setze die Zeit für das Wiederverbinden auch auf 5 Minuten dann könnte es klappen.
Grüße Martin
-
@martin-5 sagte in Probleme mit dem Modbus Adapter, oder doch der Hardware?:
Nö, nur das was da steht.
Da strht das ja auch nicht.
Das steht als Wert bei dem angemeckerten Registerz.B.
-
Das auslesen der Register funktioniert ja und die Werte stimmen. Der Fehler kommt ja erst 40 Sekunden später.
2024-10-24 21:05:57.543 - debug: modbus.2 (6993) [DevID_1] Poll start -------------------- 2024-10-24 21:05:57.544 - debug: modbus.2 (6993) [DevID_1/holdingRegs] Poll address 40107 - 10 registers 2024-10-24 21:05:57.552 - debug: modbus.2 (6993) [DevID_1/holdingRegs] Poll address 40107 DONE 2024-10-24 21:06:37.413 - debug: modbus.2 (6993) Socket closed with error 2024-10-24 21:06:37.413 - debug: modbus.2 (6993) Clearing timeout of the current request. 2024-10-24 21:06:37.414 - debug: modbus.2 (6993) Cleaning up request fifo. 2024-10-24 21:06:38.416 - debug: modbus.2 (6993) Closing client on purpose. 2024-10-24 21:06:38.416 - info: modbus.2 (6993) Disconnected from slave 192.168.178.31
Setze ich die Wartezeit bis zum erneuten Verbinden auf den gleichen Wert wie die Pollzeit scheint es zu funktionieren.
Die Verbindung wird zwar auch unterbrochen aber die nächste Verbindung erfolgt erst wenn die Register wieder ausgelesen werden sollen. Dabei ist mir allerdings ein weiteres Problem aufgefallen. Gepollt wird nicht zu jeder durch 5 teilbaren Minute sondern alle 5 Minuten und ein paar Millisekunden. Somit ist es nicht sicher zu welcher Zeit genau der Zählwert ermittelt wurde, es ist irgendwo zwischen der 0. und der 5. Minute.Grüße Martin
-
@martin-5 sagte in Probleme mit dem Modbus Adapter, oder doch der Hardware?:
sondern alle 5 Minuten
+ die in den Objekten unter polltime stehende Zeit.
Also 5 Minuten Pause zwischen zwei Aktionen -
@homoran Ja so ist es. Ich brauche aber den Zählerstand zu festen Zeiten. ... 0, 5, 10,15 usw. Minuten.
Ich probiere weiter, vielen Dank.
Grüße Martin
-
@martin-5 sagte in Probleme mit dem Modbus Adapter, oder doch der Hardware?:
Ich brauche aber den Zählerstand zu festen Zeiten.
wofür?
Für eine Berechnung?
Nimm die Zeit zwischen den Timestamps -
@homoran
Ich berechne die durchschnittliche Leistung der letzten 5 Minuten aus der Differenz der Zählerstände und speichere sie in eine Datei im Format Sekunden: Leistung (z.B. 300: 2, 600: 3 usw.). Dauert eine Aktion 100 ms und die Zeit zwischen den Aktionen ist 5 min verschiebt sich die Zeit über den Tag um 28,8 sek und im Monat um etwa 14min und 24 sek. Man könnte nun die Pollzeit anpassen aber es bleibt ein Fehler der sich aufsummiert. Besser wäre es doch zeitgesteuert zu pollen.Meine Fragen sind aber beantwortet und ich weiß nun wie der Modbus-Adapter arbeitet.
Danke dafür.Grüße Martin
-
@martin-5 sagte in Probleme mit dem Modbus Adapter, oder doch der Hardware?:
aus der Differenz der Zählerstände
...und der Differenz der Timestamps...
dann kannst du normieren
@martin-5 sagte in Probleme mit dem Modbus Adapter, oder doch der Hardware?:
Besser wäre es doch zeitgesteuert zu pollen.
nein!
JS arbeitet ereignisbasiert.
Da ist es genauer bei der Änderung des Werts zu rechnen.