Arduino Nano ESP32 Web Monitor mit DIYables ESP32 WebApps-Bibliothek
Übersicht
Dieses Tutorial behandelt die Klasse DIYablesWebMonitorPage aus der DIYables ESP32 WebApps-Bibliothek. Die Seite bietet eine terminalähnliche Schnittstelle im Browser. Text, der aus der Skizze gesendet wird, wird in der Browser-Anzeige angezeigt; Text, der im Browser eingegeben wird, wird an einen Skizzen-Callback geliefert. Dies ermöglicht die Überwachung und Steuerung des Arduino Nano ESP32 von jedem Gerät im selben Netzwerk ohne USB-Serienverbindung.

Sehen Sie sich dieses Schritt-für-Schritt-Video-Tutorial an, das zeigt, wie man WebMonitor mit dem DIYables ESP32 WebApps verwendet:
Was dieses Tutorial behandelt
- Senden von Skizzenausgaben an den Browser-Monitor mit sendToWebMonitor()
- Empfangen von im Browser eingegebenen Befehlen in einem Skizzen-Callback
- Verarbeitung eingebauter Befehle wie LED-Steuerung und Statusabfragen
- Zugriff auf die Monitorschnittstelle von einem Smartphone oder PC
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Schritte
Befolgen Sie diese Anweisungen Schritt für Schritt:
- Wenn Sie Arduino Nano ESP32 zum ersten Mal verwenden, beziehen Sie sich auf das Tutorial zum Einrichten der Arduino Nano ESP32-Entwicklungsumgebung.
- Verbinden Sie das Arduino Nano ESP32-Board mit Ihrem Computer über ein USB-Kabel.
- Starten Sie die Arduino IDE auf Ihrem Computer.
- Wählen Sie das entsprechende Board (z. B. Arduino Nano ESP32) und den COM-Port aus.
- Navigieren Sie zu dem Symbol Libraries in der linken Leiste der Arduino IDE.
- Suchen Sie nach "DIYables ESP32 WebApps", dann finden Sie die DIYables ESP32 WebApps-Bibliothek von DIYables
- Klicken Sie auf die Schaltfläche Install, um die Bibliothek zu installieren.
- Search for DIYables ESP32 WebApps created by DIYables and click the Install button.
- Sie werden aufgefordert, einige andere Bibliotheksabhängigkeiten zu installieren
- Klicken Sie auf die Schaltfläche Install All, um alle Bibliotheksabhängigkeiten zu installieren.
- Gehen Sie in Arduino IDE zu File Examples DIYables ESP32 WebApps WebMonitor Beispiel, oder kopieren Sie den obigen Code und fügen Sie ihn in den Editor der Arduino IDE ein
- Aktualisieren Sie die WiFi-Anmeldedaten in der Skizze:
- Klicken Sie auf die Schaltfläche Upload in Arduino IDE, um Code auf Arduino Nano ESP32 hochzuladen
- Öffnen Sie den Serial Monitor
- Die Serial Monitor-Ausgabe sollte wie folgt aussehen:
- Wenn nichts angezeigt wird, drücken Sie die Reset-Taste auf dem Board.
- Geben Sie die IP-Adresse aus dem Serial Monitor in einen Browser im selben Netzwerk ein.
- Beispiel: http://192.168.0.2
- Die Startseite zeigt eine Karte für die Monitor-Anwendung:

- Wählen Sie die Web Monitor-Karte, um die Terminalschnittstelle zu öffnen:

- Die Seite ist auch direkt unter http://192.168.0.2/web-monitor erreichbar.
- Geben Sie Befehle in das Eingabefeld ein und drücken Sie Enter. Das Board antwortet und die Antwort wird im Terminal angezeigt.
Eingebaute Befehle
Die Beispielskizze erkennt die folgenden Befehle an, die im Browser eingegeben werden:
| Befehl | Aktion |
|---|---|
| led on | Schaltet die eingebaute LED ein |
| led off | Schaltet die eingebaute LED aus |
| led toggle | Wechselt den LED-Status |
| blink | Blinkt die LED 3 mal |
| status | Druckt Board-Status und Betriebszeit |
| help | Listet erkannte Befehle auf |
| reset counter | Setzt den Nachrichtenzähler zurück |
| memory | Meldet freien Heap-Speicher |
| test | Sendet eine Test-Nachricht |
| echo [text] | Gibt den bereitgestellten Text zurück |
| repeat [n] [text] | Wiederholt den Text n mal |
Daten aus der Skizze senden
Rufen Sie sendToWebMonitor() überall in der Skizze auf, um Text an den Browser zu drücken:
Befehle vom Browser empfangen
Registrieren Sie einen Callback, um Text zu verarbeiten, der im Browser-Eingabefeld eingegeben wird:
Fehlerbehebung
Monitor zeigt keine Ausgabe aus der Skizze
- Überprüfen Sie, ob sendToWebMonitor() aufgerufen wird; fügen Sie ein Serial.println() daneben hinzu, um die Ausführung zu bestätigen
- Überprüfen Sie den WebSocket-Statusindikator im Browser
- Stellen Sie sicher, dass webAppsServer.loop() auf jeder loop()-Iteration ohne blockierende Verzögerungen ausgeführt wird
Befehle, die vom Browser gesendet werden, werden nicht empfangen
- Bestätigen Sie, dass onWebMonitorMessage vor webAppsServer.begin() registriert ist
- Überprüfen Sie den Serial Monitor auf den rohen Befehlstext
Die Seite kann nicht geöffnet werden
- Überprüfen Sie die im Serial Monitor angezeigte IP-Adresse
- Stellen Sie sicher, dass sich das Browser-Gerät und das Board im selben 2,4-GHz-WiFi-Netzwerk befinden