Klatschschalter
© 2006 - 2012 Christian Batz
1. Bedienung
Der Klatschschalter zeichnet
sich dadurch aus, dass er erst nach zweimaligen Klatschen schaltet. Dies
verhindert Schaltvorgänge aufgrund von anderen akustischen Störgeräuschen.
Die Pause zwischen den beiden Klatschsignalen ist definiert mit minimal 0,5 und
maximal 1,5 Sekunden. Die Empfindlichkeit wird über einen Potentiometer
eingestellt. Wird ein Klatschsignal erkannt, blinkt die LED kurz auf. Wurde
eine Klatschsequenz erfolgreich registriert leuchtet die LED und das Relais
schaltet. Der Schalter ist anschließend für 2 Sekunden gesperrt.
Um einen Missbrauch des Schalters zu unterbinden, sperrt der Schalter für
60 Sekunden, wenn 4 Klatschsequenzen in Folge registriert wurden.
Das Sperren wird durch blinken der LED visualisiert.
Der aktuelle Schaltzustand wird gespeichert, so dass im Falle eins
Stromausfalls der vorherige Schaltzustand automatisch wieder hergestellt wird.
Der Schalter kann zusätzlich durch einen Taster manuell bedient werden. Dies
ist auch während der Sperrung (LED blinkt) möglich. Jede Betätigung des Tasters
schaltet das Relais.
2. Schaltungsbeschreibung
Das Herzstück der Schaltung
bildet der PIC Mikrocontroller 12F629, der alle eingehenden Signale (Klatschen
u. Taster) auswertet und entsprechend Ausgänge (LED u. Relais) schaltet.
Durch das Elektret Mikrofon
werden empfangene Schallwellen in ein elektrisches Signal gewandelt und durch
die folgende Emitterschaltung verstärkt. Das verstärkte Signal mündet im
Komparator Eingang (CIN+) des Controllers. Die Empfindlichkeit wird über einen
Potentiometer geregelt, dessen Referenzspannung am zweiten Eingang (CIN-) des
Komparators anliegt. Überschreitet das Klatschsignal die Referenzspannung wird
dies vom Controller als Signal interpretiert. Durch Betätigen des Tasters wird
der INT-Eingang des Controllers auf LOW gezogen und dadurch die Betätigung
registriert.
Der Eingang GP3 ist als Reseteingang (MCLR) geschaltet und wird über einen
Widerstand auf HIGH gehalten. An GP5 befindet sich eine LED zur Anzeige
unterschiedlicher Stati des Controllers. Über GP4 wird ein Relais zur Schaltung
von Lasten gesteuert.
Der Mikrocontroller befindet sich normalerweise im stromsparenden SLEEP-Modus.
Jedes Eingangssignal löst einen Interrupt aus. Nach der Auswertung der Ursache
werden entsprechende Flags und Variablen zur weiteren Bearbeitung durch das
Hauptprogramm gesetzt. Weiterhin wird Timer 1 genutzt, um zeitlich befristete
Vorgänge auf Interrupt Basis zu steuern (z.B. Entprellung Taster o. Leuchten
LED). Die Kommunikation zwischen Interrupt-Layer und Hauptprogramm erfolgt im
Wesentlichen über Flags und Variablen.
Das Hauptprogramm überprüft zum einen die Betätigung des Tasters, zum anderen
eingehende Klatschsignale. Zwischen den Signalen und nach dem zweiten Signal
ist eine Pause erforderlich. Ebenso dürfen die Signale nicht zu lange
auseinander liegen. Hierzu wird Timer 0 eingesetzt.
Der aktuelle Schaltzustand des Relais wird im EEPROM des Controllers
gespeichert und im Falle eines Stromausfalls bei der Initialisierung
ausgelesen.
3. Schaltplan
4. Stückliste
4. Quell- und Hexcode / Gerberdateien / Platine
Download des Quell- und Hexcodes für den PIC 12F629.
Download der Gerberdateien inkl. Bohrdaten für beidseitige Platine (57 mm x 55 mm).
Download des Platinenlayouts sowie Photos der fertigen Platine.
5. Kontakt