- Beiträge
- 3.573
- Reaktionspunkte
- 1.037
-> Hier kostenlos registrieren
Hallo,
TIA V18 Update 3
1217C DCDCDC V4.6
Ich glaube ich hatte mal in irgendeinem SCL Schnipsel gesehen, dass eine CASE Funktion mit BOOL gelöst wurde. Ist das denn so richtig in Erinnerung von mir?
Hintergrund:
MQTT Nachrichten senden dauert jetzt bei 9 von 16 eingebundenen Topics schon 2-3s bis eine neue Nachricht für ein Topic im Broker erscheint (sprich Zykluszeit ist hier 2-3s)
Ich habe bei mir alles (StartSignal serialisieren, StartSignal senden usw.) in einer CASE Funktion integriert, so wird jedes Thema nacheinander abgearbeitet.
Im Idealfall hätte ich es gerne so, dass nur bei einer Wertänderungen der Datenpunkte eines Topics, eine neue Nachricht abgesetzt wird. Das würde ich über Neu<>Alt vergleich lösen (geht bei mir gut, da alles in UDTs ist).
Problem: Ich übergebe meine Datenpunkte zum Aufbereiten über den temporären Bereich. Hier hätte ich angedacht, die UDTs welche die vorherigen Daten - spricht "Alt" enthalten, im remanenten Bereich abzulegen. Wäre das eine gute Idee?
So hätte ich quasi etwas wie ein Fifo, ich befürchte nur, dass es irgendwann zu dem Fall kommt dass die eine Nachricht nie abgesetzt wird, weil alle anderen davor immer davor "neuer" sind. Wie schaffe ich eine "gleichberechtigung/gleichwertigkeit" der Neu<>Alt Vergleiche?
Was wären andere Möglichkeiten, falls ich das mit der CASE Funktion falsch in Erinnerung hab?
Dankeschön im Voraus!
TIA V18 Update 3
1217C DCDCDC V4.6
Ich glaube ich hatte mal in irgendeinem SCL Schnipsel gesehen, dass eine CASE Funktion mit BOOL gelöst wurde. Ist das denn so richtig in Erinnerung von mir?
Hintergrund:
MQTT Nachrichten senden dauert jetzt bei 9 von 16 eingebundenen Topics schon 2-3s bis eine neue Nachricht für ein Topic im Broker erscheint (sprich Zykluszeit ist hier 2-3s)
Ich habe bei mir alles (StartSignal serialisieren, StartSignal senden usw.) in einer CASE Funktion integriert, so wird jedes Thema nacheinander abgearbeitet.
Im Idealfall hätte ich es gerne so, dass nur bei einer Wertänderungen der Datenpunkte eines Topics, eine neue Nachricht abgesetzt wird. Das würde ich über Neu<>Alt vergleich lösen (geht bei mir gut, da alles in UDTs ist).
Problem: Ich übergebe meine Datenpunkte zum Aufbereiten über den temporären Bereich. Hier hätte ich angedacht, die UDTs welche die vorherigen Daten - spricht "Alt" enthalten, im remanenten Bereich abzulegen. Wäre das eine gute Idee?
So hätte ich quasi etwas wie ein Fifo, ich befürchte nur, dass es irgendwann zu dem Fall kommt dass die eine Nachricht nie abgesetzt wird, weil alle anderen davor immer davor "neuer" sind. Wie schaffe ich eine "gleichberechtigung/gleichwertigkeit" der Neu<>Alt Vergleiche?
Was wären andere Möglichkeiten, falls ich das mit der CASE Funktion falsch in Erinnerung hab?
Dankeschön im Voraus!