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 hab eine for-Schleife. Ist diese abgearbeitet soll eine globale Variable ausgelsen werden. Kann man das so machen wie im angehängten Bild dargestellt? Oder muss man doch eine Sequenz benutzen?
Wenn du es machst wie im Bild machst du genau das Gegenteil von dem, was du willst. Leg eine Seqzenrahmen um die Variable und leg einen Draht aus der Forloop raus in den Rahmen.
' schrieb:anstelle von schrottis sequenzrahmen könntest du auch den datenfluss mit einem errorcluster kontrollieren.
[attachment=47882:Bild_200...13_46_11.png]
LG
Torsten
Das geht aber nur bei Shared Variable und nicht bei einer globalen Variablen.
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!
das mit dem Errorcluster klingt sympathisch. Kannst Du mir auch verraten, was das um die globale Variable rum ist?
Wenn ich, bevor die for-Schleife ausgeführt wird, die globale Variable zu 0 setzen möchte, wie kann ich das ohne Sequenz machen? Wahrscheinlich ganz ähnlich, oder?
man liest doch immer wieder "verwende keine Sequenzen". Geht das jetzt also wirklich nicht schöner als dass ich um mein ganzes Blockdiagramm wegen einer popligen Variablen eine Sequenz mache?
Anbei ein Beispiel, was ich eigentlich machen will. Vielleicht gibt's da ja was Elegantes.
du kannst es im prinzip so machen wie ich es angedeutet habe. da die globale variable nun aber keinen fehlereingang hat. musst du einen erzeugen. das geht am schnellsten mit einer sequenz. du ziehst also um die globale varible einen sequenzrahmen (nicht um deinen gesamten code) und verbindest den fehler aus der schleife mit der sequenz.
"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
' schrieb:man liest doch immer wieder "verwende keine Sequenzen". Geht das jetzt also wirklich nicht schöner als dass ich um mein ganzes Blockdiagramm wegen einer popligen Variablen eine Sequenz mache?
Man ließt viel öfter: "verwende keine globalen variablen" (sondern z.B. funktionale, globale Variablen (FGVs)). Und so schlimm sind Sequenzrahmen auch nicht.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Evtl. ein paar Worte warum Sequenzrahmen als "böse" angesehen werden:
LabVIEW arbeitet nach dem Datenflussprinzip. Von Natur aus ist es dabei möglich, bestimmte Programmteile in beliebiger Reihenfolge auszuführen. Durch diese Dynamik kann der Programmablauf einfach und effektiv beschleunigt werden. Gerade wenn man sich mal die Möglichkeiten von echter paraleller Abarbeitung bei MultiCoreSystemen vorstellt. Sequenzstrukturen zwingen LabVIEW gewisse Dinge nacheinander auszuführen. Es wird also ein bestimmter Datenfluss festgelegt. Wenn man das im Hinterkopf hat und Sequenzrahmen eben nur so einsetzt, wie es wirklich nötig ist (z.B. wie Schrotti es vorgeschlagen hat und es in meinem Screenshot zu sehen ist), dann sind Sequenzrahmen nichts böses. Allerdings passiert es sehr schnell, dass man auch da Sequenzen einsetzt, wo es nicht nötig ist. Beispielsweise kenne ich Programme, die 5 Sequenzen hintereinander abarbeiten:
INIT, DO1, DO2, DO3, FINAL
es wird also erst der gesamte Inhalt von INIT abgearbeitet, dann der nächste Rahmen usw. Dabei gibt es ja auch Dinge (z.B. Konstante Werte an Funktionen übergeben) die schon längst erledigt werden können.
Also einfach immer ein bissl drauf achten, ob man die Sequenz wirklich braucht.
LG
Torsten
"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)