Sofort-Alarm per SMS: Arduino Yun Einbruchmelder mit HC-SR04 & Twilio
Komponenten und Zubehör
| Arduino Yun (WiFi + Linux) | × | 1 |
| 9V Blockbatterie + Halter mit Schalter & Hohlstecker | × | 1 |
| Jumper-Kabel | × | 4 |
| HC-SR04 Ultraschall-Entfernungsmesser | × | 1 |
Apps & Online-Dienste
- Temboo (Cloud-Service für API-Choreos)
- Twilio SMS Messaging API
Über dieses Projekt
Ein simpler Einbruchmelder ohne Löten: Der HC-SR04 erkennt Bewegungen (Änderung der gemessenen Distanz), der Arduino Yun sendet via WLAN einen Temboo-Choreo-Aufruf an die Twilio API, die eine SMS versendet. Ca. 45 Min. Bauzeit, Kosten ~50–90 €.
Funktionsweise
- Sensor misst Distanz (in Zoll).
- Bei signifikanter Änderung (< 20" oder > 1000") → "Intruder Detected".
- Yun ruft Temboo Choreo
/Library/Twilio/SMSMessages/SendSMSauf. - Twilio sendet SMS an hinterlegte Nummer.
Schritt 1: Verdrahtung & Sensor-Test
Verdrahtung: VCC→5V, Trig→Pin 2, Echo→Pin 4, GND→GND. Test-Code (ohne SMS) aufspielen, Serial Monitor (9600 Baud) beobachten. Ausgabe: Distanz in Zoll. Bei Störung: "Intruder Detected!".
Schritt 2: Yun mit WLAN verbinden
Anleitung: Arduino Yun WiFi Setup. Verbindung prüfen per LAN-Scan (z. B. LanScan auf Mac).
Schritt 3: SMS-Funktionalität (Temboo + Twilio)
- Neuen Sketch in Arduino IDE, Code aus wirebeings.com kopieren.
- Neuer Tab:
TembooAccount.h(Header mit Account-Daten). - Twilio Account erstellen → Account SID, Auth Token, "From"-Nummer notieren.
- Temboo Account erstellen → Application Keys notieren.
- Alle Credentials in Sketch & Header eintragen.
- Empfänger-Nummer im Format
+1xxxxxxxxxxeintragen.
Schritt 4: Credentials einfügen
Im Hauptsketch: AuthToken, To, From, Body, AccountSID. In TembooAccount.h: TEMBOO_ACCOUNT, TEMBOO_APP_KEY_NAME, TEMBOO_APP_KEY.
Schritt 5: Fertig & Testen
9V-Batterie anschalten, Serial Monitor prüfen (Verbindung ~20 s). Schwellenwerte (< 20 / > 1100 Zoll) im Code an Umgebung anpassen. Erst mit Test-Code (ohne SMS) justieren, da kostenlose Temboo/Twilio-Kontingente begrenzt sind. Code verhindert >10 SMS pro Stromzyklus.
Code
Test-Code (ohne SMS)
#include <SoftwareSerial.h>
int trigPin = 2, echoPin = 4;
long duration, cm, inches;
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT);
delay(5000); Serial.println("Patrol Mode Initiated...");
}
void loop() {
digitalWrite(trigPin, LOW); delayMicroseconds(1);
digitalWrite(trigPin, HIGH); delayMicroseconds(2);
digitalWrite(trigPin, LOW);
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
inches = (duration / 2) / 74;
Serial.println(inches);
if (inches < 20 || inches > 1000) {
Serial.println("Intruder Detected!");
Serial.println("Sending text Notification...");
delay(5000);
Serial.println("Patrol Mode Initiated...");
}
}
Vollständiger Code (mit Twilio SMS via Temboo)
#include <Bridge.h> #include <Temboo.h> #include "TembooAccount.h"
#include <SoftwareSerial.h>
int numRuns = 1, maxRuns = 5;
int trigPin = 2, echoPin = 4;
long duration, inches;
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT);
delay(5000); Bridge.begin();
Serial.println("Patrol Mode Initiated...");
}
void loop() {
digitalWrite(trigPin, LOW); delayMicroseconds(1);
digitalWrite(trigPin, HIGH); delayMicroseconds(2);
digitalWrite(trigPin, LOW);
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
inches = (duration / 2) / 74;
Serial.println(inches);
if (inches < 20 || inches > 1100) {
Serial.println("Intruder Detected! Sending text Notification...");
if (numRuns <= maxRuns) {
Serial.println("Running SendSMS - Run #" + String(numRuns++));
TembooChoreo SendSMSChoreo;
SendSMSChoreo.begin();
SendSMSChoreo.setAccountName(TEMBOO_ACCOUNT);
SendSMSChoreo.setAppKeyName(TEMBOO_APP_KEY_NAME);
SendSMSChoreo.setAppKey(TEMBOO_APP_KEY);
SendSMSChoreo.addInput("AuthToken", "DEIN_TWILIO_AUTH_TOKEN");
SendSMSChoreo.addInput("To", "+14125236422");
SendSMSChoreo.addInput("From", "+14123608633");
SendSMSChoreo.addInput("Body", "Intruder Detected!!!!!!");
SendSMSChoreo.addInput("AccountSID", "DEINE_TWILIO_ACCOUNT_SID");
SendSMSChoreo.setChoreo("/Library/Twilio/SMSMessages/SendSMS");
SendSMSChoreo.run();
while(SendSMSChoreo.available()) Serial.print(SendSMSChoreo.read());
SendSMSChoreo.close();
}
Serial.println("Waiting..."); delay(10000);
Serial.println("Patrol Mode Initiated...");
}
}
Schaltplan

Herstellungsprozess
- Sensordaten in Raspberry Pi integrieren: GPS & MPU-9150 Hands-On Guide
- Line-Tracking-Sensor mit Raspberry Pi – Einfacher KY-033 Tür/Line Detektor
- Robuste Temperatur- & Sensor-API auf Raspberry Pi mit GY-91 Modul bauen
- Sicheres Home Monitoring mit Home Assistant auf Raspberry Pi: Bewegung, Alarm & Video-Capture
- Headless Raspberry Pi 2 Wasser-Alarm mit Adafruit T‑Cobbler Plus bauen
- HC-SR04 Ultraschallsensor an Raspberry Pi anschließen – Praktischer Leitfaden
- Automatisiertes Aeroponik-System mit Raspberry Pi und Feuchtigkeitssensor bauen
- Raspberry Pi GPIO meistern: PIR-Bewegungsmelder an B+/Model 2 anschließen
- Acconeer A111 Pulsradar mit Raspberry Pi integrieren: Praktischer Leitfaden
- HC-SR501 PIR-Bewegungssensor an Raspberry Pi anschließen, kalibrieren und programmieren