LabVIEWForum.de - DAQmx Create Channel mit InvokeNodes geht nicht?

LabVIEWForum.de

Normale Version: DAQmx Create Channel mit InvokeNodes geht nicht?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Kollegen!

Erstmal zu mir als Neuer hier:
Ich habe zwar schon vor längerer Zeit einiges mit LabVIEW gemacht, aber jetzt geht's für mich richtig los. Also kann man mich durchaus als LabVIEW-Anfänger betrachten, jedenfalls was DAQ angeht (Oberfläche und Programmierlogik kenne ich so ziemlich).

Zu meinem Problem (LabVIEW 8.5):
Ich habe ein DAQ-Erfassungs-VI aus den Beispielen genommen und es leicht abgeändert. Dort lese ich ein Analogsignal aus einem Kanal und verwende das DAQmx Create Channel (AI-Voltage-Basic).vi zum Erzeugen des Kanals und Tasks. Das funktioniert auch soweit (DAQmxTest2.vi).
Jetzt habe ich das DAQmx Create Channel (AI-Voltage-Basic).vi durch eine Reihe von InvokeNodes (nach dem Öffnen der Referenz auf ebendieses VI) ersetzt, die mir die EIngangswerte setzen, das VI ausführen nd danach den Fehlerwert und den Task auslesen. Das scheint auch alles zu funktionieren (keine Fehlerausgabe), nur ist die Task-Variable leer und das DAQmx Timing (Sample Clock).vi gibt natürlich einen Fehler zurück, weil es ohne Task nichts machen kann (DAQmxTest3.vi).
Ist es generell unmöglich, die DAQmx Create Channel.vi's über InvokeNodes anzusprechen oder mache ich da einen Fehler? Für sachdienliche Hinweise wäre ich sehr dankbar!
Habe erst mal Dein erstes VI so modifiziert, daß es normal funktioniert.
NB: Ein Wait in der Datenerfassungsscheife - ansonsten in Schleifen fast immer richtig und sinnvoll - ist immer das Signum das DAQ-Anfängers.
Das DAQmx Read wartet von selbst, bis die vorgewählte Anzahl von Daten im Buffer drin ist. Du holst zwar immer alles ab was in Buffer ist, insofern macht das Wait hier Sinn. Was aber keinen Sinn macht ist, das Diagramm 500mal in der Sekunnde neu zeichnen zu wollen. Das funktioniert nicht, and wenn doch, dann müßte der Mensch, der das mitverfolgen könnte, erst noch gezüchtet werden. Und auch neue Monitore mit der zehnfachen Refreshrate bräuchte dann das Land.

Lv85_img [attachment=14001]
Danke für die Hinweise. Ich gebe zu, einiges zu diesem VI ist mir noch nicht wirklich klar. Aber ich will mich natürlich auch nicht gleich als Anfänger outen Wink.
Aber wieso das andere VI nicht funktioniert wüßte ich schon gerne.
' schrieb:Aber wieso das andere VI nicht funktioniert wüßte ich schon gerne.
Dazu kann ich Dir nichts sagen. Ich nehme mit Erstaunen zur Kenntnis, daß das funktionieren soll: Die Ein-und Ausgänge eines VIs über Invoke-Knoten als Bedienelemente anzusprechen, wobei das VI selbst gar nicht aufgerufe ist. Davon verstehe ich nichts. Vor allem aber ist mir rätselhaft, was das letztlich bringen soll, wo Du doch selbst im anderen VI den einfachen Weg gehst.
' schrieb:Vor allem aber ist mir rätselhaft, was das letztlich bringen soll, wo Du doch selbst im anderen VI den einfachen Weg gehst.

Das ist einfach zu erklären: Ich will das dynamisch konfigurierbar machen. In einer Konfigurationsdatei steht, von welchem Eingang welcher Karte was gelesen werden soll, und das will ich dann tun. Z.B.: Slot2, Eingang 0, Typ PXI-4462, Analogwert lesen (und anzeigen. abspeichern oder ähnliches)
Referenz-URLs