Wir haben eine ganze Menge an Zählern (>30) im Einsatz. Einige der Modbus RTU<->TCP Gateways sind sporadisch recht “zickig” und kommen mit kurzen Zyklus-Zeiten nicht klar. Ich bin mittlerweile bei 4 Sekunden.
Ich würde manche Geräte (z.B. Thermometer) gerne z.B. alle 10 Zyklen abfragen. Der quick ‘n’ dirty way wäre ein Counter der über die EdgeEventConstants getriggert wird.
Ohne zu tief in die Modbus-Bridge einsteigen zu müssen - gibt es da einen einfachen Weg?
Ich bin gespannt auf eure Testergebnisse. Ich sehe die Umsetzung in dem PR noch kritisch. Die Logik in der Modbus-Bridge ist ziemlich komplex und natürlich eine der wichtigsten im ganzen OpenEMS-Projekt. Wenn man das macht, muss man es ordentlich machen und umfangreiche JUnit-Tests schreiben.
Den Use-Case kenne ich allerdings auch. Manche Geräte spezifizieren auch, dass man nicht so häufig lesen darf. Allerdings ist es bei mir bisher noch nicht so dringend, dass ich es selbst umsetzen musste.