Motorrad-Diebstahlschutz mit biometrischem Fingerabdrucksensor
Komponenten & Zubehör
| Arduino Pro Mini (5 V / 16 MHz) | 1 |
| Fingerabdrucksensor FPM10A (optisch, TTL-Serial) | 1 |
| Relaismodul (z. B. 5 V, 1 Kanal) | 1 |
| Spannungsreglermodul (z. B. 5 V / 3,3 V für Sensor) | 1 |
Werkzeuge
- Lötkolben & bleifreies Lötzinn
- Isolierband
- Flachzange
Software
- Arduino Web Editor (oder Arduino IDE)
- Adafruit Fingerprint Library
Projektbeschreibung
Angesichts häufiger Motorrad-Diebstähle wurde ein Diebstahlschutz entwickelt, der das Motorrad per Fingerabdruck entsperrt. Ein Arduino Pro Mini steuert den FPM10A-Sensor und schaltet über ein Relais die Zündung oder den Anlasser frei. Nur registrierte Fingerabdrücke aktivieren das Relais.
Das System läuft autark, benötigt keine Cloud-Verbindung. Die Adafruit-Library übernimmt Kommunikation, Enrollment und Matching. Im Code wird beim Erkennen eines gültigen Fingers der Relaiszustand getoggelt (Ein/Aus). LEDs (Rot/Grün/Blau) geben Statusrückmeldung.
Aufbau & Verkabelung
- Sensor TX (grün) → Arduino Pin 2 (SoftwareSerial RX)
- Sensor RX (weiß) → Arduino Pin 3 (SoftwareSerial TX)
- Relais → Pin 7
- Status-LEDs: Blau (Pin 4), Grün (Pin 5), Rot (Pin 6)
- Stromversorgung: 5 V über Spannungsregler vom Motorrad-Bordnetz (12 V).
Der Schaltplan zeigt die kompakte Verdrahtung.
Quellcode (Kernlogik)
#include <Adafruit_Fingerprint.h>
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // RX, TX
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);
int relaisPin = 7;
int ledBlau = 4, ledGruen = 5, ledRot = 6;
bool zustand = false; // Relais aus = Motor gesperrt
void setup() {
pinMode(relaisPin, OUTPUT); digitalWrite(relaisPin, HIGH); // Relais aus (active low)
pinMode(ledBlau, OUTPUT); pinMode(ledGruen, OUTPUT); pinMode(ledRot, OUTPUT);
mySerial.begin(57600);
finger.begin(57600);
// Sensor-Check optional
digitalWrite(ledBlau, HIGH); delay(100); digitalWrite(ledBlau, LOW);
digitalWrite(ledRot, HIGH); // Warten auf Finger
}
void loop() {
if (getFingerprintIDez() != -1) {
zustand = !zustand;
digitalWrite(relaisPin, !zustand); // Relais schalten
digitalWrite(ledGruen, zustand);
digitalWrite(ledRot, !zustand);
delay(500); // Entprellung
}
delay(50);
}
int getFingerprintIDez() {
uint8_t p = finger.getImage();
if (p != FINGERPRINT_OK) return -1;
p = finger.image2Tz();
if (p != FINGERPRINT_OK) return -1;
p = finger.fingerFastSearch();
if (p != FINGERPRINT_OK) return -1;
return finger.fingerID; // Gültiger Finger erkannt
}
Erweiterungsideen
- Mehrere Nutzer (bis 127 Fingerprints im Sensor speicherbar).
- Zusatz: GPS-Tracker, GSM-Modul für Alarm-Benachrichtigung.
- Einbau in Lenkkopfverkleidung für unsichtbare Integration.
Herstellungsprozess
- TinyML Spracherkennung mit Edge Impulse auf Arduino Nano 33 BLE Sense
- Arduino Digitaler Würfel: LCD-Würfel mit Zufallszahlen (1–6)
- Multi-Position Temperatursensor-System für Smart-Home-Integration
- 37-LED-Roulette-Spiel mit Arduino Nano bauen – Europäisches Layout
- River Health Monitor: Arduino-basiertes Wasserqualitäts-Messsystem
- ATtiny85 Mini-Arcade: Snake – Handheld OLED-Spielekonsole selbst bauen
- Tragbarer Entfernungsmesser – Arduino Nano DIY-Kit mit HC-SR04, 18650-Akku und 3D-gedrucktem Gehäuse
- Kupfer-Galvanik-Projekt: Intelligentes System mit Arduino UNO bauen
- NeoPixel-Matrix Pong auf Arduino Nano: Neon-Pong selbst bauen
- Arduino Nano Wetterstation: Sensor-Kit & OLED-Display