Datenlogger: Auswertung der Messwerte (Diagramme)

OP (Firma: Google) #4805514
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!
Gast
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...
OP (Firma: Google)
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!
Gast
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

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.