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 

Schleife stoppen oder pausieren



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!

16.02.2009, 10:00
Beitrag #1

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
Schleife stoppen oder pausieren
Moin zusammen,

ich würde gerne eine while-Schleife durch Buttons stoppen und pausieren.

Das Implementieren der Stopfunktion ist einfach (lediglich den Button mit der Schleifenbedingung verbinden). Aber wie schaffe ich es, die Schleife durch einen Pausenbutton anzuhalten, und später wieder genau dort weiter laufen zu lassen (i und alle Schieberegister sollen dabei unverändert bleiben). Es soll einfach nur das Programm pausiert werden.

Im Prinzip macht soetwas der Button Pause der Applikationssteuerung. Aber diese Leiste sollte in meiner Oberfläche ausgeblendet sein.

Ich habe mal versucht, es mit dem VI "Auf Frontpanelaktivität warten" umzusetzen. Allerdings ist es dabei dann egal, welche Aktivität ich auslöse. Es sollte jedoch nur beim erneuten Drücken des Pausebuttons weitergehen.

Events kann ich anscheinend auch nicht verwenden, weil das Programm keine Events auslöst, solange es angehalten ist.

Eine Möglcihkeit wäre, eine Whileschleife in der Whileschleife zu starten, solange bis der Pausebutton wieder auf False steht und jeweils ne kleine Verzögerung einabuen. Aber das belastet doch den Prozessor durchgehen.

Hat jemand eine kluge Idee?

LG
Torsten

"Ü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
16.02.2009, 10:04 (Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2009 10:13 von eg.)
Beitrag #2

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Schleife stoppen oder pausieren
Kannst es mit dem Timeout und Event-Struktur probieren. Kommt Pause-Event, machst Timeout auf -1, kommt es erneut, machst Timeout auf 0.

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.02.2009, 10:28
Beitrag #3

RoLe Offline
LVF-Guru
*****


Beiträge: 1.236
Registriert seit: Jul 2007

-
1997
en

0
Schweiz
Schleife stoppen oder pausieren
Wenn du das i-Terminal "selber" machst mit einem Shiftregister und diese uninitialisiert sind, kannst du die Schleife verlassen, und beim nächsten eintretten in die Schleife hast du dieselben Werte wie beim verlassen. Die Schleife wird dabei aber immer ganz abgearbeitet.
Ich kenne das so nicht, das ein Programm angehalten wird, nur das einige Abschnitte übersprungen werden, mit z.Bsp. einer Case-Struktur.

.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.02.2009, 11:04
Beitrag #4

kpa Offline
LVF-Stammgast
***


Beiträge: 385
Registriert seit: Mar 2007

2019
2002
DE

88***
Deutschland
Schleife stoppen oder pausieren
Hallo TSchAC,

so wie Du geschrieben hast. Es ist keine Mehrbelastung für den Prozessor.
Ein- und Ausschalter liegen aufeinander.

kpa

Lv85_img


Angehängte Datei(en)
Sonstige .vi  Pause.vi (Größe: 13,29 KB / Downloads: 550)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.02.2009, 11:16
Beitrag #5

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
Schleife stoppen oder pausieren
' schrieb:Hallo TSchAC,

so wie Du geschrieben hast. Es ist keine Mehrbelastung für den Prozessor.
Ein- und Ausschalter liegen aufeinander.

kpa

Lv85_img

Bei der Lösung gefällt mir nicht, dass die Reaktion auf den WEITER-Klick unter Umständen erst mit 200ms Verzögerung kommt. Setze ich die Verzögerung auf 0 runter, dann merkt man das Ganze schon erheblich auf der CPU (Auslastung durch LabVIEW steigt von 01 aud 50).

"Ü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
16.02.2009, 11:22
Beitrag #6

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
Schleife stoppen oder pausieren
' schrieb:Kannst es mit dem Timeout und Event-Struktur probieren. Kommt Pause-Event, machst Timeout auf -1, kommt es erneut, machst Timeout auf 0.

Die Lösung scheint ganz gut zu funktionieren. Mal schaun was ich da noch optimieren kann. Im Moment stürzt er noch ab wenn ich im Pausenmodus bin und den Stoppbutton drücke. Aber das bekommt man sicherlich noch hingebogen.

Vielen Dank soweit.

"Ü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
16.02.2009, 11:26
Beitrag #7

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
Schleife stoppen oder pausieren
' schrieb:Wenn du das i-Terminal "selber" machst mit einem Shiftregister und diese uninitialisiert sind, kannst du die Schleife verlassen, und beim nächsten eintretten in die Schleife hast du dieselben Werte wie beim verlassen. Die Schleife wird dabei aber immer ganz abgearbeitet.
Ich kenne das so nicht, das ein Programm angehalten wird, nur das einige Abschnitte übersprungen werden, mit z.Bsp. einer Case-Struktur.

Das müsste ich mir nochmal überlegen, ob ich damit weiter komme. Bin gar nicht auf die Idee gekommen "i" durch nen eigenen Zähler zu ersetzen. Mal sehen was das für Vor und Nachteile mit sich bringt.

"Ü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
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
Rainbow Programm pausieren Kaya 14 8.496 11.09.2023 12:15
Letzter Beitrag: GerdW
  Schleife stoppen in subVI illy777 31 13.547 14.09.2020 18:00
Letzter Beitrag: illy777
  While Schleife stoppen itz_me 4 5.894 13.04.2017 14:47
Letzter Beitrag: itz_me
  X Bildlaufleiste bei Signalverlaufsdiagram stoppen Carp 18 10.619 10.06.2016 09:57
Letzter Beitrag: Carp
  Frage zu Lauflicht stoppen(vorübergehend) fuego50 4 4.358 23.05.2016 17:05
Letzter Beitrag: fuego50
  Referenziertes VI stoppen marhi 7 5.858 08.03.2016 12:07
Letzter Beitrag: rolfk

Gehe zu: