LabVIEWForum.de - Daten Array und DBL

LabVIEWForum.de

Normale Version: Daten Array und DBL
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

für einen kleinen Protoyptenversuchsstand möchten ich LabVIEW nutzen, um den Verfahrweg einer linearen Verschiebeeinheit auf einen Arbeitsbereich zu beschränken. Dazu habe ich eine Abfrage mit boolschen Operatoren aufgebaut. Nach Anschluss meiner Messkarte (USB 6210) funktioniert an einer Stelle das logische UND nicht mehr, da hier zwei Datenstränge eintreffen. Für die Abfragen habe ich allerdings DBL benutzt. Kann ich die gemessesene Strecke (0 - 10 V) irgendwie auf DBL trimmen oder kann ich in diesem Zusammenhang die boolschen Operatoren nicht verwenden?

Gruß & herzlichen Dank
Screenshot oder VI-Upload wäre nicht schlecht.KA, was du sonst mit Datensträngen und nicht funktionierendem "AND" meinst.

Gruß, Jens
' schrieb:Kann ich die gemessesene Strecke (0 - 10 V) irgendwie auf DBL trimmen
Ja, natürlich.
Im einfachsten Falle einfach mit einem Dreisatz skalieren. Weg:=MaxWeg*ADCInVolt/10. Man kann aber auch die AIn-Task so konfigurieren, dass der DaqMX-Rd gleich den richtigen Weg-Wert liefert.

Zitat:oder kann ich in diesem Zusammenhang die boolschen Operatoren nicht verwenden?
Logische Operator kann man nur auf Ganzzahlen oder boolsche Wert (die auch als Ganzzahlen verarbeitet werden) anwenden.
Danke für die Info mit den boolschen Operatoren.
Eine Skalierung habe ich direkt in der Konfiguration des Eingangssignals vorgenommen, sodass direkt der Weg angezeigt wird.
Nur mal so allgemein zur Info: Welches Datenformat wird denn bei der Messkarte ausgespuckt? Ist das ein Array oder ein String oder kann ich das irgendwie beliebig zu Integer oder Double konvertieren?
Hier der Schaltplan, den ich zuerst nehmen wollte.
Lv85_img[attachment=22159]
Ich habe jetzt lediglich den Schieberegler "Wegmessung induktiv" gegen das DAQmx getauscht. Somit ändert sich natürlich der Typ der Verdrahtung. Anschließend funktioniert das UND hinter den größer/kleiner Abfragen nicht mehr.

Gruß und lieben Dank
' schrieb:Ich habe jetzt lediglich den Schieberegler "Wegmessung induktiv" gegen das DAQmx getauscht. Somit ändert sich natürlich der Typ der Verdrahtung. Anschließend funktioniert das UND hinter den größer/kleiner Abfragen nicht mehr.
Genau das wäre jetzt zur Analyse wichtig gewesen! Je nachdem, was du da gemacht hast, können da ganz verschiedene Datenformate übergeben werden (Einzelne Werte, Arrays, Waveforms, DDT, unskaliert, im Double Format). Zum Rumraten habe ich aber keine Lust, und die Glaskugel ist kaputt!Glas2

Gruß, Jens
' schrieb:Nur mal so allgemein zur Info: Welches Datenformat wird denn bei der Messkarte ausgespuckt?
Was die Messkarte "ausspuckt" interessiert dich nicht. Zwischen der Messkarte und deinem Programm sitzen diverse Module, die sowieso alles manupulieren. Was dich interessiert ist das, was aus einem DAQmx-Rd herauskommt. Und das ist konfigurierbar. Ich nehme immer 2DArrDBL. Das bringt bereits die richtigen Werte und ist für mich am einfachsten weiterzuverarbeiten. Wenn du aber eine logische UND-Verknüpfung (also kein boolsches UND, das ist was anderes) machen willst, kannst du dan DAQmx-Rd natürlich auch auf 2DArrINT umstellen.

Zitat:Ist das ein Array oder ein String oder kann ich das irgendwie beliebig zu Integer oder Double konvertieren?
So nebenbei: gründsätzlich kann man alles in alles konvertieren. Die Frage ist nur, wie sinnvoll das ist.
' schrieb:Was dich interessiert ist das, was aus einem DAQmx-Rd herauskommt. Und das ist konfigurierbar. Ich nehme immer 2DArrDBL.
Wo kann ich diese Einstellungen denn vornehmen.

Hier das VI [attachment=22223]

Gruß und vielen DANK
' schrieb:Wo kann ich diese Einstellungen denn vornehmen.
Oh, ich sehe gerade, du verwendest den DAQ-Assistenten. Das ist schlecht. Den verwende ich nicht. (Fast) Alle anderen auch nicht.

Der DAQ-Assistent hat diverse Nachteile. Einer ist wohl der: Siehe Fehlerbild.

Die DAQ-Assistent_Elemente kann man in LabVIEW-Code umwandeln. Hierzu klickst du im Kontextmenü (Rechtsklick auf das Element) "NI-DAQmx-Code erzeugen". Es wird ein Code gemäß des anderen Bildes erzeugt. In der While-Schleife siehst du ein DAQmx-Read, unter dem "Analog 1D Sig NKanäle NSamples" steht. Hier kannst du anklicken und wählen, was geeignet ist. Ich nehm da immer "Analog 2D DBL NKanäle NSamples".
Referenz-URLs