Adruino Serienplotter

Die Arduino Serial Plotter-Funktion wurde der Arduino IDE hinzugefügt, sodass Sie serielle Daten von Ihrem Arduino in Echtzeit nativ auf Ihrem Computer grafisch darstellen können. Wenn Sie es satt haben zu sehen, wie die analogen Sensoreingangsdaten Ihres Arduino wie The Matrix auf Ihren Bildschirm fließen, ist dies eine schönere Möglichkeit, um zu visualisieren, was vor sich geht. Ein serieller Plotter ist ein Offline-Tool, mit dem Sie auch Daten visualisieren und Ihren Code offline beheben können, ohne Dienste von Drittanbietern wie Processing oder Plotly verwenden zu müssen. Da es auf der Arduino-Website keine offizielle Dokumentation zur Verwendung und Funktionalität des Serial Plotter gibt, habe ich beschlossen, seine Verwendung und Funktionen zu dokumentieren.
Eigenschaften
- Zeichnen mehrerer Graphen
- Offline
- Diagramm mit automatischer Größenänderung
- Unterstützt Negativwertdiagramme
- Scrollen Sie automatisch entlang der X-Achse
- Unterschiedliche Farben für jede Variable
Anwendungen
- Offline-Datenvisualisierung
- Code-Fehlerbehebung
- Wellenformanalyse
Erforderliche Teile
Arduino - AliExpress oder
Arduino Starter Kit - AliExpress
Schritt 1: Zeichnen eines Diagramms

Nachdem Sie die neueste Version der Arduino IDE (1.6.7 oder höher) installiert haben, ist es an der Zeit zu verstehen, wie der Serial Plotter tatsächlich funktioniert. Der Arduino Serial Plotter erfasst eingehende serielle Datenwerte über die USB-Verbindung und kann die Daten entlang der X / Y-Achse grafisch darstellen, ohne nur Zahlen auf den seriellen Monitor auszuspucken. Die vertikale Y-Achse passt sich automatisch an, wenn der Wert der Ausgabe zunimmt oder abnimmt, und die X-Achse ist eine feste 500-Punkt-Achse, wobei jedes Häkchen der Achse einem ausgeführten Serial.println () -Befehl entspricht. Mit anderen Worten, das Diagramm wird jedes Mal entlang der X-Achse aktualisiert, wenn Serial.println () mit einem neuen Wert aktualisiert wird.


Denken Sie daran, die Baudrate des seriellen Plotters so einzustellen, dass sie mit der des Codes übereinstimmt.
Mehrere Grundstücke
Bei der Anzeige mehrerer Wellenformen wird jede einzelne Variable / jeder einzelne Wert / Parameter in einer anderen Farbe angezeigt, wie unten gezeigt.

Um mehrere Variablen oder Wellenformen gleichzeitig zu zeichnen, wird zwischen den beiden Druckanweisungen ein Leerzeichen gedruckt.
Serial.print (Temperatur); Serial.print (""); Serial.println (Luftfeuchtigkeit);
ODER
Serial.print (Temperatur); Serial.print ("\ t" /); Serial.println (Luftfeuchtigkeit);
In diesem Fall haben die Werte für Temperatur und Luftfeuchtigkeit der Variablen separate Wellenformen, die gleichzeitig in demselben Diagramm dargestellt werden.
Schritt 2: Offline-Datenvisulisierung
Ich habe den Arduino Serial Monitor in meinem automatischen Pflanzenbewässerungssystem verwendet, um Feuchtigkeitssensordaten zu visualisieren und zu zeichnen.
Der Hauptzweck des seriellen Plotters besteht darin, dass Sie nicht mit dem Internet verbunden sein müssen, um die Daten eines Sensors oder Ihres Projekts zu visualisieren. Und daher zeichnet sich der serielle Plotter zum Zweck der Datenvisualisierung durch seine Arbeit aus.
Unabhängig davon, ob es sich um eine einzelne Welle oder ein Diagramm mit mehreren Plots handelt, ändert der Serial Plotter automatisch die Größe und codiert jede Welle farblich. Um die Datenvisualisierungsfunktion zu testen, können Sie die folgenden Schritte ausführen:
- Schließen Sie einige Sensoren an Ihr Arduino an
- Drucken Sie die Werte der Sensoren aus und laden Sie den Code hoch.
- Öffnen Sie den seriellen Plotter.

Ich habe den seriellen Plotter in meiner Tweeting-Wetterstation verwendet, um den Messwert der verschiedenen Sensoren auf der Wetterstation zu visualisieren. Die obigen Wellenformen zeigen die grafische Darstellung der Messwerte für Temperatur (26 ° C) und Luftfeuchtigkeit (65% rF) des SL-HS-220-Sensors.
Schritt 3: Fehlerbehebung
Eine der besten Anwendungen des seriellen Plotters ist die Fehlerbehebung bei Code und Schaltung. Fehlerhafte Verbindungen oder falsche Codierungslogik können manchmal eine unerwünschte Ausgabe zurückgeben. In solchen Fällen, in denen zu viele Codezeilen oder zu viele Drähte zum Debuggen vorhanden sind, kann der serielle Plotter den genauen Fehlerpunkt anzeigen.
Mit Hilfe des seriellen Plotters können Sie überprüfen, ob ein Sensorwert falsch ist oder ob der Sensor nicht richtig mit dem Arduino verbunden ist. Der Serial Plotter hilft auch beim Debuggen von Code, indem er die Werte verschiedener bedingter Anweisungen und Variablen oder sogar die Zustände der Pins des Arduino anzeigt.

Ein gutes Beispiel hierfür wäre die Fehlerbehebung bei einem Hindernisvermeidungsroboter. In diesem Beispiel repräsentiert die blaue Wellenform den Ultraschallsensor und die gelbe und rote Wellenform repräsentieren den linken und rechten Motor. Wenn der Abstand zwischen dem Hindernis und dem Roboter abnimmt, nimmt die blaue Wellenform ab. Bei einem Schwellenwert (Mindestabstand) von 10 dreht sich der Roboter nach rechts, daher haben die beiden Motoren unterschiedliche Werte: Rechts = 50, Links = 100. Sie können sehen, dass die rote Wellenform abnimmt und die gelbe Wellenform konstant bleibt, was die Rechtskurve darstellt.
Die Fehlerbehebung, ob ein Kabel nicht richtig angeschlossen war oder eine Komponente fehlerhaft funktionierte oder Ihre Codierungslogik falsch war, hätte Sie viel Zeit gekostet. Mit Hilfe des seriellen Plotters kann die Zeit zur Fehlerbehebung durch Analyse der Wellenformen erheblich reduziert werden.

Schritt 4: Funktionsgenerierung und -analyse

Mit einem grundlegenden Programmiersinn und einigen Codezeilen kann der Arduino als Funktionsgenerator fungieren. Der Arduino kann quadratische, dreieckige, sinus- und sägezahnförmige Wellenformen erzeugen. In früheren Versionen der Arduino IDE konnten nur die Werte des im seriellen Monitor erzeugten Wellenformtyps ohne Visualisierung beobachtet werden. Es wäre zeitaufwändig, die Ausgabe ausschließlich auf der Grundlage numerischer Werte zu analysieren. und dies ist der Ort, an dem der Serienplotter nützlich ist; bei der Visualisierung der erzeugten Wellenformen.




Schritt 5: Zukünftige Verbesserungen und Ergänzungen

Die Arduino IDE benötigt seit langem den seriellen Plotter. Es hat die Funktionalität der Arduino IDE erweitert, es fehlen jedoch noch einige Funktionen:
- Autoscroll umschalten
- Gleichzeitige Verwendung von Serial Plotter & Serial Monitor.
- X-Achsen-Skala / Zeitskala erforderlich.
Da diese Funktionen zur Arduino IDE hinzugefügt werden, werde ich weiterhin Änderungen vornehmen und diesem Instructable neue Schritte hinzufügen.