LabVIEWForum.de - Digitale Eingänge des USB 6009 auf low bringen

LabVIEWForum.de

Normale Version: Digitale Eingänge des USB 6009 auf low bringen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich möchte die an einem Widerstand (22k) in einer Serienschaltung (mit Fototransistor) abfallende Spannung an den digitalen Eingang eines USB 6009 legen. Die Spannung kippt zwischen 0,2 V und 5 V hin und her (Frequenz ca. 0,1-10 Hz). Ich würde gerne ein VI schreiben, in dem eine LED leuchtet, wenn die Spannung am Widerstand "high", also auf ca. 5 V ist, und nicht leuchtet, wenn die Spannung "low" ist. Die digitalen Eingänge des DAQ sind aber alle auf 5V eingestellt und ich müsste sie "runterziehen". Das ist aber mit der Schaltung nicht möglich. Kann man den Task/das VI/die Einstellungen so ändern, dass der Port auf low steht und die 5V am Widerstand ihn "hochziehen"?

Vielen Dank im Voraus!

Viele Grüße

Bennicklas
[attachment=29200]
1. Leg die Initialisierung und den Stop des DI-Tasks doch außerhalb der Schleife, und in der Schleife gehört ein Wait-VI, z.B. 50 ms. Das entsprechende VI aus dem NI-Examplefinder wäre dies hier:
[attachment=29201]
2. Was hast du wo angeschlossen? Masse auch an Digital-Ground? Hast du das mal mit einem Multimeter parallel nachgemessen? Ansonsten miss das doch mal mit dem Analog-Eingang der 6009.

Gruß, Jens
Hallo, Jens,

danke noch einmal für Deine Antwort, hat mir sehr geholfen. Ich hatte einen Denkfehler gemacht: Da der USB 6009 einen pull-up-Widerstand hat, der vergleichsweise klein ist. Durch meinen hohen Widerstand hinter dem Transistor zum Ground konnte die Spannung nicht herunter gezogen werden. Ich habe jetzt das Problem dadurch gelöst, dass ich den analogen Eingang genutzt habe und per Software eine Art Schmitt-Trigger eingebaut habe. Dabei habe ich das Problem, dass ich eine Sequenz ablaufen lasse und in der Sequenz in jedem Rahmen der Daq so lange abgefragt wird, bis der gewünschte Zustand (z. B. U>4 V) erreicht wird. Da ich Zeiten messen möchte, die sehr klein sind, kann ich keine Wartezeit von 20-50 ms eingeben. Soieht das etwa aus: [attachment=29334] Im SubVI ist eine 1-Sample-Daq-Abfrage drin ohne wait-Funktion.

Der DAQ rattert also ordentlich. Und trotzdem sind Zeiten unter 10ms nicht messbar. Muss ich auf N-Sample-Messung umprogrammieren oder gibt es einen Trick?

Mit dem "Herunterziehen" habe ich eine Lösung gefunden: Ich vertausche Transistor und Widerstand. Der beleuchtet Transistor hat dann einen so kleinen Widerstand, dass es den DAQ am Dig. In runterziehen kann. Wären die Dig. Ins schneller als die analogen Eingänge? Dann würde ich die "Dunkelzeitmessung" mit den digitalen machen.


Viele Grüße und vielen Dank im Voraus,

Bennicklas
Referenz-URLs