Wir basteln uns eine kleine Arduino Alarmanlage

Heute habe ich mein lang ersehntes Arduino Starter-Kit erhalten das mir die Firma RS Components freundlicherweise zur Verfügung gestellt hat. Dieses Starter-Kit beinhaltet alles was man für den einfachen Einstieg in das Thema Arduino und Elektronik braucht. Mit diesem Kit ist es möglich, selbst wenn man noch nie etwas mit Arduino zu tun gehabt hat, schon nach wenigen Minuten brauchbare Ergebnisse zu erzielen.

Arduino Alarmanlage

In diesem kleinen Beitrag möchte ich euch nun zeigen, wie man mit einem Arduino und nur 3 Komponenten, die allesamt im Starter-Kit von RS Components enthalten sind, eine kleine Alarmanlage auf Basis eines Kippsensors aufbaut. Ziel ist es für ca. 5 Sekunden einen pulsierenden Alarmton über einen Piezo buzzer (Summer) auszugeben, sobald eine Erschütterung über den Tiltsensor (Kippsensor) registriert wird.

benötigte Hardware

  • Breadboard
  • Piezo buzzer (Summer)
  • Tiltsensor (Kippsensor)
  • 2 x 330kOhm Widerstand

 

Aufbau

Wir nehmen uns das Breadboard und verbinden +5V und GND vom Arduino mit der entsprechenden Reihe auf dem Breadboard. Also die rote Reihe mit +5V und die blaue Reihe mit GND.
Der mitgelieferte Kippsensor löst bereits bei kleinen Erschütterungen aus, wobei die vier Bewegungsrichtungen Vorwärts, Rückwärts, links und rechts erkannt werden. Ein horizontales Kippen wird also genauso detektiert wie ein Kippen oder eben Erschütterungen in vertikaler Richtung.

Der Kippsensor verfügt über 4 Beinchen, wobei jeweils zwei intern verbunden sind. Wir benutzen die zwei Beinchen links und rechts von der im Gehäuse des Sensors eingearbeiteten Nut. Das linke Beinchen verbinden wir direkt mit GND. Das rechte Beinchen wird mit dem digitalen Pin 8 am Arduino und zusätzlich über einen 330kOhm Widerstand mit +5V verbunden.

Nun benötigen wir ein Gerät das uns anzeigt dass eine Erschütterung stattgefunden hat. Dazu könnte man eine LED, ein Display oder irgendein anderes Ausgabegeräte nutzen. In unserem Fall werden wir einen Piezo buzzer verwenden. Dieser ist, wie bereits angesprochen, im Starter Kit enthalten und äußerst einfach zu verwenden.

Der Piezo buzzer verfügt über zwei Beinchen. Eins verbinden wir mit dem digitalen Port 6 am Arduino und das andere mit einem 330kOhm-Widerstand direkt an GND. Kaum zu glauben, aber das war schon alles. Nun geht es ans programmieren des Arduino.

Arduino-Sketch

 

Bemerkungen zum Arduino Sketch

  • void setup() wird einmalig aufgerufen wenn der Arduino an die Stromversorgung angeschlossen oder der Reset-Knopf gedrückt wird.
  • In void setup() werden als erstes der Piezo buzzer als Ausgang und der Tieltsensor als Eingang deklariert.
  • Darüber wurden den beiden Komponenten die digitalen Pins zugewiesen, mit denen sie am Arduino verbunden wurden.
  • Die Variable titlvalue ändert sich immer dann wenn sich der Wert des tiltsensors ändert. Das heißt, wenn der Tiltsensor auslöst, ist der Wert von tiltvalue HIGH sonst LOW. Ausgelesen wird der Wert des tiltsensors mit digitalRead.
  • void loop() wird nach void setup() so lange aufgerufen bis der Arduino von der Stromversorgung getrennt wird.
  • Es wird ständig der Status des Tiltsensors geprüft und in tiltvalue gespeichert.
  • Wenn der Tiltsensor eine Bewegung registriert, ändert sich der Wert von tiltvalue zu HIGH, womit die nächste Abfrage zutrifft und die nachfolgenden Anweisungen ausgeführt werden.
  • In der inneren Schleife wird einmalig ein ansteigender Ton abgespielt. Dabei kann die Frequenz des Tones über delayMicroseconds angepasst werden. In meinem Fall nehme ich einfach den Wert von i der aufsteigend einen Wert von 0 bis 500 annimmt und multipliziere diesen mit 2. Das bedeutet, dass die Frequenz in 500 Schritten kontinuierlich ansteigt und mit digitalWrite(buzzer, HIGH) ausgegeben wird.
  • Diese Schleife wird durch die äußere Schleife 10 mal hintereinander abgespielt.
  • Um den Alarmton bei erkannter Erschütterung nun kürzer oder länger ertönen zu lassen, muss man lediglich die Zahl 10 in der Zeile „for (int a=0; a<10; a++)“ an seine Bedürfnisse anpassen.

 

Fazit

Ihr seht wie einfach es ist mit nur wenigen Mitteln tolle Ergebnisse zu erzielen. Wer als Anfänger einen schnellen Einstieg finden will, ist mit dem Arduino-Starter-Kit von RS Components bestens bedient.

Über fluuux

Programmierer, Webdesigner, Grafiker, Blogger, Screencaster, Arduino- und eMobility Enthusiast.

2 Kommentare zu “Wir basteln uns eine kleine Arduino Alarmanlage

  1. Hallo Enrico,
    nach gestern und heute und dem Durchstöbern deiner Seite hier, bin ich zu dem Entschluß gekommen, ich brauche einen Arduino. Weil ich habe hier ein paar Ideen für mein Hobby gefunden, dem Angeln. Ich möchte zwei verschiedene Schaltungen (in Einem) bauen, zum einen unter Nutzung der 433Mhz Bausteine (drei Stück liegen vor mir) und einem Erschütterungssensormodul (oder wie hier der Neigungssensor) Ausgang 5V (TTL)! An die Angelruten kommt der Erschütterungssensor und der Sender (Schaltung wie deine ATtiny Schaltung) im Angelzelt müsste dann eine Schaltung sein, wie bei dem Empfänger in deinem Beitrag zum Funksignal433Mhz, aber wie sieht die aus, will ja nicht den Arduino da dran lassen. Außerdem möchte ich das ein Piep oder abschwellender Alarmton mich ggf. weckt, mittels passiven oder aktiven Pizzo! Der Empfängerkasten müsste also wie folgt aufgebaut sein, zwei Empfänger für jeweils eine Angelrute und der dritte Empfänger für eine Überwachung mittels IR-Bewegungsmelder, mit dem Alarmton und je einer LED, damit ich weiß was und warum es gerade piept. Nun meine Bitte, hast Du einen Plan, wie ich das schalte, heißt, welchen Schaltkreis brauch ich, wie schalte ich das und natürlich wie programmiere ich das? Hast Du einen Plan, kannst Du mir helfen, ich wäre dir sehr dankbar!
    Achso die ganze Sache soll zum einen als Bissanzeiger und vor allem als Diebstahlschutz dienen!
    LG Thomas

  2. Achso vergessen noch wichtig,
    es sollte bei den beiden Sendern mit dem Erschütterungssensor eine 1 zu 1 Übertragung sein, dh. wie die Bewegung am Erschütterungssensor so soll der Empfänger piepen, die LED´s natürlich im gleichen Takt. Beim IR-Sensor soll es dagegen eine kleine Weile piepen, zum Beispiel 10sek. Ich hoffe ich konnte mein Anliegen klar genug erklären!? Ich hoffe Du kannst mir helfen!?
    Sollte das für diesen Blog zu umpfangreich sein, auch gerne per Mail!
    LG Thomas