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 Programme enden bei Stop des ersten



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!

25.06.2008, 15:02
Beitrag #1

Labview-Beginner Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 114
Registriert seit: Oct 2007

6.1
2007
kA

67705
Deutschland
Zwei Programme enden bei Stop des ersten
Hi folks,

vielleicht eine komische Titelbeschreibung, aber ich hoffe durch das angefügte Bild wird es ein wenig klarer.Smile

Und zwar ist das obere Programm dafür zuständig die nötigen Parameter in einen Array zu schreiben und läuft daher auch über ein Waiting for Front Panel Activity.

Das untere Programm soll so lange das obere Programm aktiv ist den aktuellen Istwert auslesen. Sozusagen jenen Wert, der am Gerät angezeigt wird auch auf das Lab View Front Panel "mirrorn" o O (wenn man das so nennt? Rolleyes )

Jetzt habe bisher zwei Möglichkeiten, die eben nicht funktionieren:

Entweder ich nehme das untere Programm in der While Schleife in das obere hinein, dann wird der Istwert aber nicht ausgelesen, weil die obere Whileschleife ja auf "Wait" steht.

Oder ich lasse das untere Programm draußen. Dann schließt das Programm aber nicht, wenn ich das obere Programm beende, weil die untere While Schleife ja noch weiterläuft.

:-(

Please help.

Cheers.


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
25.06.2008, 15:22 (Dieser Beitrag wurde zuletzt bearbeitet: 25.06.2008 15:23 von A.Berndsen.)
Beitrag #2

A.Berndsen Offline
LVF-Team
LVF-Team

Beiträge: 2.437
Registriert seit: Feb 2005

8.2.1 - 2011
2004
DE

724xx
Deutschland
Zwei Programme enden bei Stop des ersten
Hallo!

Eine kleine Lösung mit Eigenschaftsknoten!
Der Stopp-Button wird mit Schaltverhalten "Beim loslassen schalten" definiert.

Grüße
Andreas

   

Geht nicht, gibts nicht!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.06.2008, 15:31
Beitrag #3

Labview-Beginner Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 114
Registriert seit: Oct 2007

6.1
2007
kA

67705
Deutschland
Zwei Programme enden bei Stop des ersten
Aha.

Als erstes: Danke!Smile

Also von der Idee her scheine ich sowas ähnliches mal konstruiert zu haben, als ich es über eine Lokal Variable versucht habe.

Leider ist diese nicht parallel möglich bei der "Mechanical Action" Latch when released. Dry
Edit: Oh. Ich denke dein "Beim loslassen schalten" ist im englischen "Swicht when released" ?Dry

Was ist jetzt der Unterschied zu deiner Variante mit einem Eigenschaftsknoten ?Huh

Cheers.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.06.2008, 18:37 (Dieser Beitrag wurde zuletzt bearbeitet: 25.06.2008 18:43 von Lucki.)
Beitrag #4

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 Programme enden bei Stop des ersten
attachment=40438:stop2.png]
' schrieb:Was ist jetzt der Unterschied zu deiner Variante mit einem Eigenschaftsknoten ?Huh
Eigenschaftskonten sind ca. 200x langsamer in der Ausführung als lokale Variablen, es besteht hier kein Grund, diese zu benutzen.
Die Methode von Andreas ist nicht wasserdicht, es besteht die Möglichkeit, daß die obere Schleife zuerst bendet wird, anschließend wird der Schalter wieder auf false gesetzt, und erst dann wird die lokale Variable in der zweiten Schleife abgefragt und dann natürlich nicht beendet.
Wasserdicht sind (s. Bild)
Variante 1: Über eine logische Verknüpfung (oder eine neue Sequenz) wird sichergestellt, daß beide Schleifen beendet sind, bevor der Schalter rückgesetzt wird.
Variante 2: Der Schalter bleibt einfach gedrückt und wird erst beim nächsten Start rückgesetzt.
   

Bwwährt hat sich auch, in der 2. Schleife ein Ereignisstruktur zu verwenden. Dann kann man die Schalteigenschaften des Stop-Buttons lassen wie sie sind und braucht überhaupt kein lokalen Variablen.
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.06.2008, 19:04
Beitrag #5

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Zwei Programme enden bei Stop des ersten
Hi LabVIEW-Beginner!

Bösen Eigentor von dir! Das Bitten um eine Antwort per persönliche Mitteilung ist in keinem Forum gern gesehen. Das kommt nämlich rüber wie Drängeln. Zumal wenn zwischen Anfrage und Bitte gerade mal anderthalb Stunden liegen. Und komm jetzt nicht mit Ausreden wie Chef oder dringend.

Im übrigen empfehle ich die Lösung obiges Bild, Variante 2, von Lucki: Das Restetten des Schalters findet vor den Schleifen statt. Beachte die Sequenzierung zwischen den While-Schleifen und dem Restetten mittels des Sequenzrahmens und den Bool'schen Datenfluß, der an den While-Schleifen einfach nur endet.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.06.2008, 10:06
Beitrag #6

Labview-Beginner Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 114
Registriert seit: Oct 2007

6.1
2007
kA

67705
Deutschland
Zwei Programme enden bei Stop des ersten
IchSelbst schrieb:Bösen Eigentor von dir! Das Bitten um eine Antwort per persönliche Mitteilung ist in keinem Forum gern gesehen. Das kommt nämlich rüber wie Drängeln. Zumal wenn zwischen Anfrage und Bitte gerade mal anderthalb Stunden liegen. Und komm jetzt nicht mit Ausreden wie Chef oder dringend.

Oke. Gelbe Karte akzeptiert. -_-


Cheers.

Edit:

Boa danke Lucki! Die Variante 2 funktioniert wunderbar!Smile

IchSelbst schrieb:Beachte die Sequenzierung zwischen den While-Schleifen und dem Restetten mittels des Sequenzrahmens und den Bool'schen Datenfluß, der an den While-Schleifen einfach nur endet.

Wie meinst du das mit dem Bool'schen Datenfluß ?
Denn auf so eine ähnliche Idee wie Lucki mit lokalen Variablen bin ich auch schon gekommen, nur bei mir hat das nicht funktioniert. Und ich verstehe auch nicht, warum ich die lokale Variable in der Sequenz noch mit den While Schleifen verbinden muss? Ich dachte genau dafür verwende ich lokale Variablen, dass ich eben keine "Verdrahtung" mehr vornehmen muss? Huh
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
27.06.2008, 10:52 (Dieser Beitrag wurde zuletzt bearbeitet: 28.06.2008 11:06 von Lucki.)
Beitrag #7

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 Programme enden bei Stop des ersten
' schrieb:! Die Variante 2 funktioniert wunderbar!Smile
Ich verwende auch vorzugsweise die Variante 2. Allerdings jemand der richtig ordnungsliebend und pedandisch ist, dem wird das nicht gefallen, denn der Knopf bleibt ja nach dem Benden das Programms gedrückt, es ist ungefähr so, als wenn man die Tür nicht schließt, wenn man das Zimmer verläßt, und das erst beim Zurückkommen zu macht.
Ich beginne überigens fast jedes Programm mit einer riesengroßen gestapelten Sequnz so groß wie der Bildschirm:
Sequenz1: Alle Initialisierungen
Sequenz2: Eigentliches Programm mit Haupschleife
Sequenz3: Alles was bei Stop zu beenden ist.
Wen man das so macht, dann entfallen die vielen "Wurmfortsätze" links und rechts der Haupausführungsschleife zum Initialisieren und Beenden; man braucht keine funktionslosen Leitungen von und zur Hauptschleife für die richtige Ausführungs-Reihenfolge.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.06.2008, 11:10
Beitrag #8

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Zwei Programme enden bei Stop des ersten
' schrieb:Wie meinst du das mit dem Bool'schen Datenfluß ?
Denn auf so eine ähnliche Idee wie Lucki mit lokalen Variablen bin ich auch schon gekommen, nur bei mir hat das nicht funktioniert. Und ich verstehe auch nicht, warum ich die lokale Variable in der Sequenz noch mit den While Schleifen verbinden muss? Ich dachte genau dafür verwende ich lokale Variablen, dass ich eben keine "Verdrahtung" mehr vornehmen muss? Huh
Diese Verbindung dient einzig und alleine dazu, dass keine der beiden While-Schleifen beginnt, bevor nicht tatsächlich die Sequenz beendet ist. Diese Verbindung macht praktisch eine Sequenzierung. Dass dafür die Boolsche Variable herhalten muss, liegt alleine daran, weil die nämlich gerade da ist. (Normalerweise würde man eine Sequenzierung mit dem Errorcluster machen.)

Tust du die Sequenz und die While-Schleifen nicht sequenzieren, kann es sein, dass die While-Schleife(n) längst begonnen haben und danach erst die Sequenz abgearbeitet wird. Aus der Position irgendwelcher Elemente im Blockdiagramm darf man nicht auf deren Abarbeitungsreihenfolge schließen! (Eine "Reihenfolge" an sich gibt es nur dann, wenn ein Datenfluß besteht.)

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  zwei Plots in einem X-Y Graphen mit zwei Achsen bachatero18 7 4.294 20.11.2019 15:06
Letzter Beitrag: Lucki
  Programme für unterschiedliche Hardware gestalten MaxP 2 3.022 29.11.2017 09:30
Letzter Beitrag: MaxP
  Stop eines VIs aus drei Schleifen Lab_fänger 3 3.442 14.10.2015 06:56
Letzter Beitrag: Lucki
  Wie Programme in LabView Strukturieren? Moes 4 4.668 28.07.2015 15:28
Letzter Beitrag: GerdW
  Stop während Eventstruktur am laufen ist haydenfan 5 5.522 05.11.2013 09:50
Letzter Beitrag: haydenfan
  Search & Replace STOP gottfried 8 6.496 01.08.2013 08:44
Letzter Beitrag: eb

Gehe zu: