LabVIEWForum.de - Trennung von Datenwerten - wo ansetzen?

LabVIEWForum.de

Normale Version: Trennung von Datenwerten - wo ansetzen?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Guten Morgen Leute,

ich benutze bei meiner Praktikumsstelle LabVIEW in der Version 8.5.1 um insgesamt sechs Messwerte differentiell (also insgesamt 12 Kanäle) einzulesen. Da es sich um keine NI-Karte handelt, arbeite ich mit den Beispielprogrammen der Herstellers. Die Daten an sich werden auch wohl eingelesen.
Mein Problem ist nun folgendes:
Zur Zeit werden die Daten anscheinend komplett eingelesen bzw. aneinandergelegt und ich bekomme sie irgendwie nicht getrennt oder in verschiedenen Farben dargestellt (s. Bild Frontpanel). Die Plots sind auf verscheidene Farben eingestellt, aber es wird nur eine Gesamtkurve in rot eingestellt. Wenn ich von 16 Kanälen auf nur einen Kanal umstelle klappt dies und es wird bsplw. eine Kurve/Linie bei bsplw. 2 Volt angezeigt.

Das Blockdiagramm an sich besteht aus sieben Sub-VIs. Im Anhang meiner Meinung nach das relevante für die Ausgabe im Diagramm. Allein diese Sub-VIs kann ich aber schon nicht wirklich nachvollziehen. Wofür ist oben rechts in der Ecke bei jedem Sub-VI dieses "I32" beim Erroranschluss und wo führt es hin?
Über DAQREAD werdne ja anscheinend die Daten eingelesen und über (die in einem vorherigen Sub-Vi eingestellten) Samples ausgegeben, oder? Wofür ist dann das Array links im Bild, um die x- und y-Achse einzustellen?

Weiterhin hatte ich versuchswweise hinter "Samples" eine Funktion "in Datei schreiben" angefügt, da sie später als Excel-Datei abgespeichert werden sollen und es wurden auch Werte eingelesen. Allerdings sowohl die Low-/Nullwerte als natürlich auch die massgeblichen Messwerte. Wie kann ich diese trennen bzw. wie die Nullwerte unterdrücken?

So viele Fragen auf einmal. Ich hoiffe, es weiß trotzdem jemand Rat.
Lg, Knut
Wo ansetzen?

Am Thread-Titel..."wo ansetzen" ist nicht wirklich informativ...insbesondere deswegen, weil deine Frage mit "Datenbank & File IO" nix zu tun hat! Eher mit "3rd Party HW"

Zum Thema:
Das "I32" ist der Fehlercode (zu deiner Information), den dein SubVI vermutlich aus einem DLL-Aufruf liefert!

Am besten postet du mal das komplette VI inkl. SubVIs, sonst kann man nicht sagen, wo's hakt!
Hallo Knut,

Handbuch der 3rd-party HW lesen... Da sollte drinstehen, wie die Werte angeordnet sind, die dir dieses subVI ausgibt! Und beim nächsten Mal gleich angeben, welche HW du einsetzt (Hersteller/Typ)!

Mein Tipp nach Blick in dieGlas1: einfach mal ein DecimateArray einsetzen, um die einzelnen Kanäle zu erhaltenSmile

Noch mehrGlas1: Das InitArray links wird benutzt, um einen Buffer anzulegen, in den die DAQ-Funktion ihre Daten ablegen kann. In dem subVI dürfte sich nur ein DLL-Aufruf verstecken...

Zitat:...und wo führt es hin?
Einfach mal einen Doppelklick auf das Terminal und dir wird das passende Anzeigeelement auf dem FP angezeigt...
' schrieb:(...)

Am besten postet du mal das komplette VI inkl. SubVIs, sonst kann man nicht sagen, wo's hakt!

Ich poste dann mal das komplette VI. Habe leider zuhause keine Möglichkeit aktiv zu testen.
Wow,

gleich 8 Bilder...
Tipp: Rechtsklick auf den Rahmen der Sequenzstruktur -> Ersetzen -> durch flache Sequenz. Dann brauchst du nur noch 1 Bild!
2. Tipp: einfach das VI anhängen (und subVIs dazupacken)!
3. Tipp: Ohne die Hardwarebeschreibung (deiner Mess-Hardware) nützen uns die Bilder erstmal gar nichts! Alles Interessante passiert doch in den subVIs...
' schrieb:Wow,

gleich 8 Bilder...
Tipp: Rechtsklick auf den Rahmen der Sequenzstruktur -> Ersetzen -> durch flache Sequenz. Dann brauchst du nur noch 1 Bild!
2. Tipp: einfach das VI anhängen (und subVIs dazupacken)!
3. Tipp: Ohne die Hardwarebeschreibung (deiner Mess-Hardware) nützen uns die Bilder erstmal gar nichts! Alles Interessante passiert doch in den subVIs...

Ok, das VI packe ich in den Anhang. DAQEX ist das Haupt-VI.
Wofür denn jetzt genau die Hardwarebeschreibung bei dem Problem?

(LabVIEW 6.0)
Hallo Knut,

das Ganze als ZIP-File und man könnte alles in einem Rutsch runterladen statt 10 mal anklicken und bestätigen...

Zitat:Wofür denn jetzt genau die Hardwarebeschreibung bei dem Problem?
Ich wiederhole mich ja nur ungern, aber: "Handbuch der 3rd-party HW lesen... Da sollte drinstehen, wie die Werte angeordnet sind..."
Und ohne die Hardware und die entsprechende Beschreibung kann man da nicht viel machen - alles wichtige ist in der dll versteckt (die übrigens fehlt, aber auch nicht hilfreich wäre). Deshalb mein Rat: RTFM!
' schrieb:(...)
Mein Tipp nach Blick in dieGlas1: einfach mal ein DecimateArray einsetzen, um die einzelnen Kanäle zu erhaltenSmile
(...)

Allerbesten dank, Gerd.
Der Tipp mit dem "Decimate Array" hat geklappt. Ich kann die einzelnen Werte jetzt in den Graphen darstellen.
Nun bin ich gerade am herumexperimentieren wie ich die Daten aus dem "Decimate Array" in eine Excel-Datei schreiben lasse, da diese später weiterverwertet werden soll. Ich habe hier aus dem Forum ein VI "SpreadsheetLv85_img" (eine While-Schleife) als Sub-VI (Version 10.0) eingebaut, kann aber die Ausgänge aus dem "Decimate Array" (in Sequenz 6) nicht mit diesem Sub-VI verbinden. Ist das nicht möglich, weil es sich um eine While-Schleife handelt?

Beste Grüße,
Knut
Hallo Knut,

geht's nicht einfach so:
[attachment=30998]
(Kontexthilfe lesen wegen der anderen Anschlüsse am WriteToSpreadsheet!)
Hallo Gerd,

ist das ein Matrix-Symbol links von der Excel-Fuznktion? Ich finde es in meiner Platte irgendwie nicht.
Seiten: 1 2 3
Referenz-URLs