Arduino Nano - Webserver
In diesem Leitfaden zeigen wir Ihnen, wie man ein Arduino Nano-Board mit einem Ethernet-Modul programmiert, damit es als Webserver fungiert. Sie können Daten anzeigen und den Arduino Nano über Webseiten steuern, die von Ihrem Computer oder Smartphone aus erreichbar sind. Wir beginnen mit einfachen Aufgaben und arbeiten uns zu fortgeschritteneren Aufgaben vor, wie unten beschrieben:
- Arduino Nano Webserver - Hallo Welt!
- Arduino Nano Webserver - Sensorwerte über eine Webseite überwachen.
- Arduino Nano Webserver - Automatisch aktualisierte Werte auf der Webseite.
- Arduino Nano Webserver - HTML, CSS und JavaScript vom Arduino-Code trennen.
- Arduino Nano Webserver - Arduino Nano über eine Webseite steuern.

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Verdrahtungsdiagramm zwischen Arduino Nano und W5500-Ethernet-Modul

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Siehe Der beste Weg, den Arduino Nano und andere Komponenten mit Strom zu versorgen.
Arduino Nano Webserver - Hallo Welt
Das ist relativ einfach. Der Arduino Nano-Code führt die folgenden Aufgaben aus:
- Einen Webserver erstellen, der auf HTTP-Anfragen eines Webbrowsers lauscht.
- Nach Eingang einer Anfrage eines Webbrowsers antwortet der Arduino Nano mit den folgenden Informationen:
- HTTP-Header
- HTTP-Body: enthält "Hello World!".
- Verbinden Sie das Arduino Nano mit dem Ethernet-Modul gemäß dem oben gezeigten Verdrahtungsdiagramm.
- Verbinden Sie ein Ethernet-Kabel mit dem Ethernet-Modul.
- Verbinden Sie das Arduino Nano über ein USB-Kabel mit einem PC.
- Öffnen Sie die Arduino IDE auf Ihrem PC.
- Wählen Sie das Arduino Nano-Board und den entsprechenden COM-Port aus.
- Klicken Sie auf das Bibliotheken-Symbol in der linken Seitenleiste der Arduino IDE.
- Suchen Sie „Ethernet“, und finden Sie dann die Ethernet-Bibliothek von Various.
- Klicken Sie auf die Schaltfläche Installieren, um die Ethernet-Bibliothek zu installieren.
- Kopiere den obigen Code und öffne ihn mit der Arduino-IDE.
- Klicke auf die Hochladen-Schaltfläche in der Arduino-IDE, um den Code auf den Arduino Nano hochzuladen.
- Öffne den seriellen Monitor.
- Schau dir das Ergebnis im seriellen Monitor an.
- Notieren Sie sich die angezeigte IP-Adresse und geben Sie sie in die Adresszeile eines Webbrowsers auf Ihrem Smartphone oder PC ein.
- Sie sehen dann die folgende Ausgabe im seriellen Monitor.
- Sobald du den Webbrowser über die IP-Adresse aufrufst, siehst du eine einfache Webseite, die „Hallo Welt!“ anzeigt. Die Seite wird so aussehen:
Nachfolgend ist der Arduino Nano-Code, der die oben genannten Aufgaben ausführt:
Schnelle Schritte


Arduino Nano Webserver - Überwachung von Sensordaten über eine Webseite.
Der untenstehende Arduino-Nano-Code führt die folgenden Aufgaben aus:
- Einen Webserver erstellen, der auf HTTP-Anfragen von einem Webbrowser wartet.
- Wenn eine Anfrage von einem Webbrowser eingeht, antwortet der Arduino Nano mit den folgenden Informationen:
- HTTP-Header
- HTTP-Body: Dies umfasst HTML- und CSS-Inhalte sowie den vom Sensor ausgelesenen Wert.
- Kopieren Sie den obigen Code und öffnen Sie ihn in der Arduino-IDE.
- Klicken Sie im Arduino-IDE auf die Upload-Schaltfläche, um den Code auf den Arduino Nano hochzuladen.
- Laden Sie die vorherige Webseite erneut (Ctrl + F5); Sie sehen sie dann, wie unten gezeigt:
Schnelle Schritte

Mit dem bereitgestellten Code müssen Sie die Seite im Webbrowser neu laden, um die Temperatur zu aktualisieren. Im nächsten Abschnitt lernen wir, wie die Webseite den Temperaturwert im Hintergrund automatisch aktualisieren kann, ohne neu zu laden.
Arduino Nano Web-Server - Automatisch aktualisierte Werte auf der Webseite
Wie die automatische Aktualisierung funktioniert
- Der Benutzer gibt die IP-Adresse des Arduino Nano im Webbrowser ein.
- Der Webbrowser sendet eine HTTP-Anfrage an die Startseite des Arduino Nano (/).
- Der Arduino antwortet mit HTML, CSS und JavaScript.
- Der Webbrowser zeigt die Webseite mit dem empfangenen HTML und CSS an.
- Alle 3 Sekunden führt der Webbrowser den JavaScript-Code aus, der eine HTTP-Anfrage an den Endpunkt /temperature sendet.
- Der Arduino liest den Sensorwert aus und sendet ihn als Antwort zurück.
- Der Webbrowser empfängt den Sensorwert und aktualisiert die Webseite entsprechend.

Nachfolgend ist der Arduino Nano-Code, der die oben genannten Aufgaben ausführt:
Schnelle Schritte
- Kopieren Sie den obigen Code und öffnen Sie ihn in der Arduino IDE.
- Klicken Sie auf die Schaltfläche Hochladen in der Arduino IDE, um den Code auf den Arduino Nano hochzuladen.
- Laden Sie die vorherige Webseite neu (Strg + F5), und Sie sehen sie wie unten gezeigt:

Sie werden sehen, dass der Wert alle 3 Sekunden automatisch aktualisiert wird.
HTML-Inhalt in eine separate Datei in der Arduino-IDE auslagern
Wenn Sie eine einfache Webseite mit minimalem Inhalt erstellen möchten, können Sie das HTML direkt in den Code des Arduino Nano einbetten, wie zuvor erläutert.
Allerdings kann das Einbetten sämtlicher HTML-, CSS- und JavaScript-Dateien direkt in den Code des Arduino Nano bei komplexeren und funktionsreicheren Webseiten unhandlich werden. In solchen Fällen ist es besser, einen anderen Ansatz zu verwenden, um den Code zu verwalten:
- Der Code des Arduino Nano wird wie üblich in einer .ino-Datei gespeichert.
- Der Inhalt der Webseite (HTML, CSS, JavaScript) wird in einer separaten .h-Datei platziert. Diese Trennung erleichtert es, die Webseite zu verwalten und zu aktualisieren, ohne den Arduino-Code unübersichtlich zu machen.
Schnelle Schritte
- Öffne die Arduino IDE und erstelle einen neuen Sketch. Gib ihm einen Namen, zum Beispiel, newbiely.com.ino.
- Kopiere den untenstehenden Code und füge ihn in die erstellte Datei ein.
- Erstelle die index.h-Datei in der Arduino-IDE durch:

- Klicken Sie entweder auf die Schaltfläche direkt unter dem Symbol des seriellen Monitors und wählen Sie Neuer Tab, oder verwenden Sie die Tastenkombination Ctrl+Shift+N.
- Geben Sie den Dateinamen index.h ein und klicken Sie auf die OK-Schaltfläche

- Kopieren Sie den untenstehenden Code und fügen Sie ihn in die index.h ein.
- Jetzt haben Sie den Code in zwei Dateien: newbiely.com.ino und index.h
- Klicken Sie auf die Upload-Schaltfläche in der Arduino IDE, um den Code auf den Arduino Nano hochzuladen
- Laden Sie die Webseite neu (mit Ctrl + F5); sie wird genauso aussehen wie zuvor
※ Notiz:
- Wenn du den HTML-Inhalt in der Datei index.h aktualisierst, ohne etwas in der Datei newbiely.com.ino zu ändern, wird die Arduino-IDE die aktualisierten HTML-Inhalte beim Kompilieren und Hochladen des Codes auf den Arduino Nano nicht neu laden oder berücksichtigen.
- Um sicherzustellen, dass die Arduino-IDE den HTML-Inhalt aktualisiert, musst du eine kleine Änderung in der Datei newbiely.com.ino vornehmen, zum Beispiel eine Leerzeile oder einen Kommentar hinzufügen. Dadurch wird die IDE gezwungen, Änderungen zu erkennen, und der aktualisierte HTML-Inhalt wird beim Upload eingeschlossen.
Arduino Nano über das Web steuern
Die Steuerung von etwas, das mit dem Arduino Nano verbunden ist, ist etwas anspruchsvoller als nur einen Wert auszulesen. Das liegt daran, dass der Arduino Nano die vom Webbrowser empfangene Anfrage verstehen muss, um zu wissen, welche Aktion er ausführen soll.
Für ein umfassenderes und detaillierteres Beispiel empfehle ich, die unten aufgeführten Tutorials anzusehen.