LabVIEWForum.de - Incremetalgeber an 6251-USB, wie korrekt konfigurieren?

LabVIEWForum.de

Normale Version: Incremetalgeber an 6251-USB, wie korrekt konfigurieren?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,
ich versuche einen hochauflösenden Incrementalgeber an einer NI-ISB-6251 Karte unzter LavVIEW 8.6 auszulesen.

bisher mit bescheidenem Erfolg, leider....

Im Measurement&AutomationExplorer (MAX) erstelle ich mir eine Task, schließe die A/B-Signale korrrekt an die korrespondierenden Eingänge (ctr0 = PFi8 = A-Signal und PFI10=B-signal, der Z-Index ist deaktiviert) an, wähle den Erfassungsmodus (1 sample on demand), starte die Task und lese in einer Schleife die aktuelle Position aus -> Die Positionserfassung verzählt sich, in Ruhelage (federbelastet auf Anschlag innerhalb der Tasters) nach Betätigung des Wegtasters addiert sich ein wegabhängiger Fehler. Sad
Mit jeder Betätigung steigt der Fehler.

Die Richtung und die generelle Funktion ist aber scheinbar korrekt.

Eine Anfrage bei NI verweist auf die Beispiele zur Incrementellen Wegerfassung, welche aber wider Erwarten im Erfassungsmodus kontinuierlich betrieben werden, warum?

Ein Hardwarezähler (16bit laut Kartenbeschreibung) sollte doch selbstständig Flanken zählen können, zumindest bis 65535 ohne sich zu verzählenund zu einem beliebigen zeitpunkt den korrekten Positions-Wert zurückliefern

Warum ein kontinuierlicher Erfassungsmodus besser oder gar notwendig ist bleibt mir unklar.
Über Eigenschaftsknoten können digitale Filter eingeschaltet werden, welche eventuelle Störflanken herausfiltern. Allerdings finde ich dazu keine Beispiele oder Hinweise.

Der Wegtaster mit TTL-Ausgängen stamt aus einem X-Y-Messgerät, an welchem korrekte Messwerte geliefert werden, es liegt also an der Art und weise, wie ich es in LabVIEW versuche.

Wer kann mir weiterhelfen, hat ähnliche Probleme bereits gemeistert??

Danke bereits im voraus
lab-joe
hier noch ein stark vereinfachtes VI (s. Anhang)
Die LinarPositionTask wurde wie oben beschrieben erstellt.
lab-joe

Achja: Das Beispiel ist für LV 8.6
so, habe es gelöst!
Ursache war der sehr empfindliche Eingang der PFI, ein korrektes Hinzufügen von Digitalen Filtern hat das Problem beseitigt.
Ein kontinuierlicher Datenerfassungs-Modus ist auch nicht notwendig (das macht der Zähler ja bereits in Hardware!)
Anbei ein funktionierendes VI für LV 8.6. Die LinearPositionTask wurde im MAX erstellt, digitale Filter können hier leider nicht angelegt werden.
Morgen,

Wie würde so was denn mit Hardware anderer Firmen aussehen?
Wo man quasi nicht mit DAQmx arbeiten kann.

Lg Martin
Da wird meistens eine DLL eingebunden und wenn Du Glück hast, gibt's schon ein paar Bsp.-VIs. DAQmx ist aber wesentlich einfacher und komfortabler.

Gruß Markus
Referenz-URLs