LabVIEWForum.de
NaN, Inf und so Kruscht - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: NaN, Inf und so Kruscht (/Thread-NaN-Inf-und-so-Kruscht)



NaN, Inf und so Kruscht - tosi - 24.05.2005 17:08

Hallo,

zuerst bin ich mal froh, ein deutsches LabVIEW-Forum gefunden zu haben;-)
Nun zu meinem Problem:

Ich benutze u.a. ein 2-D Array, über welches ich Messwerte von meinen 1 bis 8 Kanälen (bisher nur 2) in eine Tabelle bzw. Excel-Tabelle auslese. Wenn ich nun beispielsweise nur an einem Kanal messe, dann bekomme ich an den anderen sieben Kanälen INF, NaN oder Null angezeigt, obwohl ich von "vorne" gar keine Daten mehr schicke. Also wenn ich acht Anschlüsse am Block "Array erstellen" habe, dann kommt hinten auch ein ensprechend großes angehängtes Array hinaus, selbst wenn keine Daten kommen?
Kann mir da jemand helfen?

Vielen Dank schon mal.

Gruß, Tosi


NaN, Inf und so Kruscht - Buhrz - 25.05.2005 08:06

Hi tosi

Wenn ich dich rigtig verstehe ist die Antwort auf deine Frage JA
Wenn du an einem Array 8 Eingänge anschließt kommt am Ende auch ein Array in der größe raus

du mußt vorher schecken wieviele Kanäle du hast und dann über ein Case die Auswahl treffen wie groß dein Array wird. Du kannst dann im case dementsprechent die funktion mit den entsprechenden Anzahl von Anschlüssen erstellen.

Ich hoffe es hilft dir
Ansonsten währe es gut wenn du dein Problem aus deinem großen vi extrahieren kannst und nur dein Problem hier reinstellst.

Gruß

Jürgen


NaN, Inf und so Kruscht - tosi - 25.05.2005 10:08

Hi Jürgen,

danke für deine Antwort. Ich glaube(befürchte), du hast mich richtig verstanden. Hab trotzdem nochmal ein kleines Beispiel angehängt, um mein Problem zu verdeutlichen.

Also wenn ich ein Signal mit dem Relais unterbreche, dann bekomm ich in der Tabelle in der entsprechenden Spalte Inf oder so. Leuchtet ja eigentlich schon ein. Allerdings wäre es natürlich schön, wenn ich nicht für jeden Fall (ob ich 1, 2 oder x Kanäle) verwende einen "eigenen" Case programmieren müßte. Das bläht die ganze Sache gewaltig auf.
Falls es da keine andere Lösung gibt, wie und wo kann ich auslesen, vieviele Kanäle ich gerade benutze? Die kommen alle gemeinsam in einem SignalverlaufDBL an.

Gruß, Tosi


NaN, Inf und so Kruscht - Noppes - 25.05.2005 11:34

Hallo Tosi,

im Anhang ist ein Lösungsvorschlag drin. Ich schaue einfach nach, ob ein ungültiger Pegel vorliegt. Wenn ja, dann wird dieser Messkanal in der Tabellenspalte durch einen leeren String ersetzt.

Was hälst du von dieser Möglichkeit?

Eine 2. Möglichkeit wäre die Überprüfung und Bereinigung des 2d-Arrays vor der Umwandlung in ein Tabellenstring. Dann würden in der Tabelle auch nur die aktiven Kanäle angezeigt.

Gruß

Noppes


NaN, Inf und so Kruscht - Buhrz - 25.05.2005 11:47

Hi tosi

Der Vorschlag von Noppes finde ich gut
Alternative kannst du acuh schon den Wert auf INF abfragen und dort dann eine Null einfügen


Gruß

Jürgen


NaN, Inf und so Kruscht - tosi - 25.05.2005 12:35

Hi Jürgen und Noppes,

ich komm grad nicht an meinen Rechner...hab also deinen Lösungsvorschlag noch nicht anschauen können Noppes. Ist jetzt die Frage, wann ein Pegel ungültig ist. Ich bekomme manchmal auch eine Null - also Null müßte auch als ungültig erkannt werden, da unrealistisch (Rauschen). Wobei...ich stelle den max. Ausgangspegel für die Messwerte in dB auf Null. Ach was soll das Geschwätz, ich probiers nachher erst mal aus. Auf jeden Fall danke schon mal und bis später;-)

Gruß, Tosi