Übergabewert an SubVI mit änderndem Datentyp möglich?
Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Übergabewert an SubVI mit änderndem Datentyp möglich?
Hallo zusammen
Ist es irgendwie möglich ein SubVI zu erstellen, welches einen Übergabewert hat, dessen Datentyp nicht fix bestimmt ist? Das heisst, dass man dem SubVI z.B. einmal einen Integer und das andere mal z.B. ein Array über den gleichen Anschluss übergibt?
(Der Sinn davon wäre, nicht so viele Anschlüsse an dem VI zu haben)
Vielen Dank!
Übergabewert an SubVI mit änderndem Datentyp möglich?
Das Schlagwort dazu lautet polymorphe VIs... Such mal dazu in der Hilfe, auf NI.com oder im Forum.
Wobei du im Hintergrund doch für jeden Datentyp ein eigenes VI erstellst.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Übergabewert an SubVI mit änderndem Datentyp möglich?
Du kannst aus einen Anschluss auch zwei machen: Einen Enumerator zur Typauswahl und einen, der den allgemeinen Typ Variant hat. Der Variant wird dann im VI abhängig vom Enumerator in einen spezifischen Typ gewandelt.
Du könntest die verschiedenen Typen, wenns sinnvoll ist, auch in einen Cluster legen und den übergeben.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Übergabewert an SubVI mit änderndem Datentyp möglich?
Vielen Dank an alle!!!
Das mit dem Datentyp Variant ist ideal für mein Problem, werde das mal ausprobieren.
(Die polymorphen VIs klingen auch sehr interessant, kannte ich bis jetzt nicht..)
Gruss
01.02.2010, 15:37 (Dieser Beitrag wurde zuletzt bearbeitet: 01.02.2010 16:38 von dimitri84.)
Übergabewert an SubVI mit änderndem Datentyp möglich?
' schrieb:Hier ein Bsp.:
Einfach "test.vi" starten......
[attachment=47913:Polymorphes_VI.zip]
Gruß Markus
Kann ich das Beispiel einmal inlv85haben, bitte?
EDIT: Hat sich erledigt die LV Hilfe war ausreichend. Ich war etwas voreilig, sorry.
EDIT II: Ich hätte da noch 'ne Frage. Haben polymorphe VI's einen Performancenachteil? Ich meine ich muss die ja eh in allen Varianten bauen ... also kann ich doch selbst direkt das richtige auswählen und LV die Arbeit/Entscheidung abnehmen.
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Übergabewert an SubVI mit änderndem Datentyp möglich?
' schrieb:EDIT II: Ich hätte da noch 'ne Frage. Haben polymorphe VI's einen Performancenachteil? Ich meine ich muss die ja eh in allen Varianten bauen ... also kann ich doch selbst direkt das richtige auswählen und LV die Arbeit/Entscheidung abnehmen.
Ich sag mal so:
Polymorphe VI's haben keinen Performancenachteil. Das, was hinter polymorph steckt, macht sich ja nur zur Entwicklungszeit bemerkbar. Polymorph heißt hier, dass LV zur Entwicklungszeit das (Sub)VI (respektive das Element wie z.B. Add) dem Datentyp anpasst. Du plaziert das "polymorphe VI" auf das BD, verbindest einen geeigneten (!) Datenfluss an den Eingang - und LV sucht sich das entsprechende VI heraus, das du als zu dem polymorphen VI gehörig gekennzeichnet hast. Ab diesem Moment ist das VI nicht mehr "polymorph", sondern durch die automatische Anpassung ist es jetzt eines von vielen.
Und da die Eingänge jetzt bezogen auf den Typ festliegen, hat es - zur Laufzeit - keine Performancenachteil.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Übergabewert an SubVI mit änderndem Datentyp möglich?
' schrieb:Hier ein Bsp.:
Einfach "test.vi" starten......
[attachment=47913:Polymorphes_VI.zip]
Gruß Markus
Sehr interessant, aber kann mir jemand ein Anwendungsbeispiel nennen, bei dem es Vorteilhaft ist ein polymorphes VI zu verwenden? Ich arbeite bis jetzt immer mit Variant wenn ich verschiedene Datentypen behandle.
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Übergabewert an SubVI mit änderndem Datentyp möglich?
Die ganzen DAQ-VIs sind polymorph. Da kannst Du analoge Werte anschließen, digitale Werte anschließen, Arrays anschließen und Einzelwerte anschließen,..... (je nachdem, was Du ausgewählt hast).
Aber selbst verwende ich polymorphe VIs (eigentlich) auch nie.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------