LabVIEWForum.de
DAQ Assistenten umschreiben - Druckversion

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



DAQ Assistenten umschreiben - markus.markus - 05.08.2016 09:11

Hallo Comunity!

Zuerst einmal ein recht herzliches Hallo an alle und vielen Dank für die tollen Beiträge die es mir erlauben,
als "Anfänger" in LabVIEW doch zu recht anschaulichen Ergebnissen zu kommen.


Derzeit arbeite ich an Dateneinlesen mit der Schnittstelle USB-6009. Mit dem DAQ Assistenten funktioniert alles bestens.
Wenn ich jedoch eine .exe daraus mache, ist sie leider nicht mehr funktionsfähig.
Es dürfte ein Problem mit dem Assistenten bestehen, der möglicherweise die Devicenummer falsch interpretiert.

Ich möchte nun den Assistenten entfernen und von Hand aus die Task's schreiben.
Gibt es schon fertige Routinen die ich zum Einlesen verwenden kann, oder könnt ihr Informationen darüber geben, wie ich mehrere Tasks in einer Schleife verarbeiten kann?

Bitte um Hilfe

LG
Markus

Im Anhang ist meine derzeitige Lösung.


RE: DAQ Assistenten umschreiben - GerdW - 05.08.2016 09:36

Hallo Markus,

herzlich willkommen!

Zitat:Es dürfte ein Problem mit dem Assistenten bestehen, der möglicherweise die Devicenummer falsch interpretiert.
Der Assi "interpretiert diese Devicenummer nicht, er verwendet sie. Und entweder ist das Gerät unter dieser Bezeichnung vorhanden - oder eben nicht!
Außerdem bekommst du doch Fehlermeldungen - was sagen die eigentlich? (Dann müsste man nicht rumraten!)

Zitat:Ich möchte nun den Assistenten entfernen und von Hand aus die Task's schreiben. Gibt es schon fertige Routinen die ich zum Einlesen verwenden kann, oder könnt ihr Informationen darüber geben, wie ich mehrere Tasks in einer Schleife verarbeiten kann?
Grundlagenwissen LabVIEW:
- Rechtsklick auf den DAQAssi -> Frontpanel öffnen. Dann das VI anschauen…
- LabVIEW kommt mit jeder Menge Beispiel-VIs, auch und gerade zum Thema "DAQmx": einfach mal anschauen…
- Links in meiner Signatur beachten…

Zitat:als "Anfänger" in LabVIEW doch zu recht anschaulichen Ergebnissen zu kommen.
Bitte nicht als Kritik verstehen, sondern als gutgemeinten Rat:
Die Nutzung der ExpressVIs und des DDT (DynamicDataType, dicker dunkelblauer Draht) wird dich auf längere Sicht eher behindern und nicht zu "schönen" Programmen führen!
Beispiel: Dein "LED Daten in"-Cluster wird momentan mit Unbundle aufgedröselt, dann mittels JoinSignal zu einem DDT verwurstet, dann aber wieder in ein 1D-Array of Bool umgewandelt. Besser wäre statt JoinSignal und FromDDT einfach ein BuildArray. Noch besser wäre es, den Cluster einfach mittels "ClusterToArray" umzuwandeln. Der Cluster sollte auch typdefiniert sein und gleich an jedem Schalter den Namen der LED zeigen - dann bräuchtest du keine extra LED-Anzeigen im Frontpanel:
[attachment=56417]
Bei typdefinierten Clustern arbeitet man dann auch mit (Un)BundleByName: das sorgt sofort für gut lesbaren Code…


RE: DAQ Assistenten umschreiben - markus.markus - 05.08.2016 17:06

Hallo Gerd!

Danke für deine Anregungen.

Fehlermeldung erhalte ich leider keine. Das Programm an sich läuft, nur kommen keine Daten vom usb-6009 zurück und an.

Den Assistenten möchte ich wenn möglich eh vermeiden. Er ist ein einfacher Start.
Im Anbetracht seiner Einschränkungen wird er aus meinen Programmen Schritt für Schritt eliminiert.

Was hältst du von meiner neuen Lösung in Bezug auf Datenschreiben und Lesen ?

Meine Theorie zum DAQ:
Die Taskerstellung soll nur einmal erstellt, und abschließend nur einmal geschlossen werden.
Welche Möglichkeiten gibt es, das Öffnen, sowie das Schließen nur einmal auszuführen? Würde hier eine For Schleife passen?
Bei meiner jetzigen Lösung habe ich das Problem, dass das Einlesen in einer Schleife gekapselt ist, und somit die Werte erst nach Beendigung zur Verfügung steht.

Bevor ich weitermache, würde ich gerne deine Meinung darüber hören.

Danke und liebe Grüße
Markus


RE: DAQ Assistenten umschreiben - ReDw - 06.08.2016 08:14

Soll die "exe" auf einen anderen Rechner laufen?

Dann Installer daraus machen, dieser bringt dann die passenden Run-Time-Lib's mit.

RD


RE: DAQ Assistenten umschreiben - jg - 06.08.2016 14:42

(05.08.2016 09:36 )GerdW schrieb:  Grundlagenwissen LabVIEW:
- Rechtsklick auf den DAQAssi -> Frontpanel öffnen. Dann das VI anschauen…
Oder: Rechtsklick auf DAQAssi -> NI DAQmx Code erzeugen!

Gruß, Jens


RE: DAQ Assistenten umschreiben - markus.markus - 14.08.2016 23:56

Besten Dank für die Lösungsansätze mit denen ich mein Problem gelöst habe !2hands

Mit rechte Maus und Code erzeugen hatte ich leider Probleme bei der Erstellung der Ausgänge.
Ich erhielt immer die Meldung das die I/O Konstellation nicht erstellbar ist.
Aus diesem Grund blieb ich beim Assistenten und ergänzte das Programm um eine Device Erkennung.
Dadurch wird die Hardware korrekt erkannt.

LG
Markus