Arduino Uno R4 WiFi steuert ein Relais über das Web

In diesem Tutorial lernen wir, wie man ein Relais über eine Weboberfläche steuert, die über einen Browser auf einem PC oder Smartphone zugänglich ist. Wir verwenden das Arduino Uno R4 WiFi-Board, das so programmiert wird, dass es als Webserver fungiert. Angenommen, die IP-Adresse des Arduino Uno R4 WiFi lautet 192.168.0.2. So funktioniert es:

Arduino Uno R4 Relais Webbrowser

Indem wir ein Relais an Geräte wie ein Solenoidschloss, eine Glühbirne, einen LED-Streifen, einen Motor oder einen Aktuator anschließen, können wir sie über eine Weboberfläche steuern.

Das Tutorial bietet eine Grundlage, die Sie einfach und kreativ anpassen können, um Folgendes zu erreichen:

Über Relais und Arduino Uno R4

Wenn Sie nichts über Arduino Uno R4 und Relais (Pinbelegung, wie es funktioniert, wie man es programmiert ...) wissen, informieren Sie sich in den folgenden Tutorials darüber:

Verdrahtungsdiagramm

Arduino Uno R4 WiFi Relais-Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Arduino-Code

/* * Dieser Arduino Code wurde von newbiely.de entwickelt * Dieser Arduino Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino/arduino-uno-r4-wifi-controls-relay-via-web */ #include <UnoR4WiFi_WebServer.h> // WiFi credentials const char WIFI_SSID[] = "YOUR_WIFI_SSID"; const char WIFI_PASSWORD[] = "YOUR_WIFI_PASSWORD"; #define RELAY_PIN 7 // Arduino pin connected to relay's pin const char* HTML_CONTENT = "<!DOCTYPE HTML>\n" "<html>\n" "<head>\n" "<link rel=\"icon\" href=\"data:,\">\n" "</head>\n" "<body>\n" "<a href=\"/relay1/on\">RELAY ON</a>\n" "<br><br>\n" "<a href=\"/relay1/off\">RELAY OFF</a>\n" "</body>\n" "</html>\n"; // Create web server instance UnoR4WiFi_WebServer server; // Page handlers void handleHome(WiFiClient& client, const String& method, const String& request, const QueryParams& params, const String& jsonData) { server.sendResponse(client, HTML_CONTENT); } void handleRelayOn(WiFiClient& client, const String& method, const String& request, const QueryParams& params, const String& jsonData) { digitalWrite(RELAY_PIN, HIGH); Serial.println("Turned relay ON"); server.sendResponse(client, HTML_CONTENT); } void handleRelayOff(WiFiClient& client, const String& method, const String& request, const QueryParams& params, const String& jsonData) { digitalWrite(RELAY_PIN, LOW); Serial.println("Turned relay OFF"); server.sendResponse(client, HTML_CONTENT); } void setup() { Serial.begin(9600); delay(1000); // Initialize relay pin pinMode(RELAY_PIN, OUTPUT); digitalWrite(RELAY_PIN, LOW); // Connect to WiFi Serial.print("Connecting to "); Serial.println(WIFI_SSID); WiFi.begin(WIFI_SSID, WIFI_PASSWORD); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("connected!"); Serial.print("IP address: "); Serial.println(WiFi.localIP()); // Configure routes server.addRoute("/", handleHome); server.addRoute("/relay1/on", handleRelayOn); server.addRoute("/relay1/off", handleRelayOff); // Start server server.begin(); Serial.println("\n=== Web Server Ready! ==="); Serial.print("Visit: http://"); Serial.println(WiFi.localIP()); } void loop() { server.handleClient(); }

Schnelle Schritte

  • Wenn dies das erste Mal ist, dass Sie den Arduino Uno R4 verwenden, sehen Sie sich wie man die Umgebung für Arduino Uno R4 in der Arduino IDE einrichtet an.
  • Öffnen Sie den Bibliotheksverwalter, indem Sie auf das Bibliotheksverwaltung-Symbol auf der linken Seite der Arduino IDE klicken.
  • Suchen Sie nach Web Server for Arduino Uno R4 WiFi und finden Sie die von DIYables erstellte Webserver-Bibliothek.
  • Klicken Sie auf die Installieren-Schaltfläche, um die Webserver-Bibliothek hinzuzufügen.
Arduino UNO R4 Webserver-Bibliothek
  • Kopieren Sie den obigen Code und öffnen Sie ihn mit der Arduino-IDE
  • Passen Sie die WLAN-Informationen (SSID und Passwort) im Code an
  • Klicken Sie auf die Upload-Schaltfläche in der Arduino-IDE, um den Code auf Arduino hochzuladen
  • Öffnen Sie den Serial Monitor
  • Schauen Sie sich das Ergebnis im Serial Monitor an.
COM6
Send
Attempting to connect to SSID: YOUR_WIFI IP Address: 192.168.0.2 signal strength (RSSI):-39 dBm
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • Sie sehen eine IP-Adresse, zum Beispiel: 192.168.0.2. Dies ist die IP-Adresse des Arduino-Webservers.
  • Öffnen Sie einen Webbrowser und geben Sie eines der drei Formate unten in die Adressleiste ein:
192.168.0.2
192.168.0.2/relay1/on
192.168.0.2/relay1/off
  • Bitte beachten Sie, dass die IP-Adresse möglicherweise unterschiedlich sein kann. Stellen Sie sicher, dass Sie den aktuellen Wert im seriellen Monitor überprüfen.
  • Zusätzlich sehen Sie im seriellen Monitor die folgende Ausgabe.
COM6
Send
Connecting to YOUR_WIFI_SSID connected! IP address: 0.0.0.0 Starting web server on IP: 192.168.0.254 === Web Server Ready! === Visit: http://192.168.0.254 Method: GET Requested path: / Client disconnected Method: GET Requested path: /relay1/on Turned relay on Client disconnected
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • Überprüfen Sie den Relaiszustand
  • Sie werden die Webseite des Arduino-Boards im Webbrowser wie unten gezeigt sehen
Arduino Uno R4 Relais Webbrowser

Jetzt können Sie den Ein-/Aus-Zustand des Relais über die Weboberfläche steuern. Sie können den Code auch einfach und kreativ anpassen, um Folgendes zu erreichen:

  • Mehrere Relais über eine Weboberfläche steuern.
  • Die Web-Benutzeroberfläche (UI) nach Ihren Wünschen neu gestalten.

Wenn Sie das Erscheinungsbild der Webseite mit einer beeindruckenden grafischen Benutzeroberfläche (GUI) verbessern möchten, können Sie sich am Arduino - Web Server Tutorial orientieren, um Inspiration und Anleitung zu erhalten.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!