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!
Und jetzt brauche ich nur noch suchen, wie man das Front-Panel mit den eingegebenen Werten ebenfalls in der TDMS-File speichert, also falls du da auch noch einen Tip hättest, wär ich dir sehr verbunden
Hab zwar schon eine so glaub ich passende Seite gefunden (https://decibel.ni.com/content/docs/DOC-13695), doch funktiniert es so noch nicht ganz...
Liebe Grüße
10.11.2011, 14:07 (Dieser Beitrag wurde zuletzt bearbeitet: 10.11.2011 14:08 von Goofy.)
Die Lösung von NWOmason ist ein absolutes Tabu! Wenn einem die Darstellung der Zeit nicht gefällt, kann er dies in nahezu jedem Auswertetool seinen Wünschen entsprechend einstellen. Das wäre ja so, als ob ich bei einer Fließkommazahl, wenn ich statt zwei nur eine Kommastelle sehen will, die Zahl in einen String umwandle und abspeichere. Abgesehen vom unnötigen Programmieraufwand und den verschenkten Ressourcen ist der Inhalt des Kanals für die Maschine damit weitestgehend verloren gegangen, denn es lässt sich damit nicht mehr rechnen. Es gibt drei Arten, wie einem Kanal eine Zeitinformation hinzugefügt werden kann.
Als Fließkommazahl (Zeit absolut und relativ)
Als Zeitstempel (Zeit absolut)
In Form eines Waveformkanals mit Startzeit und Schrittweite dt (Zeit absolut und relativ)
In der While Schleife befindet sich der Time-Stamp und der Compressor.
Der Compressor hat einen Reduction Factor von 50 (was 20 Werte pro Sekunde ergibt, bei einem DAQ Signal von 1000Hz) und der Time Stamp gibt mir immer nur 10 Werte pro Sekunde aus
Wie kann ich die beiden miteinander "verbinden", damit ich bei jedem eingestellten "Reduction Factor" auch gleich den richtigen Time-Stamp dazubekomme?! Bin zwar noch am durchforsten, aber bis jetzt habe ich noch nichts gefunden
Bitte um Hilfe
14.11.2011, 19:38 (Dieser Beitrag wurde zuletzt bearbeitet: 14.11.2011 19:39 von schrotti.)
Dein dynamisches Signal (der blaue Draht, der aus dem DAQ-Assi kommt) weist bereits alle Informationen (Startzeit und dt) auf. Du brauchst die Zeit daher überhaupt nicht abspeichern. Du müsstest nur die Startzeit jedesmal ändern (Signalattribute). Wenn du aber lieber mit Strings arbeitest, dann erstelle einfach 2 Werte pro Schleifendurchlauf deren Offset 1/20 s beträgt. Bitte verschone mit den VIs aber deine Kunden und Kollegen und zeige den Quellcode niemandem.
Danke für den Hint, aber jedes mal die Startzeit zu ändern ist sinnlos...soll ja alles automatisch funktionieren
Das mit den "2 Werten pro Schleifendurchlauf" hab ich leider nicht verstanden....weißt du, ich arbeite seit - wie in dem Eröffnungsbeitrag geschrieben - 4 Wochen mit LabView und da ist es klar, dass der Quellcode und VI´s noch nicht so super geordnet und auch "richtig" verwendet sein können. hauptsache es funktioniert.
Wenn ich mich auch schon seit 5 Jahren mit LV beschäftigen würde, wäre die Situation ein bischen anders. aber vermutlich ist das alles schon zu lang her bei dir, sodass du dich nicht wirklich in meine Situation versetzen kannst
16.11.2011, 21:39 (Dieser Beitrag wurde zuletzt bearbeitet: 16.11.2011 21:40 von schrotti.)
Ich hab mir jetzt nochmal die dynamischen Signalverläufe und deren Verhalten mittels eines simulierten Analogeingang angeschaut mit dem Ergebnis, dass du überhaupt gar nichts machen musst. Speicher einfach den Signalverlauf ab, die Zeit steht dann korrekt drin.
Zu "2 Werten pro Schleifendurchlauf":
Wenn du 100 Werte per DAQ liest und diese mit dem Reduktionsfaktor 50 auf 2 Werte einstampfst, dann speicherst du auch jedesmal 2 Werte ab. Dies geschieht während die While-Schleife einmal durchlaufen wird. In diesem Durchlauf liest du allerdings nur einmal die Systemzeit aus, wo du doch 2 DAQ-Werte bekommen hast.
Ansonsten empfehle ich dir, einfach mal ein bißchen mit LV zu spielen, die Beispiele von NI anzuschauen und natürlich die Hilfe zu Rate ziehen.