Zwei Werte synchron aufaddieren
Verfasst: So Feb 20, 2022 4:05 pm
Hi,
gegeben sei die folgende Logik:
Dabei sind 1W179 und 1W180 Meßwerte, die zusammengerechnet den aktuellen Luftdruck ergeben. Konkret bedeutet:
Das bedeutet widerum natürlich, dass die beiden Werte synchron ausgelesen und auch synchron in der Logik verarbeitet werden. Stellt man das nicht sicher, kann beim Durchschreiten der 1000er-Grenze ein absurd falsches Ergebnis wie "2" oder "1998" herauskommen.
Am schönsten wäre es ja, wenn schon dier 1-Wire-Konfiguration sichergestellt werden könnte, dass die beiden Werte immer "zusammen" ausgelesen werden. Aktuell hat man beim Auslesen der 1-Wire-Sensoren alle 300 Sekunden eine sehr hohe Wahrscheinlichkeit, den einen Wert vor, und den anderen nach Durchschreiten der 1000er-Grenze ausgelesen zu haben. Ich gehe davon aus, dass man hier keinen Einfluss auf das Scheduling der 1-Wire-Abfragen hat, denn in der Praxis liegen die Werte regelmäßig mehrere Minuten auseinander (und häufiger auslesen will ich sie nicht, das ist aber auch keine valide Lösung).
Ich möchte deswegen gerne ein zweites Logikglied dahinterschalten (oder am Inhibit-Anschluss der Addition anschileßen), das die Ausgabe eines neuen Wertes unterdrückt, wenn er unter 500 oder über 1500 liegt.
Mache ich das mit einer Custom-Logik? GIbt es ein fertiges Modul das das könnte? Oder ist schon mein Ansatz falsch?
Grüße
Marc
gegeben sei die folgende Logik:
Dabei sind 1W179 und 1W180 Meßwerte, die zusammengerechnet den aktuellen Luftdruck ergeben. Konkret bedeutet:
1W179 | 1W180 | Wert |
---|---|---|
2 | 1000 | 1002 |
997 | 0 | 997 |
Am schönsten wäre es ja, wenn schon dier 1-Wire-Konfiguration sichergestellt werden könnte, dass die beiden Werte immer "zusammen" ausgelesen werden. Aktuell hat man beim Auslesen der 1-Wire-Sensoren alle 300 Sekunden eine sehr hohe Wahrscheinlichkeit, den einen Wert vor, und den anderen nach Durchschreiten der 1000er-Grenze ausgelesen zu haben. Ich gehe davon aus, dass man hier keinen Einfluss auf das Scheduling der 1-Wire-Abfragen hat, denn in der Praxis liegen die Werte regelmäßig mehrere Minuten auseinander (und häufiger auslesen will ich sie nicht, das ist aber auch keine valide Lösung).
Ich möchte deswegen gerne ein zweites Logikglied dahinterschalten (oder am Inhibit-Anschluss der Addition anschileßen), das die Ausgabe eines neuen Wertes unterdrückt, wenn er unter 500 oder über 1500 liegt.
Mache ich das mit einer Custom-Logik? GIbt es ein fertiges Modul das das könnte? Oder ist schon mein Ansatz falsch?
Grüße
Marc