01.02.2007, 09:36
Schönen Guten Morgen!
Ich habe mal wieder ein kleines Problem, oder besser eine Frage:
Und zwar folgendes. Ich habe eine While-Schleife und in dieser habe ich eine Flat Sequence Structure! In dem Teil, der zuerst läuft, lese ich mir Digitale Eingänge (Lines steht auf: "Dev1/port0ne0:23") mit DAQmx über eine USB 6259 von NI ein. In dem zweiten Teil der Flat Sequence gebe ich bestimmte digitale Ausgänge über DAQmx wieder aus! Ich habe zum Einlesen die digitalen Eingänge auf "One Channel for all Lines" und DAQmx Read auf "Digital 1D Bool 1Chan 1Samp" gestellt. Die Digitalen Ausgänge (Lines steht auf: "Dev1/port0ne24:31, Dev1/port1ne0:7, Dev1/port2ne0:7") schreibe ich mit DAQ Write, wobei ich ebenfalls die Einstellung hier auf :"Digital 1D Bool 1Chan 1Samp" und mein Linegrouping ebenfalls auf: "One Channel for all Lines" stehen habe! Die Initialisierung und das beenden der Ein- bzw. Ausgabe habe ich ausserhalb der While Schleife, da ich das ja nur einmal machen muss.
Soweit so gut! Nun ist aber mein Problem, das ich zum einlesen und ausgeben der DIO ca. 13 ms benötige! Das ist doch viel zu langsam! Angeblich kann die Karte die DIO schneller 10 MHz schalten! Warum bin ich so langsam? Oder muss ich die Daten anders auf die Karte geben?
Die einzige Erklärung die ich mir denken kann ist, dass die Karte sehr lange braucht, um zwischen einlesen und ausgeben der DIO zu wechseln. Oder ist der USB zu langsam?
Kann sich jemand einen Reim draus machen??
Es wäre nämlich schön, wenn ich zumindest ein bischen schneller werden würde!
Danke Herbert
Ich habe mal wieder ein kleines Problem, oder besser eine Frage:
Und zwar folgendes. Ich habe eine While-Schleife und in dieser habe ich eine Flat Sequence Structure! In dem Teil, der zuerst läuft, lese ich mir Digitale Eingänge (Lines steht auf: "Dev1/port0ne0:23") mit DAQmx über eine USB 6259 von NI ein. In dem zweiten Teil der Flat Sequence gebe ich bestimmte digitale Ausgänge über DAQmx wieder aus! Ich habe zum Einlesen die digitalen Eingänge auf "One Channel for all Lines" und DAQmx Read auf "Digital 1D Bool 1Chan 1Samp" gestellt. Die Digitalen Ausgänge (Lines steht auf: "Dev1/port0ne24:31, Dev1/port1ne0:7, Dev1/port2ne0:7") schreibe ich mit DAQ Write, wobei ich ebenfalls die Einstellung hier auf :"Digital 1D Bool 1Chan 1Samp" und mein Linegrouping ebenfalls auf: "One Channel for all Lines" stehen habe! Die Initialisierung und das beenden der Ein- bzw. Ausgabe habe ich ausserhalb der While Schleife, da ich das ja nur einmal machen muss.
Soweit so gut! Nun ist aber mein Problem, das ich zum einlesen und ausgeben der DIO ca. 13 ms benötige! Das ist doch viel zu langsam! Angeblich kann die Karte die DIO schneller 10 MHz schalten! Warum bin ich so langsam? Oder muss ich die Daten anders auf die Karte geben?
Die einzige Erklärung die ich mir denken kann ist, dass die Karte sehr lange braucht, um zwischen einlesen und ausgeben der DIO zu wechseln. Oder ist der USB zu langsam?
Kann sich jemand einen Reim draus machen??
Es wäre nämlich schön, wenn ich zumindest ein bischen schneller werden würde!
Danke Herbert