Arduino WebPlotter-Beispiel – Tutorial zur Echtzeit-Datenvisualisierung
WebPlotter-Beispiel – Installationsanleitung
Überblick
Das WebPlotter-Beispiel erstellt eine Echtzeit-Datenvisualisierungsoberfläche, die über jeden Webbrowser zugänglich ist. Entworfen für Arduino Uno R4 WiFi und DIYables STEM V4 IoT-Bildungsplattform mit erweiterten Datenverarbeitungsfähigkeiten, Echtzeit-Plotting-Funktionen und nahtlose Integration in Sensorüberwachungssysteme. Ideal zum Visualisieren von Sensordaten, zum Debuggen von Algorithmen oder zur Überwachung der Systemleistung in Echtzeit.

Funktionen
- Echtzeit-Datenvisualisierung: Visualisieren Sie Sensordaten, die vom Arduino gestreamt werden
- Mehrere Datenreihen: Plotten Sie bis zu 8 verschiedene Datenströme gleichzeitig
- Automatische Skalierung: Die Y-Achse wird automatisch basierend auf dem Wertebereich der Daten skaliert
- Interaktive Benutzeroberfläche: Zoomen, Verschieben und Daten-Trends analysieren
- WebSocket-Kommunikation: Sofortige Updates mit minimaler Latenz
- Responsives Design: Funktioniert auf Desktop-, Tablet- und Mobilgeräten
- Anpassbare Konfiguration: Einstellbare Diagrammtitel, Achsenbeschriftungen und Bereiche
- Plattform-Erweiterbarkeit: Derzeit für Arduino Uno R4 WiFi implementiert, kann jedoch 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) |
Installationsanweisungen
Schnelle Schritte
Folgen Sie diesen Anweisungen Schritt für Schritt:
- Falls dies Ihre erste Nutzung des Arduino Uno R4 WiFi/DIYables STEM V4 IoT ist, lesen Sie die Anleitung zur Einrichtung der Umgebung für Arduino Uno R4 WiFi/DIYables STEM V4 IoT in der Arduino IDE.
- Verbinden Sie das Arduino Uno R4/DIYables STEM V4 IoT-Board über ein USB-Kabel mit Ihrem Computer.
- Ö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 Bibliotheken-Symbol in der linken Leiste der Arduino IDE.
- Suchen Sie "DIYables WebApps", und finden Sie anschließend die DIYables WebApps-Bibliothek von DIYables.
- Klicken Sie auf die Schaltfläche Installieren, um die Bibliothek zu installieren.

- Sie werden aufgefordert, 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 WebPlotter Beispiel, oder kopieren Sie den obigen Code und fügen ihn in den Editor der Arduino IDE ein
- Konfigurieren Sie die WLAN-Zugangsdaten im Code, indem Sie diese Zeilen aktualisieren:
- Klicken Sie in der Arduino IDE auf die Hochladen-Schaltfläche, um Code auf den Arduino UNO R4/DIYables STEM V4 IoT hochzuladen.
- Öffnen Sie den Serial Monitor.
- Überprüfen Sie das Ergebnis im Serial Monitor. Es sieht so aus wie unten.
- Wenn Sie nichts sehen, starten Sie das Arduino-Board neu.
- Notieren Sie sich die angezeigte IP-Adresse und geben Sie diese Adresse in die Adresszeile eines Webbrowsers auf Ihrem Smartphone oder PC ein.
- Beispiel: http://192.168.0.2
- Sie sehen die Startseite wie im folgenden Bild:

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

- Oder Sie können die Seite auch direkt über die IP-Adresse aufrufen, gefolgt von /web-plotter. Zum Beispiel: http://192.168.0.2/web-plotter
- Beobachten Sie, wie der Arduino simulierte Sensordaten generiert und diese in Echtzeit plottet. Sie werden mehrere farbige Linien sehen, die verschiedene Datenströme repräsentieren.
Kreative Anpassung – Visualisiere deine Daten kreativ
Transformieren Sie die Plot-Oberfläche, um sie an Ihre einzigartigen Projektanforderungen anzupassen und beeindruckende Datenvisualisierungen zu erstellen:
Konfiguration der Datenquelle
Ersetze simulierte Daten durch reale Sensordaten:
Methode 1: Einzelner Sensorwert
Methode 2: Mehrere Sensoren
Methode 3: Werte-Array
Plot-Anpassung
Benutzerdefiniertes Diagramm-Aussehen
Dynamische Konfiguration
Fortgeschrittene Datenverarbeitung
Gleitender Durchschnittsfilter
Datenprotokollierung mit Zeitstempeln
Integrationsbeispiele
Umweltüberwachung
Rückmeldung zur Motorsteuerung
PID-Regler-Visualisierung
Leistungsoptimierung
Effiziente Datenübertragung
Bedingte Datenübermittlung
Projektideen
Wissenschaftliche Anwendungen
- Datenlogger: Temperatur, Luftfeuchtigkeit, Druck im Verlauf der Zeit aufzeichnen
- Schwingungsanalyse: Beschleunigungsdaten von mechanischen Systemen überwachen
- pH-Überwachung: Wasserqualität in Aquaponik-Systemen überwachen
- Solarmodul-Effizienz: Spannung und Stromausgabe im Verhältnis zur Sonneneinstrahlung überwachen
Bildungsprojekte
- Physik-Experimente: Pendelsbewegung visualisieren, Feder-Schwingungen
- Chemielabor: Reaktionsraten und Temperaturänderungen überwachen
- Biologiestudien: Pflanzenwachstumssensoren und Umweltfaktoren überwachen
- Mathematik: Mathematische Funktionen und algorithmische Ausgaben darstellen
Heimautomatisierung
- Energieüberwachung: Stromverbrauchsmuster verfolgen
- Gartenautomation: Bodenfeuchtigkeit und Lichtverhältnisse überwachen
- HVAC-Steuerung: Temperatur- und Feuchtigkeitsverläufe visualisieren
- Sicherheitssystem: Bewegungssensoraktivitäten aufzeichnen
Robotik und Regelung
- Roboternavigation: Positions- und Orientierungsdaten visualisieren
- Motorsteuerung: Geschwindigkeit, Drehmoment und Effizienz überwachen
- Sensorfusion: Mehrere Sensordaten kombinieren
- Pfadplanung: Bewegungsalgorithmen des Roboters visualisieren
Fehlerbehebung
Häufige Probleme
- Es erscheinen keine Daten im Diagramm
- WLAN-Verbindungsstatus prüfen
- WebSocket-Verbindung in der Browser-Konsole prüfen
- Stelle sicher, dass sendPlotData() regelmäßig aufgerufen wird
- Prüfe den seriellen Monitor auf Fehlermeldungen
2. Das Diagramm wirkt sprunghaft oder unregelmäßig
- Datenfilterung implementieren (gleitender Durchschnitt)
- Datenübertragungsfrequenz reduzieren
- Sensorrauschen oder Verbindungsprobleme überprüfen
- Stromversorgungsstabilität überprüfen
3. Leistungsprobleme des Browsers
- Reduziere die maximale Anzahl an Stichproben (setMaxSamples())
- Reduziere die Datenübertragungsrate
- Schließe andere Browser-Tabs
- Verwende Hardwarebeschleunigung im Browser
- WebSocket-Verbindungsabbrüche
- WLAN-Signalstärke überprüfen
- Routereinstellungen überprüfen (Firewall, Port-Blockierung)
- Wiederverbindungslogik im eigenen Code implementieren
- Arduino-Speicherverbrauch überwachen
Debug-Tipps
Detaillierte Protokollierung aktivieren
Testdaten-Erzeugung
Erweiterte Funktionen
Benutzerdefinierte Datenformatierung
Integration mit anderen Webanwendungen
Echtzeitsteuerung mit Plot-Darstellung
Nächste Schritte
Nachdem Sie das WebPlotter-Beispiel gemeistert haben, erkunden Sie:
- MultipleWebApps - Plotten mit Steuerelementen kombinieren
- WebMonitor - Debugging-Funktionen neben dem Plotten hinzufügen
- Custom Applications - Eigene spezialisierte Plot-Werkzeuge erstellen
- Data Analysis - Statistische Analyse der geplotteten Daten implementieren
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
- WebSocket-Debugging-Tools in der Browser-Entwicklerkonsole