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!
Ich würde gern wissen wie eure Erfahrungen mit Klonen in LabVIEW ist?
Für die die nicht wissen wovon ich spreche ich meine die Bezeichnung Klon die einem VI namen angehängt wird wenn das VI mehrfach verwendet wird. Klon scheint man mit Instanz übersetzen zu können.
Meine erfahrung ist das es bei Klonen eines VI wohl schnell zu fehlern kommt und das man vermeiden sollte ein VI mehrfach zu verwenden. Obwohl die Literatur die ich bis jetzt gefunden habe sich durch weg Positiv über Klone äußert. In den Büchern wird beschrieben das automatisch eine Kopie des VI erzeugt und verwendet wird. Jedoch scheint es schon einen unterschied zu geben ob ich ein VI selber Kopiere und unter geänderten Namen verwende oder es eben von LabVIEW Klonen lasse.
2 Beispiele:
Mein Kollege hat sich mal ein Flip Flop gebaut und wollte dieses dann an verschiedenen stellen in seinem Programm verwenden. Damit hatte er keinen erfolg bis er wie oben beschrieben die Flip Flops selbst kopiert hat.
Ich habe zur Zeit ein ähnliches Problem ich habe ein SubVI erstellt welches ein Gerät auslesen und beschreiben kann. Verwende ich dieses SubVI nun in meinem Haupt VI, scheint es manchmal seine Funktion nicht zu erfüllen obwohl die Sonden die ich an die Eingänge des VI´s angelegt habe die Werte anzeigen mit denen das SubVI Funktoniert wenn ich es einzeln Teste.
Ich bin verwirrt sind Klone nun was gutes oder etwas schlechtes?
Achso ich verwende LabVIEW 8.2.1 ich hoffe mal das es bei der Version keinen Bug bei den Klonen gibt??
' schrieb:Mein Kollege hat sich mal ein Flip Flop gebaut und wollte dieses dann an verschiedenen stellen in seinem Programm verwenden.
Genau das kann ich nicht nachvollziehen.
Meine Klone (=Instanzen) haben bisher immer funktioniert. Beachte aber: Jedes einzelne Icon im BD ist ein Klon!
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
habe kollegen gefragt.
er meinte, dass dies nicht funktioniert hat, weil zustände über den aufruf des vi`s hinaus gespeichert bleiben sollten. damit meinte er, dass die zustände beim nächsten aufruf des vi`s noch vorhanden sein mussten.
dies hat mit vi-klonen nicht funktioniert.
es funktionierte nur, wenn er das vi kopiert hat und unter anderem namen eingebunden hat.
02.09.2009, 14:26 (Dieser Beitrag wurde zuletzt bearbeitet: 02.09.2009 14:26 von schrotti.)
mmmh unter Klonen verstehe ich das was LabVIEW bei "Ablaufinvariant Ausführen" Einstellungen automatisch macht.
Sprich du nimmst ein SubVI fügst es beliebig oft ins MainVI ein und wählst es dann über das Block Diagramm aus.
Dann wird nicht das orinal SubVI angezeigt sondern ein VI mit der Bezeichnung SubVI.vi:1 (Klon).
Ok ich schick mal das Flip Flop VI mit anwendungs Beispiel so wie es dann Benutzt wurde also mit 5 umbenannten identischen SubVI. Weil unter LabVIEW 8.2.1 dies mit dem selben VI mehrfach aufgerufen, die Zustände nicht behalten hat.
Aber wenn "IchSelbst" recht hat und das erst mit 8.5 umgesetzt wurde erklärt das meinen Fehler. Danke!
' schrieb:Aber wenn "IchSelbst" recht hat und das erst mit 8.5 umgesetzt wurde erklärt das meinen Fehler. Danke!
Umgekehrt!
Erst ab LV8.5 ist es möglich, reentranten VIs den selben Datenbereich zuzuweisen. Bei gleichen Datenbereich würde ich deinen Fehler verstehen. Nicht aber, wenn jedes VI seinen eigenen Datenbereich hat. Und in1 hat jedes reentrantes SubVI seinen eigenen Datenbereich. Dein Fehler kann hier also nicht auftreten.
Wenn ich jetzt dein MainVI mit 5 reentranten SubVIs ausführen lasse, wie erkenne ich denn da einen Fehler?
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).