LabVIEWForum.de - DAQmx - Kanal 2 Abtastrate abhängig von Kanal 1

LabVIEWForum.de

Normale Version: DAQmx - Kanal 2 Abtastrate abhängig von Kanal 1
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich arbeite noch nicht allzulange mit LabView und stehe nun seit einiger Zeit vor einem Problem. Die Theorie dazu ist recht simpel, allerdings fehlen mir die Kenntnisse, diese in die Praxis umzusetzen.

Problem:
Ich messe mit einem DAQ-Device (DAQmx NI USB-9162) an zwei Kanälen zwei Spannungen eines rotierenden Systems (eine Sinus-Schwinung und einen Puls, der einmal pro Umdrehung triggert).
Nun möchte ich in LabView mit Hilfe des Pulses die Rotationsgeschwindigkeit berechnen und anschließend die Sinus-Schwingung mit einer von der Rot.-Geschwindigkeit abhängigen Abtastrate abtasten.

Da ich den DAQ-Assistenten nur einmal verwenden kann, fällt mir leider keine Möglichkeit ein, den zweiten Kanal in abhängigkeit des ersten zu parametrisieren.

Das angefügte Bild dient nur zur schematischen Darstellung und funktioniert natürlich nicht!

Danke und schönen Gruß
Johannes
Hallo,

so wie ich es sehe, geht das mit deinem USB-Carrier-Modul nicht. Egal was du für ein C-Serien-Modul du hineingesteckt hast (ich habe mal ein 9215 BNC angenommen), glaube ich, dass der Carrier das nicht unterstützt.
Was du brauchst, ist ein externer Sampeltakt. Dieser Sampletakt kommt direkt von deinem Puls, der einmal pro Umdrehung anliegt. Es ist also eine eventgesteuerte Erfassung und keine zeitgesteuerte.

Ich denke übrig bleibt eine software-seitige Dezimierung der Messdaten auf 1Messwert/Umdrehung, indem du jeweils 1Sample der Spannung bei jeder steigenden Flanke im Puls-Kanal herraussuchst und den Rest "wegschmeißt". Das bedingt allerdings, dass du mit der zunächst erfassten Frequenz garantiert immer den Puls erkennst. Wie lang ist der Puls bei der maximalen Drehzahl? Kannst du dieses Signal sauber erfassen und somit später sauber analysieren?

Hast du noch andere (Mess-)Hardware von NI, die dir zur Verfügung steht?


eb
Vielen Dank schonmal für deine Einschätzung.

Bei meinem C-Serienmodul handelt es sich um ein 9201 BNC. Andere Geräte stehen mir momentan nicht zur Verfügung.

Ich kann dir aus dem Stehgreif nicht sagen wie lang der Indexpuls ist (werde es in Erfahrung bringen), allerdings reicht es nicht aus, den Spannungswert der Sinusschwingung nur am Indexpuls auszulesen.
Bei der Messung handelt es sich um eine Unwuchtbestimmung. Über den Indexpuls will ich die Rotationsgeschwindigkeit ermitteln und eine Beziehung zur Schwingung mit unbekannter Phase (bzw. Unwucht) herstellen. Im Prinzip brauche ich für die Spannung also 360 Sampels (ich habe mir überlegt jede Winkelposition auf 10 Sampels zu verteilen, also 3600 Samples) und kann so dem Maximum der Sinuskurve einen Winkel zuordnen.
Das führt wiederum zu meinem Ausgangsproblem, dass ich bei einem Indexpuls mit 1Hz eine samplerate von 3600 benötige und bei 2Hz logischerweise 7200.

Die Idee mit der eventgesteuerten Erfassung klingt sehr gut. Mein Gedanke wäre evtl. ein Timeoutevent zu implementieren und nach wenigen Sekunden von der Indexpulsmessung zur Schwingungsmessung überzugehen (ich würde gerne vermeiden, dass der Benutzer ein Event auslösen muss).

Falls du dazu noch Anregungen oder Tips hast, nur raus damit Big Grin

Gruß
Johannes
Guten Morgen,

also ich sehe da schwarz.
Idealerweise bräuchtest du einen Puls, der 3600 Impulse pro Umdrehung hat und würdest den dann als Sampletakt auf eine geeignete Messhardware als externen Sampletakt vorgeben, um deine Spannung zu erfassen.

Da das leider bei dir nicht geht, (du hast keinen solchen Mess-Impuls-Takt und keine geeignete Hardware) bleibt aus meiner Sicht nur: Mit sehr hoher Sample-Rate erfassen und danach software-seitig bei einer Nachbehandlung alle unnötigen Samples wegzumschmeißen.
Ich würde mich jedoch unter diesen Vorraussetzungen von einer Winkel-synchronen erfassung verabschieden und lieber schnöde mit fester Erfassungsrate alle Daten aufzeichnen. Man müsste nun schauen, wie man die Erkenntnisse die du gewinnen möchtest (Unwucht, etc.) aus diesen zeit-synchronen Signalen herausbekommt.

Gruß eb
Zusatz: Die Länge des Indexpulses ist mit Hilfe eines Monoflops auf 100ms festgelegt.
Ich glaube ich habe eine Lösung gefunden (siehe Anhang). Habe sie schon kurz getestet und sie scheint zu funktionieren.

Jetzt muss ich nur noch schaun wie ich die Event-Aktivierung am geschicktesten löse.


Vielen Dank für die Hilfe und den Vorschlag mit der eventgesteuerten Erfassung!
Haha, das Problem lag doch ganz wo anders!

...und ist eigentlich sehr viel einfacher.
Man darf den Erfassungmodus im DAQ-Assistenten nicht auf "Kontinuierlicher Messung", sondern auf "endliche Anzahl" stellen, dann kann man das Ganze auch zeitlich lösen!
Referenz-URLs