LabVIEWForum.de
Channel invertieren - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Channel invertieren (/Thread-Channel-invertieren)

Seiten: 1 2


Channel invertieren - chrigi28 - 30.10.2013 09:29

Hallo

Folgendes Problem liegt vor:

Wir möchte den Ausgang eines digitalen channels invertieren jedoch ohne zu wissen was zur Zeit ausgegeben wird.

Ich hab mir das eigentlich ganz einfach vorgestellt, wird es auch sein aber ich stell mich wohl etwas deppert an.

Ich bin froh um jeden Denkanstoss

Danke


Soweit meine überlegung:
labview2010: [attachment=47022]

Hier noch die Bildversion:
[attachment=47023]


RE: Channel inventieren - GerdW - 30.10.2013 09:33

Hallo chrigi,

das setzen der Property wie bei dir im Bild bewirkt nicht, dass der DO von allein umgeschaltet wird! Du musst schon noch einen Wert ausgeben...

Man kann diese Property aber gut nutzen, wenn man im Programm mit "positiver" Logik arbeiten will/muss, die angeschlossene Hardware aber mit "negativer" Logik (d.h. mit invertierendem Verhalten) aufgebaut ist.

Was mich an deinem Beispiel stört:
Entweder dein Programm weiß, was es tut: dann sollte der Schaltzustand jederzeit bekannt sein. Ansonsten solltest du ein Stromstoß-Relais verwenden, um abwechselnd an/aus zu schalten...


RE: Channel inventieren - Achim - 30.10.2013 09:34

Damit invertierst du generell alle Kanäle, und zwar in Abhängigkeit des vorgegebenen Wertes. Das ist ne grundlegende Einstellung, die eigentlich nur einmal bei Programmstart gemacht wird.

Wenn du den tatsächlichen Wert invertieren willst, musst du ihn dir vorher merken (vom letzten Schreibvorgang)..evtl. gibts auch ne Abfrage der Hardware, bin da nicht sicher.

EDIT: http://forums.ni.com/t5/LabVIEW/How-can-I-read-what-I-wrote-to-a-DAQmx-digital-output-channel/td-p/939839


A.


RE: Channel inventieren - chrigi28 - 30.10.2013 09:42

Ok dann muss ich wohl bei der Variante bleiben bei der ich den Zustand übergeben muss das gibt dann leider viel auwand die ganze Zeit die Zustände rumzuschleppen aber trotzem wens net geht

Danke


P.S. hier die erwähnte variante:
[attachment=47024]


RE: Channel inventieren - GerdW - 30.10.2013 09:45

Hallo chrigi,

Zitat:das gibt dann leider viel auwand die ganze Zeit die Zustände rumzuschleppen
Hmm
Ein Schieberegister für ein einzelnes Bit ist "viel Aufwand"?
Ich sehe hier eher unnötigen Aufwand, indem ein DO-Task ständig erstellt/genutzt/gelöscht wird...


RE: Channel inventieren - chrigi28 - 30.10.2013 09:49

Zitat: Ich sehe hier eher unnötigen Aufwand, indem ein DO-Task ständig erstellt/genutzt/gelöscht wird...

Das liegt daran dass meine HW nur ein Task gleichzeitig haben kann und ich zu unterschiedlichen Zeiten verschiedene Channels ändern muss. Vielleicht gibts eine bessere Lösung aber mit der Datenerfassung tuh ich mich generell schwer hab da viel zu wenig Erfahrung drin.


RE: Channel inventieren - GerdW - 30.10.2013 09:50

Hallo chrigi,

welche Hardware verwendest du denn?


RE: Channel inventieren - chrigi28 - 30.10.2013 09:52

pcie 6537


RE: Channel inventieren - GerdW - 30.10.2013 10:08

Hallo chrigi,

- Die PCIe6537, die ich gerade mit MAX simuliert habe, zeigt mir 5 Ports mit je 8 DIOs an. Ich kann problemlos zwei Tasks erstellen, die auf unterschiedliche Ports zugreifen - zumindest mit dieser simulierten Karte...
- Was hindert dich, mit einem Task alle DIOs zu verwalten? Oder hast du "Spezialanwendungen" darauf laufen wie PWM, Trigger, etc.?


RE: Channel inventieren - chrigi28 - 30.10.2013 10:14

Falles es dich weiter interessiert kannst dir gern mal mein Messablauf anschauen. Aber mach dir nicht zu viel Aufwand.

[attachment=47026]

P.S. Meine Karte hat nur 3 Ports a 8 Lines Smile