Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

WLAN-Türschloss mit Arduino & ESP8266 – Per Smartphone entsperren

Komponenten und Zubehör

BauteilAnzahlHinweis
Arduino UNO R31Hauptcontroller
ESP8266 WiFi-Modul (z. B. ESP-01)1Mit PCB-Antenne
Darlington-Leistungstransistor (z. B. TIP120)1Für Solenoid-Ansteuerung
Tür-Solenoid (12 V, Hub ~35 mm)1Schlossmechanismus
Widerstände, Jumper-Kabel, Steckbrettnach Bedarf

Benötigte Software

Projektbeschreibung

Dieses Tutorial zeigt, wie man ein Arduino-basiertes Smart-Türschloss baut, das per Smartphone entsperrt wird. Ein QR-Code an der Tür führt zu einer Web-Login-Seite, die vom ESP8266 gehostet wird. Nach korrekter Passworteingabe aktiviert der Arduino das Solenoid-Schloss.

WLAN-Türschloss mit Arduino & ESP8266 – Per Smartphone entsperren

Vorteile dieses Ansatzes

Schaltung

WLAN-Türschloss mit Arduino & ESP8266 – Per Smartphone entsperren

Wichtige Verbindungen:

Programmierung

1. Arduino-Code (Solenoid-Steuerung)

Empfängt Passwort per Serial vom ESP8266, prüft es und schaltet Pin 9 für 300 ms HIGH.

String inputString = "";
bool stringComplete = false;

void setup() {
  Serial.begin(115200);
  inputString.reserve(200);
  pinMode(9, OUTPUT);
}

void loop() {
  if (stringComplete) {
    if (inputString == "your_password") {  // Passwort hier anpassen!
      digitalWrite(9, HIGH);
      delay(300);
      digitalWrite(9, LOW);
    }
    inputString = "";
    stringComplete = false;
  }
}

void serialEvent() {
  while (Serial.available()) {
    char inChar = (char)Serial.read();
    inputString += inChar;
    if (inChar == '\n') stringComplete = true;
  }
}

2. ESP8266-Code (Webserver & Login-Seite)

Hostet eine einfache HTML-Seite mit Passwortfeld. Bei Klick auf „Log In“ wird das Passwort per GET an /save gesendet und per Serial an den Arduino weitergeleitet.

#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>

const char* ssid = "YourSSID";
const char* password = "YourPASSWORD";

ESP8266WebServer server(80);
char htmlResponse[3000];

void handleRoot() {
  snprintf(htmlResponse, 3000,
    "<!DOCTYPE html><html><head>"
    "<style>body{background:#a00035;}h3,p,div{color:white;text-align:center;}"
    "input{text-align:center;}</style>"
    "<meta charset='utf-8'><meta name='viewport' content='width=device-width, initial-scale=1'>"
    "</head><body>"
    "<h3>Electropeak Smart Security Door</h3>"
    "<p>Please type your ID</p>"
    "<div>ID: <input type='text' name='pass_word' id='pass_word' size=10 autofocus></div>"
    "<div><br><button id='save_button'>Log In</button></div>"
    "<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js'></script>"
    "<script>"
    "$('#save_button').click(function(e){"
    " e.preventDefault();"
    " var pass = $('#pass_word').val();"
    " $.get('/save?pass=' + pass);"
    "});"
    "</script></body></html>");
  server.send(200, "text/html", htmlResponse);
}

void handleSave() {
  if (server.arg("pass") != "") {
    Serial.println(server.arg("pass"));  // An Arduino senden
  }
}

void setup() {
  Serial.begin(115200);
  delay(10);
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500); Serial.print(".");
  }
  Serial.println("\nWiFi connected");
  Serial.println("IP address: "); Serial.println(WiFi.localIP());
  
  server.on("/", handleRoot);
  server.on("/save", handleSave);
  server.begin();
  Serial.println("HTTP server started");
}

void loop() {
  server.handleClient();
}

ESP8266 in Arduino IDE einrichten

  1. Datei → Voreinstellungen → Zusätzliche Boardverwalter-URLs: https://arduino.esp8266.com/stable/package_esp8266com_index.json
  2. Werkzeuge → Board → Boardverwalter → „esp8266“ installieren
  3. Board: „Generic ESP8266 Module“ wählen
  4. USB-zu-TTL-Converter anschließen, richtigen COM-Port wählen, hochladen

Inbetriebnahme

  1. Beide Codes hochladen (Arduino per USB, ESP8266 per TTL-Converter)
  2. Seriellen Monitor der Arduino IDE öffnen (115200 Baud)
  3. IP-Adresse des ESP8266 notieren (wird beim Start ausgegeben)
  4. Im Browser IP eingeben → Login-Seite erscheint
  5. Passwort eingeben → Solenoid aktiviert sich für 300 ms
WLAN-Türschloss mit Arduino & ESP8266 – Per Smartphone entsperren

QR-Code erstellen

  1. Online-QR-Generator nutzen (z. B. qr-code-generator.com)
  2. IP-Adresse des ESP8266 (z. B. https://192.168.1.42) eingeben
  3. QR-Code erstellen, ausdrucken, an der Tür anbringen
WLAN-Türschloss mit Arduino & ESP8266 – Per Smartphone entsperren

Nutzung: Besucher verbindet sich mit dem WLAN, scannt QR-Code, gibt Passwort ein → Tür öffnet sich.

Weiterentwicklungsideen

Quelle

Original-Tutorial auf ElectroPeak – weitere Projekte dort verfügbar.

Herstellungsprozess

  1. Banktresore: Geschichte, Design und Zukunft der Sicherheit
  2. WLAN-gesteuerter Raspberry Pi Roboter mit Python bauen – Schritt-für-Schritt
  3. Monitor-Ambilight selbst bauen mit Arduino Nano & WS2812B LEDs
  4. Sicheres Arduino RFID-Schloss bauen – Schritt-für-Schritt-Anleitung
  5. Intelligente Jalousien: Automatische Lichtsteuerung mit Arduino & Solarenergie
  6. Intelligentes Voltmeter mit Arduino & Smartphone bauen – Einfaches DIY-Projekt
  7. Echtzeit-IoT-Herzfrequenzmonitor mit Arduino & MAX30100
  8. Smart IoT-Glas bauen: Füllstand überwachen mit ESP8266, Arduino & Ultraschall
  9. Arduino UNO WiFi Webserver: LED per Browser steuern
  10. WLAN-Türschloss mit Arduino & ESP8266 – Per Smartphone entsperren