Arduino: Einstieg in die Microcontroller-Welt mit dem Bewegungsmelder-Sensor HC-SR501

In diesem Artikel und Projekt möchten wir euch zeigen, wie ihr ganz einfach ein Arduino Bewegungsmelder selbst realisieren könnt.

Das werden wir umsetzen, in dem wir über ein Sensor versuchen, „Bewegungen“ im Raum zu erkennen und einen akustischen Alarmton ausgeben.

Als Sensor für unseren Bewegungsmelder nutzen wir dafür den Bewegungs-Sensor HC-SR501!

Vorweg: Der Arduino hat mit dem Raspberry Pi nicht viel gemeinsam – obwohl beide als Konkurrenten in der DIY-Welt dargestellt werden. Der Arduino ist eine Microcontroller-Plattform, bestehend aus Software und Hardware, wobei der Microcontroller auf ein praktisches Board(mit Pins) integriert ist. Der Raspberry Pi hingegen ist kompakter „Mini-Computer“, also mit Betriebssystem und „PC-Anschlüssen“ wie Ethernet, USB, HDMI und so weiter. All das ist beim Arduino nicht gegeben! Der Arduino kommt eher aus der Welt der Elektronik, wo es darum geht, über eine „zentrale Steuerungseinheit“ verschiedene Komponenten zur vernetzen und zu steuern.

Unbemerkt verstecken sich Microcontroller in allen möglichen (elektronischen)Alltagsgegenständen: Waschmaschine, Radio, Fernsehgeräte,Autos, Uhren… Daher bietet der Arduino im Gegensatz zum Raspberry Pi die Möglichkeit, auch analoge Signale zu verarbeiten. Aber auch preislich gibt es einige Unterschiede: Ein Arduino Nano gibt es im Internet schon ab 1 EUR.

Alles zum Thema Arduino findet ihr auf der Webseite. Wie angedeutet, bietet Arduino auch gleich eine integrierte Entwicklungsumgebung – die Arduino IDE, die ihr hier findet. Die Programmierung erfolgt mit einer abgespeckten (objektorientierten)Version von C++(Wikipedia-Artikel) statt – für einfache Projekte kann auch C-like(prozedural) programmiert werden.

Wie Ihr auf der Seite von Arduino sehen werdet, bietet Arduino Boards in verschiedenen Größen und Preisklassen. Wir werden hier mit dem Standard-Board Arduino Uno Rev3 arbeiten – ihr könnt natürlich auch ein dazu „kompatibles“ günstigeres Board nehmen.
Wichtig ist nur, das ein Atmel Mega 328P Microcontroller auf dem Board eingebaut ist.

Und was kann ich mit dem Arduino machen?

Gute Frage! Alles ausser Youtube-Videos gucken – aber wer will das schon…grins 🙂

Daher hier ein Paar Links für euch:

D.h., mit dem Arduino könnt ihr so einiges anstellen: Vom eigenen Roboter bis zur Gamer-Console und Arduino Bewegungsmelder.

Diese Hardware benötigt Ihr für den Arduino Bewegungsmelder:

WARENKORB

Alle für dieses Projekt notwendigen Artikel landen mit einem Klick auf den Button direkt in deinem Warenkorb, sofern sie in unserem Shop verfügbar sind. Kontrolliere daher deinen Warenkorb genau!

Vorbereitungen

Zunächst müsst ihr auf eurem Rechner(Windows, Mac, Linux) die Arduino Entwicklungsumgebung Arduino IDE installieren – zu finden unter https://www.arduino.cc/en/Main/Software.

Die Installation ist nicht allzu kompliziert und im Internet findet ihr auch nochmal Anleitungen dazu. Daher werden wir hier die Installation nicht näher erläutern.

Die Hardware: der Arduino Uno Rev3

HC-SR501 PIR Sensor – Infrarot Bewegungsmelder

Der HC-SR501 PIR Sensor ist ein einfacher Infrarot-Bewegungsmelder, den man recht einfach für die eigenen Bedürfnisse und Raumumgebungen hardwareseitig anpassen/konfigurieren kann.

Time Delay AdjustEinstellung wie lange der Ausgang(Output Pin) nach einer
erkannten Bewegung ein HIGH-Signal ausgegeben wird. 5 – 200
Sekunden
Sensitivity AdjustReichweite (einstellbar): 3 – 7 Meter
Trigger SelectionJumper-Einstellung, ob der Bewegungssensor mehrmals
ausgelöst werden soll

Weitere Informationen zum HC-SR501 PIR Sensor und wie man ihn “anpasst” findet ihr beispielsweise unter dem Link http://henrysbench.capnfatz.com/henrys-bench/arduino-sensors-and-input/arduino-hc-sr501-motion-sensor-tutorial/ .

Schaltplan für Arduino Bewegungsmelder

Zum Schaltplan ist nicht viel zu sagen. Der HC-SR501 PIR Sensor meldet sich über Pin 7 mit einem HIGH-Signal, wenn er eine Bewegung erkennt. Und der aktive Buzzer für die akustische Alarmausgabe wird über Pin 11 gesteuert.

Der fertige Aufbau

Die Arduino IDE: compilieren und hochladen des Quellcodes

Nun wollen wir das dazugehörige Programm bzw. Quellcode(auch Sketch genannt) compilieren und auf den Arduino „hochladen“(Upload).

Bevor wir die Arduino IDE aufrufen, verbindet den Arduino mit einer entsprechenden USB-Kabel mit eurem Rechner.

Ruft die Arduino IDE auf und legt einen neuen Sketch an: Menu Neu | Datei. Speichert es und vergebt einen Namen. Fügt folgenden Quellcode/Sketch im Editor ein.

#define pirSensorPin 7
#define Activebuzzer 11

// Globale Variablen
int statusPirSensor = 0;
bool motionState = false;// init. Bewegungsstatus

//setup: Arduino und Umgebung initialisieren
void setup() {
  // Setup I/O STatus für Pins
  pinMode(Activebuzzer, OUTPUT);
  pinMode(pirSensorPin, INPUT);
}

//loop Funktion: Komplette Logik für den Microcontroller
void loop() {
  // Wir lesen den pirSensorPin ein
  statusPirSensor = digitalRead(pirSensorPin);

  if (statusPirSensor == HIGH) {
    // Bewegung erkannt
    tone(Activebuzzer, 440, 800);//Ausgabe Ton A für 800 ms
    // Update Variable motionState
    if (motionState == false) {
      motionState = true;
    }
  }
  // Keine Bewegung erkannt (pirSensorPin = LOW)
  else {
    noTone(Activebuzzer);//Eigentlich nicht notwendig
    if (motionState == true) {
      motionState = false;
    }
  }
  delay(10);//extra Verzögerung für die loop-Funktion
}

Das ganze sollte bei euch wie folgt aussehen:

Jetzt können wir unser Sketch überprüfen und compilieren lassen. Klickt in der Symbolleiste auf das Häkchen-Symbol und wartet bis die unten die Meldung „Der Sketch verwendet…“ erscheint. Dann ist alles OK.

Und können nun endlich, wenn alles gut gelaufen ist, unser Programm/Sketch auf den Arduino hochladen.

Klickt in der Symbolleiste auf das 2. Symbol mit dem Pfeil nach rechts. Beim Hochladen sollten die LED‘s auf den Arduino-Board anfangen zu blinken und unten in der Arduino IDE die Nachricht „Der Sketch verwendet…“ erscheinen. Wenn die Nachricht erscheint, habt ihr es geschafft!

Nun könnt ihr die Funktionsweise des Bewegungsmelders überprüfen.

Und wenn ihr den Arduino Bewegungsmelder losgelöst vom PC und USB-Kabel betreiben wollt, könnt ihr über die externe 9V-Stromversorgung des Arduino und einem Adapterkabel 9V Batterieclip eine 9V-Baterie – statt der USB-Kabel – einsetzen.

Wir wünschen euch viel Spaß mit diesem Projekt!

Wir hoffen das Bewegungsmelder Projekt mit dem Bewegungssensor HC-SR501 hat euch Spaß gemacht. Mit Hilfe des Sensors und dieses Tutorials könntet Ihr beispielsweise eine Alarmanlage bauen. Alle benötigten Teile für das Projekt findet Ihr auch in unserem BerrBase -Shop!

Euer BerryBase-Team!

Fllas du dich für das Thema Arduino interessierst, schaue dir hier unsere weiteren Artikel an.

Die mobile Version verlassen