Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
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?
' 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.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
03.11.2009, 09:32 (Dieser Beitrag wurde zuletzt bearbeitet: 03.11.2009 09:56 von jg.)
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.
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.
' 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!
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
' 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.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
' 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".
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).