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 

Abtastrate, Sampleanzahl - was mach ich falsch?



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!

10.06.2009, 09:27
Beitrag #1

schroepel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Mar 2008

8.5
2008
de

09113
Deutschland
Abtastrate, Sampleanzahl - was mach ich falsch?
Hallo LabVIEW-Spezialisten,

noch immer hänge ich an meinem Programm zu dem ich schon ein paar Fragen gestellt habe.

Also ich bekomme von einem Sensor mit nachgeschalteter Verstärkerschaltung Spannungswerte.
Laut Hersteller geht das ganze mit maximal 15 KHz. Zusätzlich bekomme ich von einer anderen Quelle
ein Signal (HIGH / LOW) das ich zum Steuern der Spannungsmessung nutzen möchte.
Dabei ist das Signal 3 ms auf HIGH und dann 11 ms auf LOW, dann wieder 3 ms HIGH usw.

Wenn ich nun 3 ms lang die Spannungswerte mit 15 KHz aufnehme, müsste ich doch 45 Werte erhalten, oder?
Um die Einzelmessungen besser trennen zu können, lege ich diese (obwohl mir davon abgeraten wurde) in ein 3D-Array.
Komisch ist aber nun, dass ich mehr Werte erhalte als ich eigentlich haben will.

Z.B.: Ich lasse das HIGH-Signal einmal (3 ms) erscheinen, aber es werden drei Messungen durchgeführt
(bzw. 3 Ebenen im 3D-Array angelegt die mit je 46 Werten pro Kanal gefüllt sind)

Ich vermute ja, das ich die Einstellung von Sampelzahl und Abtastrate irgendwie falsch habe.
Aber ich wüsste nicht wie ich das anders machen könnte.

Könntet ihr mir bitte helfen und mir meine Fehler einfach und verständlich erklären,
leider bin ich noch nicht so ein LabVIEW-Spezialist (aber ich bemühe mich).


Sonstige .vi  Auslese_PSD_2_3.vi (Größe: 251,45 KB / Downloads: 286)
Lv85_img
   

Gruß Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.06.2009, 09:57 (Dieser Beitrag wurde zuletzt bearbeitet: 10.06.2009 10:00 von Kvasir.)
Beitrag #2

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
Abtastrate, Sampleanzahl - was mach ich falsch?
Hi,

ich sehe hier in deinem Vi nirgends eine Funktion, die deine Messung nur einmal durchführen lässt. Du hast diese ja in einer While-Schleife, die du manuell beendest. Diese While Schleife nimmt nun dauernd je einen Boolschen Wert auf (das was gerade anliegt -high/low) und dazu jeweils 46 Messpunkte. Das wiederholt dein Programm solange, bis du Stop drückst.
Wieviele Messungen das dann genau sind hängt davon ab, wann du drückst.

Im Übrigen triggerst du nicht auf dein High/Low Signal. Ich weiß ja nicht, ob das einen Unterschied macht in deinem Fall, aber wann genau dein Vi das Signal ausliest ist sozusagen zufällig. Das kann auch gerade ganz am Ende einer High Phase sein. Es ist damit also auch nicht garantiert, dass die 46 Samples alle genau innerhalb einer Phase des Steuersignals liegen.

Grüße

edit:

Ok hier noch 1-2 Vorschläge, die dir eventuell helfen die Probleme zu beseitigen:

- Bezüglich der Anzahl der Messungen könntest du die While Schleife durch eine For Schleife ersetzen und damit genau steuern, wie oft er messen soll.
- Das Triggern wird wohl eher etwas trickier werden. Ich muss gestehen, dass ich mir am Synchronisieren von 2 DAQmx Tasks auch schon die Zähne ausgebissen habe. Was aber recht einfach gehen sollte ist den Analog Task über das digitale Signal zu triggern. Nutze dazu die DAQmx Funktion Trigger. Schau mal im Example Finder nach Beispielen hierzu.

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.06.2009, 10:10
Beitrag #3

schroepel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Mar 2008

8.5
2008
de

09113
Deutschland
Abtastrate, Sampleanzahl - was mach ich falsch?
' schrieb:- Bezüglich der Anzahl der Messungen könntest du die While Schleife durch eine For Schleife ersetzen und damit genau steuern, wie oft er messen soll.

Aber wenn ich die While Schleife durch For ersetze, läuft die dann nicht sofort los wenn ich das Programm starte
und wartet nicht auf das Triggersignal?


' schrieb:- Das Triggern wird wohl eher etwas trickier werden. Ich muss gestehen, dass ich mir am Synchronisieren von 2 DAQmx Tasks auch schon die Zähne ausgebissen habe. Was aber recht einfach gehen sollte ist den Analog Task über das digitale Signal zu triggern. Nutze dazu die DAQmx Funktion Trigger. Schau mal im Example Finder nach Beispielen hierzu.

Wenn ich über die Triggerfunktion gehe, nutze ich doch dann aber nur eine Flanke des digitalen Signals, oder?
Wodurch dann wiederum mein Zeitfenster von 3 ms unkontrolliert bleiben würde.
Das Problem ist, dass dieses Signal von einem Scanner kommt dessen Positionierzeit und Einschwingverhalten beobachtet werden soll.
Der Sensor nimmt einen Laserspot auf der von dem Scanner ausgelenkt wird.
Wenn ich jetzt nur Flankengetriggert die 45 Werte aufnehme, weis ich denn dann ob die Werte die 3 ms voll ausfüllen?

Gruß Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.06.2009, 10:36
Beitrag #4

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
Abtastrate, Sampleanzahl - was mach ich falsch?
' schrieb:Aber wenn ich die While Schleife durch For ersetze, läuft die dann nicht sofort los wenn ich das Programm starte
und wartet nicht auf das Triggersignal?

Ja das ist richtig. Allerdings startet er die Messung ja jetzt auch sofort. Er beendet sie auf Knopfdruck - starten tut auch die While Schleife gleich am Anfang. Schau dir hierzu im Forum mal Beiträge über State Maschinen (state machine) an. Damit könntest du Anfang und Ende der Messung elegant steuern.

' schrieb:Wenn ich über die Triggerfunktion gehe, nutze ich doch dann aber nur eine Flanke des digitalen Signals, oder?
Wodurch dann wiederum mein Zeitfenster von 3 ms unkontrolliert bleiben würde.
Das Problem ist, dass dieses Signal von einem Scanner kommt dessen Positionierzeit und Einschwingverhalten beobachtet werden soll.
Der Sensor nimmt einen Laserspot auf der von dem Scanner ausgelenkt wird.
Wenn ich jetzt nur Flankengetriggert die 45 Werte aufnehme, weis ich denn dann ob die Werte die 3 ms voll ausfüllen?

Gruß Marco

Auch das ist richtig - Triggern tut er auf die Flanke. Nur jetzt triggert er ja gar nicht, was noch schlechter sein dürfte. Die 3ms erreichst du dennoch durch die 46 Samples bei 15kHz SR. Damit garantierst du eine Messdauer von 3ms.
Dennoch ist das eigentlich unschön, da er so nach 3ms stoppt und nicht am Ende der Highphase. Eine Messung, die auf steigende Flanke startet und auf fallende Flanke stoppt dürfte aber nicht möglich sein mit dem DAQmx zu entwerfen. Ich hab das einmal versucht, bin daran aber gescheitert. Kann jedoch sein, dass nur meine Karte das nicht kann. Eventuell hast du eine, die das schafft. (Eine FPGA Karte kann das z.B.)

Grüße

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.06.2009, 12:43
Beitrag #5

schroepel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Mar 2008

8.5
2008
de

09113
Deutschland
Abtastrate, Sampleanzahl - was mach ich falsch?
Also ich hab das mal mit der Triggerfunktion probiert, die Messung startet auch bei der steigenden Flanke.
Aber das mit der For Schleife versteh ich noch nicht ganz, dort muss ich doch angeben wie häufig die durchlaufen werden soll.
Und außerdem woher bekomme ich dann meine 11ms Pause, denn irgendwie regiert das Programm nur auf die erste Flanke
und danach wird die Schleife so of wie vorgegeben durchlaufen, aber ohne Pause.
Desalb dachte ich mir, ich lass die Schleife nur eimal durchlaufen und danach soll das Programm warten bis zur nächsten Triggerflanke.
Aber irgendwie funktioniert das nicht so wie ich mir das gewünscht hatte.Sad
Kann mir mal bitte jemand helfen, irgendwie versteh ich das nicht?


Sonstige .vi  Probe_Auslese_PSD_2_4.vi (Größe: 42,5 KB / Downloads: 226)
Lv85_img
   


Gruß Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.06.2009, 12:57 (Dieser Beitrag wurde zuletzt bearbeitet: 10.06.2009 12:59 von Kvasir.)
Beitrag #6

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
Abtastrate, Sampleanzahl - was mach ich falsch?
Da kann ich dir doch helfenSmile

Du definierst den Trigger für deinen Task (vor der Schleife)
Dann startest du deinen Task (vor der Schleife)

Das bedeutet dann, dass er misst sobald der Triggerpunkt kommt. Allerdings bleibst du dann im selben Task, der schon gestartet ist. Daher wartet er nicht erneut auf den Trigger.
Du musst in deinem Fall also die Start Funktion (und eine Stopp Funktion) in die Schleife legen. Dazwischen die Lesen Funktion. Dadurch sollte er jedesmal auf einen Triggerpunkt warten.

Die Sequenz innerhalb der Schleife ist übrigens überflüssig. Der Datenfluss wird ja schon durch die Verdrahtung vorgegeben. Willst du zwischen den Messungen eine Pause haben könntest du diesen zweiten Rahmen der Sequenz allerdings nutzen um eine Wait Funktion einzubauen.

Grüße

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
10.06.2009, 13:29
Beitrag #7

schroepel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Mar 2008

8.5
2008
de

09113
Deutschland
Abtastrate, Sampleanzahl - was mach ich falsch?
Ich glaub das hab ich verstanden, aber die Pause wird ja durch den Abstand der Trigger zueinander und die Sampelanzahl vorgegeben, oder?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.06.2009, 13:59
Beitrag #8

schroepel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Mar 2008

8.5
2008
de

09113
Deutschland
Abtastrate, Sampleanzahl - was mach ich falsch?
' schrieb:Das bedeutet dann, dass er misst sobald der Triggerpunkt kommt. Allerdings bleibst du dann im selben Task, der schon gestartet ist. Daher wartet er nicht erneut auf den Trigger.
Du musst in deinem Fall also die Start Funktion (und eine Stopp Funktion) in die Schleife legen. Dazwischen die Lesen Funktion. Dadurch sollte er jedesmal auf einen Triggerpunkt warten.

Also ich hab das mal so umgesetzt, aber irgendwie bricht das Programm immer nach der ersten Messung ab
obwohl ich 200 Messungen machen wollte.
Was mach ich denn nun schon wieder falsch?

   

Sonstige .vi  Probe_Auslese_PSD_2_4.vi (Größe: 43,01 KB / Downloads: 224)


Gruß Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.06.2009, 14:16 (Dieser Beitrag wurde zuletzt bearbeitet: 10.06.2009 14:29 von jg.)
Beitrag #9

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Abtastrate, Sampleanzahl - was mach ich falsch?
Deine Messaufgabe gibt es doch quasi fix und fertig als Bsp im NI-Examplefinder - Immer wenn ein externes HW-Ereignis eintritt, willst du eine Anzahl Werte aufnehmen. Das macht genau dieses VI. Und deine Hardware kann dieses VI auch ausführen. Was willst du noch mehr.

Gruß, Jens

   

EDIT: Vergessenes Bild hochgeladen.

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
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
  Abtastrate bzw. Grundlagen mmk1988 8 9.164 12.06.2016 13:41
Letzter Beitrag: jg
  Abtastrate von Anzeigeelementen entkoppeln Titus 3 4.240 07.06.2016 07:20
Letzter Beitrag: GerdW
  Drehmoment Winkel XY-Diagramm und Abtastrate Jonnybo 1 4.815 05.06.2016 20:00
Letzter Beitrag: GerdW
  Abtastrate einstellen ! CarpPredator 5 9.688 25.02.2015 12:40
Letzter Beitrag: Lucki
  NI 9205 Abtastrate Sabrina89 2 4.454 06.11.2014 15:20
Letzter Beitrag: Sabrina89
  Falsche werte im Array/ Anzahl auch falsch Meister Eder 2 4.342 17.01.2014 21:37
Letzter Beitrag: Meister Eder

Gehe zu: