Arduino WebMonitor-Beispiel – Webbasierter serieller Monitor Tutorial
WebMonitor-Beispiel - Installationsanleitung
Überblick
Das WebMonitor-Beispiel ersetzt den herkömmlichen Serial Monitor durch eine webbasierte Oberfläche, die von jedem Gerät in Ihrem Netzwerk erreichbar ist. Entwickelt für Arduino Uno R4 WiFi und DIYables STEM V4 IoT Bildungsplattform mit erweiterten IoT-Fähigkeiten, integrierter Sensorüberwachung und nahtloser Integration in das Bildungsökosystem.

Funktionen
- Echtzeit-Seriellausgabe: Arduino-Nachrichten sofort im Browser anzeigen
- Befehlseingabe: Befehle von der Weboberfläche an Arduino senden
- Dunkles Design: Eine augenfreundliche Terminal-ähnliche Oberfläche
- Automatisches Scrollen: Scrollt automatisch zu den neuesten Meldungen
- Zeitstempel: Alle Meldungen enthalten Zeitstempel
- Befehlshistorie: Mit Pfeiltasten zu vorherigen Befehlen navigieren
- Löschfunktion: Die Monitoranzeige löschen
- Kopieren/Einfügen: Vollständige Textauswahl und Kopierunterstützung
- Plattform-Erweiterbarkeit: Derzeit für Arduino Uno R4 WiFi implementiert, aber kann auf andere Hardware-Plattformen erweitert werden. Siehe DIYables_WebApps_ESP32
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables STEM V4 IoT Starter-Kit (Arduino enthalten) | |
1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Installationsanleitung
Schnelle Schritte
Befolgen Sie diese Anweisungen Schritt für Schritt:
- Wenn dies das erste Mal ist, dass Sie den Arduino Uno R4 WiFi/DIYables STEM V4 IoT verwenden, lesen Sie das Tutorial zur Einrichtung der Umgebung für den Arduino Uno R4 WiFi/DIYables STEM V4 IoT in der Arduino IDE (BASE_URL/tutorials/arduino-uno-r4/arduino-uno-r4-software-installation).
- Schließen Sie das Arduino Uno R4/DIYables STEM V4 IoT-Board mit einem USB-Kabel an Ihren Computer an.
- Öffnen Sie die Arduino-IDE auf Ihrem Computer.
- Wählen Sie das passende Arduino Uno R4-Board (z. B. Arduino Uno R4 WiFi) und den COM-Port aus.
- Navigieren Sie zum Symbol Bibliotheken in der linken Seitenleiste der Arduino-IDE.
- Suchen Sie "DIYables WebApps", dann finden Sie die DIYables WebApps-Bibliothek von DIYables.
- Klicken Sie auf die Schaltfläche Installieren, um die Bibliothek zu installieren.

- Sie werden aufgefordert, einige weitere Bibliotheksabhängigkeiten zu installieren
- Klicken Sie auf die Schaltfläche Alle installieren, um alle Bibliotheksabhängigkeiten zu installieren.

- In der Arduino-IDE gehen Sie zu Datei Beispiele DIYables WebApps WebMonitor-Beispiel, oder kopieren Sie den obigen Code und fügen ihn in den Editor der Arduino IDE ein
- Konfigurieren Sie die WLAN-Anmeldeinformationen im Code, indem Sie diese Zeilen aktualisieren:
- Klicken Sie auf die Schaltfläche Hochladen in der Arduino-IDE, um Code auf den Arduino UNO R4/DIYables STEM V4 IoT hochzuladen
- Öffnen Sie den seriellen Monitor
- Schauen Sie sich das Ergebnis im seriellen Monitor an. Es sieht wie folgt aus
- Wenn Sie nichts sehen, starten Sie das Arduino-Board neu.
- Merken Sie sich die angezeigte IP-Adresse, und geben Sie diese Adresse in die Adressleiste eines Webbrowsers auf Ihrem Smartphone oder PC ein.
- Beispiel: http://192.168.0.2
- Sie sehen die Startseite wie im unten gezeigten Bild:

- Klicken Sie auf den Web Monitor-Link, dann sehen Sie die Benutzeroberfläche der Web Monitor-App wie unten:

- Oder Sie können die Seite auch direkt über die IP-Adresse aufrufen, gefolgt von /web-monitor. Zum Beispiel: http://192.168.0.2/web-monitor
- Versuchen Sie, Befehle an Ihren Arduino über die Web-Monitor-Oberfläche zu senden und die serielle Ausgabe Ihres Arduino in Echtzeit anzuzeigen.
Wie man es verwendet
Serielle Ausgabe anzeigen
- Öffnen Sie die Web-Monitor-Oberfläche.
- Arduino sendet alle 5 Sekunden automatisch Statusmeldungen.
- Alle Serial.println()-Ausgaben erscheinen im Monitor.
- Nachrichten werden automatisch mit Zeitstempeln versehen.
Befehle senden
- Geben Sie Befehle in das Eingabefeld unten ein
- Drücken Sie die Enter-Taste oder klicken Sie auf die Senden-Schaltfläche
- Arduino verarbeitet den Befehl und antwortet
Integrierte Befehle
Das Beispiel enthält diese Demonstrationsbefehle:
LED-Steuerung
- "LED einschalten" → Schaltet die eingebaute LED ein
- "LED ausschalten" → Schaltet die eingebaute LED aus
- "LED umschalten" → Schaltet den Zustand der LED um
- "LED dreimal blinken" → Blinkt die LED dreimal
Systembefehle
- "status" → Zeigt Arduino-Status und Betriebszeit an
- "help" → Listet verfügbare Befehle auf
- "reset counter" → Setzt den Nachrichten-Zähler zurück
- "memory" → Zeigt Informationen zum freien Speicher an
Debug-Befehle
- "test" → Sendet eine Testnachricht
- "echo [message]" → Gibt deine Nachricht zurück
- "repeat [n] [message]" → Wiederholt die Nachricht n Mal
Schnittstellenfunktionen
Tastenkombinationen
- Eingabetaste → Befehl senden
- ↑/↓ Pfeiltasten → Befehlsverlauf navigieren
- Strg+L → Bildschirm löschen (falls implementiert)
- Strg+A → Text auswählen
Monitoreinstellungen
- Automatisches Scrollen → Scrollt automatisch zu neuen Nachrichten
- Löschen → Löscht die Monitoranzeige
- Kopieren → Ausgewählten Text in die Zwischenablage kopieren
Kreative Anpassung - Baue dein fortschrittliches Debugging-Tool
Erweitern Sie dieses Webmonitor-Beispiel, um eine leistungsstarke Debugging- und Kontrolloberfläche für Ihre Projekte zu erstellen! Fügen Sie benutzerdefinierte Befehle, Sensorüberwachung und Echtzeit-Datenvisualisierung hinzu, um Ihren kreativen Bedürfnissen gerecht zu werden.
Quellcode-Struktur
Hauptkomponenten
- WebApp-Server: Verarbeitet HTTP- und WebSocket-Verbindungen
- Monitor-Seite: Bietet eine Terminal-ähnliche Weboberfläche
- Nachrichten-Handler: Verarbeitet eingehende Befehle
- Serielle Bridge: Leitet serielle Ausgaben an die Weboberfläche weiter
Kernfunktionen
Benutzerdefinierte Befehle hinzufügen
Um neue Befehle hinzuzufügen, ändern Sie die Funktion handleWebCommand:
Praktische Anwendungen
Entwicklung und Debugging
Fernüberwachung von Systemen
Konfigurationsmanagement
Erweiterte Funktionen
Nachrichtenfilter
Nachrichtentypen hinzufügen und Filterung:
Befehlsanalyse
Implementieren Sie eine anspruchsvolle Befehlsanalyse:
Datenprotokollierung
Monitordaten auf SD-Karte oder EEPROM protokollieren:
Fehlerbehebung
Häufige Probleme
1. Keine Ausgabe im Webmonitor
- Überprüfe, ob Serial.begin() in setup() aufgerufen wird.
- Überprüfe die WebSocket-Verbindung (grüne Statusanzeige).
- Überprüfe die Browser-Konsole auf Fehler.
2. Befehle funktionieren nicht
- Stellen Sie sicher, dass die Befehle genau so angegeben sind.
- Überprüfen Sie die Groß-/Kleinschreibung der Befehle.
- Suchen Sie nach Antwortmeldungen im Monitor.
3. Die Benutzeroberfläche lädt langsam
- WLAN-Signalstärke überprüfen
- Nachrichtenhäufigkeit reduzieren
- Den Browser-Cache leeren
4. WebSocket-Verbindungsabbrüche
- Netzwerkstabilität überprüfen
- Nachrichtenlänge reduzieren
- Logik zur Wiederverbindung implementieren
Tipps zum Debuggen
Detailliertes Debugging aktivieren:
WebSocket-Status überwachen:
Sicherheitsaspekte
Befehlsvalidierung
Eingehende Befehle immer validieren:
Zugriffskontrolle
Basis-Authentifizierung implementieren:
Integrationsbeispiele
Sensorüberwachungssystem
Monitor der Heimautomatisierung
Nächste Schritte
Nachdem Sie das WebMonitor-Beispiel gemeistert haben, versuchen Sie:
- Chat - Zur interaktiven Kommunikation
- DigitalPins - Zur Steuerung von Ausgängen
- Slider - Zur Steuerung analoger Werte
- MultipleWebApps - Zur Kombination von Überwachung und Steuerung
Unterstützung
Für weitere Hilfe:
- Überprüfen Sie die API-Referenzdokumentation
- Besuchen Sie die DIYables-Tutorials: https://newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-diyables-webapps
- Arduino-Community-Foren