Hallo,
ich bin auf der Suche nach einem Tool,dass Loggerdaten die auf
CD-Card gespeichert wurden , graphisch darstellen kann. Mit Excel
und dem Openoffice Equivalent klappt das nicht so wie gewünscht,
weil die Datenmenge zu groß ist, die Timestamp Problem macht
(transiente Aufzeichung) und man nicht richtig Zoomen und nach
Bedarf Bereiche verschieben kann. Nicht mal einfach zur
Darstellung wäre es ok.
Für den Datenstrom, der auch auf die serielle Schnittstelle umgeleitet
werden kann, habe ich mir ein Tool beschafft (RealView), das so in
etwa das kann, was ich sehen möchte. Nachteil ist allerdings, dass man
damit keine Daten importieren kann. Es geht nur über die COM
Schnittstelle.
Deshalb suche ich also ein Tool (muss nicht kostenlos sein, aber doch
erschwinglich) das meine aufgezeichneten Daten verarbeiten kann.
Ein Datensatz enthält 40 Werte (ASCII Zeichenfolge, CSV ähnlich, könnte
noch angepasst werden) bestehend aus
- Datum und Uhrzeit(transient, worst case ein Datensatz/10sec)
- Daten sind floating point Werte und ganze Zahlen
- jeder Wert sollte als Graph darstellbar sein
- zusätzlich synthetische Graphen aus Berechnung von Werten
- Graphen zoombar, aus/einblendbar, markierbar, h-cursor,V-cursor
- ...
Welches erschwingliche Tool könnte das leisten ?
Weiss jemand ob LogView geeignet wäre ?
Danke.
Gruss
Man siehts schon an den zahlreichen Antworten hier, wie groß das Angebot
ist :-)
Ja, danach suche ich auch schon lange :-(
Habe genauso CSV-Daten in großen Mengen und suche wirklich nur einen
simplen Viewer mit dem man sich diese bequem als zoombare Kurven zu
Gemüte führen könnte.Über RealView bin ich auch schon gestolpert- das
wärs eigentlich. Leider weigert man sich bei Abacom hartnäckig da eine
Import-Funktion einzufügen. Ansonsten gäbs schon ein paar Alternativen-
allesamt aber viel zu teuer und mit für meine Zwecke unötigen Funktionen
überfrachtet. Mathlab oder LabView wären wohl denkbar- sind jedoch weit
von einfacher Verwendung entfernt. Logview schließlich scheint zu
speziell an bestimmte Ladegeräte angepaßt und ist ebenso ungeeignet. Ich
bin vorerst bei der "Wetterstation Bedien- und Auswertesoftware" von
Werner Krenn hängengeblieben- aber nur als Notlösung. Bleibt eigentlich
nur festzuhalten dass hier wohl eine echte Marktlücke vorliegt... Kaum
zu glauben eigentlich bei den Unmengen an PC-Software ?!
Um Himmels willen- viel zu kompliziert in der Anwendung. Außerdem, wenns
nur um das einfache starre Darstellen von CSV-Daten geht ist Excel doch
absolut ausreichend.
datlog schrieb:> Deshalb suche ich also ein Tool (muss nicht kostenlos sein, aber doch> erschwinglich) das meine aufgezeichneten Daten verarbeiten kann.
Was sit erschwinglich? Und was bedeutet verarbeiten besonderns:
> Ein Datensatz enthält 40 Werte (ASCII Zeichenfolge, CSV ähnlich, könnte> noch angepasst werden) bestehend aus
Wie flexibel muß es auf ANpassungen des Datenfiles reagieren.
> - ...
Also blebiebig viele Funktionen zu kleinem Preis? ;)
Hallo!
Es kommt natürlich auf den Aufwand an, den du betreiben möchtest. Ich
hab gute Erfahrungen gemacht mit QtiPlot.
Das ist ein Programm zum visualisieren wissenschaftlicher Daten und kann
schon recht viel. Außerdem kann es mit Python skriptgesteuert werden.
Eine automatische Auswertung wäre somit also auch möglich.
Der Sourcecode steht unter GPL.
Gruß
NochEinGast
Starre Plot-Programme gibts wie Sand am Meer. Das ist wohl nicht gerade
das was hier gesucht ist. Matlab? Kann alles- aber mit welcher
Einarbeitungszeit und zu welchem Preis? Vergiss es.
Gruß Ronny
Danke mal für die Antworten.
Ich bin zwar Excel Freund, aber das was ich sehen will geht beim besten
Willen damit nicht.
Die anderen erwähnten Tools scheinen mir zu kompliziert bei der
Bedienung zu sein , Linux kann ich nicht oder kosten dann mehr als ich
bezahlen möchte.
Läubi .. schrieb:> datlog schrieb:>> Deshalb suche ich also ein Tool (muss nicht kostenlos sein, aber doch>> erschwinglich) das meine aufgezeichneten Daten verarbeiten kann.> Was sit erschwinglich?
Um mal ne Zahl zu nennen. Ich finde LogView für ca. 40 Euro
erschwinglich und einen fairen Preis. Ich persönlich würde auch das
doppelte oder etwas mehr sogar ausgeben wenn ich das bekommen würde was
ich suche.
> Und was bedeutet verarbeiten besonderns:
Ich möchte z.B einfach bestimme Stellen aus dem Graphen heraussuchen
können (z.B. Min und Max Werte) und mir dann die Umgebung bequem
anschauen. Andere Graphen dann dazu ein oder ausbelenden können.
Eigenlich nichts besonders oder ? An Flächenberechnung unter den Graphen
denke ich gar nicht.
>> Ein Datensatz enthält 40 Werte (ASCII Zeichenfolge, CSV ähnlich, könnte>> noch angepasst werden) bestehend aus> Wie flexibel muß es auf ANpassungen des Datenfiles reagieren.
Überhaupt nicht. Habe damit gemeint, dass ich mein Datenformat jederzeit
den Bedüfnissen des Visualisierungsprogramms anpassen könnte.
>> - ...> Also blebiebig viele Funktionen zu kleinem Preis? ;)
Nein, soweit würde ich nicht gehen. Die richtigen Funktionen (für mich)
zum richtigen Preis. (frag jetzt aber nicht was der richtige Preis ist)
Bin mir nicht sicher ob LogView inzwischen das doch kann. Soweit wie ich
gesehen habe ist es zwar mal für Ladegeräte ausgelegt worden, aber es
kann inzwischen doch erheblich mehr. Nur ich überblicke das noch nicht
richtig, werde mal nachfragen.
Eigentlich müsste man sich sowas selber schreiben, denn man bekommt
sicher nicht genau das was man sucht. Aber leider reicht es bei mir
nicht dazu.
Gruss
- Flexpro
- eins der zig Mathematik-Programmen (z.b. octave + gnuplot)
- DIAdem
- selber schreiben
Du wirst aber immer zusätzlichen Aufwand haben mit Datensatz
aufzubereiten, also Skripte schreiben.
Jan K. schrieb:> Gemüte führen könnte.Über RealView bin ich auch schon gestolpert- das> wärs eigentlich. Leider weigert man sich bei Abacom hartnäckig da eine> Import-Funktion einzufügen.
Kann ich nachvollziehen.
Das ist ein Fass ohne Boden
datlog schrieb:> Bin mir nicht sicher ob LogView inzwischen das doch kann.
Dann schau doch erstmal da nach.
> Eigentlich müsste man sich sowas selber schreiben, denn man bekommt> sicher nicht genau das was man sucht. Aber leider reicht es bei mir> nicht dazu.
Du kannst mir mal eine Testdatei zusenden dann schau ich mir das mal an
wie da der Aufwand wäre. Ich hab mal sowas in der Art rudimentär
entworfen es dann aber nicht mehr weiterverfolgt.
Danke auch für diesen Tipp.
Ich schau mir das mal genauer an. Aber mit Kommdozeilen hab ich's
nicht so. Der erst flüchtige Blick sagt mir allerdings auch, dass das
wohl unter Linux läuft.
Auch geht es mir nicht nur ums plotten. Das mag ja für kurze
Darstellungen ganz schön gehen, aber kann man damit Aufzeichungen z.B.
über zwei Wochen (im Durchschnitt mit 30 Sekunden Auflösung) lesbar
darstellen und könnte man dann schnell an einen bestimmtem Wochentag um
15:31 (willkürlich gewählt) gehen und dann die Graphen zur genaueren
Betrachtung aufziehen ? Ohne neues Skript meine ich ?
Gruss
datlog schrieb:> Ich schau mir das mal genauer an. Aber mit Kommdozeilen hab ich's> nicht so. Der erst flüchtige Blick sagt mir allerdings auch, dass das> wohl unter Linux läuft.
Neee, python läuft auch unter Linux.
> Auch geht es mir nicht nur ums plotten. Das mag ja für kurze> Darstellungen ganz schön gehen, aber kann man damit Aufzeichungen z.B.> über zwei Wochen (im Durchschnitt mit 30 Sekunden Auflösung) lesbar> darstellen und könnte man dann schnell an einen bestimmtem Wochentag um> 15:31 (willkürlich gewählt) gehen und dann die Graphen zur genaueren> Betrachtung aufziehen ? Ohne neues Skript meine ich ?
Mmhh, wenn das lese,
>- Graphen zoombar, aus/einblendbar, markierbar, h-cursor,V-cursor
zweifle ich, dass matplotlib geeigent ist.
Ich glaube, du kannst meinen Tipp wieder vergessen. Ich dachte an eine
Skript-Lösung, weil so viele Daten verarbeitet werden sollen. Bei so was
ist imho GUI immer nur eine Bremse.
datlog schrieb:> Für den Datenstrom, der auch auf die serielle Schnittstelle umgeleitet>> werden kann, habe ich mir ein Tool beschafft (RealView), das so in>> etwa das kann, was ich sehen möchte. Nachteil ist allerdings, dass man>> damit keine Daten importieren kann. Es geht nur über die COM>> Schnittstelle.
Datensatz -> Hyperterminal o.ä. -> COM2 -> COM1 -> Realview ;-)
Hallo DatLog!
Habe vor kurzem vor einem Ähnlichen Problem gestanden, die daraus
entstandene Lösung steckt im Anhang, einschliesslich der Quellen und
einer Beispieldatei als Muster. Du kannst horizontal rollen, skalieren
(Rechtsklick ins Diagramm) und einzelne Graphen ausblenden (klicken in
die Legende).
Das sieht schon mal gut aus, danke sehr für die Bereitstellung.
Für bestimmt Anwendung ist das schon mal prima.
Im csv Beispiel sind ganze Zahlen verwendet, würde das auch mit FP
Zahlen gehen?
Habe mal ein Bild angehäng die meine Realtimeauswertung zeigt und das
die
Zahlenbereiche angibt mit denen ich arbeite.
Gruss
Hallo Datlog!
Deine Anwendung ist auch genau meine erste Nebenanwendung an die ich
gedacht habe, als ich das Ding für die Firma programmiert habe. Daher
habe ich die Sache auch so universell wie möglich gehalten. Die Daten
werden mit "sscanf(cp,"%lf",&v);" in eine double Variable eingelesen,
hab gerade nochmal in den Quellcode geschaut. Vorher werden Kommas in
Punkte umgewandelt (ich hatte die Sache nämlich früher auch mit
deutschem Excel gemacht und daher an der Quelle die Punkte in Kommas
umgewandelt). Das Format 12,3 kommt übrigens in der Beispieldatei vor,
das scanf sollte aber auch mit 1.23E1 was anfangen können. Beim Öffnen
wird ein Skalierungsfaktor automatisch nach dem vorgefundenen Maximum
entsprechend gewählt, kannst aber mit Rechtsklick-höher oder
Rechtsklick-niedriger anpassen.
Gruß - Ingo
datlog schrieb:> R. M. schrieb:>> Datensatz -> Hyperterminal o.ä. -> COM2 -> COM1 -> Realview ;-)>> Was willst mir damit sagen ?
Folgendes möchte ich damit sagen:
Wie Du schon geschrieben hast, besitzt du bereits ein Tool (RealView)
dass Dir die Daten wie gewünscht anzeigt.
Allerdings funktioniert dieses Programm nur über COM.
Unter Umständen könnte also folgendes funktionieren:
Du sendest Deinen Datensatz per Hyperterminal (send Text) an eine COM-
Schnittstelle, diese verbindest Du mittels Nullmodemkabel mit einer
zweiten
COM Schnittstelle, und an der schnuppert Dein RealView.
Wie gesagt nur ein gutgemeinter Vorschlag der evtl. funktioniert und
nichts kostet.
R. M. schrieb:> Du sendest Deinen Datensatz per Hyperterminal (send Text) an eine COM-> Schnittstelle, diese verbindest Du mittels Nullmodemkabel mit einer> zweiten> COM Schnittstelle, und an der schnuppert Dein RealView.>> Wie gesagt nur ein gutgemeinter Vorschlag der evtl. funktioniert und> nichts kostet.>
Danke für den gutgemeinten Vorschlag. Das hatte ich soweit schon
verstanden.
Leider geht dabei aber die zeitliche Correlation verloren. Ist also
nicht praktikabel, denke ich.
RRDTool kenne ich. Hatte es sogar unter Windows laufen , ist aber nichts
zur
schnellen dynamischen Darstellung da scriptgesteuert.
Gruss
Karl heinz Buchegger schrieb:>> Gemüte führen könnte.Über RealView bin ich auch schon gestolpert- das>> wärs eigentlich. Leider weigert man sich bei Abacom hartnäckig da eine>> Import-Funktion einzufügen.>> Kann ich nachvollziehen.> Das ist ein Fass ohne Boden
Aber warum denn?
Vorgabe könnte eine kleine Formatzeile wie
dd.mm.yyyy;hh:mm;x.xxx;x;xx.xx ...
sein die Datumsformat,Zeitformat und Zahlenformat sowie das verwendete
Trennzeichen vorgibt und auf gehts!
Livegraph hab ich gerade mal ausprobiert- das ist auch "nur" eines der
vielen Plot-Programme. Zum Schluß leider noch mit Totalabsturz :-(
Der CSV-Viewer wär für mich in der Tat ein Schritt in die richtige
Richtung. Danke dafür an Ingo auch von meiner Seite! Das Ganze noch mit
weitgehender Konfigurierbarkeit der Werte-Interpretation, flüssigem
Scroll auf der Zeitachse, Zoomlupe in die Kurven hinein und der
Zusicherung, dass es mehrere Hunderttausend Datensätze mit einigen
Dutzend Werten unter Win7 verdauen kann wäre mir schon was wert!
Hatte zwar den Thread absichtlich nicht in diesem Forumsteil gestartet
weil ich dachte, eher Chancen zu haben dass es jemand liest der selber
Logger gebaut hat und deshalb was zum Thema weiss, aber Ordnung muss
wohl
ein.
Zurück zum Thema. Ich muss Jan K. zustimmen , bis jetzt habe ich nichts
gefunden was annäherend meinen (bescheidenen) Wünschen gerecht würde.
CSV-Viewer wäre wirklich ein guter Start wenn man paar Erweiterungen und
Verbesserungen einbringen könnte. Aber es ist leicht gesagt von jemandem
der es nicht selber erledigen könnte.
Werde vorerst weiter mit CSV-Viewer experiementieren.
Gruss
Hallo zusammen!
Wie ich schon geschrieben habe, ist der csv-viewer mehr oder weniger ein
Abfallprodukt von einer Verkehrsmessauswertung im TK-Bereich (dort
werden Datensätze alle 15 Minuten geschrieben), die Möglichkeit, damit
Logs von der µC-gesteuerten Solar/Heizungsanlage meiner Eltern damit
anzuzeigen hatte ich schon von Anfang an fest mit ins Auge gefasst.
Beschränkungen bezüglich der Dateigröße gibt es (theoretisch) nicht,
allerdings wird die Datei bei jedem Neuzeichnen vom Anfang bis zum
Beginn des "Sichtfensters" vorgespult, dann der Bildschirminhalt
angezeigt. Je größer Die Datei, umso länger dauert das. Vielleicht werde
ich das noch ängern, das ich den aktuellen Dateizeiger merke, dann geht
zummindesten das "Vorspulen" schneller. Gezoomt werden kann, wie bereits
geschrieben mit Rechtsklick ins Diagramm, der Horizontale Scrollbalken
hat, wenn man auf die Pfeile klickt, 4 Messwerte, wenn man in den
Bereich zwischen Knopf unf Pfeil klickt 96 Messwerte. Das stammt noch
von der Verkehrsmessdatenauswertung, da war es nämlich eine Stunde bzw
ein Tag. Das mache ich vielleicht noch einstellbar, macht nicht viel
Aufwand, sonst den Knopf vom Rollbalken mit der Maus verschieben. Mit
der Tastatur scrollen wollte ich auch noch einbauen. Dann ist mir noch
eingefallen, das negative Werte mit in die Zeitachsenbeschriftung
geplottet werden (Außentemperatur) das muss ich auch noch anpassen. Ich
weiss aber noch nicht, wann ich die Sache weiter verfolgen kann, hab im
Moment nämlich noch paar Baustellen.
Ich bleibe aber am Ball, und werde das Teil dann hier wieder anbieten -
versprochen!
mfG Ingo
Moin Datalog,
Habe mal was gebaut teste doch mal wie die Performance bei dir ist.
Benötigt Java und hat derzeit nur eine Zoom/Scrollfunktion.
In der Komandozeile:
> Erzeugen einer Testdatei mit 200'000 Zeilen:
Hallo zusammen!
Habe die letzten Stunden ein Wenig am csv_viewer und der dazugehörigen
Dokumentation (pdf) gebastelt.
Stichpunkte:
- Scrollen mit Tastatur, Scrollweite einstellbar
- Fenstergröße und Position wird gespeichert
Zwar noch nicht alle Wünsche erfüllt, aber habe ja versprochen
weiterzumachen.
mfg ingo
Habe seit Samstag kein DSL mehr, kann deshalb erst heute antworten.
@ Läubi
Danke für den schnellen Versuch. Die Performance wäre ok.
Ist auch ein intressante ausbaufähige Variante. Machst du da weiter ?
@ Ingo
Danke auch dir für die Erweiterung. Wenn mal die negativen Zahlen
angezeigt werden können, stelle ich mal mein Loggeformat testhalber um.
Inzwischen sammle ich auch paar Fragen bzw. einige Vorschläge dazu.
Gruss
datlog schrieb:> @ Läubi> Danke für den schnellen Versuch. Die Performance wäre ok.> Ist auch ein intressante ausbaufähige Variante. Machst du da weiter ?
Wenn Interesse besteht ja, ich habe am WE das ganze noch etwas
erweitert, sodass auch Achsen angezeigt werden und man bereiche per
"Drag&Drop" abmessen kann. Support für negative Zahlen müßte ich noch
einbauen ;)
Hallo.
Dann möchte ich euch beide ermuntern weiter zumachen. Ich denke viele
Beobachter dieses Threads werden euch dankbar sein.
Aber vielleicht könnt ihr euch noch auf ein Eingabeformat einigen. Das
würde den Test erheblich vereinfachen.
Wenn ihr erlaubt, würde daher das Format von Ingo vorschlagen. Wobei
man unter Umständen auf die erste Zeile verzichten könnte. Das
Datum/Zeitformat ist eh bekannt, die Anzahl der Kanäle lässt sich
ermitteln und die Benamung wäre natürlich flexibiler wenn man das nur
auf der Toolseite machen und ggf. ein spez. Ini-File dazu nutzen würde.
(Bitte meine "Schlaumeierei" zu entschuldigen).
Grüße
gerade bei Datum/Zeit hätte ich den Vorschlag auch 'Ticks' benutzen zu
können z.B. Millisekunden seit Start oä, ggf. auch nur einfach einen
Zähler der die Zeilen zählt.
Ich seh jetzt natürlich das Problem, dass wenn wir jetzt hier anfangen
eine Wunschliste zu erstellen von allen möglichen und unmöglichen
Varianten, dass wir die Bereitschaft der Programmierer doch zu stark
strapzieren.
Die eierlegende Wollmilchsau wir es nicht geben!
Ich würde jetzt erst mal lieber vorschlagen, auf der Basis dessen was
die beiden hier schon präsentiert haben , erst mal das Notwendigste
einzubauen, wenn sie sich denn schon dazu bereiterklären. Es muss
ihnen letztendlich auch noch Spass machen und man muss Erfolg sehen,
sonst haben wir vielleicht am Ende gar nichts!
Statt der Dateizeigermerkung wäre vielleicht eine Funktion nützlich, die
Dateien öffnen kann, die mit einer Timestamp versehen sind.
Also sowas: "2010-06-07_13-24-50_myLogdaten.csv".
Dann wird man keine Probleme mit zu großen Dateien bekommen, und die
Zugriffszeit hängt dann nicht mehr von t ab, sondern nur noch von der
Zugriffsgeschwindigkeit des Betriebssystems in seinem Verzeichnis.
Für sehr umfangreiche Datenbanken (à la "Historische Einwohnerzahlen
Jerusalems seit Gründung der Stadt" ;-) evtl. eine Gruppierung in
Verzeichnisse (Jahre) erlauben.
Ich habe deine Software noch nicht ausprobiert (sieht aber aus, als
hätte sie Potential), aber wie ist das mit der Skalierung? Wird die den
Werten entnommen (automatische Skalierung) oder ist sie irgendwie
vorgegeben? Eine Konfigurierbarkeit dieser Eigenschaften wäre evtl.
nützlich. Autoscaling ist praktisch zum Testen, und auch für viele
Anwendungen, aber manchmal möchte man im Interesse der Vergleichbarkeit
und wegen der Gewöhnung des Benutzerauges lieber eine fest eingestellte
Skalierung.
Und natürlich wünscht man sich Transformationsfunktionen (log, 1/x
usw.), im Idealfall sogar frei wählbar.
Und eine sehr wichtige Frage: Lizenz? Ich persönlich hätte wenig Lust,
zu einer Software beizutragen, die ich nicht auch selbst weitergeben
dürfte. Dann (re)implementiere ich die Sachen lieber selbst, weil ich
keine solchen Fesseln will (habe wirklich schon mehr als zu viel davon
gehabt in meinem Leben).
datlog schrieb:> anfangen eine Wunschliste zu erstellen
Ist bei dem allgemeinen Thread-Titel zu erwarten und völlig legitim. Für
spezielle Software sollte auch ein entsprechend spezieller Titel gewählt
werden ("Logviewer XYZ von <Name>").
Man muss ja auch an all die zukünftigen Neulinge denken, die immer auf
die Suchfunktion verwiesen werden. Wenn das Haus dann nicht ein wenig
aufgeräumt und logisch organisiert ist, verlaufen sie sich ja darin.
@ didadu
Ich sage ja nicht dass es nicht legitim ist. Wenn du den Thead von
Anfang verfolgt hast, siehst du , dass sich die
Situation mit den Möglichkeiten ja erst im Nachhinein ergeben hat.
Mir liegt nur daran, ich weiss dass aus eigener Erfahrung, dass wenn
sich schon jemand dazu bereit erklärt SW in diesem Umfang
bereitzustellen,
man ihn nicht überfordern sollte. Die beiden machen das ja sicher auch
nur in Ihrer Freizeit und da hat man die Lust schnell mal dran verloren
weiter zu machen.
Also, bitte die beiden erst mal machen lassen, wenn sie es wollen. Werde
mich jetzt auch raushalten und abwarten.
Gruss
Wer fordert hier? Es sind Verbesserungsvorschläge. Das eine oder andere
kann vielleicht auch für die Programmierer eine unerwartete, nützliche
Anregung sein. Warum soll man den kreativen Flow von vornherein mit der
Schere im Kopf wegen vermuteter Überempfindlichkeiten einschränken?
Das mit der Lizenz ist aber doch eine wichtige Frage. Ich habe schon
Monate verbracht, um MEINE Daten wieder aus nichtöffentlichen Programmen
und Geräten zu befreien, und gewisse Projekte waren über JAHRE blockiert
wegen sowas, oder mussten reimplementiert werden. Dann lieber gleich von
Anfang an richtig machen.
datlog schrieb:> Wenn ihr erlaubt, würde daher das Format von Ingo vorschlagen. Wobei> man unter Umständen auf die erste Zeile verzichten könnte. Das
Bis auf das die erste Zeile formatangaben enthält und die erste Spalte
das "Datum" ist das Format frei einstellbar (s.o.)
> Datum/Zeitformat ist eh bekannt, die Anzahl der Kanäle lässt sich> ermitteln und die Benamung wäre natürlich flexibiler wenn man das nur> auf der Toolseite machen und ggf. ein spez. Ini-File dazu nutzen würde.
Ich würde einfach eine weitere config-zeile (wie bei den Farben)
vorsehen.
didadu schrieb:> Dann wird man keine Probleme mit zu großen Dateien bekommen, und die> Zugriffszeit hängt dann nicht mehr von t ab, sondern nur noch von der> Zugriffsgeschwindigkeit des Betriebssystems in seinem Verzeichnis.
Mit I/O wird das ganze zu langsam fürchte ich.
log2 schrieb:> gerade bei Datum/Zeit hätte ich den Vorschlag auch 'Ticks' benutzen zu> können z.B. Millisekunden seit Start oä, ggf. auch nur einfach einen> Zähler der die Zeilen zählt.
Bei mir kannst du als "Datum" auch einfach eine Zahl nutzen (mußt nur
den entsprechenden Formatbezeichner angeben)
Läubi .. schrieb:>> Dann wird man keine Probleme mit zu großen Dateien bekommen, und die>> Zugriffszeit hängt dann nicht mehr von t ab, sondern nur noch von der>> Zugriffsgeschwindigkeit des Betriebssystems in seinem Verzeichnis.> Mit I/O wird das ganze zu langsam fürchte ich.
Hm, jein.
Wenn man sich EINE ewig lange Zeitreihe INSGESAMT darstellen lassen
will, dann müssen bei zeitgestückelter Speicherung natürlich viele
Dateien geöffnet werden. Soweit stimme ich Dir zu.
Wenn man aber oft nur einen Ausschnitt (einzelne Tage / Monate) davon
braucht, spart man sich die Sucherei innerhalb der einen
Pentabyte-Datei, wenn man die Stücke direkt ansteuern will.
Ich denke, aber einer gewissen Datenmenge werden komplexere Verfahren
unerlässlich.
Können die hier schon genannten Plot- und View-Programme die Daten
eigentlich auch direkt über eine Schnittstelle (RS232, USB, I2C, ...)
LIVE annehmen, speichern (Dateien/externe Datenbank) und auch LIVE
darstellen?
Am Besten mit Modulen, die man konfigurieren und/oder selbst schreiben
kann, und die das Programm dann regelmäßig zeitgesteuert aufruft oder
die es als Events verarbeiten kann?
Warum? Weil: Bei mir läuft ein Projekt meist so ab:
- Ich will irgendwas wissen. Dazu muss dann erstmal ein/mehrere
Sensor(en) her.
- Wie kriege ich die Daten nun zum Computer? D.h. über welchen Stecker
kommen die Daten rein (Seriell, USB, LAN, ...)? Wie kommen die Daten bis
zum Stecker (RS232-USB-Wandler? CAN-Parallel? Ethernet direkt?).
- Dann müssen sie irgendwo hin. Hier wird's jetzt interessant, weil man
ja:
1. Erstmal "schnell was sehen will": da reichen dann die Commandline,
ein Terminal, nc usw.
2. Hmm, es ist interessant. Jetzt will ich das mal speichern. Also wird:
2.1 geloggt in eine Datei mit einer Umleitung >, um das schon mal
analysieren zu können. Das macht man dann mit einem kleinen Script, um
höhere Abstraktionsebenen der Daten zu visualisieren (gnuplot & Co).
2.2 geloggt über ein Programm, weil man nach einer Weile keine Lust mehr
hat, das immer von Hand zu machen. Ein Script muss her, das die Daten
holt und irgendwohin wegschreibt. Vielleicht auch mit cron.
2.3 geloggt in eine Datenbank. Das lässt man dann mal so nebenbei
mitlaufen. Über Minuten, Tage, Wochen.
2.4 dann will man es in eine richtige Datenbank tun und es soll ständig
laufen, weil man keine Lust mehr hat, seine Daten wie einen Tamagotchi
mit Aufmerksamkeit überhäufen. Es muss also vollautomatisch laufen, und
ab und zu kann ich mir das anschauen oder werde sogar gewarnt, wenn was
nicht läuft oder bestimmte Schwellenwerte überschritten werden. Also
muss das auf einen Server, den man irgendwo bei sich (oder anderswo)
stehen hat.
Also, es ist wirklich immer derselbe Ablauf. Und ich denke, ein
Programm, das Daten direkt, z.B. über die serielle Schnittstelle, USB
oder einen integrierten Webserver annehmen, speichern und darstellen
kann, würde einem (mir zumindest) eine Menge Fummelkram (aka mehrere
Schritte dieser Prozedur) abnehmen. Wenn man dann noch automatisch den
Demon erstellen kann, der das auf dem Server umsetzt, wäre es noch
besser.
didadu schrieb:> Und ich denke, ein> Programm, das Daten direkt, z.B. über die serielle Schnittstelle, USB> oder einen integrierten Webserver annehmen, speichern und darstellen> kann,
Also für die Live-Darstellung gibts doch nun Programme (z.B. LogView,
RealView)- das war ja nun gerade NICHT Anliegen dieses Threads... Um die
komfortable Darstellung von Daten aus CSV-Logfiles gehts hier!
Habe heute mal Ingos neuester Kreation meine Daten vorgesetzt. Das ging
leider nicht ohne diese zuvor durch CSVed gejagt zu haben (Empfehlung!),
der mir alle Text- und andere nichtnumerische Wertspalten die in den
Daten enthalten waren entfernen musste. Daher mein allerdringlichster
Wunsch, man möge nicht zu berücksichtigende Spalten in der ersten Zeile
mit einem Ignore-Tag o.ä. kennzeichnen können! Desweiteren sollten allen
Werten vorangestellte Zeichen wie Nullen, Vorzeichen und Leerzeichen
nicht stören sowie das Trennzeichen vorzugeben sein. Sowie das umgesetzt
ist wäre für mich eine gewisse Grundfunktionalität gegeben. Ansonsten
finde ich die Idee, mit der ersten Log-Zeile gleich die Legende zu
liefern sehr gut und ausreichend. Das verwendete Format von Datum und
Uhrzeit ließe sich dort evt. ja auch gleich vorgeben.
Das Spazierengehen in den Daten ist natürlich bislang noch alles andere
als komfortabel, insbesondere der Zeitachsen-Schieberegler stockt und
wird auch dauernd verdeckt (ich arbeite unter Win7). Die Anzeige des
Kurvenwerts an der Mausposition wäre in meiner Prioritätenliste auch
ganz oben...
OK, Wünsche sind natürlich unendlich schneller formuliert als umgesetzt-
ich hoffe Ingo bleibt motiviert. Was mich angeht solls nicht für umsonst
sein. Wie man jedenfalls sieht besteht an einer solchen Software
wirklicher Bedarf.
> Also für die Live-Darstellung gibts doch nun Programme
Der TE hat doch auch Daten seriell erfasst, oder habe ich das falsch
verstanden?
Ich habe mir heute, angeregt durch diesen Thread, den ganzen Nachmittig
Viewer angeschaut. Da habe ich viele interessante Anregungen gefunden,
was so ein Viewer meiner Meinung nach können sollte, aber eine derart
integrierte Lösung mit Spezialfunktionen, wie ich sie mir vorstelle,
kann kein Programm. Und ohne Open Source geht das schon mal gar nicht.
Closed Source ist für mich eine Lösung für Leute, die nicht hacken (=
umbauen, erweitern) wollen. Genau das will ich aber!
Ich stelle mir das so vor, dass die Software sowohl Live-Daten auf live
auswählbaren Kanälen erfasst, möglichst automatisch das Datenformat
bestimmt, die Daten in live auswählbare Speicherorte (Datei,
verschiedene Datenbanken usw.) loggt und ggf. auch über andere
Schnittstellen weitergibt (ähnlich GPSd abrufbar, oder mit einstellbaren
Webzugriffen gegen PHP-Scripte, RPC o.ä.) als auch historische Daten aus
eben diesen selben Quellen darstellt.
Wenn ich mir dann eine Oberfläche (d.h. die gewünschten Eingangskanäle,
Kurven, Einheiten, Skalierungen) zusammengekonfiguriert habe, möchte ich
gerne daraus automatisch ein die Installationsscripte für einen zweiten
Rechner exportieren können (Init-Script, das z.B. die MySQL-Tabellen
erstellt, die Zielschnittstelle richtig konfiguriert, evtl. den
Cron-Eintrag macht, das Startscript auswirft), und dazu ein CGI-Script
(für Apache o.ä.), das ich dann auf dem Webserver laufen lassen kann und
das dort dieselben Grafiken abrufbar macht. Dann nämlich kann ich den
Sensor am Development-Rechner testen und muss die ganze restliche Arbeit
nur einmal machen, kann das also im Grunde das Paket auf dem Endrechner
installieren und dann einfach den Stecker vom einen Rechner abziehen, an
den anderen anstöpseln, und die Sache läuft gerade so weiter. Bau sowas
mal mit Closed Source...
Mit dem, was ich heute so gesehen habe, kann man den ersten oder den
zweiten Schritt gehen, aber nicht die ganze Kette. Und erweiterbar geht
auch nicht ohne Sourcen.
Man kann sich natürlich auch mit weniger zufrieden geben. Habe nichts
dagegen. Jeder muss ja mal irgendwo anfangen.
Aber warum am Boden kreuchen, wenn uns der Himmel offen steht!
Hallo zusammen!
Habe mal die Wünsche überflogen und werde mal sehen, was sich
realisieren lässt:
- negative Zahle, mir vertikaler Scrollmöglichkeit ist das nächste, was
ich realisieren möchte, horizontales und vertikales Zoomen geht zwar
schon von Anfang an, vertikales ist aber (noch) bezogen auf die
Nulllinie;
- Eingabeformat: bevor ich mit dem CSV-Viewer angefing, habe ich das,
wie Andere hier im Thread auch, mit Excel gemacht. Und das Format mit
Semikolon als Spaltentrennzeichen, und Komma als Dezimaltrennzeichen war
mir daher schon vorgegeben. Dementsprechend habe ich meine Datenquellen
(Bedienprogramm für Steuerrechner) gestaltet und ich könnte mir
vorstelln, Andere haben es auch so gemacht. Ich könnte natürlich
zusätzliche Spaltentrennzeichen (z.B Tab) zusätzlich akzeptieren, aber
kein Komma, weil das ja schon eine Funktion hat! Daher ein anderer
Vorschlag: Ich bereite für verschieden Formate (da bräuchte ich dann
eine Musterdatei) je ein kleines Kommandozeilenprogramm vor
(selbstverständlich auch GPL, mit Quelltext, ich versuche auch, den
lesbar zu halten), mit dem die benutzereigenen Rohdaten erst einmal
umgewandelt werden und dann mit dem Viewer angezeigt. Das kann dann mit
einer kleinen Batchdatei in etwa wie folgt stattfinden:
convert %1 temp.csv
csv_viewer temp.csv
del temp.csv
Eventuell baue ich den Aufruf dieses benutzerdefinierbaren Konverters
später auch mit ein;
- @didadu: Aufsplitten der Rohdaten verkürzt natürlich die die Suchzeit,
bzw das Suchen nach der Datei wird an das Betriebssystem abgewälzt, ich
merke aber schon am Explorer, wenn ich einen Ordner mit paar zigtausend
Dateien öffne, zum Andern, welches Programm legt die so ab? Zum Thema
(automatische) Zum Thema Skalierung, bitte in mal in die Anleitung der
schauen, aktuelle (und bestimmt nicht letzte)) Version hier im Anhang,
da hab ich was drüber geschrieben. Ebenfalls zum Thema Lizenz, bitte ein
kurzer Blick in die Hilfe.
- Aufzeichnen von Daten, die über die serielle Schnittstelle reinkommen:
werde ich in den CSV-Viewer nicht direkt implementieren können, habe
aber folgenden Vorschlag: Ich habe ein selbstgestricktes
Terminalprogramm, um auf selbstgestrickte 8051-Boards mit RAM als
Programmspeicher Programme "hochzuladen" (darf man da beliebig oft) in
dieses werde ich eine Logfunktion einbauen, die bei Bedarf eine Zeile
puffert, und wenn ein CR oder LF eintrifft, diese Zeile, mir
vorgesetztem Zeitstempel in eine Datei schreibt. Wäre dann natürlich
auch GPL. Diese Datei muss nicht ständig offen sein, sondern nur zum
Anhängen einer neuen Zeile, dann kann man gleichzeitig, wärend die Datei
geschrieben wird, schon die bereits geschriebenen Werte anschauen, also
fast live;
- Was mir noch ein wenig Sorge bereitet, ist das schon von Einigen
angesprochene Thema Performance, da ich hier bisher nur mit relativ
kleinen Dateien arbeite (31 Tage*96Werte je Tag), allerdings dann schon
mal bis zu 32 Spalten und unterschiedlichsten Spaltenbeschriftungen.
Daher möchte ich die Legende auch unbedingt mit Diesen initialisieren.
Allerdings hab ich hier auch nur nen kleinen EeePc da müsste man
rechtzeitig merken, wenns hängt. Also, wenn Ihr merkt, das es mit Euren
Dateigrößen unakzeptable Probleme gibt und ihr nicht Splitten könnt, ist
dieses Konzept wohl nicht das Richtige. Ich kann das Programm hier unter
XP und Server2003 testen. Es ist eine ganz normale Win32-Anwendung,
sollte also eigentlich auch unter Vista oder W7 funktionieren.
dann bis zum nächsten Mal - Ingo
didadu schrieb:> Aber warum am Boden kreuchen, wenn uns der Himmel offen steht!
Sicher. Nur abheben muss leider der Programmierer. Deshalb besser dessen
Schultern nicht zu sehr belasten :-)
@Ingo: Das Komma als Trennzeichen wär sicher problematisch. Mir würde
bereits das TAB=09H genügen. Und bezgl. Performance sollte C gegenüber
einer Java-Version doch genügend Spielraum bieten :-)
OK ich werde jetzt auch mal in mich gehen und für die für mich
sinnvollen Features dann bei Gelegenheit hier gesammelt offenbaren. Wär
wirklich Klasse wenn was draus wird. Die dezentrale Datenerfassung mit
stromsparenden Controllern und den inzwischen so günstigen
gigabytegroßen Datenspeichern bringt es einfach mit sich, dass immer
mehr und immer grössere Logdateimonster effizient und komfortabel
ausgewertet werden wollen. Schön, wenn es endlich entsprechende,
universell verwendbare Werkzeuge dafür gäbe die sich auch jeder
Hobbyelektroniker leisten kann!
Jan K. schrieb:> Ansonsten> finde ich die Idee, mit der ersten Log-Zeile gleich die Legende zu> liefern sehr gut und ausreichend. Das verwendete Format von Datum und> Uhrzeit ließe sich dort evt. ja auch gleich vorgeben.
Ein universelles Tool bei dem man nicht oder nicht dauerhaft den Namen
der Graphen , Farbe etc. ändern kann , ist nur die Hälfte wert. Der
Openformat Ansatz bei Logview geht mehr in die Richtung die ich aus
Sicht der Eigenbau-HW bevorzugen würde. Die HW muss die Daten liefern,
was man draus macht, ist Sache des Visualisierungstools.
datlog schrieb:> Die HW muss die Daten liefern,> was man draus macht, ist Sache des Visualisierungstools.
Nun gut, für ein Tool das so universell sein soll wie es universeller
nicht geht würde ich dem auch zustimmen. In der Praxis aber sind und
bleiben doch gemessene Werte das was sie sind, z.B. Außentemperatur oder
Akkuspannung. Warum soll das dann nicht bereits in der Log-Datei fest
vermerkt sein? Unabhängig davon können alle Attribute der
Messwertreihe/Kurve ja gerne über das Programm änderbar und in dieselbe
Log-Datei zurück speicherbar sein.
> Warum soll das dann nicht bereits in der Log-Datei fest vermerkt sein?
Eben. Es ist ja ein "kann", nicht ein "muss". Warum nicht seinen Boards
und Sensoren jeweils eine ID usw. verpassen geben.
Wie und ob die Software das nutzt, ist ja ihr und ihrem Gott (aka User)
überlassen.
#Logger-Daten
#LogName: Michelle's Kleingarten
#BoardID: 123
#BoardVersion: V0.3
#BoardLocation: 38.89767°N 77.03655°W
#Format: Tablist
#ColumnHeaders: Nr, Timestamp, TemperaturLuft, TemperaturBoden,
Maulwurflichtschranke, Regensensor
#ColumnUnit: #, Unix, °C, °C, Event, t/mm²
#ColumnCalibration: -, GMT, f(x)=x*0.01-0.3, f(x)=x*0.5+12, -, 1
Daten
Klingt gut. Nicht nur,daß das Visualisierungsprogramm sofort fest- und
darstellen kann was wirklich Sache ist. Ich finde das vereinfacht den
Umgang mit Log-Daten ungemein. Man stelle sich auch den Fall vor,
anonyme Log-Daten nur mit einem ASCII-Editor bewaffnet beurteilen zu
müssen.
Ingo hat die Gelegenheit einen neuen Logfilestandard zu kreieren :-)
Sehe schon , ich bin auf verlorem Posten!
Jan K. schrieb:> Unabhängig davon können alle Attribute der> Messwertreihe/Kurve ja gerne über das Programm änderbar und in dieselbe> Log-Datei zurück speicherbar sein.
Meiner Ansicht nach wäre das "doppelt gemoppelt".
Beim CSV-Viewer ist die von euch gewünschte Variante ja momentan ein
muss, wenn ich es richtig sehe. Mir würde das so aber nicht reichen.
Wenn es denn beide Möglichkeiten geben würde und man nicht zwangsweise
alles schon ins Datenfile packen muss, wäre mir das aber natürlch auch
recht.
Ausserdem möchte ich nicht das mir irgend jemand, irgend etwas
in mein Logfile schreibt.
didadu schrieb:> Wie und ob die Software das nutzt, ist ja ihr und ihrem Gott (aka User)> überlassen.
(Du scheinst es ja sehr mit himmlischen Mächten zu haben)
Das verstehe ich nicht, welche Software? Der User ist kein Gott . Der
Gott ist der Programmierer des Visialisierungstools . Wenn er es nicht
einbaut und beides vorsieht , kann man gar nichts machen.
So ich leg dann auch mal nach ;)
Änderung ist das man nun auch Skalen hat (wie oben beschrieben).
Per Mouse-Drag kann man einen Bereich "abmessen".
Auf der rechten Seite kann man nun auch Graphen an/abschalten.
Außerdem existiert eine weitere Formatzeile
1
#n;Name1;Name2 ....
Um den Graphen einen Namen zu verpassen. (Siehe auch Beispieldatei)
Intern ist es sogar jetzt möglich aus beliebigen Quellen zu plotten
(TCP/UDP/RS232/Datei/...) und das Trennzeichen zu wählen, ist nur in der
aktuellen Version noch nicht zugänglich.
Aufruf/Verwendung/Testfilegenerierung sind gleichgeblieben.
Hallo zusammen!
Habe den CSV_View gründlich überarbeitet und mit realistischen Daten
getestet (Danke @datlog für die Bereitstellung) hab doch ne Menge Macken
gefunden. Der Anfang von dem Konvertierungstool ist auch schon da.
Bitte in die Doku schauen, weil ich das hier im Text nicht alles
aufzählen kann.
mfG Ingo
Hallo zusammen!
Leider hat auch diese Version einen Fehler, wenn man das Programm, ohne
Angabe eines Dateinamens ("csvview dateiname") aufruft, Hängt es sich
auf, oder stürzt ab. Korrektur wird prompt nachgeliefert!
mfG
Ingo
Und hier die korrigierte Version!
In der Antwort auf die "WM_Paint" MSG habe ich zwar ordentlich vorher
abgefragt, ob eine Datei geöffnet ist, aber in "WM_MOUSEMOVE", die für
das Vermessen der Werte mit der Maus zuständig ist, hab ich die Abfrage
vergessen - Sorry !
mfG Ingo
Hallo Ingo, in der .exe ist beim Aufruf pur immer noch der Wurm drin
(unter WinXPSP3).
@D.I. Werkzeuge zum selber programmieren gibts sicher viele- gesucht ist
doch hier aber eine erschwingliche Fertiglösung
Hallo zusammen!
Die verunglückten Versionen im Verlauf tun mir leid, habe das Program
aus meinem letzten Beitrag (18.54) wieder runtergeladen und es hat
funktioniert (WinXP SP3). Ich habe das Program "einfach so" aufgerufen,
dann mit "Datei öffnen" 2 Testtateien angezeigt. Bei Problemen bitte
dieses Archiv runterladen - nix für ungut! Im Zweifelsfalle, mir mal
eine Musterdatei schicken.
Ingo
Es gibt mal wieder eine neue Version.
Das letzte Problem bestand im Einladen der gespeicherten
Nutzereinstellungen, die sind vom Programmverzeichnis ins Nutzerprofil
umgezogen ("dokumente und einstellungen\...") War da nichts gespeichert,
machte es Bumm, Da bei mir die Datei schon da war, hab ichs nicht
gemerkt - sorry!
mfG
Ingo
Hallo Ingo!
Programm und Doku haben sich prächtig weiterentwickelt. Die rein
numerische Darstellung auf einer Skale von vielen (natürlich
Einheiten-behafteten) Daten aus unterschiedlichsten Quellen ist
gewissermaßen der kleinste gemeinsame Nenner im Nutzwert,den das
Programm momentan bieten kann. Quasi absolute Grundfunktionalität.
Leider bin ich noch nicht dazu gekommen meine Daten ohne vorherige
Bearbeitung einzulesen. Convert.exe erstellt zwar aus der Config.txt
eine erste Zeile mit den tatsächlich verwendeten Spaltenwerten- das wars
aber dann auch. Es könnte ja an meinem Trennzeichen liegen (TAB). In der
Doku wird zwar ersichtlich dass etwa auch ein Komma möglich ist- aber ob
& wie das verwendete Trennzeichen nun vom Konvertierprogramm
berücksichtigt wird ist mir weiter unklar. Und hat es was zu bedeuten
dass in der Doku das Uhrzeit-Format jedesmal mit Punkten statt dem
regulären Doppelpunkt daherkommt?
Für die Zukunft wär es natürlich praktisch wenn das Programm eine
config.txt direkt berücksichtigt ohne Umweg über ein extra
Konvertierprogramm.
Schade dass der horizontale Rollbalken entfällt. Damit entfällt vorerst
auch die reine Mausbedienbarkeit. Eventuell wären als Notlösung
entsprechende Scrollbuttons der nächst einfachere Weg? Ein super
Komfort-Feature wäre sicher die Verschiebbarkeit der Kurvenoberfläche
mit der Maus, ebenso wie ein aufziehbarer Zoomrahmen. In der ferneren
Zukunft, versteht sich.
Vorerst und zuletzt noch eine leise Anregung zu einem eher unwichtigem
Aspekt, dem Programmnamen und einer evt. Änderung nämlich. Unter
"CSV-Viewer" finden sich im Netz eigentlich nur Programme mit
langweiligen rein tabellarischen Werteansichten. Davon unterscheidet
sich Ingos Viewer nun aber ganz gewaltig :-)
Hallo Jan(pit1)!
- Der Konverter ist derzeit noch im Anfangsstadium, derzeit mit Komma
als Trennzeichen (Format des Threadinitiators), bin gerade noch bei
kleinen Fehlerbereinigungen, dann wird der Konverter auch TAB's als
Trennzeichen akzeptieren;
- Datumsformat ist hh:mm:ss , wenns in Doku anders steht, muss ich es
korrigieren;
- Scrollbuttons werden wieder reinkommen;
- Am Konvertierungsprogramm werden wir nicht rumkommen, dazu sind die
Anforderungen zu unterschiedlich, aber später wird beides integriert;
- über tolle Namen möchte ich nicht nachdenken über so ein unwichtiges
kleines Tool
mfG Ingo
Ingo schrieb:> über so ein unwichtiges> kleines Tool
Einspruch! Sag sowas bitte nicht!
Ich freue mich daß die Entwicklung unvermindert weitergeht
und warte gespannt auf die nächsten Versionen.
Hallo zusammen!
Es gibt mal wieder eine neue Version:
- kleine optische Fehler gefixt,
- paar Vorschläge berücksichtigt (siehe History in der Doku)
mfG Ingo
Hallo zusammen!
Es gibt mal wieder eine neue Version:
- Knöpfe zum Rollen mit der Maus
- Möglichkeit einzelnen Graphen Fett hervorzuheben
Zusammenfassung: siehe History
mfG ingo
Ingo schrieb:> über so ein ... kleines Tool
An der Programmentwicklung kann man gut studieren, welches Know-How
unter der Oberfläche für das saubere Funktionieren stecken muss. Von
kleinem Tool kann wohl kaum die Rede sein.
Die neu eingeführten Scrollknöpfe setzen im Augenblick den
Tastaturscroll außer Kraft, begleitet von schweren Darstellungsfehlern
der Kurven bis hin zu deren Verschwinden. Getestet unter Win7.
Das Fettschalten des interessierenden Graphen über die Legende ist eine
schöne Idee und funktioniert schon gut!
Das das Scrollen mit der Tastatur, nach Betätigen der Knöpfe nicht mehr
funktioniert, liegt daran, das die Knöpfe bei Betätigung, den
Tastaturfokus erhalten. Da muss noch mit rein, das sie selbigen nach
Betätigen wieder ans Hauptfenster zurückgeben. Wird in der nächsten
Version funktionieren.
mfG Ingo
Fehlerkorrektur:
In dieser Version sind die gerade von Jan angesprochenen Fehler
korrigiert, außerdem die Tasten zum Scrollen etwas umbelegt (hoffentlich
nutzerfreundlicher, wenn nicht, mach ichs wieder rückgängig)
mfG Ingo
Diesmal Änderungen hauptsächlich im Konverter:
- Trennzeichen einstellbar
- Verbesserung bei unstetiger Messwertaufzeichnung
ansonsten kleine Verbesserungen an der Oberfläche und wie immer der
Hinweis auf die History.
mfG Ingo
Scrollen klappt nun in jeder Richtung, die Knöpfe schauen auch besser
aus. Für meine Bedürfnisse langen die Navigationsmöglichkeiten fürs
erste aus - getestet mit den Muster-Daten. Ich hoffe das Programm kann
nun mit meinen eigenen ebenso robust umgehen, das wär mir jetzt das
Wichtigste. Insbesondere meine ich damit nicht nur das Trennzeichen
(Danke für's TAB :-) sondern auch den korrekten Umgang mit numerischen
Strings die Vor- und Leerzeichen enthalten. Mein Test(bericht)
diesbezüglich folgt Anfang nächster Woche. Eine Anregung vielleicht doch
noch zum Fettschalten: Mit dem gleichen "Legendenknopf" verbindet man
intuitiv auch die Ausschaltmöglichkeit ...
Hallo Jan!
Du meinst mit Ausschaltemöglichkeit Klicken markieren/demarkieren,
Doppelklicken sichtbar/unsichtbar? ich glaube, das geht zu machen.
Solltest Du mit dem Import noch Probleme haben, kannst ja mal ein
(gekürztes?) Muster bereitstellen?
Dann erstmal schönes WE! ingo
Ingo Wendler schrieb:> Du meinst mit Ausschaltemöglichkeit Klicken markieren/demarkieren,> Doppelklicken sichtbar/unsichtbar?
Ja Ingo- vielleicht genau so.
Evt. Importprobleme melde ich natürlich, ggf. mit Nachweis :-)
Gruß und produktives WE!
Jan K. schrieb:> Gruß und produktives WE!>
Da das Wetter hier in NRW nicht so berauschend war, hab ich das WE
wirklich produktiv genutzt und die Wunschliste ein wenig abgearbeitet.
Das Resultat, wie immer im Anhang, mit dem Hinweis auf die Doku.
Wichtigste Stichworte:
- zoomen auf Cursorposition
- Export von rausgepickten Messwerten
mfG ingo
Hallo Ingo,
der Konverter zeigt sich inzwischen arbeitswillig, erzeugt aber (mit
meinen Daten) noch keine korrekte Vorlage für den Viewer. Insbesondere
werden immer wieder 0-Werte eingestreut wo keine hingehören. Folge:
Zerstörung der Wertezuordnung. Desweiteren gibt es ganzzahlige
Abweichungen von den Originalwerten; Nachkommastellen bleiben zudem
unberücksichtigt. Eine Config.txt + CSV-File von mir folgt zum Testen
bei Dir, mal sehen wo der Hund begraben liegt. Hoffentlich nicht in
meinen Daten :-)
Kompliment für die Doku, Du gibst Dir wirklich Mühe. Bitte den
Doppelpunkt nicht vergessen :-)
Gruß Jan
Hallo zusammen!
Langsam habe ich (zum Mindesten im Viewer) fast alles Drin, was ich
einbauen wollte, wenn Ihr nicht noch paar Fehler findet, ist das dann
die finale Version. Die nächste Baustelle wird dann der Konverter für
die Anpassung der ganzen Wunschformate.
Hier die letzten Änderungen:
- Marken in der Zeitachse jetzt nur noch auf "runden" Uhrzeiten;
- Zoom auf "ganze Datei" (Vorsicht, siehe Hinweise, könnte lange
dauern);
Dann erstmal viel Spass beim Testen
ingo
Nachtrag/Vorschau
Eben hatte ich noch ein paar dumme Einfälle, die noch reinkommen werden:
- dynamischer Zoom (bisher vom Klickpunkt nur die x-Komponente genutzt
-> oben im Diagramm geklickt: Große Vergrößerung bis umgekehrt;
- dito für scrolling: Rollknöpfe: 2/3 der Bildschirmbreite, Pfeiltasten
mit Strg dito, ohne Strg 1/10 Bildschirmbreite.
dann bis dann - ingo
Hallo,
Jan, dein Problem kann ich hier nicht nachvollziehen. Habe z.B. ein
Logfile von ca. 22 Tagen (knapp 9MB) ohne Probleme convertieren
(wird dann 17MB) und laden können.
Das angehängte Beispiel zeigt den direkten Vergleich von Daten die
links in Echtzeit via RS232 mit RealView aufgenommen wurden und
rechts die passende Stelle aus dem CD-Card-Logger. Passt sehr
gut zusammen.
@Ingo , die Uhrzeit im csv-viewer ist bei der Darstellung
eine Stunde voraus! Letzte Eintrag im convertierten File ist
22.06.2010;23:32:38; .....
Im Viewer ist es dann schon 00:32:32 .
Danke und Gruss
Hallo Datlog, ich denke der Konverter stolpert momentan noch über
Kleinigkeiten aber das ist jetzt auf einem guten Weg, mein File zur
Analyse bei Ingo. Gruß Jan
Hallo zusammen!
Das die Zeitskala ne Stunde vorgeht ist mir auch gerade aufgefallen, die
werde ich aber nochmal komplett neu aufbauen, da ist mir eine sauberere
und übersichtliche Lösung eingefallen. Ob es heute noch was wird weis
ich nicht, könnte zum Mindesten später werden.
schöne Grüße von ingo
Hallo zusammen!
Habe gestern abend noch versucht, den Fehler mit der Stunde
Zeitdifferenz zu lösen, allerdings war wegen dem Geräuschpegel auch kein
konzentriertes Arbeiten möglich. Nur so viel: ich benutze 2
Systemfunktionen um zwischen Dautum/Uhrzeit (h/m/s/T/M/J) und einem
linearen Zeitwert (Sekunden seit dem 01.01.1980,00:00) hin- und
herzurechnen. Diese berücksichtigen offensichtlich die Sommerzeit. Das
muss ich versuchen zu verhindern (erstmal Doku lesen), im bössesten
Falle nachprogrammieren (dabei immer schön alle Schaltjahre der
Vergangenheit berücksichtigen).
mfG ingo
Hallo zusammen!
Es gibt mal wieder eine neue Version:
- das Sommerzeitproblem (hoffentlich) gelöst;
- Zoomen jetzt mit 2, 5, 10-facher Vergrößerung/Verkleinerung, je nach
Höhe des Klickpunktes;
- horizontrale Rollknöpfe rollen jetzt immer einen halben Bildschirm;
Konverter:
Wenn das Spaltentrennzeichen ungleich Komma, dann kann Komma
Dezimaltrennzeichen sein.
mfG ingo
Es gibt mal wieder eine neue Version mit kleinen
Korrekturen/Verbesserungen:
- Messen funktioniert jetzt auch, wenn Fenster nicht linksbündig;
- Beim Versuch, eine ungültige, nach einer gültigen Datei zu öffnen,
jetzt kein Absturz mehr;
- Versuch, auch die Y-Achse sinnvoll zu skalieren;
Viel Spass beim Testen!
ingo
Hallo Jan!
Gestern Abend schrieb mir datlog so etwas auch (bei mit keine Probs,
auch XPSP3), habe heut den ganzen Quelltext von der Paint-Funktion
durchgeschaut und noch kleine Ungereimtheiten (mit vielleicht großer
Wirkung in bestimmten Situationen) gefunden, die da aber schon von
Anfang an drin waren und beseitigt (Anhang). Datlog schreibt, Fehler
beim Bildaufbau, Kanalpalette und Y-Skala da, dann Absturz. Ist das bei
dir (auch bei der angehängten vers) auch so?
gruss ingo
Ingo Wendler schrieb:> Datlog schreibt, Fehler> beim Bildaufbau, Kanalpalette und Y-Skala da, dann Absturz. Ist das bei> dir (auch bei der angehängten vers) auch so?
Ja.
Die neuere Version funktioniert jedoch!
Gruß
Hallo zusammen!
Nachdem ich für die letzte Korrektur vom 26.06. 2 positive Rückmeldungen
habe (Danke an datlog und Jan!) hoffe ich, das das Programm jetzt bei
Allen funktioniert. Der Fehler war in der grundlegenden "Paint"-Funktion
und wie bereits geschrieben, von Anfang an drin. Da ich glaube, heut
abend sicher zu nichts zu kommen habe ich noch ein paar kleine
Erweiterungen zur Navigation mit der Tastatur eingebaut und die Doku
überarbeitet. Und nochmal Dankeschön an Alle, für die Hinweise,
konstruktive Kritik und Geduld beim Testen!
ingo
@mec
Tools zu Darstellen von csv Dateien gibt es wie Sand am Meer.
Ich kenne SCILAB so ein kleines bisschen, aber ich wüsste nicht wie ich
das was ich mit meinem Logger auszeichne da sinnvoll darstellen und so
einfach bearbeiten könnte wie ich mir das vorstelle. Ich schicke dir
gerne mal ein Beispiel und lasse mich eines Besseren belehren.
Das was Ingo hier "abliefert" ist höchst zufriedenstellend, hilfreich
und anerkenneswert. Es werden viele davon profitieren!
Gruss
Hallo Zusammen!
Diesmal im Anhang nur wenige Änderungem:
- kleine Optimierung zur Verbesserung der Geschwindigkeit,
- Druckfunktion nun fast brauchbar,
Allerdings steht jetzt der nächste große Schritt ins Haus: die
Integration der Konvertierung von Fremdformaten. In der Doku unter ToDo
hab ich mir da schon einige Gedanken gemacht. Wahrscheinlich müssten
sich damit alle Wünsche abdecken lassen. Schaut mal drüber, vielleicht
habt Ihr ja auch Ideen und Verbesserungsvorschläge. Das wärs dann wohl
erstmal für ein Weilchen.
mfG ingo
Hallo zusammen!
Es gibt mal wieder eine neue Version:
Der Konverteraufruf, mit der Nutzereigenen Konfig, lässt sich jetzt in
den Viewer integrieren. Das dürfte nach korrekter Konfiguration, die
Benutzung etwas vereinfachen. Der Konverter produziert jetzt auch etwas
kleinere Tempfiles, mit weniger unnötigen Nullen.
Dann drück ich schon mal die Daumen, das bei Euch auch alles so gut
funktioniert, wie bei mir.
mfG ingo
Hallo Zusammen!
Diesmal, neben kleinen Fehlerbereinigungen am Viewer, der Anfang für
einen zusätzlichen, neuen Konverter, der richtig rechnen können sollte.
Damit kann man dann auch zusätzliche Graphen als Berechnungsergebnis
einfügen. Für die nötigen Hintergrundinformationen zur Anpassung der
Konfig, verweise ich dann wieder auf die mitgelieferte Doku.
mfg ingo
Hallo Zusammen!
Es gibt mal wieder was neues:
Die Legende erhält jetzt ein eigenes Kontextmenü, mit dem es möglich
ist, neben den Eigenschaften eines Kanals zu ändern, Alle Kanäle
ein/auszuschalten und die Vorgabe aus der Datei zu rekonstruieren; Im
Kanaleigenschaftendialog kann die Farbe in HEX eingegeben, bzw bei
Auswahl über Dialog in HEX abgelesen/kopiert werden. Beim Zeigen mit der
Maus auf einen Legendeneintrag wird der vollständige Name und die
Einheit (falls vorhanden) angezeigt. Zum Testen des Formelparsers dient
das Programm „test.exe“ im Programmverzeichnis. Hier kann man die
Formeln für die Konfig des neuen Konverters testen, Die Variablen sind
wie folgt initialisiert: X1=10, X2=20 … X255=2550, Y1=15, Y2=25
….Y255=2555; Formel eingeben, es sollte (hoffentlich) das richtige
Ergebnis angezeigt werden.
Vies Spass beim Testen - ingo
Hallo Ingo,
hier mal wieder eine kurze Rückmeldung von mir!
Gerne würde ich das Programm schon produktiv einsetzen und testen,
allein es scheitert nach wie vor am Konverter der meine Daten anhand
meiner config.txt fehlerhaft umwandelt. Ein Vergleichscheck zwischen
meiner csv und der temp zeigt dann Fehler bei der Übernahme der Uhrzeit
sowie die Nichtbeachtung der Vorgabe ob der Wert nun zu berücksichtigen
ist oder nicht. Den Grund dafür vermag ich nicht nachzuvollziehen. Und
was die Werte selbst anbetrifft: Bislang wird auf nur eine Stelle nach
dem Komma gerundet. Planst Du in Zukunft evt. mehr Genauigkeit hierfür?
Für den integrierten Import der Zukunft würde ich mir eine einfache
Programm-Anzeigebox mit der ersten Datenzeile wünschen, die die Auswahl
der gewünschten Datenspalten, Zuordnung der Einheit + Kurvenfarbe,Offset
und Faktor sowie des Trennzeichens intuitiv gestattet und daraus dann
eine config.txt erstellt. So wie jetzt ist das doch ein wenig mühsam und
fehlerträchtig. Die Idee mit dem viele individuelle Konverter
zusammenfassenden Importfilter ist ja nicht schlecht und weiter gedacht
als ich es jemals brauchen werde. Allerdings stellt sich mir die Frage
warum sich eine gegebene Quell-CSV prinzipiell programmtechnisch nicht
100%ig analysieren lassen soll sodaß individuelle Konverter generell
entfallen können. Es sind doch "nur" ein paar ASCII-Werte mit
Trennzeichen :-)
Beim Test mit den Musterdaten ist mir noch auf die Schnelle aufgefallen,
daß die Eigenschaften stets nur für den Legendeneintrag der 2.Reihe
angezeigt werden.
OK ich hoffe Du bleibst weiter dran; ich denk mal in dieses Projekt (und
insbesondere wenn es richtig intuitiv und komfortabel werden soll)
könnte man locker noch einige Mannjahre Arbeit reinstecken...
Gruß & Gute Nacht!
Hallo Jan!
Erstmal Danke für die Rückmeldung.
Dem genannten Konvertierproblem werde ich auf den Grund gehen, die
Musterdatei hab ich ja noch;
Jan K. schrieb:> Und> was die Werte selbst anbetrifft: Bislang wird auf nur eine Stelle nach> dem Komma gerundet. Planst Du in Zukunft evt. mehr Genauigkeit hierfür?
Mich hatte am Konverter gestört, das auch Ganze Zahlen mit 6 Nullen nach
dem Komma ausgegeben wurden. Da hab ich eine als Standart gesetzt, in
der Hoffnung das wäre Minimum (wie bei den Stellen vor dem Komma). Werde
ich dann natürlich wieder Rückgängig machen (auf 3 Nachkommastellen);
Für die Y-Achsenbeschriftung hatte ich aus Platzgründen eine
Nachkommastelle vorgesehen, da ich (wegen Einbau der Maßeinheit) da noch
reorganisieren werde, kommt noch eine 2. dazu, dann kann man die
Messwerte sinnvoll bis auf 1/1000 darstellen. Was noch kleiner wird,
empfehle ich dann, im Konverter mit 1000 oder 1Mio zu multiplizieren und
die ME mit m oder µ zu ergänzen.
> Für den integrierten Import der Zukunft würde ich mir eine einfache> Programm-Anzeigebox mit der ersten Datenzeile wünschen, die die Auswahl> der gewünschten Datenspalten, Zuordnung der Einheit + Kurvenfarbe,Offset> und Faktor sowie des Trennzeichens intuitiv gestattet und daraus dann> eine config.txt erstellt. So wie jetzt ist das doch ein wenig mühsam und> fehlerträchtig.
Ist in Planung;
>> Beim Test mit den Musterdaten ist mir noch auf die Schnelle aufgefallen,> daß die Eigenschaften stets nur für den Legendeneintrag der 2.Reihe> angezeigt werden.
Ist ein akutes Problem mit der Genauigkeit der Klickposition beim Öffnen
des Kontextmenüs: Bei allen anderen Mausnachrichten bekomme ich die
Position des Mauszeigers, bezogen auf den Clientbereiches meines
Fensters, beim Kontextmenü dagegen, bezogen auf den ganzen Bildschirm.
Also Position des eigenen Fensters ermitteln, linke obere Ecke von den
X/Y abziehen, aber 2 Fragezeichen sind noch: die Breite des
Fensterrandes und die Höhe der Titelleiste. Die sind offensichtlich bei
Dir anders eingestellt, als bei mir, warscheinlich schon wegen
unterschiedlichem BS. Heute werd ich schauen, wie ich die
diesbezüglichen aktuellen Einstellungen auslesen und berücksichtigen
kann, dann müsste das auch funktionieren, wenn nicht nehme ich
stattdessen die "RechteMaustasteLosgelassen"-Nachricht, die liefert die
Koordinaten, wie ich sie brauche.
mfG ingo
Hi Ingo,
danke für die neue Version und für das schnelle (teilweise) Einbauen der
Wünsche. Geht hier prima und wird immer besser.
Hoffe du kannst Jan's Problem beheben , damit er auch seine eigenen
Daten mit dem Viewer betrachten kann.Dann kommen sicher auch noch weiter
nützlich Hinweis von ihm. Jeder hat doch etwas andere Präferenzen.
Die teilweise falsche Anzeige des Textes in der Stauszeile kann ich auch
bestätigen. Bei mir sieht es momentan für eine bestimmte Zeigerposition
so aus:
- einfaches Anklicken für fett/normal ist in Ordnung
- bei Doppelklick für ein/aus wird oft (nicht immer) der linke Graph
benutzt.
- Anzeige in Statuszeile auch oft (nicht immer) der linke Text.
Noch was zur Berechnung. Klappt so einwandfrei, nur beim Teilen durch
0.0 kommt -1.0 raus. Da müsste man sich noch was überlegen. Könnte man
z.B. bei Ergebnis NAN den Graphen unterdruecken ?
(Man könnte dann Teile von Graphen ausblenden wenn sie nicht
aussagekräftig sind. Habe z.B. ein Signal im Logfile, dass mir anzeigt
ob die WP läuft. Kann nur 0 oder 1 sein. Wenn ich nun die
WP-Vorlauftemperatur durch 0 oder 1 teile, würde ich dann nur die
Zeitbereiche als Graphen sehen die sinnvoll sind, nämlich wenn die
WP läuft).
Gruss
datlog
Hallo Zusammen!
Hab versucht, einige Fehler zu bereinigen und Wünsche zu erfüllen:
Die Ermittlung der Klickposition beim Aufruf des Kontextmenüs wurde
überarbeitet; Wenn alle eingeschalteten Graphen, die gleiche Maßeinheit
haben, wird diese jetzt an der X-Achsenbeschriftung angezeigt(Platz
reicht für 2 Zeichen); Wenn das Ergebnis der Berechnung, eine Division
durch Null ist (Ergebnis „1.#INF00“) wird im Viewer der Graph an dieser
Stelle ausgesetzt; Die Ausgabe des Konverters erfolgt jetzt wieder mit 6
Nachkommastellen;
Sollte das Kontextmenü immer noch falsche Koordinaten liefern, habe ich
vielleicht noch ein Eisen im Feuer, aber testet es erstmal so.
mfG ingo
Hallo Ingo, das Kontextmenü funktioniert jetzt besser und am besten im
maximierten Fenster. Ist es kleiner erscheint oft gar kein Menü.
Ansonsten hab ich mal etwas im Kurvenbild herumgezoomt und dann
irgendwann nur noch senkrechte Linien erhalten (siehe Bild). Geholfen
hat dann nur noch das Neuladen der Datei.
Gruß Jan
Hallo Jan!
Beim Öffnen einer Datei wird versucht, den vertikalen Zoomfaktor und den
vertikalen Offset entsprechend der vorgefundenen minimal- und
maximalwerte sinnvoll einzustellen. Wenn die einzelnen Graphen jetzt
sehr unterschiedliche Amplitude haben, musst Du den vertikalen
Zoomfaktor weit aufdrehen (Messbereich sehr klein, wie im Screenshot),
um die schwach ausgesteuerten Kurven sehen zu können. Daher in so einem
Falle entweder die "hohen" Kanäle ausblenden, oder schon beim
Konvertieren, die Signale in die gleiche Größenordnung bringen. Ich
werde noch einbauen, die Autoskalierung beim Öffnen der Datei
rekonstruieren zu können, dann brauchst Du die Datei nicht neu zu
öffnen, wenn du dich mal verirrt hast.
mfG ingo
Hallo Zusammen!
Es gibt Korrekturen/Verbesserungen:
Der negative Überlauf ("-1.#IND00") führt jetzt ebenfalls zur
Unterdrückung des Graphen; Mit dem Schalter „Testmodus“ im
„Filter“-Dialog kann man die Konvertierung erzwingen (Änderung der
Konfigdatei); Graphen sind jetzt im Diagramm eingesperrt und können
nicht ins Abseits, die Achsenbeschriftung übermalen.
mfG Ingo
Hab gerade gemerkt, ein schmaler Randstreifen rechts vom Diagramm wird
nicht neu gezeichnet, wenn man was drüberschiebt, wird bei der nächsten
Version korrigiert.
mfG ingo
Hallo Ingo.
Es geht sehr schön. Ich bin begeistert. Durch die Ausblendungs-
möglichkeit wird alles meiner Meinung nach viel Übersichtlicher.
Ein Wermutstropfen ist allerdings, dass wieder der Klickbereich sich
verschoben hat. Bei mir wird erst im letzen Drittel rechts die richtige
Funktion ausgelöst. Diesmal auch Fett/normal.
Danke und Grüße
datlog
Hallo Ingo, habe mit den Testdaten und der neuesten Version wieder etwas
hin und her gezoomt. Vielleicht wirst Du aus dem Ergebnis (siehe Bild)
schlau !?
Hallo Jan!
Die Darstellung von deinem Screenshot ist, für die eingestellten
Maßstäbe korrekt, vielleicht verwirrt es ein wenig, das "Spalte6" ihren
Ruhepegel bei 1 hat, wärend andere Kurven nach 0 zurückkehren, deshalb
die Waagerechte Linie.
Ebendieses Vorgehen würde ich übrigens auch für "Digitalsignale"
vorschlagen, erster Kanal bleibt (0/1), zweiter +2 (2/3) dritter +4
(5/5) usw. Dann sind die schön übereinander.
mfG ingo
Hallo Zusammen!
Das Problem mit dem Danebenklicken in die Legende gelöst; Schriftart
(nicht Größe) einstellbar; Konverter: Überspringen von unbrauchbaren
Zeichen vor dem Wert (alles außer Ziffern, Punkt und Minus), Änderung
der Interpretation der Konverterkonfig, „Zeilen“ jetzt etwas andere
Bedeutung;
Einfügen von Kommentaren jetzt möglich; Validierung der Konfig, bevor
begonnen wird, Tempdatei zu schreiben, damit wird verhindert, eine
ungültige Tempdatei zu hinterlassen. Achtung! entgegen der Beschreibung,
sind Klammern derzeit nur für Funktionsaufrufe möglich! Das wird als
nächstes Korrigiert.
Hallo Zusammen!
Mittlerweile habe ich die Wunschliste fast abgearbeitet.
Es ist jetzt möglich, Graphen im Diagramm zu identifizieren (Mauszeiger
drüber ausruhen lassen), Eine Standartmaßeinheit, für Graphen zu
vergeben, die keine solche in den Namenstags mitbringen (wenn Euch der
Standart "Erl" nicht gefällt, einfach ändern, oder leer machen).
Konverter: Der Formelparser verarbeitet jetzt auch Klammern korrekt.
Gefundene Fehler werde ich natürlich versuchen, so schnell wie möglich
zu beseitigen, ansonsten würde ich jetzt gern etwas kürzer treten.
mfG ingo
Hallo Zusammen!
Zum Abschluss noch einige optische Korrekturen, und der Nachtrag, mit
dem Konverter jetzt auch Dateien ohne Zeitmarken vor den Messwerten
verarbeiten zu können. Dazu die Beispieldateien raw.txt und raw.cfg mit
dem üblichen Verweis auf die Doku.
mfG ingo
Hallo Ingo.
Möchte mich auch hier öffentlich nochmals für deine Arbeit und den
Einsatz bedanken. Es ist ein tolles Tool geworden. Hätte ich nicht
gedacht so schnelle etwas so brauchbares to bekommen, als ich den
Thread hier vor paar Wochen gestartet habe.
Das Eine oder Andere wird sicher noch auftauchen , wäre nett wenn du
uns dann noch etwas für die Behebung möglicher Probleme und ggf.
vielleicht noch für den Einbau Wünschen erhalten bleibst.
Eine schönen Tag noch.
Viele Grüße
datlog
Hallo Zusammen!
Eine Ungenauigkeit ist mir noch aufgefallen:
Wenn man über/unterhalb der unteren Diagrammkante klickt, sollte man
damit (je nach vertikalem Abstand) mehr oder weniger vergrößern oder
verkleinern.
Die Diagrammkannte ist bei einer Neuaufteilung der Seite nach oben
gerutscht, der Zoombezug aber nicht. Dadurch wurde, wenn man wie gewohnt
geklickt hat, immer vergrößert. Das hab ich jetzt korrigiert.
Schaun wir mal, was noch an Fehlern drin sind.
mfG ingo
Hallo Zusammen!
Datlog hat noch einen bösen Bug gefunden:
Wenn man in einer Datei, die nur einen kurzen Zeitraum enthält, die
Funktion "Totale" (horizontaler Maßstab-> ganze Datei) aufruft, ergab
dies einen Zoomfaktor von "0" - böses Foul -> Absturz! Dieses Problem
ist jetzt behoben, der Zoomfaktor kann, auch auf diesem Wege, nicht
kleiner als 1 (Sekunden je Pixel) werden.
mfG ingo
vielen Dank an die Entwickler dieder tollen Programme.
Für ein Projekt an der Uni brauchen wir auch solch ein
Visualisierungsprogramm. Wir haben 10 Sensoren welche dargestellt werden
müssen. Gleichzeitig speichern wir zu jedem Messpunk die GPS
Koordinaten.
Ist es möglich parallel zu dem datendiagramm noch ein X/Y Diagramm zu
integrieren, in welchem die GPS Koordinaten dargestellt werden? Damit
wüsste man in welcher Position dieser Messwert aufgenommen wurde.
Hallo Martin!
Das Konstante an diesem Programm, ist die Zeitachse, um die es sich
dreht, oder besser gesagt, über die gezeichnet wird. Natürlich könntest
Du den Längen- und Breitengrad als einzelne Graphen zur Zeitachse (und
damit indirekt den zurückgelegten Weg) darstellen, ich vermute aber
eher, dir schwebt eine 3-D Projektion, mit x und y für die
GPS-Koordinaten und z für die aufgezeichneten Messwerte vor (ob das auf
einem 2-D Bildschirm übersichtlich wäre, weiß ich noch nicht). Das wird
sich aber mit so einem "Messwertschreiber" nicht direkt realisieren
lassen. Das wäre dann eher ein Fall für ein, auf diese Anforderung
spezialisiertes, Programm, aber ich werde den Gedanken mal im Hinterkopf
behalten.
mfG ingo
keine 3D grafik.
wenn ich mit dem cursor durch das X/Y Diagrammfahre möchte ich gerne
dazu in einem extra fenster mit einem Punkt die gps koordinate markiert
haben.
Ziel: du hast eine Rennstrecke und hast alle daten während der fahrt mit
geloggt. Danach schaust du dir die daten an, kannst aber nicht
nachvollziehen in welcher kurve die kräfte grade aufgetreten sind.
In dem extra fenster, würde mit hilfe der GPS koordinaten,eine
draufsicht der gefahrenen strecke gezeigt werden. wenn du durch deine
X/Y Werte scrollst wird dir dann zu jedem punkt die stelle in der
strecke markiert.
hoffe das war besser erklärt.
ist das machbar?
Beides integrieren würde ich ungern, (weil recht speziell), für das
Plotten des Wegverlauf könnte ich mir vorstellen, (in einem
Exraprogramm) einen Vektor (evtl mit Uhrzeit) je (einstellbarem?)
Intervall plotten, muss ich mal sehen, kann ich aber noch nicht
versprechen.
mfG ingo
Hallo Zusammen!
Da mittlerweile auch langfristige Aufzeichnungen betrachtet werden
sollen, kleine Veränderung in der Zeitachsenbeschriftung. Bisher habe
ich selbige ab einem Zommfaktor von 4000 ausgeblendet, um gegenseitiges
Überschreiben zu vermeiden. Damit aber auch Zeiträume von mehreren
Jahren korrekt beschriftet werden, hab ich das jetzt geändert. Jetzt
wird in diesem Falle der erste Tag des Monats, mit Monat und Jahr
beschriftet. Bei weiterer Verkleinerung tritt derzeit bei mir ein
Überschreiben auf, wenn ich mehr als 10 Jahre auf dem Bildschirm habe.
Sollte für so Etwas Bedarf bestehen, würde ich dann evtl. nur noch die
Jahre beschriften...
mfG ingo
Also ehrlich, die Entwicklung dieses Programms ist FABELHAFT.
Nur weiter so, das ist einfach..."A W E S O M E".
Bau doch bitte das ein, damit die Jahre angezeigt werden.
Danke ;)
Paule schrieb:> Bau doch bitte das ein, damit die Jahre beschriftet werden.
Bitteschön!
Habe nochmal nach dem Platz geschaut, siehe da:
Bei senkrechtem Datum reicht es noch für ne zweistellige, sonst meistens
noch für ne vierstellige Jahreszahl.
mfG ingo
Einfache statistische Anzeigen währen echt super. So Mittelwert/Min/Max
zwischen einem Bereich oder so. Kann leider das Programm jetzt nicht
testen, aber ist ein logharithmische Anzeige auch möglich (X und Y)?
Oder einfache Kuchendiagramme oder Balkendiagramme?
Kann es leider zur zeit nicht Testen, weil kein PC in der Nähe ist.
Eine weitere, aber vielleicht zu Aufwendige Funktion währe
Crosscompiling zu Linux, MAC, PocketPC (Mobile 2003)...
Ist eine Interpolierte Anzeige auch möglich? Also Anstatt kantige
Schritte wie in einigen Screenschots eine gerade Linie oder diese Lienen
"Abrunden" (Wie in Excel). Oder eine Interpolierte Linie, also so wie
ClearTyp.
Eine weitere eingenschaft könnte sein, dass es auch auf
Kleinbildschirmen funktioniert, also auf Netbooks (800x640 Auflösung).
Mir persöhnlich währe Sony Playstation Portable oder Nintendo DS
portierung am liebsten, aber die wenigsten Menschen verwenden die Geräte
zum ARBEITEN...nunja...was solls
Hoffentlich störe ich nicht mit dem Vorschlägen, habe schon fast ein
schlechtes Gewissen, weil das Programm sieht zur Zeit SUPER aus.
None schrieb:> Einfache statistische Anzeigen währen echt super. So Mittelwert/Min/Max
Diese Werte über die gesamte Datei zu ermitteln ist kein Problem
(min/max ermittle ich beim öffnen sowieso, wegen der Y-Achsenskalierung,
aber Kanalunabhängig), mit dem Markieren von Zeitabschnitten tu ich mich
noch etwas schwehr.
> .... ist ein logharithmische Anzeige auch möglich (X und Y)?
Für die Y-Achse könnte ich mir eine logarithmische Teilung für die
Zukunft vorstellen, bei X (immer Zeit) sehe ich da einige Probleme.
> Oder einfache Kuchendiagramme oder Balkendiagramme?
Für eine Zeit/Wertrelation vielleicht nicht so sinnvoll..
> Eine weitere, aber vielleicht zu Aufwendige Funktion währe> Crosscompiling zu Linux, MAC, PocketPC (Mobile 2003)...
Ich selbst arbeite privat hauptsächlich unter Windows, dieses Programm
greift auch, ohne Framework direkt aufs Windows-API zu, das wäre das
etwas schwierig, aber ein Teilnehmer hier aus dem Thread schrieb schon,
das es unter Linux mit Wine läuft.
> Ist eine Interpolierte Anzeige auch möglich? Also Anstatt kantige> Schritte wie in einigen Screenschots eine gerade Linie oder diese Lienen> "Abrunden" (Wie in Excel). Oder eine Interpolierte Linie, also so wie> ClearTyp.
Da muss ich mich erstmal mit Splinen beschäftigen, kann ich noch nichts
versprechen..
> Eine weitere eingenschaft könnte sein, dass es auch auf> Kleinbildschirmen funktioniert, also auf Netbooks (800x640 Auflösung).
Dürfte eigentlich kein Problem sen, nein Netbook hat 1024x600
Bildpunkte, da gehts noch ganz gut, bleibt nur immer weniger Platz für
die Diagrammfläche.
> Mir persöhnlich währe Sony Playstation Portable oder Nintendo DS> portierung am liebsten, aber die wenigsten Menschen verwenden die Geräte> zum ARBEITEN...nunja...was solls
Das wäre doch mal eine Herausforderung für jemanden, der sich mit den
Geräten auskennt ;)
mfG ingo
Hallo Zusammen!
Es gibt mal wieder eine Kleinigkeit:
Es ist jetzt möglich, den Linienstil der Graphen, nicht nur durchgehend,
sondern auch gestrichelt, gepunktet, strichpunkt sowie strichpunktpunkt
einzustellen. Diese Voreinstellung kann auch aus den Palettentags
initialisiert werden. Dies macht sich allerdings erst ab einem
Zoomfaktor bemerkbar, bei dem Linienabschnitte als Geraden gezeichnet
werden.
mfG ingo
Hallo Ingo,
danke für den Einbau. Geht gut.
Hinweisen sollte man noch, dass der Linienstil aufgehoben wird, wenn der
Graph fett dargestellt wird.
Gruss
Um hier nochmal eine Möglichkeit einzubringen.
http://www.ipemotion.com/
Ja, ich kenne die Firma die dahinter steckt. Es gibt dort kostenlose
Editionen zur Datenanalyse. Dazu müssen die Messdaten allerdings im
geeigneten Format gespeichert werden.
Es ist ebenso problemlos möglich eigene Messtechnik in die Bibliothek
von IPEmotion zu integrieren, Stichwort: MAL.
Falls jemand Interesse oder weitere Fragen hatte, bitte einfach melden.
Gruß
Pascal
Mag sein, dass das eine weitere Alternative ist, die für den
einen oder anderen Fall vorteilhafter ist.
Für meine Anwendung jedoch ist der csv-viewer einfach ideal.
Ausserdem kostet die "Vollversion" nichts, man braucht sich nirgends
anzumelden und einen besseren Support wie den von Ingo (einschliesslich
Einbau von Wünschen) gibt es nicht.
Gruss
@Ingo:
Nett wäre es, wenn eine im selben Verzeichnis wie die csv-Datei
liegende ini-Datei gelesen würde, statt der aus dem Nutzerprofil.
Oder man eine ini-Datei als 2. Argument angeben könnte.
Hallo Zusammen!
Bin von Dienstreise zurück,
> Nett wäre es, wenn eine im selben Verzeichnis wie die csv-Datei> liegende ini-Datei gelesen würde, statt der aus dem Nutzerprofil.> Oder man eine ini-Datei als 2. Argument angeben könnte.
Müsste ich machen lassen, werde ich mir am Wochenende mal vornehmen.
Bis dann, mfG ingo
Hallo Zusammen!
> Nett wäre es, wenn eine im selben Verzeichnis wie die csv-Datei> liegende ini-Datei gelesen würde, statt der aus dem Nutzerprofil.> Oder man eine ini-Datei als 2. Argument angeben könnte.
Hat ein Wenig gedauert, funktioniert jetzt aber:
Bitte in der Anleitung unter "Speichern der Einstellungen" schauen!
mfG ingo
Abdul K. schrieb:> Eventuell könnte man auch den Waveform-Viewer von LTspice benutzen. Der> ist ja auch für sehr große Datenmengen. Nur eine Idee, nicht> ausprobiert!!
Tolle Arbeit! Aber um auf LTspice zurückzukommen: Es geht auch dort.
Zumindest für jene die das eh täglich benutzen, eine Alternative.
Standart schreibt man Standard, während es Standort heißt.
Könntet ihr bitte den Thread mal endlich da lassen wo er ist!
Ist schon das zweite mal , dass er verschoben wurde. Aus
eueren Verschiebechriterien werde ich nicht mehr schlau.
Danke sehr.
Vielleicht passt das auch noch ein wenig zu diesem Thread.
Ein Terminal Programm, mit dem hereinkommende Zahlen gleich zu einem
Graph hinzugefügt werden:
Beitrag "Re: java rxtx in jar file einbinden"
datlog schrieb:> Deshalb suche ich also ein Tool (muss nicht kostenlos sein, aber doch> erschwinglich) das meine aufgezeichneten Daten verarbeiten kann.
Hi, datlog,
aufzeichnen und visualisieren reichen für meine Aufgaben und Ziele in
meinem Hobby und meiner freiberuflichen Tätigkeit nicht.
Da kommt noch die Steuerung von Sensoren und Aktoren hinzu - zum
Beispiel messen - auswerten mit FFT - agieren.
Gesucht habe ich erschwingliche Varianten von HP's VEE und National
Instruments LabWindows.
Gefunden habe ich bei ebay für 25€ eine veraltete Version von VEE, die
aber über serielle Schnittstellen des PC und virtuellen mit Sensoren
sprechen und Daten austauschen kann.
Beide Programme haben eine wunderschöne Benutzeroberfläche - ich rufe
die FFT als Programmblock auf den Bildschirm, verknüpfe Aus- und
Eingänge, bestimme die Parameter der Verarbeitung, schließe am Ausgang
einen virtuellen Oszi an, und schon sehe ich Spektrallinien.
Da ist mehr, als ich je gebraucht habe.
Ciao
Wolfgang Horn
@Wolfgang Horn.
Möchte dazu nur einen Beitrag von mir von weiter oben wiederholen:
----------------------------------------------------------------------
Mag sein, dass das eine weitere Alternative ist, die für den
einen oder anderen Fall vorteilhafter ist.
Für meine Anwendung jedoch ist der csv-viewer einfach ideal.
Ausserdem kostet die "Vollversion" nichts, man braucht sich nirgends
anzumelden und einen besseren Support wie den von Ingo (einschliesslich
Einbau von Wünschen) gibt es nicht.
-----------------------------------------------------------------------
Gruss
datlog
Hallo Ingo,
eine Frage zum Bildaufbau bitte.
Kann man den Bildaufbau irgendwie unterbrechen bzw. stoppen?
Wie du weisst, habe ich sehr große Datensätze mit vielen Kanälen
das bei mir durchaus 15 bis 20 Sekunden Bildaufbau bedeuten kann
wenn der gesamte Bereich dargestellt wird. Wenn man dann bestimmte
Kanäle aus/ein-schalten will, wiederholt sich das Spielchen u.U.
paar mal bis man das sieht was man möchte. Da kommt dann schon
etwas Zeit zusammen.
Als fauler und ungeduldiger Mensch wollte ich fragen ob es eine
Möglichkeit gibt Zeit zu sparen, von der ich vielleicht noch nichts
weiss.
Danke und Gruss
datlog
Hi!
Beitrag gelesen, neugierig geworden, getestet.
Was soll ich sagen, es geht sogar unter Win98Se fast fehlerfrei.
(nur beim Laden einer 2. Datei & beim Beenden geht was daneben)
Spitze, und das für umsonst mit Support!
Danke Ingo, weiter so.
Ähmmm... Binäre Daten, also hexformat so 8/16 Bit bekommen wir aber
nicht zufällig mit gebacken??? Hintergrund: mein Hameg sendet die Daten
binär bzw. sogar in gemischter Form (Vorspann/CH1/CH2).
Schöne Feiertage noch, Uwe
> Kann man den Bildaufbau irgendwie unterbrechen bzw. stoppen?
Hab ich schon drüber nachgedacht, müsste irgendwie gehen, muss ich mal
API's studieren (wärend des Bildaufbaus die MessageQueue abfragen) hoffe
mal, das ich es hinkriege.
> Binäre Daten, also hexformat so 8/16 Bit bekommen wir aber> nicht zufällig mit gebacken??? Hintergrund: mein Hameg sendet die Daten> binär bzw. sogar in gemischter Form (Vorspann/CH1/CH2).
Müsste man einen passenden Konverter für bauen, die Schnittstelle zum
"einknöpfen" ist ja da, Bräuchte ich mal eine Beispieldatei, am Besten
mit Doku, wie sie zu lesen ist. Auf eine Einschränkung bezüglich Samples
von Oszis möchte ich aber schon hinweisen: Die kleinste Zeiteinheit ist
eine Sekunde. Müsste man bei Bedarf eventuell tricksen, indem man den
Zeitmasstab mit 1E6 oder 1E9 multipliziert, wäre aber mit der Zeitskala
(s/m/h) auch nicht optimal, für langsame Sachen müsste es aber gehen.
mfG ingo
Hallo zusammen!
> Kann man den Bildaufbau irgendwie unterbrechen bzw. stoppen?
War eigentlich ganz einfach: (für diejenigen, die es Interessiert:
wärend des Bildaufbaues, jeden Wert einmal PeekMessage() aufrufen, wenn
WM_DOWN gekommen ist, dann die an sich selbst posten (damit die
Pfeiltaste danach auch abgearbeitet wird) und Abbruchbedingung setzen),
hoffe, das diese Prüfung nicht die Ausführung wesentlich verlangsamt.
Habe mal die Anleitung noch einmal separat daneben gestellt, unabhängig
vom ZIP-Archiv, hatte die nämlich letztens für einen anderen Thread
missbraucht. Ausserdem kann man sich sich so durchlesen, ohne erst das
Archiv runterzuladen und zu entpacken.
Übrigens finde ich den Vorschlag von Läubi, mit dem Wiki-Artikel
garnicht so verkehrt, da hatte ich auch schon drüber nachgedacht, vor
Allem liegen dann steinalte (und insbesondere fehlerhafte) Versionen
nicht im Forum.
Bei der Gelegenheit könnte man auch mal über einen vernünftigen Namen
nachdenken, der jetztige war seinerzeit nur ein Arbeitstitel, bei
CSV-Viewer werden die meisten auch eher an eine Tabellenansicht denken.
Dann vielleicht eher "CSV-Plotter", das könnte schon eher passen.
In dem Sinne ....
mfG ingo
Hi Ingo,
Danke sehr für den superschnellen Einbau der Bildaufbau-Unterbrechung,
geht prima.
Btw, hatte mich nicht wegen Wiki "beklagt", sondern wegen der ewigen
Verschieberei.
Vielen Dank nochmals und guten Rutsch ins neue Jahr.
Grüße
datlog
Hallo Ingo,
erst einmal möchte ich dir sagen, dass du hier ein tolles Wrkzeug
geschaffen hast.Ich benutze einen Router mit OpenWRT um
Temperaturverläufe aufzunehmen. Es klappt schon ganz gut aber ein paar
Dinge sind mir aufgefallen :
- Trennzeichen
Wenn du die erste Zeile sowieso mit Datum,Zeile,.. etc quasi festgelegt
hast könntest du doch das Zeichen nach "Datum" automatisch als
Trennzeichen verwenden. Man bräuchte dann keine Filter zu definieren.
Wobei meine Datei benutzt ";" als Trennzeichen und es funktioniert auch.
Sind eigentlich Leerzeichen in der Datei erlaubt (z.B. 12.02.2010 ,
12:23:00) ? Die datei ist dann erheblich einfacher als Text zu lesen.
- Fehlerhafte Messwerte
Manchmal kommt es halt doch vor, dass Werte falsch gemessen werden (evt.
Fehler in der Schaltung, der Software ...). Das Diagramm hat dann
hässliche Zacken. Es wäre interessant solche Werte in der Datei z.B. mit
"xxx" zu markieren und dann im Diagramm auzublenden. Ist so etwas
möglich ?
- horizontales Verschieben / Scrollen
wenn man horizontal vergrössert hat ist es schwierig zu scrollen. In der
vertikalen Achse kann man um 10% verschieben, horital nur um die beiden
Werte die man in der Konfiguration angegeben hat. Hier wäre eine
prozentuale Verschiebung ebenfalls toll.
Sonst aber ein sehr hilfreiches Tool.
mfg
A. Zöller
A. Zöller schrieb:> - Trennzeichen> Wenn du die erste Zeile sowieso mit Datum,Zeile,.. etc quasi festgelegt> hast könntest du doch das Zeichen nach "Datum" automatisch als> Trennzeichen verwenden. Man bräuchte dann keine Filter zu definieren.
Gute Idee, werde das Hauptprogramm mal durchsehen und das fest
verdrahtetete Trenzeichen durch eine Variable ersetzen
> Wobei meine Datei benutzt ";" als Trennzeichen und es funktioniert auch.
Ist ja eigentlich auch das (von Excel geerbt) richtige
> Sind eigentlich Leerzeichen in der Datei erlaubt (z.B. 12.02.2010 ,> 12:23:00) ? Die datei ist dann erheblich einfacher als Text zu lesen.
Leerzeichen zwischen den Datenelementen und dem nächsten Trennzeichen
dürften m.E kein Problem sein
> - Fehlerhafte Messwerte> Manchmal kommt es halt doch vor, dass Werte falsch gemessen werden (evt.> Fehler in der Schaltung, der Software ...). Das Diagramm hat dann> hässliche Zacken. Es wäre interessant solche Werte in der Datei z.B. mit> "xxx" zu markieren und dann im Diagramm auzublenden. Ist so etwas> möglich ?
Wird jetzt etwas schwierig, die Grenze zwischen richtigen und falschen
Werten zu setzen, vielleicht fällt mir dazu noch was ein.
> - horizontales Verschieben / Scrollen> wenn man horizontal vergrössert hat ist es schwierig zu scrollen. In der> vertikalen Achse kann man um 10% verschieben, horital nur um die beiden> Werte die man in der Konfiguration angegeben hat. Hier wäre eine> prozentuale Verschiebung ebenfalls toll.
Das mit dem halben Bildschirm für Horizontalscrollen über Mausbutton,
hat sich so ergeben, weil einige hier mit sehr großen Dateien operieren,
be denen das Rollen mit zu kleinen Schritten auch lästig wäre...
Aber ich werde diesen Faktor auch über den Einstellungen-Dialog
veränderbar machen, da ich auch nicht mehr Platz mit zusätzlichen
Mausbuttons zubauen möchte.
Ich persönlich scrolle ohnehin lieber mit der Tastatur, da kannst Du 2
verschiedene Sprungweiten (nur Pfeil links/rechts, oder mit Strg
zusammen) selbst definieren, genaueres siehe Handbuch
Hoffe, die nächste Version, im Laufe der kommenden Woche vorstellen zu
können.
mfG ingo
Hallo Ingo,
ich habe noch einmal ein paar Tests gemacht und folgendes herausgefunden
:
- Leerzeichen nach dem Trennzeichen sind ok (2011; 12:30)
- Leerzeichen vor dem Trennzeichen sind nicht ok (2011 ;12:30)
- Nur in der Headerzeile dürfen keine sein (Datum; Zeit geht nicht)
- Es werden auch Unix-Dateien ohne weiteres gelesen ( nur mit LF am
Zeilenende)
Vielen Dank nochmal für das tolle Tool
mfg
A. Zöller
Hallo Zusammen!
Es gibt mal wieder was zu testen: hat ein Wenig gedauert, aber am WE
hatte mich die Influenza etwas aus dem Verkehr gezogen
A. Zöller schrieb:> - Trennzeichen> Wenn du die erste Zeile sowieso mit Datum,Zeile,.. etc quasi festgelegt> hast könntest du doch das Zeichen nach "Datum" automatisch als> Trennzeichen verwenden. Man bräuchte dann keine Filter zu definieren.> Wobei meine Datei benutzt ";" als Trennzeichen und es funktioniert auch.> Sind eigentlich Leerzeichen in der Datei erlaubt (z.B. 12.02.2010 ,> 12:23:00) ? Die datei ist dann erheblich einfacher als Text zu lesen.
Die automatische Erkennung hab ich wieder verworfen, dann würde das
Auffüllen mit Leerzeichen verwirren. Stattdessen kann das Trennzeichen
jetzt im "Einstellungen"-Dialog geändert werden, mit TAB ist der Text
auch gut zu lesen, Achtung, manche Editoren wandeln TAB's beim Speichern
in Leerzeichen!
> - Fehlerhafte Messwerte> Manchmal kommt es halt doch vor, dass Werte falsch gemessen werden (evt.> Fehler in der Schaltung, der Software ...). Das Diagramm hat dann> hässliche Zacken. Es wäre interessant solche Werte in der Datei z.B. mit> "xxx" zu markieren und dann im Diagramm auzublenden. Ist so etwas> möglich ?
Geht schon ein Weilchen, die Zeichenfolge dafür ist "#IN" (invalid
number)
> - horizontales Verschieben / Scrollen> wenn man horizontal vergrössert hat ist es schwierig zu scrollen. In der> vertikalen Achse kann man um 10% verschieben, horital nur um die beiden> Werte die man in der Konfiguration angegeben hat. Hier wäre eine> prozentuale Verschiebung ebenfalls toll.
Geht jetzt auch über "Einstellungen"
> Sonst aber ein sehr hilfreiches Tool.>> mfg>> A. Zöller
Danke für die Blumen, aber das ist hier ein Gemeinschaftswerk.
Hoffe, die neue Version funktioniert wie beabsichtigt,
mfG ingo
Hallo Ingo, ein rein kosmetisches Problem: Der Programmstart+sofortige
datenlose Beendigung erzeugt seit einigen Versionen "csvview.exe hat ein
Problem festgestellt und muss beendet werden". Vielleicht steckt je mehr
dahinter. Gruß Jan
Jan schrieb:> Der Programmstart+sofortige> datenlose Beendigung erzeugt seit einigen Versionen "csvview.exe hat ein> Problem festgestellt und muss beendet werden". Vielleicht steckt je mehr> dahinter. Gruß Jan
Werde ich mich drum kümmern, hoffe, den Fehler bald gefunden zu haben,
vermutlich der Versuch, Speicher zurückzugeben, der vorher nicht
angefordert war.
mfG ingo
Jan schrieb:> Hallo Ingo, ein rein kosmetisches Problem: Der Programmstart+sofortige> datenlose Beendigung erzeugt seit einigen Versionen "csvview.exe hat ein> Problem festgestellt und muss beendet werden". Vielleicht steckt je mehr> dahinter. Gruß Jan
Der Fehler ist jetzt lokalisiert:
Im Zuge der Änderung der Ini-Datei-Behandlung, hatte ich den Pfad zur
inidatei beim Dateiöffnen gemerkt, dann beim Schließen wieder in die
Datei zurückgeschrieben, schlecht, wenn dort mangels Dateiöffnen, kein
gültiger Pfad stand...
Die wird jetzt beim Programmstart initialisiert, hoffe, jetzt
funktioniert es besser,
mfG ingo
Falls von Interesse für Benutzer der Projet LevelJET Ultraschall
Füllstandsanzeige.
Da es meines Wissen kein Tool des Herstellers zum SD-Card Logger des
Leveljet gibt und man nur den beschwerlichen Weg über Excel o.ä. gehen
kann, findet man im Anhang ein einfaches Config File für den CSV-Viewer.
Damit kann man direkt das erzeugte .LOG File darstellen.
Gruss
datlog
Hallo,
gibt es eine Möglichkeit die Zeit Achse zu ersetzen?
Ich habe Daten die einfach nur durchnummeriert sind, wenn ich das in
eine Zeit umrechnen lasse finde ich meine Position in den Daten nie
wieder.
Am besten wäre es, wenn man zwischen Zeit und einer fortlaufenden Nummer
wählen könnte.
Viele Grüsse,
Dirk
Dirk schrieb:> Hallo,> gibt es eine Möglichkeit die Zeit Achse zu ersetzen?>> Ich habe Daten die einfach nur durchnummeriert sind, wenn ich das in> eine Zeit umrechnen lasse finde ich meine Position in den Daten nie> wieder.> Am besten wäre es, wenn man zwischen Zeit und einer fortlaufenden Nummer> wählen könnte.
Hallo Dirk!
In der Verarbeitung der Abzissendaten bin ich intern ziemlich fest auf
das "Zeitformat" (time_t) eingeschossen. Um dir trotzdem das Auffinden
der betreffenden Textzeile zu ermöglichen, habe ich die Funktion "messe
Werte" dahingehend erweitert, das sie die betreffende Zeilennummer
anzeigt. Das Ausfüllen der obligatorischen Datum/Zeit-Spalte kann ja der
Konverter übernehmen, indem Du ihm ein festes Zeitintervall je Zeile
vorgibst. Eine bessere Lösung sehe ich (im Augenblick erstmal) nicht.
Desweiteren sind 2 kleine Fehler korrigiert, siehe Doku.
mfG ingo
Irgendwie bin ich zu Blöd den Konverter richtig einzustellen.
Ich habe eine Datei mit diesem Inhalt:
1,0.262500,262,100,0,0,0,393,0,0
2,0.262500,262,100,393,0,0,393,0,0
3,0.264200,264,100,396,0,0,396,0,0
4,0.253500,253,100,379,0,0,379,0,0
5,0.253500,253,100,379,0,0,379,0,0
6,0.252400,252,100,378,0,0,378,0,0
7,0.274300,274,100,411,0,0,411,0,0
8,0.274300,274,100,411,0,0,411,0,0
9,0.292900,292,100,438,0,0,438,0,0
10,0.292900,292,100,438,0,0,438,0,0
...
80692,-0.014000,14,300,21,-6,0,21,6,4
80693,-0.014000,14,300,21,-6,0,21,6,4
80694,-0.010600,10,300,15,-6,0,15,6,4
80695,-0.012900,12,300,18,-6,0,18,6,4
Und möchte den nun umwandeln.
Die Daten sollen einfach nur rein kommen zum ansehen
Der Aufbau ist:
Daten Nummer, Strom [A], ABS Strom [mA],A,B,C,D,E,F,G
Bei allen versuchen die ich gemacht habe stürzt der Konverter ab oder
macht nichts.
Dirk
Hallo Dirk!
Habe dir mal, entsprechend deiner Erläuterungen, eine Konfig gebaut.
Vielleicht muss ich die ensprechenden Abschnitte in der Anleitung auch
noch etwas überarbeiten. Da, wie bereits geagt, Datum/Uhrzeit benötigt
werden, wird die hier, als Dummy, über Dateizeitstempel/festes Intervall
gemacht. Das große Intervall von 600 Sekunden war hier nötig, um die
kleine Datei Bildschirmfüllend anzeigen zu können, wenn deine Datei
'zigtausende Werte hat reicht bei dir vielleicht auch eine Sekunde. Der
Maximale Zoomfaktor ist 1 Sekunde/Pixel.
Für den Messwertsample habe ich unmittelbar vor den großen Pegelwechsel
geklickt.
Hoffe, das hilft erstmal weiter,
mfG ingo
Hallo,
ich hab mir vorhin mal den csv_viewer. Super Sache, genau das was ich
gesucht hab. Leider hab ich aber ein Problem. Ich habe für einen
Jahresverlauf jetzt ca. 430.000 Zeilen mit je 10 Spalten.
Das klappt auch alles soweit mit der Darstellung. Nur: wenn ich jetzt
zoomen will oder irgendetwas anderes ändern möchte, muss ich immer
warten, bis der Graph wieder neu geladen ist.
Gibt es vielleicht irgendeinen Weg, dass die Daten nicht immer neu
geladen werden müssen? So kann man nicht wirklich damit arbeiten :-/
Wäre super, wenn ihr mir helfen könntet!
besten Dank!
Und nochmal bin ich lästig :-)
Es wäre auch schön, wenn man die Zoom- Einstellungen, genauso wie die
Einheit auch speichern könnte. Also einmal einstellen und es ist beim
nächsten öffnen auch wieder so eingestellt.
Danke euch!
Knilch schrieb:> Das klappt auch alles soweit mit der Darstellung. Nur: wenn ich jetzt> zoomen will oder irgendetwas anderes ändern möchte, muss ich immer> warten, bis der Graph wieder neu geladen ist.
Wärend des Bildaufbaus, wird auf Tastaturereignisse geprüft, also der
Bildaufbau unterbrochen und die Tastenfunktion ausgeführt. Wenn also das
Zoomen/Scrollen mit der Tastatur erfolgt, geht das einigermaßen flüssig.
Über das Abspeichern der Zommeinstellungen hab ich schon nachgedacht,
evtl optional, weil ich nicht weiss, ob das so gut ist (andere Datei
geöffnet, oder Datei wurde geändert). Denke ich aber noch weiter drüber
nach.
mfG ingo
Du kannst es ja vielleicht optional (mit Haken) einrichten?!
Außerdem ist mir aufgefallen, dass die Tastaturfunktion "s" nicht
klappt. Über die Diagrammfläche geht´s.
Wenn ich die Taste drücke erkenne ich zwar eine reaktion am Bildschirm,
aber keine Reaktion am Graphen.
Grüße,
Knilch
Umsomehr ich rumspiel, desto fällt mir auf :-/
Wenn ich einige Zeit mit dem Programm beschäftigt bin und mit einer
Datei hin und her zoome, entwickelt sich der Graph plötzlich so, wie er
im Anhang ist- Was ist da denn los??? Was mach ich falsch?
Danke nochmal :-)
Abdul K. schrieb:> Was könnte schiefgehen, wenn man das Programm startet, es aber dann kein> Fenster bringt?
Rufst Du das Programm erstmalig, ohne Parameter auf? Wenn es an
fehlerhaften, gespeicherten Einstellungen liegt, hilft Start mit
gedrückter Umschaltetaste, dann werden keine Einstellungen geladen.
Ansonsten ist für Fehlerdiagnosen, immer die betreffende Datei
hilfreich. Habe im Moment leider nicht viel Zeit, werde aber trotzdem
versuchen, der Sache auf den Grund zu gehen.
mfG ingo
Parameter?? Ich mache einfach einen Doppelclick drauf.
Mit Shift öffnet sich nun ein Fenster und dann kann man mit Open ein
Dokument öffnen und es wird angezeigt. Beenden wirft dann KERNEL32.DLL
Fehler raus.
Ohne Shift kommt kein Fenster. Im Taskbar ist das Programm aufgeführt.
Beenden geht dann nur über Taskmanager.
CSVVIEW verursachte einen Fehler durch eine ungültige Seite
in Modul KERNEL32.DLL bei 0187:bff6baf3.
Register:
EAX=00000020 CS=0187 EIP=bff6baf3 EFLGS=00010202
EBX=0074bf9c SS=018f ESP=0074a330 EBP=0074a378
ECX=7803bb90 DS=018f ESI=00000020 FS=2717
EDX=81950000 ES=018f EDI=0074bf50 GS=0000
Bytes bei CS:EIP:
80 3e 04 74 0f 33 c0 50 50 50 68 05 00 00 c0 e8
Stapelwerte:
00000000 780114ac 00000020 7801162a 00000000 0074bf50 00007fc0 0074bf9c
bff6269c bff42d56 00743000 00000000 780352c8 0074a160 0074bf84 7800f56a
Wie skaliert man eigentlich? Scrollrad geht jedenfalls nicht und im Menü
fand ich dazu auch keinen Eintrag.
Abdul K. schrieb:> Wie skaliert man eigentlich? Scrollrad geht jedenfalls nicht
Ok, das Scrollrad hatte bisher wirklich keine Funktion, weil in meinem
alten SDK nicht beschrieben. Inzwischen hab ich mir die Funktion aus dem
MSDN rausgesucht, jetzt kann man mit dem Rad entlang der Zeitachse
rollen.
Thema Rekonstruktion der vorherigen Ansicht: werde (vielleicht kommendes
WE) einbauen, das, wenn man die gleiche Datei wieder öffnet, die alte
Ansicht wiederhergestellt wird.
mfG ingo
Knilch schrieb:> Es wäre auch schön, wenn man die Zoom- Einstellungen, genauso wie die> Einheit auch speichern könnte. Also einmal einstellen und es ist beim> nächsten öffnen auch wieder so eingestellt.
Habe es jetzt folgendermaßen eingebaut:
Wird die gleiche Datei (relevant ist der Dateipfad/Name, nicht der
Dateiinhalt/Zeitstempel), wieder geöffnet, dann werden die vorherigen
Ansichtseinstellungen (Zoom/Offset) mit wiederhergestellt, eine
automatische Skalierung findet in diesem Falle nicht statt.
Hoffentlich klappt alles, wie beabsichtigt,
mfG ingo
Hallo,
gibt es eine Möglichkeit mit dem Konverter das Format von Datum und
Urzeit zu überarbeiten? Mein Logfile sieht so aus:
DATE & TIME;T1[C];T2[C];T3[C];
2011-10-01 00:00;16;40;55;
2011-10-01 00:01;16;40;55;
Datum und Uhrzeit sind somit in der ersten Spalte und nicht getrennt.
Natürlich müsste auch das Datum "umgebaut" werden.
Danke und Gruß
Martin
Martin M schrieb:> gibt es eine Möglichkeit mit dem Konverter das Format von Datum und> Uhrzeit zu überarbeiten? Mein Logfile sieht so aus:
Hallo Martin,
Hab mir schon gedacht, das solche Wünsche kommen,
werde mich der Sache mal annehmen, kann aber noch nicht versprechen,
wann's fertig ist,
mfG ingo
Martin M schrieb:> gibt es eine Möglichkeit mit dem Konverter das Format von Datum und> Urzeit zu überarbeiten? Mein Logfile sieht so aus:>> DATE & TIME;T1[C];T2[C];T3[C];> 2011-10-01 00:00;16;40;55;> 2011-10-01 00:01;16;40;55;
Habs jetzt soweit, das es funktioniert:
Das Datum/Zeitformat kann jetzt durch einen entsprechenden Eintrag in
der Config festgelegt werden (Anleitung!) Die Konfig für dieses Beispiel
hängt mit an. Also ist diesmal nur der Konverter betroffen.
mfG ingo
Hallo Ingo,
das ging ja voll schnell. Leider funktioniert es bei mir nicht. Auch
wenn ich die config Datei auf 13 Spalten erweiter geht es nicht. Kann es
der Grund sein, dass meine Datei keinen "sauberen" Zeilenumbruch hat?
Gruß
Martin
Hallo Martin,
Habe deine Datei mal getestet, mit folgendem Ergebnis,
Ursache des Problems war wohl die Kopfzeile in deiner Datei, die hab ich
manuell rausgelöscht. Ich werde dafür im Konverter noch die Funktion
einbauen, eine Anzahl (1?) Zeilen zu "überlesen", dann kann man sich das
Löschen des Kopfes ersparen. Die, auf 12 Spalten erweiterte (hast Du
bestimmt genauso gemacht) Konfig hab ich wieder mit drangehängt.
mfG ingo
Jetzt kann der Konverter die Kopfzeile(n) auch selbst überspringen, des
Weiteren ist ein Fehler vom letzten Mal behoben: unabhängig ob wieder
die gleiche, oder eine andere Datei geöffnet wird, wird der letzte
horizontale Zoomfaktor wiederhergestellt. Für den schnellen Überblick,
wie gehabt, Rechtsklick->ganze Datei.
mfG ingo
Hallo,
hab das Programm vor einigen Tagen gefunden und bin begeistert !
Eine Idee hätte ich noch, könnte man einen Auto-Update machen, so dass
bei Änderungen in der Datei bzw. im (einstellbaren) Intervall die CSV
Datei neu eingelesen wird. Die Anzeige müsste dann im Zoom bleiben, aber
immer so scrollen dass die neuen Werte auch angezeigt werden.
Holger
Holger W. schrieb:> könnte man einen Auto-Update machen, so dass> bei Änderungen in der Datei bzw. im (einstellbaren) Intervall die CSV> Datei neu eingelesen wird.
Hallo Holger,
Beim Neuzeichnen des Diagramms, werden die Daten immer aus der aktiven
Datei gelesen, beim (manuellen) Vorwärtsrollen, bis zum jeweiligen
Dateiende. Das funktioniert allerdings nur, wenn die Datei direkt
angezeigt wird, nicht über den Konverter, dann wird nur die temporäre
Zwischendatei angezeigt. Bei Änderungen in der Originaldatei, müsste der
Konverter erneut drübergejagt werden.
Zum Thema, ans Ende springen, wenn die Datei gewachsen ist, muss ich
noch nachdenken, das könnte ja auch störend sein, wenn man sich gerade
einen Abschnitt weiter vorn ansehen möchte. Vielleicht fällt mir dazu
noch was ein.
mfG ingo
Hallo,
war ja nur als Anregung gedacht.
Da ich meine "eigenen" Daten anzeige habe ich die natürlich so
formatiert, dass ich ohne Konverter auskomme.
Jetzt würde ich gern dein Programm offenlassen und immer mal
draufschauen wie denn der Verlauf der letzten Stunden war.
Vielleicht über einen extra einzuschaltenden Parameter, "aktualisiere
mal nach x Minuten" oder so.
Aber auch so ist es schon genial.
Holger
Holger W. schrieb:> Vielleicht über einen extra einzuschaltenden Parameter, "aktualisiere> mal nach x Minuten" oder so.
Jetzt sind erst einmal die "Pos1"- und "Ende"-Tasten zu ihren Funktionen
gekommen. Im "Einstellungen"-Dialog gibt es jetzt die "Refreshzeit",
hier kann man einstellen, alle wieviele Sekunden die "Ende"-Taste
gedrückt werden soll. Dieser Wert steht nach Programmstart auf 0, damit
findet kein Refresh statt.
mfG ingo
Nach langer Suche bin ich nun bei euch gelandet. Ich verwende einen
Solarregler von Resol. Dieser schreibt mir meine SD Karte voller .csv
Dateien.
Die Auswertung über Exel ist sehr mühsam. Ich möchte das Ganze grafisch
darstellen.
Nun versuche ich es mit deinem Programm, allerding bekomme ich das mit
dem Datum nicht auf die Reihe. Ich wäre euch für Tipps und Tricks sehr
dankbar.
Im Anhang mal eine Datei von mir.
Hallo Steven,
Hab mal kurz über die Datei drübergeschaut, wenn zwischen Datum und
Uhrzeit ein Tab (Separator) wäre und diese beiden Spalten nur mit
"Datum" und "Zeit" beschriftet wären, würde es fast ohne Konverter
gehen.
Werde heut Abend mal eine Konfig für den Konverter vorgereiten.
mfG ingo
Hallo Steven,
Hab mir deine Datei mal vorgenommen, mit anhängenden Resultaten.
Was im ersten Moment die Auswertung etwas erschwehrt, ist der Umstand,
das auch kumulierende Zähler (Betriebssekunden), mit unhandlichem
Wertebereich enthalten sind. Dort habe ich mir erlaubt, mit Hilfe einer
Division durch 3600, daraus Betriebsstunden zu machen. Falls diese Daten
überhaubt nicht benötigt werden, können die entsprechenden Zeilen aus
der Konfig auch ganz rausgelöscht werden, dann verwirren sie auch nicht
mehr. Ansonsten der Tipp, erstmal jeden Graphen in der Legende anklicken
(hervorheben), und bei Nichtgefallen mit Dopperklick ausblenden.
hoffe, das hilft erstmal...
mfG ingo
Hallo Ingo,
Also das nenne ich mal einen Support. Du bist ja Mega Fix. Vielen
vielen Dank für die fixe Hilfe.
Ich werde mir jetzt mal die Daten ansehen und mich überraschen lassen.
Das mit den Betriebssekunden ist mir auch aufgefallen, danke für deine
Anpassung.
Gruss Steven
Hallo Leute,
Habe die automatische Skalierung der Y-Achse, beim Öffnen einer neuen
Datei gründlich überarbeitet, jetzt sollten hoffentlich keine krummen
Zahlen mehr dort auftauchen, ist mir bei der Beispieldatei von Steven
mal wieder übel aufgestoßen, das ich die Skalierung im
Einstellungen-Dialog "glatt" ziehen musste.
mfG ingo
Hallo,
vielen Dank für dieses Programm, es ist sehr nützlich für mich.
Eines ist mir aufgefallen: wenn man mehrere Instanzen des Programmes mit
verschiedenen Datensätzen öffnet, werden immer die selben Kurven
angezeigt. Lässt sich das noch abstellen?
noch ein Ingo
Ingo_D schrieb:> Eines ist mir aufgefallen: wenn man mehrere Instanzen des Programmes mit> verschiedenen Datensätzen öffnet, werden immer die selben Kurven> angezeigt. Lässt sich das noch abstellen?
Du nutzt sicher den Konverter,
das hängt nämlich damit zusammen, das der Konverter (derzeit) immer die
gleiche Zwischendatei erzeugt. Werde mich als Nächstes daran machen,
eindeutige (Dateiname aus Hashwert des Originalpfades?) Tempdateien zu
erzeugen (und bei längerer Nichtnutzung auch wieder zu entsorgen), wenn
verschiedene Originaldateien geöffnet werden. Mal schauen, vielleich
komme ich kommendes WE dazu...
mfG ingo
Hi,
ich habe das Teil auch mal getestet, ist genau das, was man "auf die
Husche" braucht.
Ich habe 43 Spalten (Kurven) mit Messwerten, die ich darstellen möchte.
Da mein Logger keine Datumsinformationen bekommt, schreibe ich als Datum
eine fortlaufende Nummer, Uhrzeit wie gefordert.
Nun schmiert das Programm ab, sobald ich den Cursor innerhalb des
Graphen bewege.
Sind 43 Spalten (Kurven) zuviel?
Liegt es an der "verkrüppelten" Datumsinfo?
Thilo M. schrieb:> Ich habe 43 Spalten (Kurven) mit Messwerten, die ich darstellen möchte.> Da mein Logger keine Datumsinformationen bekommt, schreibe ich als Datum> eine fortlaufende Nummer, Uhrzeit wie gefordert.>> Nun schmiert das Programm ab, sobald ich den Cursor innerhalb des> Graphen bewege.>> Sind 43 Spalten (Kurven) zuviel?
sollte eigentlich kein Problem sein.
> Liegt es an der "verkrüppelten" Datumsinfo?
Wenn die Aufzeichnung in konstanten Intervallen erfolgt und die Datei
nach dem letzten Datensatz geschlossen wurde (Zeitpunkt der letzten
Änderung), besteht auch die Möglichkeit, das der Konverter die
Zeitmarken selbst erstellt.
Eine (notfalls gekürzte) Beispieldatei (eventuell auch über PN) könnte
helfen, den Fehler zu finden.
mfG ingo
Hallo Thilo,
Habe mal eine (hoffentlich) passende Konverter-Konfig gebaut,
die ersten beiden Spalten ignoriert (Datum/Uhrzeit), die
Spaltenbeschrifungen aus deiner Kopfzeile übernommen, als Endzeit, die
Uhrzeit als die Datei geschrieben wurde (ich sie hier runtergeladen
habe, die Zeitstempel werden ja von HTTP nicht übertragen) und je
Datensatz 60 Sekunden zurückgerechnet.
Deine Datei hat bei mit die Endung "csvt" bekommen, um sie von Anderen
unterscheiden zu können.
Bei deiner Originaldatei, mit dem richtigem Zeitstempel, sollten die
Zeiten dann auch stimmen. Da die meisten Reihen sich um 0 bewegen, ist
allerdings noch nicht allzuviel zu sehen, hoffe allerdings, sie hilft
ein Wenig weiter.
mfG ingo
Ingo Wendler schrieb:> hoffe allerdings, sie hilft> ein Wenig weiter.
Ja, danke, hat mir sehr geholfen!
Da ich die Datei vom Logger auf SD-Karte so schreiben kann, dass der
Viewer sie versteht, kann ich das jetzt anpassen.
Danke nochmal.
Ingo_D schrieb:> Eines ist mir aufgefallen: wenn man mehrere Instanzen des Programmes mit> verschiedenen Datensätzen öffnet, werden immer die selben Kurven> angezeigt. Lässt sich das noch abstellen?
Hallo Ingo, hab es wohl jetzt hinbekommen, des Weiteren kann der
Startzeitpunkt für den Konverter, jetzt auch aus dem Dateinamen
abgeleitet werden (weil z.B. der µC nur die Uhrzeit, aber nicht das
Datum hat und daher keine richtigen Dateizeitstempel setzen kann),
könnte vielleicht für Thilo interessant sein.
Hoffe, alles klappt wie beabsichtigt,
mfG ingo
Hi Ingo W.
ich logge Daten von einem Solarregler, der nur eine Wochenuhr hat. Also
Mo=0 bis So=6 und die Uhrzeit in hh:mm.
Ich werde jetzt im Logger intern das Datum fest auf den 01.05.2000
setzen (weil Montag) und die Wochentagnummer des Solarreglers
dazuaddieren. Dann habe ich wenigstens ein vernünftiges Datum, das auch
zu den Wochentagen passt.
Die Funktion mit dem Dateinamen ist dann sehr hilfreich!
Ein anderes Problem ist, dass zwischendrin ein paar Minuten fehlen
können, wenn die SD-Karte ausgelesen wird z.B.
Kann man das im Konverter irgendwie berücksichtigen?
Die X-Achse quasi aus der Uhrzeit (den einzelnen Datensätzen) erstellen,
fehlende Zeiten einfügen und mit dem letzten vorhandenen Wert füllen
(interpolieren)? Wäre sowas wie ein X-Y-Diagramm.
Thilo M. schrieb:> Ein anderes Problem ist, dass zwischendrin ein paar Minuten fehlen> können, wenn die SD-Karte ausgelesen wird z.B.> Kann man das im Konverter irgendwie berücksichtigen?> Die X-Achse quasi aus der Uhrzeit (den einzelnen Datensätzen) erstellen,> fehlende Zeiten einfügen und mit dem letzten vorhandenen Wert füllen> (interpolieren)? Wäre sowas wie ein X-Y-Diagramm.
In dem Falle würde ich etwas anders an die Sache ran gehen:
Die einzelnen Wochendateien werden nach der Konvertierung (wenn sie
schon gültige Zeitmarkierungen in den Zeilen haben) aneinander gehängt.
Werde dazu den Konverter um einen "Anhängemodus" erweitern. Musst dann
nur jede Woche, die entsprechend präparierte "Wochendatei" manuell auf
den Konverter werfen, dann hinterher die fortgeschriebene Gesamtdatei
anzeigen.
Wenn dann zwischendurch Zeiten fehlen, ist es trotzdem kein Problem, die
Zeiten müssen ja ohnehin keinen konstanten Abstand haben.
mfG ingo
Diesmal betreffen die Änderungen, nur den Konverter, habe den
Anhängemodus zugefügt, damit man einzelne Logs zu einer
Gesamtaufzeichnung zusammenfügen kann. Bitte dazu, die Hinweise in der
Anleitung lesen. Des Weiteren eine vergessene Debugmeldung (Messagebox)
entfernt, die kam, wenn die Startzeit formatiert aus dem Dateinamen
gelesen wurde.
Hoffe, alles klappt wie beabsichtigt,
mfG ingo
Edit:Typo
So, nun habe ich auch mal Daten zum Auswerten. ;-)
Klappt super! Wirklich ein prima Tool, danke dafür!
Datum aus Dateiname erstellen ist eine gute Idee gewesen, ich muss dann
nur meine Rohdaten-Dateien entsprechend umbenennen.
Um den Anhängemodus zu testen brauche ich noch ein paar Tage Daten.
Ich habe mal einen konvertierten Tag drangehängt.
Hallo, unter www.highcharts.com findet sich eine recht komfortabel
nutzbare und auch webfähige (javabasierte) Lösung zur grafischen
Auswertung eigener Daten! Dazu brauchts dann nur noch einen halbwegs
aktuellen Browser- und kostenlos ist das Ganze auch!
Grüße, Rolf
Guten Tag,
Tolles Programm.
Ich habe eine Datei mit Messwert in µS (6 Nachkommastellen)
und 3 Geräte.
Die Datei ist 1735000 Zeilen lang (40 MB).
MS Access und OO Base haben es nicht geschafft das darzustellen.
Beide können die CSV importieren aber OO hängt sich auf bei Sun Report
Builder und Access meldet "Zu viele Kreuztabellen-Spaltenüberschriften".
Ich würde mich freuen über eine Lösung.
Optional auf Server Basis.
Christian H. schrieb:> Ich habe eine Datei mit Messwert in µS (6 Nachkommastellen)> und 3 Geräte.> Die Datei ist 1735000 Zeilen lang (40 MB).
Hallo Christian,
werde mir mal eine Testdatei, in dieser Größenordnung, nach diesem
Muster bauen, um zu testen, in welcher Größenordnungsordnung die
Darstellungszeit liegt (einige MB hatten wir hier auch schon).
Wenn es halbwegs beherrschbar ist, dann werde ich mal über ein
alternatives Zeitachsenformat nachdenken. Könnte aber ein Weilchen
dauern, dieses WE wird es definitiv nichts.
mfG ingo
Christian H. schrieb:> Ich habe die Lösung, sie steht hier:> Beitrag "Re: GNUPlot CSV-Datei Plotten"
Da dieses Problem gelöst ist, kann das Thema "alternative
X-Achsenbeschriftung" erstmal etwas nach hinten (aber nicht aus dem
Kopf),
Dafür habe ich noch etwas Anderes in Planung, nämlich das der Konverter
statt aus einer Datei, alternativ auch von einer seriellen Schnittstelle
oder einem TCP-Socket (aktiv/passiv) lesen kann (da sollte dann auch
Text ankommen).
> Ich suche eine Möglichkeit Daten über UDP zu Visualisieren.
Hier wäre mal interessant, wie die Daten in den Datagrammen aussehen,
evtl mal mit WireShark aufzeichnen und die pcap-Datei hier einstellen.
Wenn die allerdings recht binär sind, wäre es evtl. günstiger, ein
dediziertes Ptogramm, für das Einsammeln (und als Datei speichern) zu
schreiben.
mfG ingo
Hi nochmal,
bin sehr glücklich mit dem Teil mittlerweile. ;-)
Ein kleines Fehlerchen (so es eines ist) habe ich noch gefunden:
- .txt Datei laden über den 'Filter' mittels 'konv-Datei'
- .csv Datei wird unter C:\Dokumente und Einstellungen\Thilo\Lokale
Einstellungen\Temp\csv_viewer angelegt.
- am nächsten Tag wird die mittlerweile erweiterte Datei nochmals
geöffnet
Fehler: es wird nur bis zum Endzeitpunkt des Vortages angezeigt.
Lösche ich die .csv unter C:\Dokumente und Einstellungen.., dann
funktioniert es. Scheinbar wird diese .csv nicht aktualisiert oder
überschrieben.
Ich hoffe, es ist deutlich genug, was ich meine. ;-)
Hallo Thilo,
Das muss irgendwie mit dem Vergleich der Dateizeitstempel
zusammenhängen, ich hoffte, das Datum der letzten Änderung zu erhalten,
kriege dann anscheinend das Erstellungsdatum. Du kannst aber die
Konvertierung erzwingen, indem du in den Filtereinstellungen den
Schalter "Testmodus" einschaltest, dann wird immer konvertiert.
Ich bleibe aber trotzdem an der Sache dran.
mfG ingo
Danke, ich werd's testen, wenn ich eine neue Datei habe.
Auch die Zeitstempel schaue ich mir mal näher an. Da ich die mit der Lib
hier aus dem Forum erstelle und bearbeite, vermute ich, dass der 'last
modified' Stempel nicht aktualisiert wird und der Fehler da herkommt.
Wenn ich die Dateien öffne und einfach nochmal speichere funktioniert's.
Hallo Thilo,
Habe gerade noch mal das Handling mit den Zeitstempeln getestet:
unveränderte Datei wieder geöffnet: keine Konvertierung, Datei
weitergeschrieben und wieder geöffnet: erneute Konvertierung,
Thilo M. schrieb:> Danke, ich werd's testen, wenn ich eine neue Datei habe.> Auch die Zeitstempel schaue ich mir mal näher an. Da ich die mit der Lib> hier aus dem Forum erstelle und bearbeite, vermute ich, dass der 'last> modified' Stempel nicht aktualisiert wird und der Fehler da herkommt.> Wenn ich die Dateien öffne und einfach nochmal speichere funktioniert's.
Genau, das ist wohl der Grund. Da dem µc in der Regel gar kein
vollständiges Datum/Uhrzeit zur Verfügung steht, wird wohl nur ein "pro
Forma"-Datum drinstehen. Da es bei dir ja wohl auch so war, das neue
Aufzeichnungen an ein gesamt-Log angehängt werden sollen (und das
möglichts jeweils nur einmal), würde ich das Konvertieren in diesem
Falle auch extern (Desktopverknüpfung oder Batch) machen.
mfG ingo
Hallo Ingo,
ich bin wieder auf ein Problem gestoßen:
Wenn ich die (im Anhang) geloggten Daten mit dem Konvertierungsscript
von Hand konvertiere funktioniert alles.
Probiere ich das per Filter im Viewer funktioniert es nicht (Datei kann
nicht gelesen werden).
Ist es möglich, dass irgendwo noch Einstellungen gespeichert und von
dort beim Programmstart geholt werden?
Wenn ich die Filtereinträge lösche, das Programm beende und wieder
starte, dann sind die Filtereinträge wieder da.
Wenn vorher mit einem anderen Filtereintrag gearbeitet wurde
funktioniert anschließend nichts mehr, auch der alte Filter nicht.
Hallo Thilo,
Habe leider erst jetzt, kurz Zeit gefunden, über deine Daten
rüberzuschauen.
Eine Sache ist mir aufgefallen (sollte aber nichts mit dem Unvermögen,
die Datei zu lesen zu tun haben): Deine Nutzdaten enthalten
Datum/Zeitinformationen, die hier allerdings nicht genutzt werden. Daher
müsstest Du die Zählung der X-Eingänge mit 3 beginnen, sonst hast Du
einen Versatz in den Beschriftungen und siehst nicht die Daten, die Du
erwartest, da ja auch etliche Kanäle auskommentiert sind.
Speichern der Filtereinstellungen:
Wenn Du die Liste mit den Filtern völlig leer machst, wird in der Tat,
die Datei "csv_view.flt" im Nutzerprofil nicht überschrieben, da ich
davon ausgegangen bin, das diese, optionale Funktion nicht genutzt wurde
(ist auch erst später, als Zusatzfunktion reingekommen). In dem Falle,
die Datei %userprofile%\csv_view.flt händisch löschen, oder eine
Dummyzeile drinlassen.
Werde mir aber, sobald wieder etwas Zeit, die Daten noch einmal
anschauen.
Bis dann, mfG ingo
Edit: Typo
Hallo Thilo,
Um deinem Problem auf den Grund zu gehen, habe ich, zum Vergleich, die
Datei mit LibreOffice geöffnet und entsprechend ein Diagramm erstellt.
Dann habe ich deine Konfig, entsprechend meinem letzten Hinweis
angepasst (Spaltennummern um 2 erhöht, wegen der Datum/Zeitspalten).
Damit habe ich ein Ergebnis erhalten, was mir eigentlich plausibel
erscheint und keine Erklärung für dein Problem. Da ich aber weiss, das
Leerzeichen in Pfaden, bei der Parameterübergabe an Programme gern
Probleme bereiten und das Problem in dieser Richtung vermute, habe ich
die Dateiparameter beim Konverteraufruf schon von Anfang an, in
"Gansefüsschen" engepackt, wie man in der Debugmeldung sehen kann. Nur
wenn ich den Pfad zum Konverter (Programm) selbst einrahme, funktioniert
der Programmaufruf nicht. Also sollte der Pfad zum Konverter, möglichst
keine Leerzeichen enthalten.
Im anhängenden Zip-Archiv ist der Viewer mit aktiver Debugmeldung drin,
ansonsten unverändert, daher diese Version nur zur Fehlersuche und nicht
zum allgemeinen Gebrauch. Hoffe, das wir den Fehler damit finden,
mfG ingo
So, hier mal die Ergebnisse:
der Tipp mit den Leerzeichen wars. Alle Leerzeichen in Ordner- und
Dateinamen entfernt und es läuft.
Was noch schön wäre:
die .ini und die .flt - Dateien wären meiner Meinung nach im Verzeichnis
der csvview.exe besser aufgehoben als unter "Dokumente und
Einstellungen".
Da das Programm schön mobil vom USB-Stick aus läuft, wäre es schön, wenn
es keine "Spuren" oder Abhängigkeiten auf der Festplatte hinterlassen
würde. Chromleiste wäre natürlich ein frei wählbarer Pfad zu diesen
Dateien.
Die Y-Achsen-Einstellung wird anscheinend nicht in der .ini gesichert
und wieder geladen, oder? Das wäre auch prima, spart einiges an
Tipperei, falls hohe Werte in den Daten auftauchen.
Alles in Allem: super Arbeit, Ingo! Danke nochmal dafür!
Hallo, zusammen,
Das Thema "Stickware" werde ich bei Gelegenheit mal angehen, kann zu
Zeitpunkt aber noch keine Versprechungen machen. In der "Erstverwendung"
wird das Programm auf einem Terminalserver von verschiedenen Nutzern,
u.U. auch gleichzeitig genutzt, da ist das Nutzerprofil ein Muss. Werde
es aber so ändern, wenn eine (auch leere) .ini im Programmverzeichnis
vorgefunden wird, diese und der Rest auch dort abgelegt wird. Dann
müssten, in den Filtereinstellungen, die Pfade auch relativ zu diesem
angegeben werden, da sich der LW-Buchstabe dann ändern könnte....
Dann bis später, mfG ingo
Edit:
Visuelle Einstellungen (Zoom,Position) werden wiederhergestellt, wenn
die gleiche Datei wieder geladen wird. Wenn zwischendurch eine Andere
geöffnet wurde, dann wieder die Totale, weil diese Einstellungen nur
einmal in der .ini stehen. Ansonsten: individuelle ini.'s, siehe
Handbuch, Ini-Handling. oder den Thread zurückverfolgen.
Thilo M. schrieb:> Da das Programm schön mobil vom USB-Stick aus läuft, wäre es schön, wenn> es keine "Spuren" oder Abhängigkeiten auf der Festplatte hinterlassen> würde. Chromleiste wäre natürlich ein frei wählbarer Pfad zu diesen> Dateien.
Die Pfade für das Nutzerprofil und Temp-Verzeichnis, werden den
Umgebungsvariablen %userprofile% und %temp% entnommen.
Wenn man das Programm indirekt, über eine Batchdatei folgenden Inhalts:
////
set temp=\Zwischenergebnisse
set userprofile=\Nutzereinstellungen
start "" csvview.exe %1
\\\\\
, im gleichen Verzeichnis, wie der Viewer, aufruft, dann können diese
Pfade willkürlich festgelegt werden, in diesem Falle 2 Verzeichnisse
unmittelbar im Root des aktuellen Laufwerkes, mit "." wäre das aktuelle
Verzeichnis möglich.
Aus den Pfadangaben in den Filtereinstellungen, müssten dann noch die
Laufwerksbezüge entfernt werden, wie im Anhang, dann ist die Sache
völlig portabel und Rückwirkungsfrei auf dem Hostsystem.
mfG ingo
Hi Ingo,
mann, bist du schnell! :-)
Ich werd's mal probieren.
Als verwöhnter Mausschubser vergisst man schnell, wie hilfreich
Batchdateien sein können. Prima Tip.
Thilo M. schrieb:> Die Y-Achsen-Einstellung wird anscheinend nicht in der .ini gesichert> und wieder geladen, oder? Das wäre auch prima, spart einiges an> Tipperei, falls hohe Werte in den Daten auftauchen.
Wie gesagt, es sind individuelle ini's für jede Logdatei möglich
(gleicher Dateiname, Endung .ini), oder eine csv_view.ini für jeden
Ordner mit Logdateien. Damit diese Dateien nicht mehr manuell dort
hinkopiert und umbenannt werden müssen, habe ich jetzt die Funktion
Datei->Einstellungen sichern (und Laden) eingebaut. Der Konverter wartet
jetzt, nach einer eventuellen Fehlermeldung auf eine Entertaste, bevor
er sich beendet, damit man selbige noch lesen kann. Auch dies sollte
eine, eventuell erforderliche Fehlersuche erleichtern.
Die Hinweise auf die Umgebungsvariablen, in die Anleitung integriert,
falls nochmal jemand brauchen kann.
Hoffe, alles klappt, wie beabsichtigt,
mfG ingo
Hi Ingo,
ich würde gerne Deinen schönen Viewer im Wiki
http://openv.wikispaces.com/ anbieten, da hier eine CSV-DAteien erzeugt
werden :-) Hast du etwas dagegen?
Hallo Simmon,
Selbstverständlich kannst Du das Programm im Wiki anbieten, wobei ich
einen Link auf diesen Thread am sinnvollsten finde, da brauchst Du dich
nicht um neue Versionen kümmern.
Ein Problem, in Zusammenhang mit dem "." (aktuelles Verzeichnis) in
Zusammenhang mit Umgebungsvariablen, ist mit noch aufgefallen:
Der "Datei öffnen"-Dialog, ändert selbiges, damit wird die
Konverterkonfig an falscher Stelle gesucht. Das hab ich jetzt
dahingehend gelöst, indem ich vor dem Dialog das aktuelle Verzeichnis
gesichert und hinterher wieder hergestellt habe. Habe bisher immer die
anzuzeigende Datei im Explorer auf die Batchdatei (oder
Desktopverknüpfung auf selbige) fallen lassen und da hat es immer
geklappt. Jetzt sollte es auch über "Datei öffnen" zuverlässig klappen.
mfG ingo
Hallo, zusammen -
Mal wieder eine kleine Fehlerkorrektur. Bisher war es möglich, durch
starkes Verkleinern (gesamte Datei nimmt nur einen kleinen Bruchteil des
gesamten Bildschirms ein) und anschließendes Scrollen, das Programm zum
Absturz zu bringen. Dies sollte jetzt nicht mehr passieren.
mfG ingo
Tut mir leid, auch in der letzten Version war wieder ein (neuer) Fehler
drin: wenn die Aufzeichnung weniger Sekunden hat, als das Diagramm Pixel
horizontal, dann wurde der Horizontale Zoom auf 0 gesetzt und garnichts
angezeigt. Jetzt ist wieder Minimum 1, in diesem Falle wird das Diagramm
nicht ganz voll. Hab es jetzt nochmal mit verschiedenen Beispieldateien
getestet, jetzt sollte es funktionieren.
mfG ingo
Hallo Ingo,
vor ein paar Monaten (25.10.2011) hast Du eine Konfigdatei für Steven
eingestellt, die ich jetzt verzweifelt mit dem neuesten csv-viewer auf
die angefügte Datei anwende. Ist wieder dieses Problem von Datum und
Uhrzeit in der ersten Spalte, getrennt durch Leerzeichen, danach alles
Tabulatortrennung.
Entweder ich kapiere die generelle Bedienung des viewer nicht oder die
konfidatei passt nicht.Kannst Du es mal probieren und sagen, ob es
klappt
Besten Dank für die Mühe
Hallo Rosisosi,
Habe deine Beispieldatei (umbenannt auf die Endung "csvr", um sie von
Anderen unterscheiden zu können), basierend auf deiner Beispielkonfig,
mal angesehen und bin auf das Ergebnis im Anhang gekommen, die Konfig
scheint also in Ordnung zu sein und auf deine Logdatei zu passen. Du
müsstest dann nur noch die Filtereinstellungen ähnlich meinem Beispiel,
mit den Pfaden, wo Du den Konverter (und Viewer) und die Konfig
gespeichert hast, vornehmen.
Als Endung kannst du dann "csv" nehmen, wenn dies dein einziges
Logdateifomat ist und Du die Dateien mit dieser Endung gespeichert hast.
mfG ingo
Vielen Dank für die Hilfe, aber ich bin etwas am verzweifeln.
Die Musterdatei ohne Konverter und Konfig wird sauber angezeigt.
Sobald ich aber konverter und die Konfig einfüge zeigt er im besten
Fall:
Datei hat falsches Format (Spalte 1 ungleich Datum)! Im schlimmeren Fall
zeigt er Datei konnte nicht geöffnet werden.
Darf ich nochmal um einen Tip anfragen? Die Dateien habe ich
entsprechend eingegeben.
Gruß
rosisosi
Rosisosi schrieb:> Die Musterdatei ohne Konverter und Konfig wird sauber angezeigt.
Das wage ich, mit Verlaub zu bezweifeln, das die Quelldatei aus
Beitrag "Re: Visualisierung von geloggten Daten"
ohne Konvertierung angezeigt wird.
> Sobald ich aber konverter und die Konfig einfüge zeigt er im besten> Fall:> Datei hat falsches Format (Spalte 1 ungleich Datum)! Im schlimmeren Fall> zeigt er Datei konnte nicht geöffnet werden.> Darf ich nochmal um einen Tip anfragen? Die Dateien habe ich> entsprechend eingegeben.
Jetzt wird die Ferndiagnose etwas schwierig, werde es aber trotzdem
versuchen.
Habe den Viewer jetzt so abgeändert, das bei aktivem Testmodus, vor dem
Konverteraufruf, die früher bereits genutzte Debugmeldung ausgegeben
wird.
Der Konverter selbst, sollte im Fehlerfalle, auch lesbare
Fehlermeldungen ausgeben.
Du solltest dann jetzt bitte je einen Screenshot von den
Filtereinstellungen, Debugmeldung und eventuellen Fehlermeldungen
posten.
Vorher, bitte die anhängende Version runterladen und alte Version, damit
ersetzen.
mfG ingo
Hi Ingo,
ich habe da ein Thema, bei dem ich nicht weiß, ob das Dein Viewer
hergibt - bzw. erweitert werden könnte:
Ich schreibe tgl eine CSV-Datei, in der Startzeiten und Stromverbrauch
meiner Luft-/Wärmepumpe enthalten sind. Allerdings bekomme ich für
jeden Tag immer nur eine CSV-Zeile, in der die Gesamteinschaltungen und
-Verbrauch (seit erster in Betriebnahme) enthalten sind.
Nun wollte ich mit dem KONV also sozusagen X2(Zeile2)-X2(Zeile1)
berechnen
Hast Du sowas vorgesehen?
Hi Simon,
Du meinst sicher das delta, zum vergangenen Wert.
prinzipiell geht sowas, nämlich über die Y-Werte.
Die widerspiegeln die Ergebnisse der vorangegangenen Berechnungen,
betrifft die aktuellen Werte, der Zeilen darüber, oder die Werte der
letzten Berechnungen, wenn Du auf Zeilen zugreifst, die aktuell noch
nicht berechnet sind, weil sie weiter unten in der Konfig stehen.
Vielleicht postest Du mal ein Beispiel, vielleicht wirds dann klarer.
mfG ingo
Hi Ingo,
danke für die schnelle Antwort.
Also die Datei sieht so aus:
Datum;Zeit;Betriebs_H_Verd;Einschaltungen;Betriebs_H_SpeicherLP
21.01.2012;22:47;828.830261;2035.000000;215.545273
22.01.2012;17:30;833.951111;2041.000000;217.237778
23.01.2012;17:30;840.453064;2049.000000;218.114441
24.01.2012;17:30;848.429749;2056.000000;219.040283
25.01.2012;17:30;859.015015;2064.000000;220.560837
26.01.2012;17:30;869.015015;2071.000000;221.560837
27.01.2012;18:21;879.861084;2078.000000;223.165558
28.01.2012;17:30;888.568604;2085.000000;224.793610
Letztlich möchte ich nun für alle 3 Werte einer Zeile immer die
Tageswerte ermitteln
Gruß
Simon
Hallo Simon,
Die Konfig, im Anhang, sollte machen, was Du dir vorstellst, einziger
Wermutstropfen ist das erste Intervall, das hast Du natürlich hohe
Tageswerte, die die automatische Skalierung durcheinanderbringen. Also,
sooft die "h"-Taste (höher) drücken, bis die folgenden Tageswerte
erkennbar angezeigt werden.
mfG ingo
Ingo Wendler schrieb:> Wermutstropfen ist das erste Intervall, das hast Du natürlich hohe> Tageswerte, die die automatische Skalierung durcheinanderbringen.
Um dieses Problem zu lösen, hab ich jetzt in den Konverter eine
Wertebegrenzung eingebaut, die bei Ausreißern, das Zeichenen des Graphs
aussetzt. Diese Änderung betrifft nur den Konverter.
In der Beispielkonfig sind die entsprechenden Grenzwerte eingetragen und
optische Patzer (Beschriftungen) korrigiert
mfG ingo
Werde hoffentlich nicht lästig,
bei den, an zufälligen Zeitpunkten abgelesenen Zählerständen, ist
natürlich auch die Zeitdifferenz zu berücksichtigen. Dafür hab ich jetzt
im Konverter die Funktion td(teiler) eingebaut, die diese Information
liefert. Im ersten Datensatz, ist dies die Zeit, seit 1.1.1980, damit
sind auch die überhöhten Werte des ersten Datensatzes erledigt. Die
Eingangswerte des letzten Datensatzes, stehen jetzt über die Zn-Werte
direkt zur Verfügung.
mfG ingo
So jetzt konnte ich weitermachen.
Die Fehlermeldung und der Dateipfad sind angehängt
Was sagt die Fehlermeldung jetzt aus?
Nach der Fehlermeldung kam noch das Feld Datei konnte nicht geöffnet
werden
Gruß
rosisosi
Rosisosi schrieb:> Was sagt die Fehlermeldung jetzt aus?
Für mich sieht es so aus, als ob die Pfade zum Konverter und zur Konfig,
nicht richtig eingetragen sind, weil da komische Sonderzeichen
drinstehen.
Mit den beiden ".."-Knöpfen, kannst Du normale "Datei öffnen"-Dialoge
aufrufen, die die Pfade dann eintragen. Hinterher, die Änderungen mit
"Ändern" übernehmen. Wichtig: Der Pfad zum Programm darf keine
Leerzeichen enthalten, "Eigene Dateien" macht also Ärger!
Daumendrück, das alles klappt, vom ingo
Hallo Herr Ingo Wendler,
vielen Dank für dieses schöne Programm! Nachdem LibreOffice-Calc an den
über 200.000 Datenpunkten schier verzweifelt ist, hat Ihr Programm diese
Aufgabe prima gelöst und mir ein schönes Diagramm geplottet! Ich würde
mir jedoch gern wünschen, dass das Programm mit den unterschiedlichen
Zeitformten einfacher arbeiten kann (z.B. ist das JJJJ-MM-DD
HH:MM:SS.ssss Format bei vielen Messgeräten Standard (<- übringes an
zahlreichen Stellen im Programm als Standart geschrieben ;) !). Falls
der Konverter auch die unterschiedlichen Zeitformate unterscheidet, so
bitte ich um Verzeihung, ich bin damit nicht so wirklich
zurechtgekommen.
Viele Grüße,
Kamil
Kamil schrieb:> Ich würde> mir jedoch gern wünschen, dass das Programm mit den unterschiedlichen> Zeitformten einfacher arbeiten kann (z.B. ist das JJJJ-MM-DD> HH:MM:SS.ssss Format bei vielen Messgeräten Standard (<- übringes an> zahlreichen Stellen im Programm als Standart geschrieben ;) !).
Hallo Kamil,
Bitte nicht so förmlich, wir sind doch hier unter uns ;-)
Natürlich ist das englische Format in der Messtechnik verbreiteter, als
das deutsche, allerdings hatte ich solche Auswertungen am Anfang auch
mit einem (deutschen) Excel gemacht, daher das Standartdateiformat. Und
sicherlich kann man das Ausgangsformat mit dem Konverter anpassen, das
die Zeitmarken richtig gelesen werden. Das Zeitformat muss allerdings in
der Konfig angegeben werden, wird also nicht automatisch erkannt.
Sekundenbruchteile kann das Programm (derzeit noch) nicht verarbeiten,
bin aber schon ein Weilchen am überlegen, wie es am Besten zu
realisierenn ist. Einfach mal eine (gekürzte?) Musterdatei hier
vorstellen, dann können wir ja mal schauen...
mfG ingo
Hallo Zusammen,
Weil ich Sowas schon mal versprochen habe und es hier mal wieder
nachgefragt wurde: Beitrag "Graphen zeichnen" habe
ich hier ein kleines Kommandozeilentool gebastelt, welches Textzeilen,
die über die serielle Schnittstelle reinkommen, passend macht und mit
Zeitstempel aus der Systemzeit des PC versieht, dass sie direkt mit dem
Viewer (mit eingestellter Refreshzeit, auch fast in Echtzeit) angezeigt
werden können. Kommandozeile z.B.
sercapt \\.\com12 9600,8,n,1 test.csv
Die Datei wird nach jedem empfangenen CR oder LF, zum Anhängen geöffnet,
Zeile hintenran geschrieben, und wieder geschlossen. Die Kopfzeile muss
vorher manuell reinkopiert werden (Kopf.txt zum Beispiel).
Falls es jemand brauchen kann...
mfG ingo
Edit: Copy&Paste-Fehler beseitigt
Hallo Ingo,
das oben war mein erster Post auf dieser Plattform, der sollte nett
sein.
Meine Datei hat keine Metaheader-Zeile, beinhaltet also nur Daten.
Die werden in dieser Form abgespeichert:
1
2011-12-07 00:02:10.498,9.32
2
2011-12-07 00:02:30.700,9.32
3
2011-12-07 00:02:50.887,9.32
4
2011-12-07 00:03:11.58,9.32
5
2011-12-07 00:03:31.260,9.32
6
2011-12-07 00:03:51.446,9.32
7
2011-12-07 00:04:11.632,9.32
8
2011-12-07 00:04:31.834,9.41
9
2011-12-07 00:04:52.37,9.32
10
2011-12-07 00:05:12.223,9.32
11
2011-12-07 00:05:32.394,9.32
12
2011-12-07 00:05:52.596,9.32
13
2011-12-07 00:06:12.798,9.32
14
2011-12-07 00:06:33.00,9.32
15
2011-12-07 00:06:53.171,9.32
16
2011-12-07 00:07:13.373,9.32
17
2011-12-07 00:07:33.559,9.32
18
2011-12-07 00:07:53.730,9.32
19
2011-12-07 00:08:13.932,9.32
20
2011-12-07 00:08:34.134,9.32
21
2011-12-07 00:08:54.321,9.32
22
2011-12-07 00:09:14.491,9.32
23
2011-12-07 00:09:34.678,9.32
Die Millisekunden-Angabe ist notwendig, weil das Messgerät (USB-Messbox
mit 8 Sensoren) mit dem momentanen Programm bis zu 10 Werte pro Sekunde
liefert und man die ja schön getrennt haben muss. Ich habe mir für die
Verwendung vom csvViewer ein php-Skript geschrieben, welches die
einzelnen csv-Dateien (pro Tag eine) verknüpft und die Werte auch gleich
aufbereitet (also auch das Datenfeld anpasst).
Kann man die geplotteten Graphen anders abspeichern als durch den
XPS-Drucker? Screenshots mag ich persönlich nicht soo sehr.
Trotzdem, nach wie vor sehr angetan von dem Programm!
Viele Grüße,
Kamil
Hallo Kamil,
Für die Daten aus deinem Beitrag, sollte die anhängende Konfig passen,
wie gesagt, werden aber die Sekundenbruchteile unterschlagen. Bei
Messintervallen in der Größenordnung 10 Sekunden, sollte dies aber auch
kein großes Problem sein, irgendwann kommen die aber auch noch mit rein,
Versprochen!
Für Ausgaben als Vektorgrafik, bietet sich das Programm "PDF-Creator"
(OSS) an, es stellt sich auch als Drucker dar, die erzeugte pdf lässt
sich dann mit Inkscape öffnen und dann in das gewünschte Format
umwandeln. Wobei die hier entstehenden Dateien auch recht groß sein
können, da je nach Vergrößerung, die gezeichnneten Graphen aus vielen
einzelenen Linien bestehen können.
mfG ingo
Hallo Ingo,
Vielen Dank für die Konfigurationsdatei! Ich dachte mir schon, dass es
irgendwie gehen muss - bin aber einfach nicht draufgekommen! Gut, dass
es nun so klappt!
Viele Grüße,
Kamil
Habe das Aufzeichnungsprogramm so erweitert, das bei einer neuen
Zieldatei, die Kopfdatei automatisch vorgelegt wird. Des Weiteren, die
Benutzung mit in das Handbuch eingebaut.
mfG ingo
Hi Ingo,
vielleicht bist Du an weiteren Feature-Requests interessiert?
1. Zum einen wäre es schön, wenn bspw. durch eine farbliche Hinterlegung
im Graphen markiert werden könnte, wenn Messwerte nicht mehr im normalen
Intervall sind.
Ich lasse alle 2 Minuten messen. Wenn nun aus was für einem Grund auch
immer 10 oder 30 Minuten keine Werte zur Verfügung stehen, gibt es halt
merkwürdig gerade Linien, die erst interpretiert werden müssen :-)
2. Ich habe einige Binär-Werte (0=Aus; 1=Ein) als Linie interessieren
die mich nicht wirklich. Auch hier wäre eine Schattierung schön (bspw
grau=1 und weiss=0)
3. Über ein einstellbaren Bereich (bspw. 24h) könnten für bestimmte
Werte min, max und Durchschnitt eingeblendet werden
Das nur mal als Anfrage - sicherlich sind es nur Extras - ich kann auch
ohne diese leben :-)
Gruß
Simon
Simon schrieb:> 1. Zum einen wäre es schön, wenn bspw. durch eine farbliche Hinterlegung> im Graphen markiert werden könnte, wenn Messwerte nicht mehr im normalen> Intervall sind.> Ich lasse alle 2 Minuten messen. Wenn nun aus was für einem Grund auch> immer 10 oder 30 Minuten keine Werte zur Verfügung stehen, gibt es halt> merkwürdig gerade Linien, die erst interpretiert werden müssen :-)
Da muss ich mal drüber nachdenken, vor Allem, welche Kriterien (je
Kanal/Alle)
> 2. Ich habe einige Binär-Werte (0=Aus; 1=Ein) als Linie interessieren> die mich nicht wirklich. Auch hier wäre eine Schattierung schön (bspw> grau=1 und weiss=0)
Bei Binärwerten, würde ich empfehlen (wenn durch den Konverter), je
Kanal einen Offset zu addieren (2. Kanal +2, 3.Kanal +4 usw.), dann
liegen die nicht mehr aufeinander und sind besser zu unterscheiden.
> 3. Über ein einstellbaren Bereich (bspw. 24h) könnten für bestimmte> Werte min, max und Durchschnitt eingeblendet werden
Werde ich mich wohl doch, mit dem Thema "Markierung eines
Zeitabschnittes" beschäftigen, dann kann man auf die Markierung zoomen
und mit der Markierung Statistik machen.
Werde ich drüber nachdenken, kann aber noch nichts versprechen, erstmal
in den Quellcode von "Audacity" schauen ;-) hatte ich zwar schon lange
vor, mich aber noch nicht rangetraut.
mfG ingo
Hi Ingo,
zu Punkt2, habe ich mal die Ideengebergrafik beigefügt, zumindest ich
nutze an dieser Stelle keinen Konverter
zu Punkt3, wäre das natürlich eine 200%-Lösung!
Ich denke aber es würde durchaus reichen, wenn man eingeben könnte
wieviel Stunden rückwärts diese Werte darzustellen sind.
Hi Simon,
Bei dieser Variante mit den Schattierungen, leidet aber auch die
Übersichtlichkeit, habe stattdessen die Möglichkeit eingebaut, mit
zusätzlichen Tags in den Spaltenköpfen, kanalweise Offset zuzufügen (mit
Musterdatei als Beispiel. Da die automatische Vertikalskalierung hier
nur von 0 bis 1 initialisiert, da keine höheren Werte vorkommen, muss
man hier wieder ein paarmal "n", wie niedriger drücken, um das gesamte
Resultat im Screenshot zu erhalten. Um ein Markieren zu ermöglichen
(allerdings derzeit noch ohne Nutzeffekt), wird der Zoom mit Zentrierung
(Diagramm/Zeitachse), jetzt mit Doppelklick ausgelöst. Da ich die
nächsten Wochen nicht dazu kommen werde, am Programm weiterzuarbeiten,
dies erstmal nur als Vorschau, nix für ungut...
mfG ingo
Hallo zusammen,
erst einmal ein Kompliment von mir für das Engagement von euch allen
hier in diesem Forum. Den CSV-Viewer habe ich mir in den verschiedenen
ENtwicklungsstufen angesehen und bin begeistert.
Mein einzigstes Problem besteht darin, dass ich meine Daten nicht in das
richtige Format konvertiert bekomme. Vielleicht könnte mir das jemand
helfen? Die entsprechende CSV-Datei meiner Solarsteuerung habe ich
angefügt.
Vielen Dank im Voraus
Stephan
Hallo Stephan,
Hab auf die Schnelle mal eine Konfig zusammengenagelt.
Bis auf die ersten (interessanten) Spalten, hab ich alles mit einem
Leerzeichen auskommentiert.
mfG ingo
Hallo Steven,
Im Anhang, die vorbereitete Konfig für die Datei. Nicht benötigte Kanäle
können, wie gehabt, durch Vorsetzen eines Leerzeichens, auskommentiert
werden.
mfG ingo
Dies deutet daraufhin, das beim Konvertieren was schief gelaufen ist.
Der Konverter hat keine Fehlermeldung ausgegeben? Die neueren Versionen
sollten dies eigentlich tun, wenn was nicht stimmt. Hab es hier, mit der
letzten Version von Viewer und Konverter getestet.
In der Konfig war noch ein (optischer) Fehler: Separator=8 bedeutet
natürlich Tabulator und nicht Semikolon, wie im Kommentar.
mfG ingo
Ich versuche es mit der letzten Version 1.02 beta vom 15 Februar und den
dazugehörigen Konverter.
Aktuell bekomme ich immernoch diese Fehlermeldung, der Konverter spuckt
nichts aus.
Zu dem Screenshot mit den Filtereinstellungen:
- Habe die Datei in ".txts" umbenannt, um Eindeutigkeit bei mir, zu
gewährleisten, die Endung in den Filtereinstellungen muss mit der realen
Endung der Quelldatei übereinstimmen.
- Wenn in den Filtereinstellungen der Testmodus aktiv ist, sollte vor
dem Konverteraufruf eine MessageBox (Anhang) aufpoppen, wenn nicht, dann
Filtereinstellungen überprüfen.
mfG ingo
Ich habe nochmals alles grprüft und den Konverter neu eingestellt.
Es kommt das Pop Up und dann der Fehler das die Datei nicht geöffnet
werden kann.
Ich versuche es heute abend mal an einem anderen PC.
Danke nochmals.
Danke für den Screenshot: Ursache gefunden.
Dein Pfad zum Konverter ("Dokumente und Einstellungen...") enthält
Leerzeichen, daher wird der Konverter nicht gefunden.
Das hatten wir hier schonmal, steht auch, glaub ich, in der Anleitung.
Bitte die Programme in einem Pfad speichern, der keine Leerzeichen
enthält, für die Konfig und Quelldatei ist es egal.
mfG ingo
Sollte das Speichern, nur im Benutzerprofil möglich sein (aus
Berechtigungsgründen), kann man für den Pfad bis hierhin auch
%userprofile% angeben (Screenshot), dann wird diese Zeichenfolge erst in
der Shell, die den Konverter ausführt, duch den Pfad ersetzt, dann
sollte es auch funktionieren.
Hab in diesem Falle, den Konverter auch auf dem Desktop aufgerufen.
mfG ingo
Nun das ganze nochmals versucht und es mag nicht.
Die erste Variante funktioniert ohne Probleme.
Nur wenn ich die neue anwende dann gehts nicht.
Ich habe mal 2 Bilder dazu. Eingestellt ist eigentlich alles sehr sehr
einfach.
Hallo Ingo,
tolles Programm.
Habe es mal mit eigenen Testdaten Versucht und einen Fehler
festgestellt.
Programm (v. 15.2.) stürzt ab, wenn das Fenster per Maus (an rechte
untere Ecke) kleiner geschoben wird. Kannst Du das nachvollziehen ?
Andreas
Hi
Gut gelungenes Programm !
Anbei die Konverterdatei für eine Solar-Ladestation.
Typ: Viessmann Vitololic 200 SD4 .
Diese Steuerung erzeugt *.XLS Dateien, die hiermit Visualisiert werden
können.
Feedbacks sind willkommen.
Gruß Karl
Ich hänge mal wieder in der Luft und drehe fast durch.
Es gibt Dateien, bei denen bricht das Programm ab, andere Dateien laufen
dagegen Problemlos.
Was mache ich falsch? Die Datenaufzeichnung stammt immer vom selben
Gerät.
Hallo Steven,
Da Du keine Konverterkonfig mit hochgeladen hast, hab ich aus den
Dateiköpfen mal schnell eine gebaut. mit dieser werden beide Dateien
angezeit. Allerdings müssten die Größenordnungen der Werte etwas
angepasst werden, wie ich es mit den "Heat"-Werten gemacht habe (hier
zum Beispiel als Division durch 1000), damit die Kurven vergleichbare
Höhen bekommen.
Hoffe, damit etwas geholfen zu haben.
mfG ingo
Hallo Steven,
Es sieht mir so aus, als ob du im Pfad "c:\CSV!Viewer" ein Leerzeichen
hast. Das könnte die Ursache des Problems sein. Der Konverteraufruf
erfolgt nämlich über die "System"-Funktion, die ruft die Shell (cmd.exe)
auf. Das hab ich so gemacht, damit man einen eigenen Konverter auch als
Batchdatei (oder sonstige script) starten kann.
mfG ingo
So die Nacht ist gerettet.
Ich habe die kompletten Pfade nochmals neu vergeben. Test 1--- es geht.
Test2-- geht immer noch.
Was mich nur verwundert hat ist die Tatsache, das sich einige Daten
problemlos öffnen liessen, andere aber nicht.
Nun, es geht und ich kann getrost am Wochenende nach Quatar fliegen.
Dort werde ich dein geiles Programm zur Datenanalyse anwenden. Der
Auftraggeber mag 3 tage lang alle Daten sehen.
Tausend dank.
Steven Schl schrieb:> Im Anhang habe ich mal eine sehr Interessante Datei. Ob das der CSV> Viever auch schafft diese menge an Daten zu zeigen.> Gruss und danke Steven
Werde mal den Code, bezüglich der maximalen Zeilenlänge durchgehen
(derzeit 1,5k: würde hier nicht reichen), und ihn global per #define
festlegen. Evtl noch dieses WE, mal sehen, wie ich hinkomme...
Mal sehen, wie handlich die Sache dann wird.
Günstig wäre es auch, solche Dateien zu zippen (diese Datei, mit 7z:
knapp 250k), nicht das es evtl Ärger gibt, mit dem Lieblingsthema aus
anderen Threads.
mfG ingo
Steven Schl schrieb:> Im Anhang habe ich mal eine sehr Interessante Datei. Ob das der CSV> Viever auch schafft diese menge an Daten zu zeigen.
Ok, schafft er jetzt. Ob es übersichtlich, oder sinnvoll ist, muss man
dann selbst entscheiden. Auf jeden Fall, können ja, nicht benötigte
Kanäle, in der Konverterkonfig auskommentiert werden.
Die Bearbeitungszeit ist beherrschbar: Konvertieren etwa 3 Sekunden,
Zeichnen in der Totalansicht, etwa 5 Sekunden (Core 2 Duo P7450
2,13GHz).
mfG ingo