LabVIEWForum.de
Umgang mit vielen Variablen unterschiedlichen Typs - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Umgang mit vielen Variablen unterschiedlichen Typs (/Thread-Umgang-mit-vielen-Variablen-unterschiedlichen-Typs)



Umgang mit vielen Variablen unterschiedlichen Typs - dummyuser - 13.01.2014 09:45

Hallo!

Ich habe eine grundsätzliche Frage zum Umgang mit einer großen Anzahl von Variablen.

Ich habe hier folgendes Szenario:
Mit LabView wird ein Prüfstand überwacht. Durch diverse Erweiterungen laufen mittlerweile ca. 800 Messwerte unterschiedlichsten Datentyps auf. Dies ist –voraussichtlich- nicht das Ende der Fahnenstange, es könnten in der nächsten Zeit noch ein- bis zweihundert mehr werden.

Den LV-internen Datenaustausch (der Signale) bewerkstellige ich im Moment mit einer(!) globalen Cluster-Variable. Hauptgrund war für mich der einfache Umgang, und die übersichtliche Struktur bei der Auswahl.

Jetzt meine Frage:
Wie würdet Ihr eine solche Aufgabenstellung angehen?
Gibt es eine elegantere Art und Weise Signale zu verwalten?

Guss
dummyuser


RE: Umgang mit vielen Variablen unterschiedlichen Typs - GerdW - 13.01.2014 10:05

Hallo dummy,

wie sieht dein Cluster aus? Hast du wirklich einen Cluster mit 800+ Elementen oder doch (hoffentlich) ein Array mit 800+ Cluster-Elementen?

- Messwerte unterschiedlichen Datentyps: Es mag Vorteile haben, die Messwerte mit unterschiedlichen Datentypen zu speichern (manche als Float, manche als Int, manche als Bool). Andererseits arbeiten die meisten Messstände maximal mit 16bit-ADC, sodass quasi alle Messwerte bequem als SGL oder DBL intern gespeichert werden können. Dies vereinfacht die Datenhaltung, da man es intern nur noch mit einem Datentyp zu tun hat…
- Für die Verwaltung von Messwerten verwende ich gern Key-Value-Paare, wie sie mit den Variantattributen sehr bequem zu haben sind. Dann kann man Messwerte über ihren Messstellennamen verwalten…
- Meiner Erfahrung nach bietet es sich an, Messdaten getrennt von ihren zugehörigen Verwaltungsdaten (Messstellenkonfiguration wie Name, Skalierung, Sensorbezeichnung, Messtellentyp, alle nötigen Parameter…) abzulegen. Dann hat man ein Array mit Messwerten und ein Array mit Konfigurationsdaten…
- Arrays oder auch Key-Value-Tabellen bieten sich für variable Anzahl Messstellen geradezu an…


RE: Umgang mit vielen Variablen unterschiedlichen Typs - dummyuser - 13.01.2014 10:30

Hallo GerdW!

Danke für die rasche und ausführliche Antwort.

Ja, ich arbeite mit Cluster-Arrays. Da mache ich also nicht all zuviel fasch (gut zu wissen).
Wie siehst Du die Verwendung der des Clusters als globalen Variable in diesem Zusammenhang?
Diese verwende ich im Moment auch nur weil es so schön einfach ist.

Gruß
dummyuser


RE: Umgang mit vielen Variablen unterschiedlichen Typs - GerdW - 13.01.2014 11:07

Hallo dummy,

Zitat:Wie siehst Du die Verwendung der des Clusters als globalen Variable in diesem Zusammenhang?
Kritisch.

Grund: Meist hat man mehrere Datenquellen wie verschiedene Messgeräte (NI-DAQmx, RS232, CAN, Network...), deren Messwerte man alle in einem "Konstrukt" speichern will. Bei nur einer globalen Variablen hat man da sehr (sehr sehr) schnell Race-Conditions! Deshalb empfehle ich hier gern und oft die FGV (functional global variable) aka AE (action engine) aka "LV2-style global", da man hier bessere Kontrolle über die Schreib-/Lesezugriffe hat...


RE: Umgang mit vielen Variablen unterschiedlichen Typs - dummyuser - 13.01.2014 11:35

Vielen Dank!

Jetzt ist Alles klar!

Gruß
dummyuser


RE: Umgang mit vielen Variablen unterschiedlichen Typs - Trinitatis - 13.01.2014 11:58

Hallo dummyUser,

ist die Bedankung wirklich die LÖSUNG ?Big Grin


Gruß, Marko


RE: Umgang mit vielen Variablen unterschiedlichen Typs - dummyuser - 13.01.2014 12:19

Hallo Marco!

In der Tat kann ein Dankeschön die Lösung für manch ein Problem sein ;-).
Aber in diesem Fall hast hast Du natürlich Recht.
Habe es verbessert.

Gruß
dummyuser