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 

Dieses Thema hat akzeptierte Lösungen:

Kontrolle der Abtastrate



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!

31.07.2013, 14:22
Beitrag #11

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


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
RE: Kontrolle der Abtastrate
(31.07.2013 14:01 )michaelnietgen schrieb:  Nein ich habe einfach an einen dt ausgang alle Werte abgefangen und gesammelt. Praktisch wie bei den y-Werten nur halt mit dem Ausgang dt.
Also dt > array einfügen > schieberegister > und von vorn..

Kann nicht sein...da muss sowas rauskommen:
   

"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
Anzeige
31.07.2013, 14:25
Beitrag #12

michaelnietgen Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Jul 2013

2011
2011
DE



RE: Kontrolle der Abtastrate
HI GerdW,

also mit dem PropertyNode von Samplerate kommt immer 500 raus. Wenn ich es bei jedem durchlauf der Whileschleife (Parallel zum Daqmx Lesen) abfrage und vorher auch 500 als Rate festgelegt habe.

Was eigentlich jetzt der Kern ist:

Zitat:Zitat:
Du kannst über eine DAQmx-PropertyNode auch die Samplerate auslesen. Schau mal in die DAQmx-Funktionspalette. So z.B.:

Das hab ich mir schon mal angesehen, die Kontexthilfe hatte ich eher so interpretiert, dass nur die Einstellungen die ich an das VI Sample Takt übergebe abergefragt werden und nicht die tatsächliche von der Messkarte ausgeführte Samplerate.


Könntest du dazu kurz was sagen, ist es
a) nicht möglich die tatsächlich von der Messwertkarte NI 6230 ausgeführte Samplerate zu bestimmen.
b)bei DAQmx-PropertyNode wird die tatsächliche Samplerate der Messwertkarte abgefragt.
c)bei DAQmx-PropertyNode wird die vom Daqmx Timing (Sampletakt) momentan festgelegte Samplerate abgefragft.
e)es ist möglich die tatsächliche Samplerate durch eine Anfrage an die Messwertkarte Ni 6230 zu erhalten.

einfach zu jedem kurz ja oder nein
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.07.2013, 14:28 (Dieser Beitrag wurde zuletzt bearbeitet: 31.07.2013 14:30 von GerdW.)
Beitrag #13

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Kontrolle der Abtastrate

Akzeptierte Lösung

Hallo Michael,

Zitat:a) nicht möglich die tatsächlich von der Messwertkarte NI 6230 ausgeführte Samplerate zu bestimmen.
b)bei DAQmx-PropertyNode wird die tatsächliche Samplerate der Messwertkarte abgefragt.
c)bei DAQmx-PropertyNode wird die vom Daqmx Timing (Sampletakt) momentan festgelegte Samplerate abgefragft.
e)es ist möglich die tatsächliche Samplerate durch eine Anfrage an die Messwertkarte Ni 6230 zu erhalten.
a) Nein, es ist nicht "nicht möglich" (doppelte Verneinung bei dieser Fragestellung Big Grin)
b) ja
c) nein
e) ja, siehe b

Außerdem kann ich mich nur Achim anschließen...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.07.2013, 14:46 (Dieser Beitrag wurde zuletzt bearbeitet: 31.07.2013 14:55 von michaelnietgen.)
Beitrag #14

michaelnietgen Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Jul 2013

2011
2011
DE



RE: Kontrolle der Abtastrate
Hallo GerdW

eingentlich sollten sich a und b gegenseitig bestätigen^^
denn a bezieht sich generell darauf ob es möglich ist und b ob es durch DAQmx-PropertyNode möglich ist. Aber egal.


Zitat:Kann nicht sein...da muss sowas rauskommen:

Hm, ich kann euch ja einfach mein Programmteil zeigen, wie gesagt mit dem PropertyNode hats wie erwartet geklappt.



Hallo Achim,

mir ist aufgefallen das du die Parameter des Daqmx Lesen anders gewählt hast. Versuch es mal mit Anzahl der Samples pro Kanal
-1.

Vielleicht kommt dann das selbe raus.


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.07.2013, 15:16 (Dieser Beitrag wurde zuletzt bearbeitet: 31.07.2013 15:20 von GerdW.)
Beitrag #15

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Kontrolle der Abtastrate
Hallo Michael,

Zitat:Versuch es mal mit Anzahl der Samples pro Kanal -1.
Welchen guten Grund kannst du uns nennen, warum das so gemacht werden sollte? Und sage jetzt bitte nicht " Ich habes einfach so gemacht weil ich so angefangen hatte."...

Wenn man kontinuierlich Daten lesen will, macht man das üblicherweise mit festen Blockgrößen, d.h. man gibt eine feste Samplezahl vor! So lässt sich der Rechenaufwand wesentlich besser abschätzen/vorgeben und man weiß, in welchem Takt eine Schleife läuft.
Du dagegen liest einfach den Eingangspuffer leer, unabhängig wieviele Samples schon vorhanden sind. Was erwartest du für Werte, wenn der Puffer gerade noch leer sein sollte? Dann bekommst du eine Fehlermeldung (die du evtl. unterdrückt hast) und eben eine "1" bei dt...

Und solange du hier Blockdiagramme einstellst, bei denen man nicht sehen kann, welcher Draht wo angeschlossen ist, sehe ich auch keinen Grund für eine weitere Fehlersuche.
Lies dir bitte mal den LabVIEW StyleGuide durch, etliches davon steht auch in der LabVIEW-Hilfe...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.07.2013, 15:34
Beitrag #16

michaelnietgen Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Jul 2013

2011
2011
DE



RE: Kontrolle der Abtastrate
Erstmal danke für die Hilfe und die Anmerkungen, Achim und GerdW ihr hab mir gut geholfen und mein Problem ist gelöst.

Zitat:Welchen guten Grund kannst du uns nennen, warum das so gemacht werden sollte? Und sage jetzt bitte nicht " Ich habes einfach so gemacht weil ich so angefangen hatte."...

Dazu muss ich sagen ich soll für einen Messystem die Steuerung der Pumpe und die Messwerterfassung des Flussensors schreiben.
Leider will keiner eine feste Samplerate sonder diese soll einstellbar sein zudem sollen auch noch alle Signale die erfasst werden ausgegeben werden und zwar möglichst sofort.

Sagen wir mal ganz extrem, wir nehmen nur einen Messwert aus dem Puffer (pro Kanal) fügen dem in das jeweilige Array ( eines der 4 ,eines pro Kanal), Differenzieren noch 2 Signalpaare und plotten dann 3 Graphen. Das mach alles die Whileschleife.
Das Problem daran war einfach das man bei 25k Hertz so schnell werte in den Puffer schreibt, da kommt die Auswertung und Darstellung gar nicht nach.

Das führte dazu, dass man schon 20 Sekunden gemessen hat und die Anzeige noch bei Sekunde 8 war........
Der Effekt wird natürlich schlimmer wenn die Abtastrate höher ist.

Also habe ich eine Möglichkeit gesucht unabhängig von der Rate mit maximaler Geschwindigkeit alle verfügbaren Messwerte in Arrays zu sammeln zu verrechnen und darzustellen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.07.2013, 15:48 (Dieser Beitrag wurde zuletzt bearbeitet: 31.07.2013 16:13 von GerdW.)
Beitrag #17

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Kontrolle der Abtastrate
Hallo Michael,

Zitat:Das Problem daran war einfach das man bei 25k Hertz so schnell werte in den Puffer schreibt, da kommt die Auswertung und Darstellung gar nicht nach.
Ein Problem dabei ist, dass man nicht wirklich Signale mit 25kS/s in einer Messschleife darstellen will/sollte.
Noch einmal der Hinweis:
Bei solchen Datenraten sollte man ein Messprogramm sorgfältig designen. Man sollte sich Gedanken über ein Producer-Consumer-Schema machen. Man sollte Messung von Datenaufbereitung trennen. Man sollte die Anzeige in einer eigenen Schleife (mit wesentlich geringeren Raten) laufen lassen (niemand kann 25kS/s Wert für Wert begutachten!). Man sollte über TDMS-Streaming nachdenken.
Man darf nicht alles in einer Schleife erledigen wollen, dies geht (nicht nur styleguide-mäßig) wie bei dir in die Hose!

Zitat:Leider will keiner eine feste Samplerate sonder diese soll einstellbar sein
Die kannst du doch vor Start der Messung einstellen. Mittendrin macht man sowas einfach nicht!

Zitat:sollen auch noch alle Signale die erfasst werden ausgegeben werden und zwar möglichst sofort.
Diese Aussage sollte überdacht werden. Siehe Kommentar oben...

Zitat:Das führte dazu, dass man schon 20 Sekunden gemessen hat und die Anzeige noch bei Sekunde 8 war...
Siehe oben: parallele Schleifen verwenden, Daten vernünftig puffern und verrechnen/anzeigen...

Zitat:Messystem die Steuerung der Pumpe und die Messwerterfassung des Flussensors
Ich kenne dein Messsystem nicht, aber an unseren Prüfständen laufen Flusssensoren (Volumenstrom/Massenstrom) mit 10Hz Samplerate und Pumpensteuerungen mit 4Hz-Regelschleifen...

Zitat:mit maximaler Geschwindigkeit alle verfügbaren Messwerte in Arrays zu sammeln zu verrechnen und darzustellen.
Dummerweise ist das von dir verwendete Konstrukt mit stetig wachsenden Arrays genau dafür nicht geeignet! Es gibt einen KnowledgeBase-Eintrag zum "Handling großer Datenmengen" bei ni.com in der LabVIEW-Hilfe!

Rtmfx

Um den Thread auf gewohnt "klare" Weise zusammenzufassen:
Momentan versuchst du Symptome zu behandeln ohne die Ursache zu verstehen. Tut mir leid, ist aber mein Eindruck...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.07.2013, 17:58
Beitrag #18

michaelnietgen Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Jul 2013

2011
2011
DE



RE: Kontrolle der Abtastrate
Ja da kann ich dich verstehen. Mir ist auch klar das man das alles schöner machen könnte. Leider reicht dafür mein Hintergrundwissen das aus einem halben Semester LabView besteht nicht aus um jetzt in der Bachelorarbeit ein super Programm zu schreiben das man sogar für Geld verkaufen kann^^
Zitat:Man sollte sich Gedanken über ein Producer-Consumer-Schema machen.
. Tatsächlich habe ich zuvor noch keine Messwerterfassung in LAbView programmiert und habe mir den Teil selber angeeignet, deswegen tut es mir Leid das ich dir kein super Programm zeigen kann. Die Leute aus meiner Arbeitsgruppe sind schon froh das es läuft und an den Graphen usw die Zeitachse stimmen... , naja das kann man halt nicht vergleichen die meisten beherrschen selber gar kein LabView bzw. haben nur Programme aus ExpressVIs zusammengewürfelt.

Zitat:Die kannst du doch vor Start der Messung einstellen. Mittendrin macht man sowas einfach nicht!
Hm.. da hast du nicht richtig hingeguckt bzw du hast ja nur einen Ausschnitt einer Schmiervorlage gesehen, das ist schon drin.

Zitat:Man sollte sich Gedanken über ein Producer-Consumer-Schema machen
Das Programm soll nicht verkauft werden, es dient nur zum Testen einer neuen Messmethode, deswegen un ddurch die Rahmenbedingeung sidn die Anfordungen was das betrifft nicht so hoch.

Zitat:Man sollte Messung von Datenaufbereitung trennen. Man sollte die Anzeige in einer eigenen Schleife (mit wesentlich geringeren Raten) laufen lassen (niemand kann 25kS/s Wert für Wert begutachten!)
Ja das ist sicherlich sehr sinnvoll. Aber ich weiß nicht wie ich mit einer geringeren Rate näherungsweise eine ,,Echtzeitdarstellung,, schaffen könnte, essei den man stellt nicht alle Werte dar (stimmt ja auch 25KS/s kann eh keiner sehen)


Zitat:Diese Aussage sollte überdacht werden. Siehe Kommentar oben...
Diese Aussage ist mehr oder weniger ein Wunsch bzw. eine optimale Vorgabe von Kollegen.

Zitat:Siehe oben: parallele Schleifen verwenden, Daten vernünftig puffern und verrechnen/anzeigen...
Ich weiß nicht genau worauf sich ,,Siehe oben,, bezieht. Hört sich aber super an, auch wenn ,,verfünftig,, eine schlechte Beschreibung der Art und Weise ist. Beziehungsweise ich nicht mal genau weiß welchen Puffer, nach der Erfassung noch mal extra für die Ausgabe im Graphen.

Zitat:Dummerweise ist das von dir verwendete Konstrukt mit stetig wachsenden Arrays genau dafür nicht geeignet!
Der Begriff Konstrukt erinnert mich sehr an Halo, aber ich weiß nicht genau auf welchen Teil du hinaus willst , vielleicht die Whileschleife mit Daqmx Lesen oder auch das schreiben der Textdatei.

Zitat:Momentan versuchst du Symptome zu behandeln ohne die Ursache zu verstehen. Tut mir leid, ist aber mein Eindruck...
Ich sollte nur herrausfinden, ob die Abtastung genau genug ist und die Abstände äquidistant sind. Dank dem DAQmx-PropertyNode was du mir empfohlen hast hat das auch geklappt.

Insgesamt danke ich dir und Achim natürlich für die Hilfe.

Unbeachtet welchen Eindruck du nun hast, wäre es auch angemessen zu bedenken, dass ich nur 1/2 Semester LabView Grundlagen gemacht habe in denen Messwerterfassung gar nicht vorkam, ich in einer Arbeitsgruppe arbeite die gerne die tollsten Sachen und Funktionen hätte, selber aber sich keiner damit auskennt, die kannten nicht mal Daqmx VIs, weil halt immer Express genutzt wurde. Deswegen kann ich da nur um Nachsicht bitten das ich kein ,,Producer-Consumer-Schema und TDMS-Streaming ,,. Erlich gesagt habe ich schon die Namen noch niegehört und hab kein Plan was eigentlich dahinter Steckt, wie schnell ich es mir selbst beibringen kann und schließlich ist das Programm nur ein kleiner Teil meiner Bachelorarbeit den Hauptteil soll die Auswertung(in Origin) und die Schlussfolgerungen daraus bilden. Von daher und weil ich ein begrenztes Zeitvolumen habe ist es mir praktisch nicht möglich alle diese tollen Sachen einzubauen, aber das kann der Leiter meiner Arbeitsgruppe bei den Rahmenbedingungen auch nicht erwarten.

Tatsächlich tut er dies auch nicht, er ist froh das das Programm läuft und freut sich das alles was er wollte (bis auf die vielleicht unendliche Messdauer (Schieberegister voll)) funktioniert. Und für die Testmessungen morgen kann man das Programm vollständig einsetzen.

Und mal unter uns natürlich wäre ich auch gerne lieber bei dir mit meiner Bachelorarbeit, ich glaube da könnte ich viel mehr lernen.
Damit nochmals Danke und vielleicht besuche ich das Forum ja später noch mal, ich hoffe man erhält dann immer noch so bereitwillig Hilfe. Immerhin konnte ich ein paar kleine Verbessungen übernehmenBig Grin und die Abtastrate kontrollieren.
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
  Messwerte mit maximaler Abtastrate erfassen creo_123 6 5.768 05.10.2017 11:46
Letzter Beitrag: GerdW
  Abtastrate Balken darstellen dbuckl 1 4.581 28.05.2015 09:21
Letzter Beitrag: jg
  3 Spannungen im Graph anzeigen (Abtastrate 1ms) Sebastian1980 2 5.628 29.07.2011 10:15
Letzter Beitrag: Sebastian1980
  Wiederholrate / Abtastrate LabVIEW NEC 5 9.020 06.03.2008 11:18
Letzter Beitrag: NEC
  WICHTIG!!! Abtastrate, Fs und #s Max_2202 7 8.838 14.03.2007 14:50
Letzter Beitrag: dc6xs

Gehe zu: