LabVIEWForum.de - Boolean Array Dimension ändern ?

LabVIEWForum.de

Normale Version: Boolean Array Dimension ändern ?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Hallo,

ich komme grad nicht weiter.
Also ich möchte ein digitales Signal erzeugen welches immer 4,2ms 1 und dann 9ms 0 ist. Und dieses auf einen Ausgang der NI-Karte geben.
Jedoch komme ich bei meiner Variante nicht weiter, und zwar bekomme ich immer ein Boolan Array der Dimension 2 (obwohl ich nur auf an oder aus schalte) kann es aber nur in der Dimension 1 ausgeben.

Eventuell gibt es ja auch eine viel einfachere Möglichkeit so ein Signal zu erzeuegen (nur finde ich keine).

Gruss & Danke

amin

PS: der Anhang ist für Version LabVIEW 8.6
Was für eine Karte hast du denn? Sowas ist eigentlich eine ideale Aufgabe für einen Counter.

Gruß, Jens
Hallo,

hab hierfür die PCI-6221.

Hast Du zufällig ein Beispiel dafür, wie Du das meinst (bzw. nach was für ein Beispiel muss ich in LabVIEW suchen).

Gruss & Danke

amin
Gut, 6221, damit geht so was (zum Glück hast du nicht 6009 gesagt, da wäre das in der Form nicht mal mit DO gegangen, 4,2 ms mit Software Timing, vergiss es).

Schau dir die Bsps im NI-Examplefinder zu Digital Pulse Trains an.

[attachment=17081]

Gruß, Jens
Hallo,

Danke für den Tipp, jedoch verstehe ich in den Beispielen nicht, wo letztendlich das Signal herauskommt.
Denn Ausgänge wie "ctr0", "ctr1" oder "freqout" habe ich in meinem Belegungsplan nicht ?

Gruss & Danke

amin
MAX öffnen und PIN-Belegung des Geräts nachlesen:
Hier also die Standard-Pins:
[attachment=17084]
Wobei du den Counter-Ausgang bei Bedarf auf jeden beliebigen PFI-Pin routen kannst.

Gruß, Jens
Ok super,

vielen Dank nochmal !

Gruss

amin
Hallo,

das eigentlich geschilderte Vorhaben funktioniert wunderbar, aber ich würde gerne das Signal auch intern im LabVIEW Programm noch weiterverwenden. Jedoch bekomme ich beim Einsetzen des DAQmx-lesen immer einen Fehler:
Zitat:Fehler -200460 ist bei DAQmx Read (Digital Bool 1Line 1Point).vi:1 aufgetreten

Muss ich das anders lösen ?

Gruss & Danke

amin

Das Testfile ist für LabVIEW Version 8.6
Ähm, ja schön, und wie soll das, was du da jetzt gemacht hast, funktionieren? Logisch tritt da ein Fehler auf.

Du kannst doch bei einem Counter-Ausgabe-Task nicht einen Digital-In-Read Vorgang starten.

Wozu brauchst du denn eine Taktung von 4,2 ms und 9 ms intern im Programm? Diese kurzen Zeiten sind Windows schwer exakt einzuhalten.

Gruß, Jens
Hallo,

also ich möchte damit ein Spektrometer ansteuern, das benötigt leider diese Timings.
Und im Prinzip möchte ich mit LabVIEW am Ende ein Programm zum Steuern und Auswerten des Spektrometers erstellen.

Das Timinig hier dient zum Steuern einer Blitzlampe. Jetzt müsste ich um die Timings einhalten zu können, nach dem High für den Blitz auslesen und nach dem Auslesen ein High über 2,4ms für einen Reset ausgeben.

Von dem her müsste ich für diesen Teil halt zumindest wissen, wann das Signal von High auf Low geht. Sonst wüsste ich nicht, wie ich soetwas als Sequenz realisieren kann. Aber prinzipiell kann ich das erzeugte Signal ja auch auf einen anderen Digital-Eingang brücken und dann wieder messen - ich dachte nur das es eventuell eleganter lösbar ist.

Gruss & Danke

amin
Seiten: 1 2 3
Referenz-URLs