LabVIEWForum.de - mehrere Tasks gleichzeitig einlesen

LabVIEWForum.de

Normale Version: mehrere Tasks gleichzeitig einlesen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebe Labviewer,

ich möchte in einer While-Schleife mehrere Tasks gleichzeitig einlesen und in verschiedenen Diagrammen darstellen (2 mal Druck und 1 mal Temperatur). Bei einem Task funktioniert alles wie es soll, wenn ich aber den zweiten Task dazu schreibe, also mit einem zweiten "DAQmx Lesen", dann stürzt LV mit der Fehlermeldung 50103 ab und meint, dass die Ressource reserviert ist.

Wenn ich 2 einzelne While-Schleifen mache, passiert das gleiche. Ich kann euch das VI leider erst morgen zeigen, da der PC iM kein Internet hat und ich keinen USB Stick zur Hand hab. Ich hoffe ihr könnt mir trotzdem einen Ansatz geben.

Vielen Dank!
Hmmm

Ich bin nicht gerade der DAQxm Spez, aber was für Karten verwendest du?
' schrieb:dann stürzt LV mit der Fehlermeldung 50103 ab und meint, dass die Ressource reserviert ist.
Das ist kein Absturz, sondern eine ganz normale Fehlermeldung.

Man kann ein und die selbe Ressource nicht von zwei Tasks aus ansprechen. Das geht nicht. Jede Ressource kann nur eine Task haben.

Du musst in der Task drei Kanäle definieren, dann kannst du auch drei Signale einlesen.
Hier ein Bsp. wie Du mehrere Kanäle einlesen kannst:

[attachment=29156]
Lv80_img

[attachment=29160]

Die Rechenoperationen in der Schleife kannst Du weglassen.

Gruß Markus
Hallo zusammen,

ich mach mal diesen alten Thread hier wieder auf, weil es mein Problem ziemlich genau trifft.
Ich habe mich auch ewig mit dem Fehler 50103 rumgeschlagen, aber nach der Info von IchSelbst und dem Beispiel von Y-P sehe ich klarer und habe es glaube ich soweit kapiert.
Meine Frage: Wie kann ich das Beispiel von Y-P umbauen, so dass ich unterschiedliche Sampleraten für die verschiedenen Tasks verwenden kann? (NI USB-6009, AI-Spannung, continuous samples)

Gruß
Peter
Hallo Peter,

Markus' Beispiel verwendet nur einen Task mit mehreren Kanälen!
- Ein Task, eine Samplerate!
- Du könntest die höchste geforderte Samplerate einstellen und die anderen Kanäle auf die benötigte herunterrechnen...
Gar nicht!
Du kannst bei einer 6009 (wie auf vielen anderen Karten auch) zur selben Zeit nur einen AI-Task laufen lassen, und der kann dann bei Hardware-Taktung natürlich nur mit einem Takt laufen. Hauptgrund dafür ist, dass die meisten Karten aus Kostengründen nur 1 AD-Wandler haben und die Kanäle im MUX-Betrieb nacheinander abgefragt werden.

Einen kleinen Trick gibt es noch: Du kannst z.B. ein AI-Task der folgenden Art zusammenstellen: 2x AI1, 1x AI2, dann fragst du AI1 "doppelt" so schnell ab wie AI2.
Einfacher dürfte es aber sein, den zweiten Kanal nach Erfassung einfach herunterzusamplen.

Gruß, Jens
Hallo,

danke Euch beiden. Jetzt bin ich wieder etwas schlauer. Und ja, mein Fehler, ich meinte verschiedene Sampleraten je Kanal und nicht Task.
Okay, dann rechne ich den einen Kanal halt runter.
Danke und Gruß

Peter
Referenz-URLs