Hallo zusammen,
seit einigen Tagen versuche ich zwischendurch, eine Schaltung zusammenzubauen, die folgendes "Problem" löst:
Ein Taster sendet bei Druck eine 0. Wenn nun der Taster innerhalb einer gewissen Zeitspanne 2 Mal gedrückt wird, möchte ich die zweite 0 anders interpretieren.
Etwa: Mit der ersten 0 schalte ich alle Lampen im Zimmer aus, mit der zweiten 0 alle Steckdosen, aber eben nur dann, wenn innerhalb von 3 Sekunden die zweite 0 gesendet wird. Wenn die zweite 0 erst nach 4 Sekunden oder später kommt, heißt sie weiterhin nur "alle Lampen aus".
Es muss aber nicht zwingend die gleiche Gruppenadresse sein. In einer anderen Situation habe ich 2 Gruppenadressen, bei denen die zweite Gruppenadresse anders interpretiert werden soll als üblich, wenn sie "kurz nach" der ersten gesendet wird.
In allen Fällen soll das Eintreffen der zweiten Gruppenadresse die Schaltung wieder zurücksetzen.
Als Bausteinbeschreibung sähe das so aus:
E1: Start des Bausteins bei 1, Stop bei 0
E2: Zeit in Sekunden, setzt E1 nach E2 Sekunden wieder auf 0
E3: Signal
A1: =E3, falls innerhalb von E2 Sekunden nach E1 empfangen, setzt dann E1=0
Man könnte A1 auch zum Rückkoppeln verwenden, um E1 wieder auf 0 zu setzen.
Meine Idee war, über ein RS-Flipflop und Telegrammverzögerer eine Sperre zu bedienen, die mir dann den zweiten Wert zurücksendet, bis das verzögerte Telegramm über das RS-FlipFlop die Sperre wieder ausschaltet. Allerdings hat mir der Telegrammverzögerer immer die Sperre zurückgesetzt, auch, wenn das zweite Telegramm schon durch war. D.h. ich konnte die Schaltung nicht 2 Mal kurz hintereinander triggern, da dann noch die Telegrammverzögerung des ersten Triggerns griff.
Als selbstgeschriebener Baustein dürfte das kein Hexenwerk sein. Da fehlt mir allerdings die Erfahrung.
Wie würdet ihr das lösen?
seit einigen Tagen versuche ich zwischendurch, eine Schaltung zusammenzubauen, die folgendes "Problem" löst:
Ein Taster sendet bei Druck eine 0. Wenn nun der Taster innerhalb einer gewissen Zeitspanne 2 Mal gedrückt wird, möchte ich die zweite 0 anders interpretieren.
Etwa: Mit der ersten 0 schalte ich alle Lampen im Zimmer aus, mit der zweiten 0 alle Steckdosen, aber eben nur dann, wenn innerhalb von 3 Sekunden die zweite 0 gesendet wird. Wenn die zweite 0 erst nach 4 Sekunden oder später kommt, heißt sie weiterhin nur "alle Lampen aus".
Es muss aber nicht zwingend die gleiche Gruppenadresse sein. In einer anderen Situation habe ich 2 Gruppenadressen, bei denen die zweite Gruppenadresse anders interpretiert werden soll als üblich, wenn sie "kurz nach" der ersten gesendet wird.
In allen Fällen soll das Eintreffen der zweiten Gruppenadresse die Schaltung wieder zurücksetzen.
Als Bausteinbeschreibung sähe das so aus:
E1: Start des Bausteins bei 1, Stop bei 0
E2: Zeit in Sekunden, setzt E1 nach E2 Sekunden wieder auf 0
E3: Signal
A1: =E3, falls innerhalb von E2 Sekunden nach E1 empfangen, setzt dann E1=0
Man könnte A1 auch zum Rückkoppeln verwenden, um E1 wieder auf 0 zu setzen.
Meine Idee war, über ein RS-Flipflop und Telegrammverzögerer eine Sperre zu bedienen, die mir dann den zweiten Wert zurücksendet, bis das verzögerte Telegramm über das RS-FlipFlop die Sperre wieder ausschaltet. Allerdings hat mir der Telegrammverzögerer immer die Sperre zurückgesetzt, auch, wenn das zweite Telegramm schon durch war. D.h. ich konnte die Schaltung nicht 2 Mal kurz hintereinander triggern, da dann noch die Telegrammverzögerung des ersten Triggerns griff.
Als selbstgeschriebener Baustein dürfte das kein Hexenwerk sein. Da fehlt mir allerdings die Erfahrung.
Wie würdet ihr das lösen?
Kommentar