Berührungsloses Gesten-Schloss: Sicherer Zugang mit APDS-9960 & Arduino
Bauteile
| Komponente | Anzahl |
|---|---|
| SparkFun APDS-9960 (Geste/Annäherung) | 1 |
| Arduino UNO (nur UNO oder Micro 3,3 V funktionieren) | 1 |
| RGB-LED (gemeinsame Kathode) | 1 |
| LCD 16×2 (weiß auf blau) | 1 |
| Widerstand 4,75 kΩ | 2 |
| Steckdrähte | 1 Set |
| Widerstand 1 kΩ | 1 |
Software
- Arduino IDE
- Bibliotheken:
Wire.h,SparkFun_APDS9960.h,LiquidCrystal.h,Servo.h
Funktionsprinzip
Der APDS-9960 erkennt Gesten (Hoch, Runter, Links, Rechts). Ein vordefinierter Gesten-Code („Passwort“) entriegelt per Servo einen Mechanismus. LCD zeigt Status, RGB-LED signalisiert Richtig/Falsch.
Aufbau
- LCD anschließen (Kontrast: 1 kΩ von Vo nach GND, falls kein Potentiometer da).
- APDS-9960: SDA/SCL über je 4,7 kΩ auf 3,3 V pullen, dann an A4/A5 (UNO). INT an Pin 2 (Interrupt).
- RGB-LED: Rot an A1, Grün an A2 (PWM), Kathode an GND.
- Servo an Pin 9.
- Stromversorgung: 9 V Block mit DC-Hohlstecker oder USB.
Gehäuse
Einfacher Karton mit Aussparungen für Sensor, LCD, LED. Alternativ Lochrasterplatine für festen Einbau.
Code-Highlights
- Passwort-Array:
String secret[6] = {"UP","DOWN","UP","UP","RIGHT","LEFT"}; - Interrupt-Routine setzt Flag bei Gesten-Erkennung.
- Zustandsautomat (
pageNum): 0=Warten auf Annäherung, 1=Code-Eingabe, 2=Entriegelt. - Fehlerhafte Geste → rotes Blinken, zurück zu Start.
- Erfolg → Servo 90°, grünes Blinken, nach 16 s wieder verriegeln.
// Wichtige Funktionen:
void handleGesture() { /* liest APDS, setzt currentGesture */ }
void interruptRoutine() { isr_flag = 1; }
void enter() { servo.write(90); /* 16 s Countdown */ servo.write(0); }
Hinweise
- APDS-9960 verträgt nur 3,3 V – Level-Shifter (Widerstände) zwingend beim UNO.
- Nicht mit Nano oder Mega 2560 getestet (funktionierte nicht).
- Gesten-Passwort im Code anpassbar (nur UP, DOWN, LEFT, RIGHT, NEAR, FAR).
Herstellungsprozess
- Die Evolution und Fertigung moderner Stiftschloss-Zylinderschlösser
- Zahlenschloss: Design, Fertigung und historische Entwicklung
- Smart Thirst Alert: DIY Pflanzen-Alarm für optimale Bewässerung
- Italienische Word Clock mit Arduino Nano, NeoPixel, LCD & RTC
- Arduino-Pins sparen: 4x3 Tastenfeld mit nur 3 Anschlüssen verbinden
- Zuverlässiger Sigfox-kWh-Zähler mit Arduino MKR Fox 1200
- Bluetooth-Temperaturmonitor mit Arduino Nano
- Arduino Nano Begleiter-Set – Essentielle Bauteile & Werkzeuge für DIY-Elektronik
- Isolierter Analogeingang für Arduino: Spannung/Strom galvanisch trennen
- Präziser Reaktionszeit-Test mit Arduino UNO