LabVIEWForum.de
Einlesen mehrerer Spannungen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Einlesen mehrerer Spannungen (/Thread-Einlesen-mehrerer-Spannungen)



Einlesen mehrerer Spannungen - Timo86 - 15.10.2013 07:02

Hallo allerseits,

ich möchte gern mehrere Signale gleichzeitig einlesen und verarbeiten.
Da ich noch ein absoluter Neuling bin was LabView angeht, bin ich mir noch nicht so ganz sicher, wie ich das am klügsten anstelle.

Ich habe mal meinen Versuch angehängt, allerdings kann ich auf diese Weise keine Karte mit z.B. 16 Kanälen einlesen.
Wir würdet ihr das umsetzen (die zufälligen Zahlen habe ich nur addiert um überhaupt etwas zu sehen, da ich die Hardware noch nicht habe).
Meine Konfiguration im Max habe ich als Screenshot ebenfalls angehängt.

Vielen Dank für eure Hilfe

Timo


RE: Einlesen mehrerer Spannungen - Timo86 - 15.10.2013 13:26

Da ich vorhin nicht drüber nachgedacht habe, hier noch einmal in der V11.


RE: Einlesen mehrerer Spannungen - Schwand - 15.10.2013 16:15

Du kannst im MAX alle? Karten von NI simulieren und du solltest dann auch einen Task erstellen können, der 16 Eingangskanäle hat (Vorausgesetzt die Karte hat auch 16 AIs)


Je nach Karte hast du aber einen "kleinen" (je nach Anforderung) zeitlichen Versatz zwischen den Signalen, da die meisten Karten zwischen den Kanälen umschalten müssen, um das Signal zu messen und das so seine Zeit braucht.


RE: Einlesen mehrerer Spannungen - GerdW - 16.10.2013 08:01

Hallo Timo,

was soll das in deinem VI:
[attachment=46762]
1. Warum wandelst du das Array von DAQmxRead in einen Cluster um? Warum in einen Cluster mit 9 Elementen? Warum dann Unbundle? Warum nicht einfach IndexArray?
2. Warum nimmst du hier ein ExpressVI? Warum nicht einfach BuildArray?

Zu deinem Task: Warum erledigst du die Task-Erstellung nicht auch im VI? Hier hat man genauso viel/mehr Kontrolle üder die Parameter und kann das auch mit 3 DAQmx-Funktionen erledigen...

P.S.: Es gibt jede Menge Beispiel-VIs zu DAQmx! Hast du dir die schon mal angeschaut?


RE: Einlesen mehrerer Spannungen - Timo86 - 16.10.2013 08:23

Hallo Gerd,

1. ich möchte die einzelnen eingelesenen Signale als Zahlenwert haben und deshalb habe ich nach einer Möglichkeit gesucht das Array nach dem Einlesen aufzusplitten, da ich keine andere Methode kenne habe ich es eben über Cluster und die "Aufschlüsseln" Funktion versucht. Die 9 Elemente hat er mir automatisch so erstellt.
Was du mit der Frage "Warum denn Unbundle?" meinst weiß ich leider nicht.
Und die Funktion "IndexArray" kenne ich leider nicht, da es mein erstes Programm in LabView ist.

2. Diese Möglilchkeit mit den verwendeten Bausteinen habe ich ja schon aus Beispiel-VI's genommen.
Mit der Funktion "BuildArray" ist es ähnlich wie mit "IndexArray" ich kenne die Funktion nicht, daher habe ich sie nicht verwendet

Vielleicht kannst du mir ja einen Tip geben, wie du das Problem ohne die Umwandlung in ein Cluster mit Hilfe der von die angesprochenen Arrayfunktionen realisieren würdest!?

Gruß
Timo


RE: Einlesen mehrerer Spannungen - GerdW - 16.10.2013 08:28

Hallo Timo,

ich würde IndexArray verwenden.

Wenn du diese Funktion nicht kennst:
- Es gibt kostenlose Einsteigerkurse zu LabVIEW, siehe auch meine Signatur!
- Kontexthilfe öffnen und mit der Maus über die Array-Funktionspalette fahren. Aufmerksam lesen...

Zitat:Die 9 Elemente hat er mir automatisch so erstellt.
Dafür gibt es einen Grund und der steht in der Kontexthilfe...

Zitat:deshalb habe ich nach einer Möglichkeit gesucht das Array nach dem Einlesen aufzusplitten, da ich keine andere Methode kenne habe ich es eben über Cluster und die "Aufschlüsseln" Funktion versucht.
Man will ein Array bearbeiten und nimmt dafür Funktionen aus der Cluster-Palette!? Schon klar...