LabVIEWForum.de
Werte der Zeitachse ist fehlerhaft nach einer längeren Messung - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Signaldarstellung (/Forum-Signaldarstellung)
+---- Thema: Werte der Zeitachse ist fehlerhaft nach einer längeren Messung (/Thread-Werte-der-Zeitachse-ist-fehlerhaft-nach-einer-laengeren-Messung)



Werte der Zeitachse ist fehlerhaft nach einer längeren Messung - m0n0g0n - 07.05.2008 14:07

Hallo,

ich hab folgendes problem und bitte euch um eure hilfe:

Ich hab eine while schleife in der ich messwerte mit vi "daqmx read" erfasse. Dieses liefert pro schleifendurchlauf eine Waveform mit 500 Samples. Diese Waveform hänge ich nun an die letzte Waveform an mit dem "Appends Waveforms" VI.
Also ich hab quasi eine Waveform die in einem Schieberegister liegt und diese bekommt pro schleifen durchlauf eine waveform angehängt.
Doch nach einer längeren Messung Stimmt die Zeitachse in meinem Chart nicht mehr. Ich vermute es liegt daran das das von LabVIEW gelieferte dt nicht sonderlich exakt ist und somit summiert sich der fehler auf.

Wie löst ihr solche probleme? ist meine art der Messwert erfassung mit diesem Schieberegister und Apped Waveforms sinnvoll?

mfg


Werte der Zeitachse ist fehlerhaft nach einer längeren Messung - Achim - 08.05.2008 06:32

' schrieb:Doch nach einer längeren Messung Stimmt die Zeitachse in meinem Chart nicht mehr. Ich vermute es liegt daran das das von LabVIEW gelieferte dt nicht sonderlich exakt ist und somit summiert sich der fehler auf.
Hm...ich glaube schon, das das dt sehr exakt ist, das kommt ja nicht aus deiner LV-Applikation sondern direkt vom DAQmx-Treiber bzw. von der DAQ-Karte...evtl. kommt aber ein Fehler zustande, wenn SW-Timing verwendet wird. Das könntest du umgehen, indem du einen Counter auf der Karte als Taktgeber für ein HW-Timing verwendest. Beispiele dazu gibts im Example Finder

' schrieb:Ist meine art der Messwert erfassung mit diesem Schieberegister und Apped Waveforms sinnvoll?

Willst du ständig alle Daten zur Verfügung haben? Das macht dein Programm langsam, weil ständig neuer Speicher allokiert werden muss und das Array (bzw. die Waveform) immer länger wird. Für eine begrenzte Datenmenge bietet sich das Waveform-Chart mit eingebautem Puffer an ("History")

Gruß
Achim


Werte der Zeitachse ist fehlerhaft nach einer längeren Messung - Lucki - 08.05.2008 07:26

Mangels angehängtem VI kann auch ich nur raten. Beim Anhängen einer Waveform wird das t0 der angehängten Waveform ignioriert, d.h es wird davon ausgegangen, daß sich die Samples der neuen Waveform lückenlos forsetzen.

Bei Datenerfassung im Modus "kontinuierlich" ist das der Fall, da dürfte es keine Problem geben. Die 500 Samples, die Du bei jedem Schleifendurchlauf ausliest, schließen sich lückenlos aneinander an.

Wen Du hingegen hingegen als Modus "endliche Anzahl" hast und in einer Schleife immer wieder 500 Samples liest, so ist das kein kontinuierlicher Betrieb, sondern ein Start-Stop Betrieb mit jedesmaliger Kunstpause zwischen Stop und nachfolgendem Neustart. Dies könnte Deinen Zeitfehler verursachen.


Werte der Zeitachse ist fehlerhaft nach einer längeren Messung - m0n0g0n - 08.05.2008 08:31

' schrieb:Mangels angehängtem VI kann auch ich nur raten. Beim Anhängen einer Waveform wird das t0 der angehängten Waveform ignioriert, d.h es wird davon ausgegangen, daß sich die Samples der neuen Waveform lückenlos forsetzen.

Bei Datenerfassung im Modus "kontinuierlich" ist das der Fall, da dürfte es keine Problem geben. Die 500 Samples, die Du bei jedem Schleifendurchlauf ausliest, schließen sich lückenlos aneinander an.

Wen Du hingegen hingegen als Modus "endliche Anzahl" hast und in einer Schleife immer wieder 500 Samples liest, so ist das kein kontinuierlicher Betrieb, sondern ein Start-Stop Betrieb mit jedesmaliger Kunstpause zwischen Stop und nachfolgendem Neustart. Dies könnte Deinen Zeitfehler verursachen.

Also ich arbeite im modus kontinuierlich, sprich dies kann nicht der grund für den fehler sein.

ich werde mir das mal mit dem HW Timing zu gemüte führen.


Werte der Zeitachse ist fehlerhaft nach einer längeren Messung - m0n0g0n - 08.05.2008 09:01

' schrieb:Hm...ich glaube schon, das das dt sehr exakt ist, das kommt ja nicht aus deiner LV-Applikation sondern direkt vom DAQmx-Treiber bzw. von der DAQ-Karte...evtl. kommt aber ein Fehler zustande, wenn SW-Timing verwendet wird. Das könntest du umgehen, indem du einen Counter auf der Karte als Taktgeber für ein HW-Timing verwendest. Beispiele dazu gibts im Example Finder
Willst du ständig alle Daten zur Verfügung haben? Das macht dein Programm langsam, weil ständig neuer Speicher allokiert werden muss und das Array (bzw. die Waveform) immer länger wird. Für eine begrenzte Datenmenge bietet sich das Waveform-Chart mit eingebautem Puffer an ("History")

Gruß
Achim

Könntest du mir ein Example nennen? Finde nicht wirklich das was ich suche.

mfg


Werte der Zeitachse ist fehlerhaft nach einer längeren Messung - Achim - 08.05.2008 11:22

Cont Acq&Graph Voltage-Int Clk.vi


Werte der Zeitachse ist fehlerhaft nach einer längeren Messung - m0n0g0n - 08.05.2008 11:28

' schrieb:Cont Acq&Graph Voltage-Int Clk.vi

Also ich hab mir das beispiel angesehen. Ich benutze HW-Timing ich war wohl etwas irritiert :-). Naja also ich benutze auch das DAQmx-timing.vi und lege ne rate fest.

also das ist auch nicht der fehler.