Ich möchte die Dauer eines anstehenden Zustands (z.B. KO = 1) in Sekunden messen. Dieser soll später in Form vom HH:MM:SS ausgegeben werden (was durch Wandlung von Zeit in Sec zu Text kein Problem darstellen sollte). Was ist aber die einfachste Methode, die Dauer eines Zustands zu messen?
Ankündigung
Einklappen
Keine Ankündigung bisher.
Dauer eines anstehenden Zustands in Sekunden messen (z.B. Regensensor = 1)
Einklappen
X
-
Hi,
Eine Möglichkeit wäre ,das über einen Zähler zu machen , der , wenn der Wert 1 des KO anliegt , den Wert jede Sekubde um 1 erhöht. Das Ergenbis das dann durch Berechnung (if/ else if )und Wenn abfrage in HH:MM:SS umrechnen.
Ob das im HS geht kann ich leider nicht sagen, aber mit der Logik einer SPS / Microcontroler ginge das .
-
Zitat von Seppel81 Beitrag anzeigenHi,
Eine Möglichkeit wäre ,das über einen Zähler zu machen , der , wenn der Wert 1 des KO anliegt , den Wert jede Sekubde um 1 erhöht. Das Ergenbis das dann durch Berechnung (if/ else if )und Wenn abfrage in HH:MM:SS umrechnen.
Bildschirmfoto 2019-03-17 um 23.09.35.png
Der Telegrammgenerator sollte mir hier eigentlich sekündlich (Falls E2 Ein - der kommt vom KO des Sensors) einen Wert auf den Zähler aufaddieren. Nur klappt das leider nicht. (oder ich sehe mal wieder den Wald vor lauter Bäumen nicht)
Kommentar
-
Zitat von ets3-user Beitrag anzeigenGibt im hs einen Baustein dafür, glaub das ist der betriebsstundenzähler und dann bissl bastelnde
Kommentar
-
Zitat von asisnet Beitrag anzeigen
Diesen Ansatz habe ich schon versucht:
Bildschirmfoto 2019-03-17 um 23.09.35.png
Der Telegrammgenerator sollte mir hier eigentlich sekündlich (Falls E2 Ein - der kommt vom KO des Sensors) einen Wert auf den Zähler aufaddieren. Nur klappt das leider nicht. (oder ich sehe mal wieder den Wald vor lauter Bäumen nicht)
Klappt es denn wenn Du den Eingang des Zähler Bausteins manuel auf 1 setzt, das der hoch zählt?
Kommentar
-
So, Problem gelöst :-)
Vielen Dank Seppel81 für die Anregung und eben auch noch einmal für den "Wink mit dem Zaunpfahl" auf "E4 mal auf 1 setzen".
In der Kombination hat es dann nämlich auch funktioniert. Einen weiteren Flankendetektor nach E2 brauchte es dann nicht mehr.
So sieht des Rätsels Lösung aus:
Bildschirmfoto 2019-03-18 um 00.16.03.png
Zusammenfassung:- Eingangsbox: Sensorwert für Regen (1 = Regen, 0 = kein Regen)
- Dieser geht auf E2 vom Telegrammgenerator und erzeugt so alle 1 Sekunde ein Telegramm
- Ein Flankendetektor erkennt den Abfall von 1 auf 0 des Sensorwertes und resettet über E3 den Zählerbaustein
- Die Telegramme im Sekundentakt vom Telegrammgenerator erhöhen den Zähler um jeweils 1 (= 1 Sekunde)
- Schließlich wird über den ZeitText Baustein der Wert für die Anzahl der Takte (= Anzahl der Sekunden) im Format hh:mm:ss ausgegeben
Kommentar
-
Zitat von NilsS Beitrag anzeigendu bist sicher das nach 24 Stunden die Anzeige nicht 00:00:00 sein wird
Aber ich werde noch integrieren, dass vor dem ZeitText Baustein der Ausgang A1 aus dem Zähler mit einem Teiler durch 86400 die ganzen Tage abtrennt. Diese kann ich dann als Anzahl Tage vor dem 00:00:00 anzeigen. Also in etwa
2T 09:18:40
Dann sollte das passen.
Kommentar
-
Wenn es dir nur um die Zeiten geht könntest du auch
http://service.knx-user-forum.de/?co...nload&id=12735
nehmen.
Dort könnte man sicher auch noch einen Timer einbauen der in Jahr/Monat/Wochen/Std/Minute wandelt .. Sekunden sind glaube ich eher uninteressant oder?
Kommentar
Kommentar