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!
Ich bins mal wieder und ich hoff ihr könnt mir nochmals helfen.....
Ich muss in meinem Programm Fehlersimulationen einbauen ( z.b Wenn nach eingestellter Zeit ein bestimmtes Signal nicht anliegt Programm abbrechen etc...)
Darum jetzt meine Frage: Warum bricht eine while-Schleife hier nicht ab nach der Zeit sondern arbeitet zuerst die Sequenz fertig ab??
Kann ich die Abbruchbedingung irgendwie mit der Sequenz verbinden, damit sie nicht fertig abgearbeitet wird??
Mfg
Anzeige
18.10.2006, 09:12 (Dieser Beitrag wurde zuletzt bearbeitet: 18.10.2006 09:29 von Dennis.Moser.)
ohne dein vi geöffnet zu haben...;)kann ich dir sagen, das ein abbruch einer "normalen" sequenz NICHT möglich ist.
Dazu müsstest du z.b. über eine "state machine" (zustandsmaschine!?) gehen. dort kannst du vor und zurückspringen (wie wann und wohin du willst...) (immer diese werbesprüche... ;P)
Wissen ist das einzige Gut das sich vermehrt, wenn man es teilt!
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
BC: 14vqy6mgfswpX6z7HLVxk1h3sHAvzE4aZG
18.10.2006, 09:26 (Dieser Beitrag wurde zuletzt bearbeitet: 18.10.2006 09:29 von Dennis.Moser.)
ohne dein vi geöffnet zu haben...;)kann ich dir sagen, das ein abbruch einer "normalen" sequenz NICHT möglich ist.
Dazu müsstest du z.b. über eine "state machine" (zustandsmaschine!?) gehen. dort kannst du vor und zurückspringen (wie wann und wohin du willst...) (immer diese werbesprüche... ;P)
Hi Dennis
Bin glaub ich kackendoof,
kannst mir vielleicht grob erklären wie ich die einbinden soll!? Finde darüber nichts in der LabVIEW-Hilfe und auch nichts in nem Buch....
Oder hast nen anderen Tipp für mich?
Hab ne ziemlich dicke Sequenz und müsste die nach einer gewissen Zeit abbrechen lassen falls entweder ein "NOT-AUS" betätigt wurde oder eine gewisse Zeit verstrichen ist..
Gruß
18.10.2006, 09:29 (Dieser Beitrag wurde zuletzt bearbeitet: 18.10.2006 09:36 von Lucki.)
Die schlechte Nachrich für Dich:
Das ist nun einmal so, daß
a) in einer While-Schleife immer alles abgearbeitet wird was drin ist, auch wenn die Abbruchbedingung gleich zuerst ermittelt ist
b) eine Sequenz, genau wie eine for-Schleife, nicht unterbrochen werden kann.
Die gute Nachricht:
Es gibt ein work-arround für alle dies Fälle: Pfiffige Einfügung von Cases, die im Abbruchfall leer sind.
Also Dein Problem läßt sich so lösen:
' schrieb:Die gute Nachricht:
Es gibt ein work-arround für alle dies Fälle: Pfiffige Einfügung von Cases, die im Abbruchfall leer sind.
Lucki! zeig ihm doch nicht sowas, das ist ja quasi die Anleitung zum Spagetti-Code!
<JAUL>
Sicher, mann KANN sowas machen, wenn man bei der Inbetriebnahme ist, 10 nervöse Abteilungsleiter des Kunden um einen rumstehen, man die Nerven blank hat und schnell nach Hause will. Ansonsten sollte man sich immer drum bemühen, sich im Großen und Ganzen an die LabVIEW Design Rules zu halten, und da gibt's nur eine Antwort: nimm eine State Machine!
' schrieb:Lucki! zeig ihm doch nicht sowas, das ist ja quasi die Anleitung zum Spagetti-Code!
Da hast ja vollkommen recht, aber gesetzt den (zugegebenermaßen wenig realistischen Fall), daß es in der rauhen Wirklichkeit tatsächlich so simple VIs gibt wie das von Franky79, dann wird mit dem Hinweis auf einen Zustandsautomaten wirklich mit Kanonen auf Spatzen geschossen.
Und die Gefahr, daß Leute durch Lesen meines Beitrages irrevesibel geschädigt und nie wieder ein gutes Programm schreiben werden, ist ja nun gottseidank durch Deine Warnung entschärft.
Aber trotzdem, Du hast recht und ich übe Selbskritik: Ich hätte das nicht zumindest nicht als allgemeine Methode empfehlen dürfen - und leider habe ich genau das getan.
' schrieb:Und die Gefahr, daß Leute durch Lesen meines Beitrages irrevesibel geschädigt und nie wieder ein gutes Programm schreiben werden, ist ja nun gottseidank durch Deine Warnung entschärft.
Hab doch hoffentlich nicht nen Krieg entfacht,hm??
Ein wenig umfangreicher ist mein Programm mitlerweile schon, da ich aber ein programmiertechnisches
Wunderwerk bin und seit 1 Woche immer wieder mit so Kleinigkeiten kämpfe schick ich auch nur das was ich grade so wissen möchte...
Tja und nun bin ich an dieser State Maschine angelangt.... Schau ma mal ob ichs auf die Reihe krieg..
' schrieb:Hi Leute
Hab doch hoffentlich nicht nen Krieg entfacht,hm??
nö, ganz bestimmt nicht. Ich hab das eher als Aufforderung aufgefasst, nicht immer den Prinzipienreiter raushängen zu lassen. Ist ja auch manchmal schlimm mit mir - gerade in diesem Forum, andererseits bin ich halt der Meinung ein Anfänger sollte erstmal den "richtigen" Ansatz lernen, bevor er mit den schmutzigen Tricks anfängt - auch wenn sich das manchmal Oberlehrerhaft anhört.
Ein Fahranfänger lernt ja auch nicht zuerst, wie man im M5 über den Nürburgring rast, sondern lernt erstmal, Einkuppeln, Gasgeben, Verkehrsregeln, etc ...
>>ausserdem heist das immer noch Lutschfruchtbonbon