INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Fehler bei analoger Messung



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!

20.02.2009, 11:19 (Dieser Beitrag wurde zuletzt bearbeitet: 20.02.2009 11:22 von Toste.)
Beitrag #11

Toste Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Jun 2008

8.2
2008
de

97074
Deutschland
Fehler bei analoger Messung
' schrieb:Das kann ich Dir sagen ohne das VI zu sehen. Ein in 99 von 100 Fällen zu beobachtender Anfängerfehler ist nämlich die Einfügung einer Wait-Funktion in die While-Schleife für DAQmxRead.

Schau bitte mal in meine VI, da ist keine Wait drin

' schrieb:Das ist fast immer falsch, denn DAQmxRead wartet von selbst, bis die voreingestellt Anzahl von Daten im Buffer sind, und synchronisiert damit Schleife und Datenerfassung.
Aber z. B. bei einem Wait von 10ms, Aulesen von nur 1 Sample ist die Entleerungsrate aus dem Buffer 100Hz. Wenn die Samplerate der Karte höher ist, dann füllt sich der Buffer immer mehr.

Zum Ausgangsthema: Nullen. bzw. Lerre Arrays werden von DAQmrRead eigentlich nur bei Timeout übergeben. Schließe doch da mal eine Probe an, um zu sehen, ob es diesen Fehler gibt.

Also bei Timeout kommt doch normalerweise diese Fehlermeldung: -200279:

Measurements: Attempted to read samples that are no longer available. The requested sample was previously available, but has since been overwritten.

Increasing the buffer size, reading the data more frequently, or specifying a fixed number of samples to read instead of reading all available samples might correct the problem.

Oder verstehe ich den Timeout falsch?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
20.02.2009, 15:15
Beitrag #12

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Fehler bei analoger Messung
' schrieb:Schau bitte mal in meine VI, da ist keine Wait drin
Also bei Timeout kommt doch normalerweise diese Fehlermeldung: -200279:
Ja schon, aber die Frage ist ob die Fehlermeldung angezeigt wird oder nicht. Sie wird angezeigt, wenn an dem betreffenden VI der Fehlerdraht nicht angeschlossen ist. Bei Dir ist aber ein Draht dran, und der Fehler wird nicht ausgewertet (Bzw. erst nach Stop) . Der Fehlerdraht läuft am rechten Schleifenrand in Leere, solang die Schleife nicht beendet wird.

So wie Du würde ich es nie machen, das ist genau der Fall, wo ein Wartefunktion sinnvoll wäre:
Bei jedem Durchlauf wird der Buffer geleert, das wird jedesmal eine etwas unterschiedliche Anzahl sein, und die Schleife dreht sich mit maximaler Geschwindigkeit.
Daß der Buffer überläuft kann so so nicht sein Es sei denn: Das DAQmxRead gibt einen Fehler aus (Den Du hier gar nicht bemerken würdest).
Die bessere Methode ist: Sampleanzahl vorgeben, die auszulesen ist (am DAQmxRead, nicht am SanpleClock!) . Vom Visuellen her genügt es, wenn die Diagramme mit 5 Hz upgedated werden. D.H bei 20kHz Samplerate imme 4000 Samples auf einmal lesen.

Also: Unmittelbar am Fehlerausgang von DAQmxRead mal einen Probe oder Anzeige anzuschließen lohnt sich auf alle Fälle!

Was mir noch auffällt: Warum verknüpfst Du die beiden Arrays nicht einfach mit der Funktion "Array erstellen (Eingäng verknüpfen"

Und noch was: So wie Du es machst, gibt es keine Garantie, daß die Anzahl der gelesenen Samples in beiden Karten immer gleich ist. (Es gibt keinen gemeinsamen Mastertakt) Die Anzahl wird ab und zu um 1 unterscheidlich sein. Wenn dann daraus ein einheitliches Waveform-Array gemacht wird, dann muß LabVIEW improvisieren. Vielleicht sieht das Ergebnis dann mit Deinen komischen Nullstellen genau so aus.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.02.2009, 15:23
Beitrag #13

RoLe Offline
LVF-Guru
*****


Beiträge: 1.236
Registriert seit: Jul 2007

-
1997
en

0
Schweiz
Fehler bei analoger Messung
Was sich auch noch gut macht, wenn in einer Schlaufe gelesen wird, den Errorcluster in ein Shiftregister zu machen, und die Schlaufe zu beenden bei Fehler.

.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.02.2009, 15:46
Beitrag #14

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.692
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Fehler bei analoger Messung
' schrieb:warum der Speicher immer voller wird...
Weil die Historenlänge auf 1024 steht. Stell sie auf 10 (siehe im Kontextmenü des Graphen) und der Speicher hört sofort auf voller zu werden.

Sind deine Aussetzer jetzt weg? Infolge der SampleClock-Task?

Ich würde aber trotzdem zu dem raten, wie es Lucki beschrieben hat.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.02.2009, 16:00
Beitrag #15

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.692
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Fehler bei analoger Messung
' schrieb:Weil die Historenlänge auf 1024 steht. Stell sie auf 10 (siehe im Kontextmenü des Graphen) und der Speicher hört sofort auf voller zu werden.
Und bevor du dich um den volllaufenden Speicher kümmerst, solltest du das Samplen und Anzeigen so umstellen, wie von Lucki beschrieben.

Das Refreshen des Graphen sollte nicht schneller als 250ms sein. Wenn du den Graphen schneller mit neuen Daten beaufschlagst, als er sie verarbeiten kann, treten plötzlich Lücken auf, die genauso plötzlich verschwinden, wenn das Programm beendet wird.

Hinweis:
Ich hab's ausprobiert, mit dem Simulator.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.02.2009, 12:48
Beitrag #16

Toste Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Jun 2008

8.2
2008
de

97074
Deutschland
Fehler bei analoger Messung
Erstmal wieder vielen Dank für eure Antworten! Schön, dass ihr euch für mein Problem Zeit nehmt!


Allerdings stehe ich, was die Umsetzung eurer Vorschläge angeht ziemlich auf dem Schlauch

a) Fehlermanagment: Okay, das habe ich in die Schleife verlagert

b) Anzahl Samples am DAQmxRead: Ich soll also an die Sample Clock eine Rate von 20000 anschließen und an die DAQmxRead 4000. Wenn ich das mache, dann werden die Lücken in meiner Aufnahme noch größer bzw. die Messung bricht ab und produziert Fehler-200279. Soll ich jetzt da ein Metronom in die Schleife machen oder nicht und wenn ja, wie lange (ms) sollte die Wartezeit sein?

c) Master Timebase: Okay, ich habe mich am Beispiel das geändert und jetzt bricht die Messung nach kürzester Zeit mit Fehler -200278 ab: Measurements: Attempted to read a sample beyond the final sample acquired. The acquisition has stopped, therefore the sample specified by the combination of position and offset will never be available. Die Beispiel selbst funktioniert einwandfrei. Ich bin jetzt ziemlich gefrustet, weil ich zwischen meiner VI und dem Beispiel keinen Unterschied sehe. Was mache ich denn falsch?

Im Anhang
Sonstige .rar  testinloop8.2.rar (Größe: 81,7 KB / Downloads: 181)
(LV 8.2) ist jetzt mal die aktuelle Version, bei der ich versucht habe, die Synchronisation zu implementieren. Würde mich freuen, wenn ihr da nochmal drüber schauen könntet

Gruß
Toste
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.02.2009, 13:34
Beitrag #17

Toste Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Jun 2008

8.2
2008
de

97074
Deutschland
Fehler bei analoger Messung
Ha, jetzt hab ich einfach das Beispiel genommen und abgeändert und schon gehts. Vielen Dank für eure Vorschläge Big Grin. Würde mich trotzdem interessieren, warum das obige VI abgestürzt ist, mein neues sieht genauso aus und gehtHuh
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.02.2009, 14:04
Beitrag #18

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Fehler bei analoger Messung
Habe jetzt keine Zeit, das genau zu analysieren. Wenn mehrere Karten mitreinander synchronisiert werden sollen, dann brauchst Du eine direkte Kabelverbindung zwischen den Karten. Hast Du dieses Teil überhaupt?

Außerdem: Der Rat, einen gemeinsamen Masterclock für die Karten zu haben, war nicht ganz richtig. Daruf kommt es gar nicht an, denn die Slavekarte sollte überhaupt keinen eigenen Sampletakt vewenden. Die Karten müssen synchron gestartet werden. Du hast das versucht, ich denke aber, daß es so nicht funktioniert Der Sampletakt selbst sollte von der Slavekarte gar nicht selbst erzeugt werden, sondern sollte von der Masterkarte kommen. Das Starten funktioniert dann so: Es wird zuerst der Slave gestartet, der wartet aber erst mal nur auf den Sampletakt der Masterkarte. Wenn dann der Master gestartet wird, läuft der Slave genau synchron zum Master.

Schau Dich mal in diesen Beispielen genau um:
Signalerfassung mit Hardware - DAQmx - Synchronisation - Mehrere Geräte.
Es ist nicht ganz einfach. Am besten kommst Du, wenn Du das geeignetste Beispiel suchst, keine gewagten Alleingänge machst, sondern Dich höllisch genau an die Vorlage hälst.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.02.2009, 15:40
Beitrag #19

Toste Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Jun 2008

8.2
2008
de

97074
Deutschland
Fehler bei analoger Messung
' schrieb:Habe jetzt keine Zeit, das genau zu analysieren. Wenn mehrere Karten mitreinander synchronisiert werden sollen, dann brauchst Du eine direkte Kabelverbindung zwischen den Karten. Hast Du dieses Teil überhaupt?

Außerdem: Der Rat, einen gemeinsamen Masterclock für die Karten zu haben, war nicht ganz richtig. Daruf kommt es gar nicht an, denn die Slavekarte sollte überhaupt keinen eigenen Sampletakt vewenden. Die Karten müssen synchron gestartet werden. Du hast das versucht, ich denke aber, daß es so nicht funktioniert Der Sampletakt selbst sollte von der Slavekarte gar nicht selbst erzeugt werden, sondern sollte von der Masterkarte kommen. Das Starten funktioniert dann so: Es wird zuerst der Slave gestartet, der wartet aber erst mal nur auf den Sampletakt der Masterkarte. Wenn dann der Master gestartet wird, läuft der Slave genau synchron zum Master.

Schau Dich mal in diesen Beispielen genau um:
Signalerfassung mit Hardware - DAQmx - Synchronisation - Mehrere Geräte.
Es ist nicht ganz einfach. Am besten kommst Du, wenn Du das geeignetste Beispiel suchst, keine gewagten Alleingänge machst, sondern Dich höllisch genau an die Vorlage hälst.

Hi Lucki,

ja, ich habe ein RTSI Kabel.
Ich habe für meine Version das Beispiel Multi-Device Synch-Analog Input-Cont Acquisition verwendet und da ausserhalb der While-Schleife nichts verändert. Wenn da jetzt noch etwas falsch ist, dann ist auch das Beispiel falsch.

Das mit dem Aufnehmen funktioniert soweit gut - dafür klappt (wie sollte es anders sein) ein anderer Teil meines Programmes jetzt nicht mehr.

Ich gebe während des Programms nach dem Klick des Benutzers eine Digitale Waveform aus. Als Clock Source benutze ich dabei den Counter der Karte 6123. Seitdem ich die Karten über die Timebase gekoppelt habe, wird die Task zwar gestartet, es wird aber nichts mehr ausgegeben - mal schaun, woran das liegt. Falls ichs nicht alleine hinbekomme, behellige ich euch nochmal mit dem ProblemBig Grin

Nochmals vielen Dank
Toste
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Synchron analog in und Counter Drehzahl Spannung Strom Messung Fehler-201314 StudiFH 1 3.750 02.01.2019 08:55
Letzter Beitrag: GerdW
  Falsche Werte durch paralleles Einlesen digitaler und analoger Werte daxel 13 13.173 20.08.2013 12:03
Letzter Beitrag: daxel
  Frequenz bei analoger Ausgabe stimmt nicht Aya 7 5.655 30.07.2012 15:51
Letzter Beitrag: Aya
  Erfassung analoger Signale, Synchron, Rate >=100KhZ NILVuser 1 3.965 27.08.2011 00:25
Letzter Beitrag: Mingo
  Problem mit Lesen Analoger Kanäle AlphaDave 14 10.691 12.11.2010 23:04
Letzter Beitrag: jg
  Parallele Signalausgabe auf analoger Output Karte bcssima 3 5.623 07.10.2010 13:13
Letzter Beitrag: jg

Gehe zu: