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 

Dieses Thema hat akzeptierte Lösungen:

While schleife in While schleife



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!

21.02.2012, 15:05 (Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2012 15:18 von jg.)
Beitrag #1

sissi Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Nov 2011

9.0
2011
DE


Deutschland
While schleife in While schleife
Hallo,

ich habe ein Problem, und zwar :
In einem VI.Hauptprogramm habe ich mehrere Unterprogramme(Sub.VI) verwendet und sie beinhalten alle eine while schleife (Z.B für Datenerfassung, Datenerzeugung...usw).

Wenn ich die Unterprogramme einzeln laufen lassen, dann ist alles Prima.
aber wenn ich versuche das ganzes programm laufen zu lassen, dann werden die Sub.VI nicht mitkompiliert.


hat jemand eine Idee wie ich das ganze programm mit den Sub.VI durchlaufen lassen?

Danke

Als Beispiel, habe ich hier eine kleine Programm angehängt.was auch das Problem in meinem Hauptprogramm beschreibt.

Lv09_img2


Angehängte Datei(en)
0.0 .rar  Testmodel.rar (Größe: 38,28 KB / Downloads: 159)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
21.02.2012, 15:17
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: While schleife in While schleife
THINK DATAFLOW!

Ein VI (auch ein SubVI) wird erst beendet, wenn alle Ausgänge anliegen. Deswegen funktioniert deine hochgeladene Struktur nicht!
Dein Haupt-VI schreibt sofort ein "FALSE" in die globale Variable "stop". Parallel wird ein Sub-VI aufgerufen. Da darin aber eine While-Schleife ist, die du probierst, über die globale Variable "stop" abzubrechen, wird das Sub-VI nie beendet. Solange das Sub-VI aber nicht beendet wird, läuft auch die While-Schleife im Main-VI nicht neu an. Flop

Gruß, Jens

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!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.02.2012, 17:20 (Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2012 17:29 von sissi.)
Beitrag #3

sissi Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Nov 2011

9.0
2011
DE


Deutschland
RE: While schleife in While schleife
Danke für Antwort.

Ohne Berücksichtigung der Global Variable, wie kann ich im einfache Beispiel ohne beutzung der Parallele Schleifen, unterprogramme mit while schleife im Hauptprogramm auch starten und von der while schleife wieder raus?

Danke

PS: Ich habe hier ein Beispiel neu hochgeladen, der aber funktioniert aber nicht ganz so richtig wie es sein soll.(auch nach Amplituden Änderung, tut sich nix ????)


Angehängte Datei(en)
0.0 .rar  Beispiel neu.rar (Größe: 36,61 KB / Downloads: 194)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.02.2012, 17:32
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: While schleife in While schleife
Hallo sissi,

bei deinem Attachment fehlen 2 subVIs ("Global 3.vi" und "test global var..vi")...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.02.2012, 17:51
Beitrag #5

sissi Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Nov 2011

9.0
2011
DE


Deutschland
RE: While schleife in While schleife
(21.02.2012 17:32 )GerdW schrieb:  Hallo sissi,

bei deinem Attachment fehlen 2 subVIs ("Global 3.vi" und "test global var..vi")...

Danke für den Hinweis.

Ich habe das jetzt wieder ohne Global Variablen hochgeladen.


Angehängte Datei(en)
0.0 .rar  Beispiel neu.rar (Größe: 34,08 KB / Downloads: 164)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.02.2012, 21:43
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: While schleife in While schleife

Akzeptierte Lösung

Hallo sissi,

wenn man einfache Grundregeln wie "Aufräumknopf benutzen" und "sinnvolles Schleifentiming" beachtet, sieht dein VI so aus:
   
Und dann funktioniert es sogar! (Außerdem beachte man die Nutzung des Timeouts beim Dequeue, was ja glücklicherweise in der Kontexthilfe beschrieben wird...)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
22.02.2012, 22:36 (Dieser Beitrag wurde zuletzt bearbeitet: 22.02.2012 22:37 von sissi.)
Beitrag #7

sissi Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Nov 2011

9.0
2011
DE


Deutschland
RE: While schleife in While schleife
(21.02.2012 21:43 )GerdW schrieb:  Hallo sissi,

wenn man einfache Grundregeln wie "Aufräumknopf benutzen" und "sinnvolles Schleifentiming" beachtet, sieht dein VI so aus:

Und dann funktioniert es sogar! (Außerdem beachte man die Nutzung des Timeouts beim Dequeue, was ja glücklicherweise in der Kontexthilfe beschrieben wird...)

Vielen Dank für den Tipps.

Ich habe jetzt wieder eine Frage, und zwar:
Was ist wenn ich Daten mit DAQmx Assistenz erfasse (ca. 10 Sensoren: Drück,Temp. Füllstand, Durchfluss...usw.).
Diese Datenerfassungsfunktion als Sub.VI programmiert, Die Erfasste-werte sollen im Hauptprogramm wieder aufgerufen werden.
Solle ich jetzt für jede einzelne Wert bzw. Sensor eine Element einfüge? (wie mein Vorheriges beispiel, aber halt mit mehrere Element )


Angehängte Datei(en) Bild(er)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.02.2012, 09:11
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: While schleife in While schleife
Hallo sissi,

man könnte auch mit einem Array arbeiten statt mit 10 Einzelwerten...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.02.2012, 10:04 (Dieser Beitrag wurde zuletzt bearbeitet: 23.02.2012 10:05 von sissi.)
Beitrag #9

sissi Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Nov 2011

9.0
2011
DE


Deutschland
RE: While schleife in While schleife
(23.02.2012 09:11 )GerdW schrieb:  Hallo sissi,

man könnte auch mit einem Array arbeiten statt mit 10 Einzelwerten...

hast du vielleicht ein Beispiel für mich? (meinst du damit die Erfasste-werte indizieren und als Array weiter geben (als FIFO-System)?)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.02.2012, 10:19
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: While schleife in While schleife
Hallo sissi,

ich kenn mich mit dem DAQ-Assi nicht aus, aber üblicherweise konfiguriert man seine DAQmx-Erfassung so, dass man alle Kanäle gebündelt in einem Array (oder Waveform, je nachdem, was passt) bekommt. Gern auch schon mit den DAQmx-Skalierungsmöglichkeiten verbunden, sodass nicht rohe Messwerte (Strom, Spannung) gemeldet werden, sondern schon Füllstand, Durchfluss, whatever...

Dieses Array mit Messwerten kann man dann auch wieder komplett in die Queue schieben, man muss nicht 10 Einzelwerte hineinschieben (was beim Auslesen ja auch wieder synchronisiert werden muss!).

Beispiele findest du im LabVIEW-Hilfe-Menü unter "Beispiele suchen" Smile

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
  Prüfstand mit LabVIEW ansteuern - Schleife mit vielen Zyklen Thomas_E 3 6.063 24.08.2023 13:43
Letzter Beitrag: Thomas_E
  Schleife stoppen in subVI illy777 31 13.577 14.09.2020 18:00
Letzter Beitrag: illy777
  ungebremste Schleife / laufendes VI finden Trinitatis 3 2.988 18.08.2020 13:13
Letzter Beitrag: Trinitatis
  While-Schleife sofort beenden ? RobertRoth 17 10.756 21.10.2019 11:00
Letzter Beitrag: RobertRoth
  Schleife Werte Ausgeben MarcelXX 4 3.938 30.08.2019 09:19
Letzter Beitrag: jg
  For-Schleife takten Christoph1993 4 4.013 23.06.2019 12:05
Letzter Beitrag: Christoph1993

Gehe zu: