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 

Problem mit kontinuierlicher Datenerfassung usw.



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!

24.05.2007, 21:50
Beitrag #1

impromptu Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2007

8.00
2007
kA

35390
Deutschland
Problem mit kontinuierlicher Datenerfassung usw.
Hallo zusammen, bin LabVIEW-anfänger, und hab bei meiner projektarbeit ein problem mit der kontinuierlichen Datenerfassung, was ähnlich aussieht, wie in diesem posting geschildert wurde:

http://www.LabVIEWforum.de/index.php?showtopic=5477

ich verwende eine baugleiche Interfacekarte vom Hersteller Meilhaus/Measurement Computing mit USB-Anschluss, also die vom Hersteller zur Verfügung gestellten VIs zur Datenerfassung sind haargenau dieselben wie im obigen Posting. Es sind mehrer VIs zur analogen Datenerfassung zur Auswahl, und bei meiner Projektarbeit habe ich einfachheitshalber das ausgewählt, was die erfassten Daten als einzelwerte ausgibt, anschließend habe ich die Einzelwerte mit einer Rückkopplung an einem Array-Erstellen VI in ein 1D-Array zur Weiterverarbeitung mit Filtern usw. gepackt. Den Screenshot hierzu vom Teil meines Programms habe ich angehängt.

Ich habe auch am Anfang probiert, wie im obengenannten Posting das VI zur Datenerassung einzusetzen, das die erfassten Daten in Form eines Arrays ausgibt, bin dann leider derselben Problematik begegnet, und hab deshalb diese andere Alternative genommen, um erstmal weiterkommen zu können. Es hat bis jetzt eigentlich wunderbar funktioniert, nur das Array, in das ich die ganzen Daten einpacke, vergrößert sich halt die ganze Zeit, (hab auch deswegen eine Anzeige eingebaut, um die Größe des Arrays zu überwachen), und bei meiner Projektarbeit gehts darum, EKG-Signal kontinuierlich zu erfassen, d.h. wenns sein muss, wirds 24std lang aufgenommen, und das Array kann ja nicht beliebig groß werden. Ich habe schon seit längerem vergeblich nach einer Lösung gesucht, und hatte mir zwar auch so ne art Ringpuffer einzubauen überlegt, wusste aber nicht, wie ich das programmtechnisch auf LabVIEW realisieren soll. Ausserdem wollte ich gerne wissen, wie es bei den VIs von NI zur Datenerfassung aussieht, die die erfassten Daten direkt als Array ausgeben, vergrößert sich das Array auch ins unendliche oder hat es eine vordefinierte feste Größe?

Eine andere Frage, die bei meiner Arbeit heute aufgetaucht ist: ich habe in einem Zeitschriftsbeitrag erfahren, dass es ein Library VI namens Array Window Max & Min bei einer früheren Version von LabVIEW gab, mit dem es ab einer bestimmten Position in einem Array innerhalb einer definierbaren Breite nach dem Maximum/Mininum gesucht werden kann (ähnlich wie die Max/Min Funktion auf Matlab), und ich habe lange danach gesucht, und nicht gefunden sowohl auf meiner 7.0 als auch 8.0 Version. hat NI dieses VI abgeschafft, oder habe ich mich geirrt?

Ich wäre sehr dankbar, wenn ihr mir irgendwie helfen könnt.

Grüße

Fred

   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.05.2007, 05:17 (Dieser Beitrag wurde zuletzt bearbeitet: 25.05.2007 05:19 von Achim.)
Beitrag #2

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Problem mit kontinuierlicher Datenerfassung usw.
Hi,

das von dir gesuchte VI "Array Window Max & Min" kenn ich nicht, aber du kannst ja ganz einfach einen Teil deines Array ausschneiden und dann mit der "normalen" Array-Min/Max-Funktion arbeiten.

Zum Thema Ringpuffer gibts mehrere Möglichkeiten:
1. Zu kannst dir die Daten in ein Schieberegister packen (bzw. in nen FeedbackNode) und die jeweilige Länge überprüfen...Wenn mehr als X Werte drin sind, schneidest du was hinten ab.

2. Du schiebst deine Daten in eine Queue und und machst dann das gleiche wie bei (1.). Für die Queue aber keine feste Größe definieren, sonst bleibt deine Datenerfassung einfach stehen, wenn du mit dem "Dequeue" ("leeren") nicht nachkommst.

3. Du schiebst deine erfassten Daten in ein WaveformChart. Bei dem legst du mit nem rechtsklick auf dessen Oberfläche die "History Size" fest, abhängig von deiner zu erwartenden Messdauer + Abtastrate entsprechend viele Punkte. Wird diese Zahl während deiner Messung überschritten, werden die zuerst erfassten Werte verworfen...das ist ein automatischer Ringpuffer! Wenn du die Anzeige aller Daten im Chart bzw. das ganze Chart nicht benötigst, machst du's einfach "invisible". Wenn du programmatisch auf die Daten zugreifen willst (z.B. um Ausschnitte zu sehen oder zu speichern), kannst du das mit nem PropertyNode des Charts und dem Parameter "HistoryData".

Ich persönlich hab alle drei Varianten schon verwendet, die letztere ist für mich die eleganteste...da wird LV zwar ein bisschen missbraucht, aber wer weiß ob sich das die Entwickler nicht tatsächlich so gedacht haben...

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.05.2007, 18:17
Beitrag #3

impromptu Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2007

8.00
2007
kA

35390
Deutschland
Problem mit kontinuierlicher Datenerfassung usw.
Vielen Dank für diesen genialen eleganten Tip, hab gleich ausprobiert, und er hat super funktioniert!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Hilfe bzgl. kontinuierlicher Datenerfassung gefragt Philipp841 2 2.884 04.09.2020 12:30
Letzter Beitrag: jg
  Datenerfassung cDAQ + NI9203 keine synchrone Datenerfassung dieseldunst 5 6.562 24.06.2016 14:49
Letzter Beitrag: jg
  Kontinuierlicher analog Ausgang mit Änderung des Signals in der Programmausführung lumaxo 5 8.092 06.05.2014 10:53
Letzter Beitrag: Lucki
  Merkwürdiges Problem mit NI USB 6009 & Datenerfassung Dracotin 7 7.395 11.12.2012 14:54
Letzter Beitrag: Y-P
  Mittelwert bei kontinuierlicher DAQ Eggord 7 10.860 24.11.2011 13:47
Letzter Beitrag: lavoh
  Problem bei Datenerfassung mit Usb-6009 seismooo 1 4.698 30.12.2010 17:56
Letzter Beitrag: jg

Gehe zu: