Arduino-Uno-Roboter zur Personenerkennung – Sensorintegration Schritt für Schritt
Benötigte Komponenten
- Arduino UNO
- Motor-Control-Shield (z. B. Adafruit Motor Shield V2 / L293D Shield)
- 4 × DC-Motor 12 V (Fahrwerk)
- SG90 Mikro-Servo (für Ultraschall-Sensor-Schwenk)
- HC-SR04 Ultraschallsensor (Hinderniserkennung)
- PIR-Sensor (7 m) (Personenerkennung via Infrarot)
- DHT11 (Temperatur & Luftfeuchte, Umgebungsmonitoring)
- 9 V Blockbatterie (Arduino-Stromversorgung)
- Jumper-Kabel, Chassis, Räder
Werkzeuge
- Multitool / Schraubendreher
- Lötkolben, Lötzinn, Lötflussmittel
- Heißklebepistole
Software & Apps
- Arduino IDE
- Windows 10 (Entwicklung)
- Control Center Android App (Bluetooth-Fernsteuerung / Datenempfang)
Projektbeschreibung
Entwicklung eines mobilen Rettungsroboters auf Arduino-Basis für Katastrophenszenarien (Erdbeben, Überschwemmungen). Der Roboter navigiert autonom, erkennt Hindernisse (Ultraschall) und detektiert lebende Personen via PIR-Sensor (passiver Infrarotsensor, erkennt Körperwärme ~10 µm Wellenlänge). Erkannte Personen werden per Bluetooth an eine Basisstation (Control Center App) gemeldet, damit Rettungsteams gezielt eingreifen können.
Sensorik & Logik
- PIR-Sensor an Pin A3: Erkennung von Wärmebewegungen. Kalibrierphase 30 s beim Start. Nach Erkennung LED an Pin A2 an. Timeout 5 s bis „Bewegung beendet“.
- HC-SR04 an A0/A1 (Trigger/Echo), auf Servo montiert: Scannt 45°–135° vorne. Kollisionsdistanz < 20 cm → Ausweichmanöver.
- Motoren über AFMotor-Library (PWM 1 kHz): Vorwärts, Rückwärts, Links/Rechts-Drehung, Stopp.
- Servo an Pin 9: Positioniert Ultraschall-Sensor für Scan.
Hauptprogrammablauf (loop)
checkPath(): Ultraschall-Scan via Servo. Bei Hindernis < COLL_DIST (20 cm) →checkCourse()(Rückwärts + Drehen). Bei < TURN_DIST (30 cm) →changePath()(Leichtes Ausweichen).- PIR-Abfrage: Bei HIGH → Bewegung erkannt → Log-Ausgabe + LED an. Bei LOW nach Pause → Bewegung beendet.
- Bluetooth-Datenversand an Control Center (im Code als Serial-Ausgabe vorbereitet).
Wichtige Parameter
MAX_SPEED 255,MAX_SPEED_OFFSET -8(Motor-Drift-Korrektur)COLL_DIST 20cm,TURN_DIST 30cmACT_TIME 250ms (Dauer Ausweich-/Drehmanöver)
Quellcode
Der vollständige Sketch (Human Detection.ino) nutzt Libraries: NewPing, AFMotor, Servo. Er implementiert Zustandsmaschine für Navigation, PIR-Event-Handling mit Entprellung/Timeout und Motorsteuerung mit Rampe (Soft-Start).
Hinweis: Code zu lang für vollständige Anzeige – bitte im Originalprojekt herunterladen.
Schaltpläne & Dokumentation
- Blockdiagramm: Sensoren ↔ Arduino ↔ Motor Shield ↔ Bluetooth
- Schaltplan: Detailverdrahtung aller Sensoren, Motoren, Servo, Stromversorgung
- Flussdiagramm: Systemablauf (Start → Kalibrierung → Hauptloop: Scan + PIR + Bluetooth)
Herstellungsprozess
- Microsoft Kinect mit Raspberry Pi integrieren für Echtzeit-Menschenerkennung am Sonbi Roboter
- Squid Game Puppe mit Arduino UNO bauen – Interaktives DIY-Projekt
- Temperatur- und Luftfeuchtedaten zwischen zwei Arduinos via Firebase übertragen
- RFID-Anwesenheitssystem mit Arduino & Python – Daten direkt in phpMyAdmin (XAMPP) speichern
- DIY Infrarot-Herzschlag-Sensor mit Arduino: Schritt-für-Schritt-Anleitung
- Android-gesteuertes Roboterfahrzeug mit Raspberry Pi Motor Shield
- Smart IoT-Glas bauen: Füllstand überwachen mit ESP8266, Arduino & Ultraschall
- Arduino UNO WiFi Webserver: LED per Browser steuern
- Echtzeit-Waldbrand-Überwachungssystem mit SMS-Alarm
- MAX30100 Puls-Sensor mit Arduino integrieren: Schritt-für-Schritt-Anleitung