Agilent vs. Schrittmotor vs. Daten - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO) +---- Thema: Agilent vs. Schrittmotor vs. Daten (/Thread-Agilent-vs-Schrittmotor-vs-Daten) |
Agilent vs. Schrittmotor vs. Daten - Pawel2012 - 17.04.2013 21:14 Hallo an alle, ich habe folgendes Problem mit der VI, die ich im Anhang habe. Ich steuer zwei Schrittmotoren nacheinander und will, wenn Motor 1 sich dreht, Messwerte aufnehmen und in einer Liste oder Tabelle speichern. Mein Problem ist, dass ich diesen Messablauf erstmal 10 mal durchlaufen lassen will. Somit will ich 10 Spalten mit den ganzen Messwerten als CSV oder TXT auf dem Desktop speichern und mir mit den Werten ein 3D-Plott in LabVIEW ausgeben lassen. Was ich nicht hinkriege ist, dass beim zweiten Durchlauf die 80 Messwerte in die 2. Spalte zu schreiben. In der VI ist der Ablauf mit den Schrittmotoren zweimal in einer For-Schleife. Solange sich Motor 1 dreht, sollen die Werte gespeichert werden. Ich hoffe, dass ihr den Ansatz erstmal verstanden habt. Da ich ein LabVIEW Anfänger bin, ist die VI wahrscheinlich unübersichtlich. Ich habe die VI schon paar mal komprimiert und vielleicht gibt es ja von den einen oder anderen paar Tipps. Ablauf der VI: ->AGILENT auf den lokalen Zustand bringen -> Motor 1 auf Position 60000 || Messwerte aufnehmen -> Motor 1 dreht sich zurück -> Motor 2 dreht sich einmal um dich Achse (Winkel wird dardurch verändert) das ganze dann erstmal 10 mal -> Ausgangszustand Plot der 10 Spalten mit den 80 Messwerten. Vielleicht könnt ihr ja kleine VI's anhängen oder Bilder mit hochladen. Vielen Dank erstmal und wegen der VI nicht schimpfen. Ich versuche das übersichtlich zu halten Pawel RE: Agilent vs. Schrittmotor vs. Daten - Pawel2012 - 18.04.2013 16:19 Ist das schwer oder sehr schwer? Ansatzweise keine Lösung? RE: Agilent vs. Schrittmotor vs. Daten - jg - 18.04.2013 17:25 In eine ASCII-Datei (und nichts anderes ist eine csv-Datei) kannst du nicht Spalte nach Spalte schreiben, nur Zeile nach Zeile. Lösungsmöglichkeiten: - Zeilenweise schreiben, später umformatieren. - Keine csv-Datei verwenden, sondern z.B. ein tdms-Format. Hier kannst du Gruppen definieren, jeder Scan wäre eine neue Gruppe. - Erst einmal alle Daten im RAM halten und am Ende in Datei schreiben. - sonstige andere Ideen... Gruß, Jens P.S.: Das nächste Mal in Übereinstimmung mit den LVF-Regeln ein wenig mehr Geduld. Du darfst einen Thread frühestens nach 24 h ohne Antwort hochpushen. Bei dir waren es nur 19 h. RE: Agilent vs. Schrittmotor vs. Daten - Pawel2012 - 18.04.2013 19:13 Danke erstmal für die Anwort Zeilenweise habe ich es ausprobiert, allerdings fangen da wieder die Kopfschmerzen an. Nach dem zweiten Messablauf, stehen insgesamt 160 Messwerte untereinander, die ich dann in Excel kopiere und in zwei Spalten trenne. Den Punkt ersetze ich dann mit einem Komma und füge danach ein XY-Graph ein. Wenn ich jetzt wüsste, wie ich das in Labview vereinfach kann, wäre das super. Aber ich denke, dass das noch einfacher geht. Wie funktioniert das mit TDMS? Speichere ich die ersten 80 Messwerte im RAM ab und schreibe die dann in eine TDMS-Datei? Oder werden alle 160 in jeweils zwei Gruppen gespeichert und dann erst geschrieben?... Wie zähle ich die Gruppe denn hoch? Wie muss die VI aussehen? Fragen, fragen, fragen,... Gruß, Pawel RE: Agilent vs. Schrittmotor vs. Daten - NWOmason - 19.04.2013 05:54 (18.04.2013 19:13 )Pawel2012 schrieb: Zeilenweise habe ich es ausprobiert, allerdings fangen da wieder die Kopfschmerzen an. Nach dem zweiten Messablauf, stehen insgesamt 160 Messwerte untereinander... Du könntest deine 80 Messwerte als kompletten Datensatz nach der Messung abspeichern: [attachment=44395] Dann hast du alle Messwerte in einer Zeile. Vorausgesetzt du entfernst etwaige Steuerzeichen, die mitgeschickt werden. Das nächste Messwertepaket kommt dann in die nächste Zeile. (18.04.2013 19:13 )Pawel2012 schrieb: ...die ich dann in Excel kopiere und in zwei Spalten trenne. Den Punkt ersetze ich dann mit einem Komma und füge danach ein XY-Graph ein. Du kommst auch ohne Excel aus. Du kannst die Datei ja wieder in LabVIEW einlesen und die Daten plotten. Schön wäre jetzt gewesen zu sehen, wie du die Daten wieder einliest (Read from Spreadsheet sollte in deinem Fall ausreichen)? Zusätzlich: Soll die Anzeige der Messwerte im gleichen VI erfolgen, oder in einem separaten? Ein paar Anmerkungen zu deinem VI, die mir auf die Schnelle aufgefallen sind:
Beste Grüße, NWO RE: Agilent vs. Schrittmotor vs. Daten - Pawel2012 - 19.04.2013 16:05 Wenn ich das so mache, wie es auf dem Bild zu sehen ist, bekomme ich die Werte untereinander und nach 6 (habe von 80 auf 6 reduziert) Messpunkten ein ";" (s.Anhang). Kann ich diese Datei dann problemlos einlesen und in der gleichen VI Plotten? Ich würde es ganz gut finden, wenn das alles in der gleichen VI erfolgt. Read from Spreadsheet werde ich mal eben ausprobieren. So sieht das dann mit Read from Spreadsheet aus. RE: Agilent vs. Schrittmotor vs. Daten - Pawel2012 - 19.04.2013 18:20 So..ich habe mir jetzt mal die Messdaten.csv so geändert, dass das in der Tabelle richtig angezeigt wird. Die erste "Saplte" soll der erste Messvorgang sein, und die zweite "Spalte" soll der zweite Messvorgang sein. Ich muss jetzt nur versuchen die Messwerte so in die CSV zu kriegen.....Wieso ist das so komplizerit?? RE: Agilent vs. Schrittmotor vs. Daten - NWOmason - 21.04.2013 08:17 (19.04.2013 18:20 )Pawel2012 schrieb: Wieso ist das so komplizerit?? So kompliziert ist das Ganze überhaupt nicht. Nur hast du uns nicht mitgeteilt, in welchem Format die Messwertepakete ankommen, also inklusive eines Line-Feeds nach jedem Messpunkt. Die Lösung, um die Messwertpakete in einem File zu speichern ist, den String in ein Array konvertieren und dann als Zeile in die Datei schreiben: [attachment=44418] [attachment=44417] Die Datei kannst du dann mit 'Read from Spreadsheet' dann genaus einlesen und hast damit alle Messwerte auf einmal eingelesen Anmerkung: Spaltenweises Schreiben einer *.csv (*.txt, usw) ist nicht möglich, das geht direkt nur zeilenweise. Indirekt geht es nur, wenn du die Datei einließt, die Datenpunkte des neuen Datensatzes an jede Zeile anhängts (also das eingelesen Array um eine Spalte erweiterst) und dann wieder abspeichert. Ist aber IMHO zuviel Aufwand. Beste Grüße, NWO RE: Agilent vs. Schrittmotor vs. Daten - Pawel2012 - 22.04.2013 11:11 Umständlich aber es funktioniert Danke NWO Jetzt kann ich den Graphen sehen und jetzt suche ich natürlich eine andere Graphenansicht. So soll das dann in etwa aussehen (s. Anhang). Bis jetzt ist dieser nicht schöne LabView Graph mit dem schwarzen Hintergrund. Ich weiss nicht, ob ich das als neues Thema oder ob man das vielleicht hier diskutieren sollte. RE: Agilent vs. Schrittmotor vs. Daten - jg - 22.04.2013 11:18 (22.04.2013 11:11 )Pawel2012 schrieb: Bis jetzt ist dieser nicht schöne LabView Graph mit dem schwarzen Hintergrund. Ich weiss nicht, ob ich das als neues Thema oder ob man das vielleicht hier diskutieren sollte.Neues Thema! Bisher ging es um Speicherung von Daten in einem File (deshalb auch ), jetzt um eine Graph-Darstellung. Gruß, Jens |