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 

While Schleifen Problem



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!

03.12.2008, 16:58
Beitrag #1

bolle Offline
LVF-Grünschnabel
*


Beiträge: 38
Registriert seit: Dec 2008

8.6
2008
de

60528
Deutschland
While Schleifen Problem
Hallo miteinander

Beschäftige mich gerad erst seit ein paar Tagen mit LabVIEW und hab mich heute ein bisschen mit Schleifen beschäftigt.

Dazu habe ich mir ein kleines VI gebaut das auf eine Sekunde getaktet ist. Nach 5 durchläufen sollte es eigentlich Stoppen.
Kurzzeitig macht es dies auch aber überläuft dann einfach die Abbruch Bedingung und zählt weiter.
Es ist ein ziemlich einfaches Porgramm.
Was jemand die Lösung zu meinem Verständnisproblem???
(LabVIEW 8.6)

MFG Bolle


Angehängte Datei(en)
Sonstige .vi  Schleifen_Test.vi (Größe: 5,92 KB / Downloads: 223)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
03.12.2008, 19:29
Beitrag #2

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

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
While Schleifen Problem
Das liegt an dem nicht initialisierten Schieberegister. Beim ersten Aufruf beginnt die Zählung mit Null, bei den folgenden Aufrufen wird die Zählung dort fortgesetzt, wo sie aufgehört hatte.
Also: Null auf der linken Seite anschließen.
Ein weitere Unsicherheit, die hier aber wohl nicht relevant ist: der Vergleich zweier Reeller Zahlen auf Gleichheit kann schief gehen, und zwar wegen ihrer Machinenungenauikeit in einer Kommastelle ganz weit hinten.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.12.2008, 19:30 (Dieser Beitrag wurde zuletzt bearbeitet: 03.12.2008 19:31 von jg.)
Beitrag #3

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
While Schleifen Problem
Das kommt durch das nicht-initialisierte Shift-Register.

Beim zweiten Durchlauf steht da Wert vom ersten kompletten Durchlauf des Programms (also 5) und somit funzt es nicht.

Mach mal so:

   

Ach ja, und es ist gefährlich, bei Fließkomma auf Gleichheit zu vergleichen. Nimm lieber eine Integerzahl.

Gruß, Jens

EDIT: @Lucki: Und wieder mal sind wir einer MeinungLol

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
04.12.2008, 09:17
Beitrag #4

bolle Offline
LVF-Grünschnabel
*


Beiträge: 38
Registriert seit: Dec 2008

8.6
2008
de

60528
Deutschland
While Schleifen Problem
Danke@jens und lucki =)

okay also das mit dem schiebe register hab ich jetzt verstanden. Dadurch das ich keine 0 an den linken orangen Anschluss(weiss den ausdrcuk dafür jetzt nicht) gesetzt habe, wird also das schiebe register nicht zurückgesetzt und er zaehlt einfach da weiter wo er aufgehört hat bei erneuter Initialisierung der while schleife.
Allerdings war meine Intention fuer dieses kleine VI das er die Schleife 5 mal, im Sekundentakt durchläuft und dann aufhört bzw. stoppt.

Bin mir nicht ganz sicher aber liegt mein Denkfehler darin das er nach dem 5. durchlauf zwar hinter dem Vergleicher ein True ausgibt aber durch den eingefügten 0er ,der das ganze rücksetzt beim nächsten Durchlauf wieder ein False sieht und daher wieder weitermacht?

Was muesst ich denn machen um ihn nach dem 5ten Durchlauf stoppen zu lassen???

Habe nach einem Flip Flop ähnlichem Baustein gesucht der sich das ganze merkt, allerdings habe ich nix gefunden.

Wie würdet ihr das machen???

Gruss Bolle
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.12.2008, 09:53
Beitrag #5

macces Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 57
Registriert seit: Oct 2006

8.60 SE
2006
kA

47803
Deutschland
While Schleifen Problem
Es gibt ja nach einem True am Vergleicher keinen nächsten Durchlauf, da die Schleife verlassen wird und das vi beendet wird (es sei denn, Du startest das vi im "wiederholt ausführen" modus, da wirds dann immer wieder neu ausgeführt).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.12.2008, 10:12
Beitrag #6

Ice Lord Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 79
Registriert seit: Sep 2008

8.2, 8.5
2008
de

82256
Deutschland
While Schleifen Problem
' schrieb:Hallo miteinander

Beschäftige mich gerad erst seit ein paar Tagen mit LabVIEW und hab mich heute ein bisschen mit Schleifen beschäftigt.

Dazu habe ich mir ein kleines VI gebaut das auf eine Sekunde getaktet ist. Nach 5 durchläufen sollte es eigentlich Stoppen.
Kurzzeitig macht es dies auch aber überläuft dann einfach die Abbruch Bedingung und zählt weiter.
Es ist ein ziemlich einfaches Porgramm.
Was jemand die Lösung zu meinem Verständnisproblem???
(LabVIEW 8.6)

MFG Bolle

Also wenn du grad erst angefangen hast, dann solltest du dich lieber durch die ganzen Examples kämpfen. Du schaust sie dir an, und versuchst sie auf deine Wünsche nach zu bauen. NICHT kopieren, sondern selber versuchen.
So lernst du am schnellsten und effektivsten.

Mfg
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
04.12.2008, 11:42 (Dieser Beitrag wurde zuletzt bearbeitet: 04.12.2008 11:42 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
While Schleifen Problem
' schrieb:Allerdings war meine Intention fuer dieses kleine VI das er die Schleife 5 mal, im Sekundentakt durchläuft und dann aufhört bzw. stoppt.
Mit dem Sekundentakt ist auch nicht ganz korrek: Der Metronom warte nicht 1 sec, sondern er wartet bis zum nächsten Sekunden-Tic der PC-Uhr. Diese Zeit ist beim ersten Durchlauf ein zufälliger Wert zwischen 0 und 1 sec. Für die darauffolgenden Durchläufe ist es dann OK. Ansonsten Wait statt Metronom verwenden.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.12.2008, 12:40
Beitrag #8

bolle Offline
LVF-Grünschnabel
*


Beiträge: 38
Registriert seit: Dec 2008

8.6
2008
de

60528
Deutschland
While Schleifen Problem
oh man
des programm hat eh das gemacht was ich wollte allerdings hab ich immer "wiederholt ausführen" gemacht Dry

trotzdem was gelernt ^^

@ Ice Lord

genau des mach ich gerade
allerdings nicht die Bsp sondern das schulungshandbuch und da ich gerad beim Kapitel Schleifen bin und mir diese Schieberegister nicht ganz klar waren, wollt ichs einfachs mal ausprobieren.

Danke an alle fuer die Tipps
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
  Übergabe-Problem zweier While-Schleifen mit Queue onsight8c 1 3.712 10.10.2014 16:42
Letzter Beitrag: jg
  DAQ While-Schleifen Problem xxmoritzon360xx 6 5.293 09.03.2014 18:26
Letzter Beitrag: GerdW
  While-Schleifen-Problem Baaand 3 3.918 19.12.2012 22:48
Letzter Beitrag: BNT
  Problem mit while Schleifen Regenwurm 7 6.220 30.04.2008 10:18
Letzter Beitrag: Kvasir
  Problem mit while-schleifen teirack 4 4.799 23.10.2007 05:31
Letzter Beitrag: Achim
  problem mit paralellen schleifen gottfried 7 5.699 31.05.2007 10:41
Letzter Beitrag: gottfried

Gehe zu: