Türöffnungs-Alarme per Gmail mit Arduino Uno senden – Einsteiger-Anleitung
Komponenten und Materialien
| Komponente | Menge |
|---|---|
| Arduino UNO | 1 |
| PHPoC Shield für Arduino | 1 |
| Magnetsensor (Reed-Kontakt, zweiteilig: Sensor + Magnet) | 1 |
Über dieses Projekt
Wenn du Einsteiger bist, lerne hier die Grundlagen von WLAN und Sensoren mit Arduino – siehe Tutorials zu Wifi and Arduino und Door Sensor.
In diesem Tutorial zeige ich, wie du ein Türöffnungs-Ereignis erkennst und eine Benachrichtigung via Gmail mit einem Arduino Uno versendest. Speziell für Einsteiger gemacht – es ist wirklich einfach!
Türöffnungs-Erkennung
Der Magnetsensor besteht aus zwei Teilen: Sensor und Magnet. Befinden sich beide in Nähe, ist der Ausgangspin HIGH, andernfalls LOW. Ein Teil wird am Türblatt, der andere am Türrahmen montiert. Durch Auslesen des Ausgangspins lässt sich erkennen, wann die Tür geöffnet wird – und dann einen Alarm oder eine Benachrichtigung auslösen.
Ereignisbehandlung
Bei einem Ereignis wird eine Benachrichtigung per Gmail versendet.
Benötigte Bibliotheken
Der Code nutzt zwei Libraries: PHPoC und Button (ezButton).
Das beste Arduino Starter Kit für Einsteiger
Suchst du ein Arduino-Kit? Siehe The Best Arduino Kit for Beginners.
Funktionsreferenzen
- loop()
- setup()
- Serial.begin()
- Serial.println()
- delay()
- for-Schleife
- while-Schleife
- if-else
- String.toInt()
Quellcode
#include <Phpoc.h>
#include <ezButton.h>
PhpocEmail email;
ezButton button(A0); // Button-Objekt an Pin A0
void setup() {
Serial.begin(9600);
Phpoc.begin(PF_LOG_SPI | PF_LOG_NET | PF_LOG_APP);
// Phpoc.beginIP6(); // Auskommentieren für IPv6
button.setDebounceTime(100); // Entprellzeit 100 ms
}
void loop() {
button.loop(); // Muss zuerst aufgerufen werden
if (button.isPressed()) { // Tür geöffnet
email.setOutgoingServer("smtp.gmail.com", 587);
email.setOutgoingLogin("Google ID", "Google Password");
email.setFrom("Gmail-Adresse", "Absender-Name");
email.setTo("Empfänger-E-Mail", "Empfänger-Name");
email.setSubject("Tür geöffnet. [#905]");
email.beginMessage();
email.println("#905");
email.println("");
email.println("Tür ist geöffnet.");
email.endMessage();
if (email.send() > 0)
Serial.println("Ihre E-Mail wurde erfolgreich gesendet");
else
Serial.println("E-Mail konnte nicht gesendet werden");
}
else if (button.isReleased()) { // Tür geschlossen
// Analog dazu Code für Schließ-Benachrichtigung einfügen
}
}
PHPoC Library für Arduino
Diese Library kommuniziert mit dem PHPoC Shield für Internetzugang und enthält die Gmail-Funktionalität. Installation: https://www.phpoc.com/support/manual/phpoc_shield_for_arduino/ | GitHub
Schaltplan & Verkabelung
- PHPoC Shield auf Arduino Uno stecken
- LAN-Kabel oder USB-WLAN-Dongle am Shield anschließen für Ethernet/WLAN
- Verkabelung Arduino ↔ Sensor:
5V → roter Pin
A0 → schwarzer Pin


Herstellungsprozess
- K30 CO₂-Sensor: Echtzeit-Luftqualitätsmessung mit Arduino
- Digitales Stadiometer bauen: Körpergröße messen mit Arduino & Lasersensor VL53L0X
- DFRobot Kapazitiver Fingerabdrucksensor mit Arduino oder ESP8266 einbinden
- Sensorturm mit Arduino Cloud: Temperatur, Bewegung & Gase überwachen
- Intelligente, bewegungsaktivierte Wasserpistole mit Arduino Nano
- Berührungsloses Temperatur-Überwachungstor für schnelles Screening
- Arduino UNO & WiFi Shield: Echtzeit-Temperaturanzeige im Web via Serial
- Smartes Temperatur-Monitoring für Schulen – Arduino, Raspberry Pi, Sigfox & ThingSpeak
- Kompaktes Arduino-Radar mit HC-SR04 Ultraschallsensor & 1,8″ Display
- Kapazitiver Touch-LED-Schalter mit Arduino UNO – Einfaches DIY-Projekt