Forum: Mikrocontroller und Digitale Elektronik Datenlogger: Auswertung der Messwerte (Diagramme)


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Tim S. (Firma: Google) (tuxut83)


Bewertung
-1 lesenswert
nicht lesenswert
Hallo Gemeinde.

Ich habe an einem Arduino mehrere Sensoren hängen und schreibe die 
Messwerte in eine einzelne Datei. Das Format sieht momentan so aus:

timestamp; sensor1.temp; sensor2.lux; sensor3.humi; sensor4.pressure;

(Semikolon getrennte Messwerte mit Zeitstempel YYMMDD_HHMM.)
Jetzt möchte ich mir die Daten für die schnelle Analyse natürlich auch 
grafisch darstellen.

Gibt es hierfür ein nützliches Tool (oder auch App für Android)?

Anforderungen:
- Wäre spitze wenn für jeden Messwert ein Diagramm generiert werden 
könnte, wobei die x-Achse natürlich der timestamp sein soll.

- Es wäre praktisch auch alle Werte in ein einziges Diagramm zu plotten, 
wobei ich da ganz gerne die Messwerte dynamisch an- und ausschalten 
möchte.

-[Optional] Vielleicht gibt es eine webbasierte Lösung, die mir 
HTTP-Seiten erstellt mit den Diagrammen. Das wäre dann sehr flexibel 
bzw. dann könnte ich die Daten auf einen Server hochladen und hätte 
diese auf allen unterschiedlichen Geräten, die einen Browser installiert 
haben. (Also eine Art Framework.)

Für eure Anregungen und Ideen bin ich sehr dankbar.

Herzlichen Dank!

von Frank (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich hätte pauschal GNUplot oder Octave gesagt.
Gibt es beides scheinbar auch für Android.
Kannst du dir wahrscheinlich ein Script am PC schreiben und ausprobieren 
und musst es danach wahrscheinlich nur auf das Handy übertragen.
Habe allerdings mit beidem noch nicht auf dem Handy gearbeitet.

Server basiert kann man das natürlich auch machen. Ich hatte da seither 
gute Ergebnisse mit Flot.

Wieviele Punkte pro Kanal hast du denn innerhalb einer Datei? Du musst 
dir nämlich bei großen Datenmengen Gedanken um die Datenreduktion 
machen. Ansonsten rödelt selbst ein PC mal schnell mehrere Stunden bevor 
er was anzeigen kann...

von Frank (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Evtl wäre auch Xamarin +ZedGraph eine Möglichkeit.

von Tim S. (Firma: Google) (tuxut83)


Bewertung
-1 lesenswert
nicht lesenswert
Okay, Octave ist ein sehr guter Vorschlag.
Ich habe das mal kurz angetestet und bekomme bereits gute Diagramme 
geliefert...

Nur mit der x-Achse habe ich noch so meine Schwierigkeiten.
Mein timestamp aus dem Logfile wird noch nicht richtig umgesetzt.

Der Timestamp hat folgendes Format.

YYYYMMDD_HHMM

also zum Beispiel
20161123_1415 für den 23.11.2016 um 14:15 Uhr

Wie bekomme ich solche Zeitangaben korrekt skaliert auf meine X-Achse???

Herzlichen Dank!

von Karl Lender (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Es gibt die datenum-Funktion zum Konvertieren und datestr zum Festlegen 
des Eingangsformats - damit hast du nur Integer als x-Werte, musst aber 
eventuell die Beschriftung separat aus den Rohwerten ermitteln

http://octave.sourceforge.net/octave/function/datenum.html
http://octave.sourceforge.net/octave/function/datenum.html

Ich sehe gerade, dass datestr dein Timestamp-Format nicht direkt 
unterstützt, du müsstest also noch ein paar Trennzeichen per 
Stringmanipulation einfügen

von Noch einer (Gast)


Bewertung
0 lesenswert
nicht lesenswert
>Vielleicht gibt es eine webbasierte Lösung

Ist dir http://oss.oetiker.ch/rrdtool/ schon aufgefallen?

Ist aber ein Komplettsystem mit eigenem Datenbankformat. Dafür kümmert 
es sich um alle Probleme, die beim Produktivbetrieb sonst noch auf dich 
zukommen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.