INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Zwei While Schleifen Parallel eine Bedingung zur Beendung



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!

17.11.2010, 11:51
Beitrag #11

Matze Offline
LVF-Team
LVF-Team

Beiträge: 1.027
Registriert seit: Apr 2010

20xx
2010
DE_EN

7xxxx
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
@Totti: Jupp, auch nicht schlecht. Aber da siehst du das von mir angesprochene Problem: Es wird kompliziert und die Übersicht geht verloren, wenn man das mit Meldern ordentlich machen möchte.

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
17.11.2010, 11:53 (Dieser Beitrag wurde zuletzt bearbeitet: 17.11.2010 11:54 von Matze.)
Beitrag #12

Matze Offline
LVF-Team
LVF-Team

Beiträge: 1.027
Registriert seit: Apr 2010

20xx
2010
DE_EN

7xxxx
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
' schrieb:Ne, Lucki hat Lokale Variablen verwendet und keine globalen!
' schrieb:Ich nutze ebenfalls Melder, außer der Stopp-Button soll die Schleifen beenden. Dann verwende ich lokale Variablen. Und hier darf man diese meiner Meinung nach auch getrost verwenden.

Edit: Eigentlich wollte ich den oberen Beitrag editieren, nur Mehrfach-Zitate sind dann so umständlich einzufügen.

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.11.2010, 11:53
Beitrag #13

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
Naja übersichtlich wirds, wenn man die Sequenzen entfernt, SubVIs verwendet und ein ErrorCluster als Flusssteuerung verwendet. Aber das war mir grade zu viel des guten!

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.11.2010, 11:56
Beitrag #14

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
@Mechatronik-Ingenieur:
das hab ich tatsächlich überlesen!

Naja, nu gibts hoffentlich genügend Alternativen!

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.11.2010, 14:11
Beitrag #15

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
' schrieb:Ähm, genau das gleiche wurde hier doch genannt oder nicht (neben den Meldern)?Unsure

Ja, hast Recht, aber es wurde irgendwie beiläufig gesagt, so daß man befürchten mußte, daß das gegenüber den Lösungen mit Meldern und globalen Variablen untergeht. Und Deinen Beitrag direkt vor meinem hatte ich noch nicht gelesen, dann hätte ich das nicht so geschrieben.
Was noch nicht zur Sprache kam:
Man hat mehrere parallele Schleifen mit Waits drin. Bei STOP soll das VI sofort beendet werden, und nicht erst Sekunden später. Wie macht man das sauber?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.11.2010, 14:15
Beitrag #16

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
Ich weiß nicht, obs die sauberste Lösung ist, aber wenn ich ein Wait in einer Schleife habe, dann ist das ein Kurzes Wait in einer Schleife. Dadurch reduziere ich das Problem auf eine minimale Verzögerung die nicht wirklich störend ist.

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
17.11.2010, 14:22 (Dieser Beitrag wurde zuletzt bearbeitet: 17.11.2010 14:35 von Matze.)
Beitrag #17

Matze Offline
LVF-Team
LVF-Team

Beiträge: 1.027
Registriert seit: Apr 2010

20xx
2010
DE_EN

7xxxx
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
Ich löse sowas über eine "manuelle" Wait-Funktion über das Timer-Wert-VI. Innerhalb der While-Schleife eine weitere mit kurtem Wailt (z.B. 20 ms), die u.a. "Timer-Wert" aufruft und so lange ausgeführt wird, bis die gewünschte Zeit abgelaufen ist.
Die innere (und somit auch äußere) Schleife kann somit jederzeit abgebrochen werden.

Das Vorgehen funktioniert bei einer einzigen Schleife genauso wie bei mehreren parallelen.

Nachtrag:

Ich habe mal angehängt, was ich meine:

   

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.11.2010, 16:50 (Dieser Beitrag wurde zuletzt bearbeitet: 17.11.2010 16:56 von Lucki.)
Beitrag #18

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
Ich hatte mir zum sofortigen Stop mal das hier ausgedacht:
   
Erläuterung:
Die Wait-Funktion wird überhaupt nicht verwendet, da sie sich nicht stoppen lässt. Zum Wait werden zwei andere Funktionen missbraucht:
Untere Schleife: das Timeout der Ereignisstruktur wirkt genau wie Wait - solange keine Ereignisse entreten. Hier ist Stop - neben Timeout - der einzige Ereignisrahmen. Die Ereignisstruktur ist hier nichts weiter als ein Wait mit sofortiger Stop-Möglichkeit.
Obere Schleife: Das VI "auf Occurrence warten" wirkt hier ebenso wie ein Wait, solange keine Occurrence stattfindet. Dieses Warten läßt sich mittendrin ebenso sofort stoppen, wenn die Occurrence eintrifft. Die Occurrence wird in der unteren Schleife bei Stop erzeugt. (Anmerkung: die Empfehlung von LV ist, Occurrences nicht mehr zu verwenden, man soll besser Melder verwenden. Habe das hier nur der Einfachheit so gemacht)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.11.2010, 17:14
Beitrag #19

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
Auch eine Alternative. Ich denke da muss man immer schaun, was in das Programm rein passt. Wenn man den TimeoutCase für andere dinge benötigt kann man ihn dafür nicht mehr missbrauchen. Oder man arbeitet mit zwei Eventstrukturen. Ach man, es gibt immer so viele Alternativen und nie sagt einer einem: DAS ist das Wundermittel.

Ich bleibe bei einem kleinen SubVI mit einer Schleife in der kurze Waits ausgeführt werden und zusätzlich die Abbruchbedingung geprüft wird. Zum beispiel ein entsprechender Melder.

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.11.2010, 17:31
Beitrag #20

Matze Offline
LVF-Team
LVF-Team

Beiträge: 1.027
Registriert seit: Apr 2010

20xx
2010
DE_EN

7xxxx
Deutschland
Zwei While Schleifen Parallel eine Bedingung zur Beendung
' schrieb:Ach man, es gibt immer so viele Alternativen und nie sagt einer einem: DAS ist das Wundermittel.
Vielleicht ist es besser so. So gibt's Herausforderungen und man darf die grauen Zellen trainieren. *g*
Sonst könnte das ja jeder. Also immer positiv sehen, auch wenn es manchmal nicht schwer feällt.

Das erinnert mich gerade daran, wie oft ich mich über LabVIEW aufrege, wenn es mal wieder abschmiert oder ich nicht weiterkomme. Aber umso größer die Freue, wenn es dann tut.

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Datenaustausch über Cluster in zwei While-Schleifen creo_123 5 4.522 04.03.2022 09:36
Letzter Beitrag: Kiesch
  Bestimmte Zeilen im Array löschen wenn Bedingung nicht erfüllt ist bachatero18 4 5.346 31.03.2020 14:49
Letzter Beitrag: bachatero18
  zwei Plots in einem X-Y Graphen mit zwei Achsen bachatero18 7 5.397 20.11.2019 15:06
Letzter Beitrag: Lucki
  zwei Schalter, eine Ausgabe je nach Schalterlabel Beam1 5 4.646 07.02.2017 16:40
Letzter Beitrag: GerdW
  2 Schleifen parallel bedienen HTL_HL 3 4.453 12.02.2016 13:05
Letzter Beitrag: Lucki
  Werte nach gültiger Bedingung zurücksetzen patriote00 11 7.872 04.01.2016 17:04
Letzter Beitrag: GerdW

Gehe zu: