Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
von einem wii-controller:
3x beschleunigung in reel
2x winkel in reel
videos von zwei oder mehr kameras
und Strings von einem GPS-Empfänger.
alles läuft wunderbar. doch jetzt habe ich das problem, wie ich am besten die werte in dateien schreiben soll.
die programme für die einzelnen anwendungen (wii, kamera, gps) sind voneinander getrennt.
wie schaffe ich es alle messdaten so zu speichern, dass ich sie später in diadem synchronisieren kann.
die daten der wii bekomme ich problemlos mit "messwerte in datei schreiben.vi" in eine tdm.
der gps-empfänger spuckt mir lediglich zeichenfolgen wie beispielsweise:
wobei die 0.0 für die geschwindigkeit in knoten, die ich auch gerne in m/s aufnehmen will, um sie in diadem mit den anderen messwerten zu synchronisieren. diese daten wären mir für diadem wichtig.
ich schaffe es die einzelnen stringfolgen zu trennen, das ist kein problem, jedoch schaffe ich es nicht, sie in eine datei zu schreiben, damit ich sie in diadem verwenden kann.
ich habe bis jetzt nur mit dem "messwerte in datei schreiben.vi" gearbeitet, das jedoch mit strings nicht viel anfangen kann. wenn ich aber die strings versuche in reele zahlen umzuwandelt, kommt LabVIEW mit dem punkt nicht zurecht.
weiterhin wäre es mir wichtig den string wie er ist, unabhängig von diadem, in eine .txt-file zu speichern. Der gps-empfänger liefert mit einer frequenz von 5 HZ folgendes nach dem nmea-format:
jede der zeilen wird nacheinander ausgegeben. wie schaffe ich es das auch so in einer txt-file stehen zu haben, damit ich es evtl in google-earth einladen kann?
zusammengefasst:
ich möchte die werte der wii, die geschwindigkeit des GPS-empfängers und die videos synchronisiseren (videos und wii-werte funktioniert, wenn ich die wii-werte mit "messwerte in datei schreiben.vi" in eine tdm schreibe). wie schafe ich es die stringwerte so zu speichern, dass sie in diadem geöffnet werden können?
wie schaffe ich es aufeinanderfolgende zeichenfolgen untereinander in eine .txt-datei zu schreiben?
anbei findet ihr das gps-test-programm, das mit LabVIEW 8.5.1 erstellt wurde.
VIELEN DANK schonmal für eure hilfe
Anzeige
22.01.2009, 18:32 (Dieser Beitrag wurde zuletzt bearbeitet: 22.01.2009 18:32 von gottfried.)
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
wie verarbeite ich daten am besten?
Ich blicke noch nicht so ganz durch, was Du willst, weil ich mich mit DIAdem nicht auskenne. Könntest Du das noch etwas genauer erläutern, was Du für Daten hast und was Du genau brauchst?
Was anderes:
In Deinem Bsp. verwendest Du lokale Variablen, obwohl Du Sie nicht brauchst. Da kriegst Du Probleme mit Race Conditions. Und wenn Du eine While-Schleife verwendest, würde ich eine Zeitverzögerung reinpacken, wenn Du Deine CPU nicht voll auslasten möchtest.
Hier ist zuerst Dein Bsp.:
So würde ich es empfehlen:
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Hallo Oeric,
wie Markus schon erwähnte sind weitere Daten mit eventuellen Beispielen sinnvoll.
Zu LabVIEW bzw. TDM / TDMS:
Ein gut gemeinter Rat. Lass die Express-Vi´s for allen Dingen in der TDM-Palette weg und konzentriere Dich auf die
TDMS-Palette in LV.Schau Dir mal alle Beispiele im Example-Finder an.
Wichtig für Dich ist unter anderem der Aufbau einer TDM/S-Datei.
- File mit diversen Eigenschaften
- Kanalgruppe(n) mit diversen Eigenschaften
- Kanal/ Kanäle mit diversen Eigenschaften
alle diese Eigenschaften sind mit LV schreib/lesbar.
Als erster Ansatz würde Deine TDMS- xyz mit den Kanalgruppen Wii, Kamera, GPS Sinn machen.
Die Synchronisierung ist der nächste Punkt, den müssen wir aber auf später verschieben.
DANKE für euere Hilfe. Bin ein totaler Anfänger und für jede Hilfe bin ich sehr dankbar...
' schrieb:Ich blicke noch nicht so ganz durch, was Du willst, weil ich mich mit DIAdem nicht auskenne. Könntest Du das noch etwas genauer erläutern, was Du für Daten hast und was Du genau brauchst?
Ich möchte zwei Dinge:
1.In Diadem synchrinosieren:
Werte der Wii, die ich durch ein "messwerte in datei schreiben.vi" in eine tdm schreibe
Geschwindigkeitswerte eines GPS-Empängers, die ich dementsprechend auch gerne in einem Format abspeichern will, mit dem Diadem was anfangen kann
zwei oder mehr Videos
2. Strings der GPS-Maus in eine .txt datei speichern:
Eine GPS-Maus liefert Stringfolgen nach dem nmea-format.
Das sind mehrere verschiedene Stringpakete, die jeweils unterschiedliche Informationen(Position, Geschwindigkeit, Zeit, Datum,...) enthalten.
So wie diese von der GPS-Maus gesendet werden, hätte ich die Daten gerne in einer .txt-datei untereinander gespeichert, damit ich sie in Google Earth einlesen kann.
' schrieb:In Deinem Bsp. verwendest Du lokale Variablen, obwohl Du Sie nicht brauchst. Da kriegst Du Probleme mit Race Conditions. Und wenn Du eine While-Schleife verwendest, würde ich eine Zeitverzögerung reinpacken, wenn Du Deine CPU nicht voll auslasten möchtest.
Da wollte ich einfach mal ausprobieren, wie das mit den lokalen Variablen funzt.
' schrieb:Ein gut gemeinter Rat. Lass die Express-Vi´s for allen Dingen in der TDM-Palette weg und konzentriere Dich auf die
TDMS-Palette in LV.Schau Dir mal alle Beispiele im Example-Finder an.
Wichtig für Dich ist unter anderem der Aufbau einer TDM/S-Datei.
- File mit diversen Eigenschaften
- Kanalgruppe(n) mit diversen Eigenschaften
- Kanal/ Kanäle mit diversen Eigenschaften
alle diese Eigenschaften sind mit LV schreib/lesbar.
Als erster Ansatz würde Deine TDMS- xyz mit den Kanalgruppen Wii, Kamera, GPS Sinn machen.
Die Synchronisierung ist der nächste Punkt, den müssen wir aber auf später verschieben.
Ich habe auch schon auf der NI-Seite ein tutorial über TDMS gefunden, was ich natürlich auch asuprobiert habe. Der Hauptgrund dafür war eigentlich nur, dass ich nicht herausfinden konnte, wie man den Header in dem "messwerte in datei schreiben.vi" bearbeiten kann. Jedoch bin ich gnadenlos damit gescheitert, überhaupt Messwerte auf diesem wege aufzuzeichnen.
Danach habe ich es mit Excel versucht, nur wurden nicht immer alle Messwerte aufgezeuchnet und ich war mir nicht sicher, ob Diadem was damit anfangen kann.
Deswegen bin ich wieder auf das express-vi umgestiegen.
Mit den damit erstellten tdm hat die Synchronisation von Messwerten und Videos ohne Probleme funktioniert.
Also ich habe es nun hinbekommen, die Daten in einer TDMS aufzuzeichnen.
Hätte aber noch eine kleine Frage.
Wie bekomme ich es hin, die Systemzeit mit Millisekunden aufzuzecihnen.
Wichtig ist mir das, weil ich mit mehreren Laptops gleichzeitig Fahrversuche veranstalte. Deren Systemzeiten synchronisiere ich über die GPS-Zeit, die 1 ns genau ist.
Wäre nett, wenn ihr mir da noch einmal weiter helfen könntent.
Im Anhang findet ihr mein Progrmm für die Aufzeichnung der Beschleunigungen mit der Wii, wurde mit LabVIEW 8.5.1 programmiert
' schrieb:Also ich habe es nun hinbekommen, die Daten in einer TDMS aufzuzeichnen.
Hätte aber noch eine kleine Frage.
Wie bekomme ich es hin, die Systemzeit mit Millisekunden aufzuzecihnen.
Wichtig ist mir das, weil ich mit mehreren Laptops gleichzeitig Fahrversuche veranstalte. Deren Systemzeiten synchronisiere ich über die GPS-Zeit, die 1 ns genau ist.
Wäre nett, wenn ihr mir da noch einmal weiter helfen könntent.
Im Anhang findet ihr mein Progrmm für die Aufzeichnung der Beschleunigungen mit der Wii, wurde mit LabVIEW 8.5.1 programmiert