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 

beenden von Flache Sequenzstruktur



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!

18.11.2014, 01:26 (Dieser Beitrag wurde zuletzt bearbeitet: 18.11.2014 07:23 von jg.)
Beitrag #1

Mido Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Oct 2014

8.6
2014
DE

10555
Deutschland
beenden von Flache Sequenzstruktur
Hallo Zusammen,

ich hab folgendes Problem: ich möchte ein DC-Gerät fernsteuern, ich habe das geschafft bis ein kleines Problem.
mein Programm sollte das Gerät so steuern, dass es sich nach einer bestimmten Zeit ein- und ausschalten.
Z.B. 5 min an, 10 Sec aus, 3 min an ...usw.
Also das läuft schon gut ..aber wenn ich diese Zeiten festlege und das Programm läuft, kann ich dann das Programm nicht mehr beenden (wenn dann nur mit dem Stop-Button).

meine Frage:
kann ich irgendwie die Flache Sequenzstruktur mit einem Bedienelement beenden ??
Oder kann man diese bestimmten Zeiten anderes programmieren, dass es ,wie ich beschrieben hab, funktioniert ??



unten ist mein Programm...vllt kann einer von euch mir dabei helfen.

für jeden Tipp bin ich sehr dankbar.

   

Edit jg: externer Bildlink gelöscht
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.11.2014, 07:30
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: beenden von Flache Sequenzstruktur
Die Standardantwort auf deine Probleme lautet:

1) Verwende eine State-Machine (Zustandsautomat) als Programmstruktur anstatt einer Flat Sequence
2) Anstatt z.B. 1x 50 Sekunden zu warten, warte 500x 100 ms, dann kannst du jederzeit unterbrechen

Gruß, Jens

P.S.: Anhänge bitte in Zukunft in Übereinstimmung mit den LVF-Regeln hier im Forum hochladen.

P.P.S.: Wozu musst du dauernd in einer While-Schleife dein Gerät so schnell es geht immer wieder anschalten. Langt das nicht einmal?

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
18.11.2014, 11:00 (Dieser Beitrag wurde zuletzt bearbeitet: 19.11.2014 08:28 von Lucki.)
Beitrag #3

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

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: beenden von Flache Sequenzstruktur
Wenn man einen Vorgang entweder nach einer verstrichenen Zeit, oder gegebenenfalls vorher mit einem Knopf beenden will, so eignet sich dafür die Wartefunktion nicht - außer man zerhäckselt die Wartezeit in kleine Häppchen, wie von Jens vorgeschlagen.
Ich nehmen dafür immer das VI "verstrichene Zeit". Es ist zwar eigentlich ein Express-VI, läßt ich aber auch als kleines Symbol darstellen, so dass das keiner merkt.
In die etwas andere Programmmierung muß man sich allerdings erst einarbeiten. Denn das VI "verstrichene Zeit" wartet selbst überhaupt nicht, es gibt bei Aufruf nur den boolschen Wert aus, ob die voreingestellte Wartezeit schon verstrichen ist oder nicht. Man muß es also ständig pollen - was aber innerhalb einer Schleife sowieso der Fall ist.
Die Empfehlung auf Umstellung in eine state-machine gilt aber weiterhin. Mir ging es hier nur um das Teilproblem, wie man diesen einen Case beendet
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.11.2014, 11:45
Beitrag #4

Mido Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Oct 2014

8.6
2014
DE

10555
Deutschland
RE: beenden von Flache Sequenzstruktur
(18.11.2014 07:30 )jg schrieb:  P.P.S.: Wozu musst du dauernd in einer While-Schleife dein Gerät so schnell es geht immer wieder anschalten. Langt das nicht einmal?

Hallo Jens,

vielen Dank für deinen Tipp.

Ich beschäftige mich seit kurzer Zeit mit Labview, deswegen habe ich nicht so viele Erfahrungen Sad

- eigentlich reicht es nur einmal anzuschalten, ich hab es bloß mit While-Schleife gemacht, damit ich wie gesagt die Flache Seq. beenden kann, was mir eigentlich nicht geholfen hat.

ich werde mein Programm so änderen, wie du vorgeschlagen hast ...


P.S: ich hänge meinen Programm und du kannt dir das angucken.

vielen Dank nochmal

Gruß

mido


8.6 .vi  DC_POWER_SUPPLY.vi (Größe: 33,51 KB / Downloads: 185)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.11.2014, 15:34
Beitrag #5

Mido Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Oct 2014

8.6
2014
DE

10555
Deutschland
RE: beenden von Flache Sequenzstruktur
Hallo Jens,

ich hab das programm so geändert, wie du vorgeschlagen hast . Es klappt aber nicht Sad
vllt mache ich wieder was falsches Undecided

kannst du mir vllt das ma korrigieren oder einen Tipp geben ??

Danke dir im Voraus


Mido



8.6 .vi  DC.vi (Größe: 18,91 KB / Downloads: 160)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.11.2014, 15:38 (Dieser Beitrag wurde zuletzt bearbeitet: 18.11.2014 15:41 von GerdW.)
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: beenden von Flache Sequenzstruktur
Hallo Mido,

du näherst dich einer (vollständigen) Statemachine an. Weiter so!

Zitat:Es klappt aber nicht
Das ist kein Fehler, wie er von LabVIEW ausgegeben wird. Kannst du das mal genauer beschreiben?

Zitat:vllt das ma korrigieren
Willst du jetzt Rechtschreib-Tipps haben? Smile

Zitat:oder einen Tipp geben ?
- Verknüpfe deinen STOPP-Button mittels einer OR-Funktion mit dem Stop-Flag aus deiner "Statemachine"!
- Da du in jedem State eine Wartezeit hast, kannst du die Wartefunktion aus der Case-Struktur herausnehmen und nach der Case-Struktur aufrufen. Aus jedem State wird dann die abzuwartende Wartezeit ausgegeben… (Allgemeiner Tipp: wenn man gleiche Code-Sequenzen innerhalb mehrerer Cases ausführt, kann man diesen Code (meist) auch nach der Struktur platzieren. Vorteil: Code ist nur einmal vorhanden…)

Außerdem:
Profil_ergaenzen

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.11.2014, 15:55
Beitrag #7

Mido Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Oct 2014

8.6
2014
DE

10555
Deutschland
RE: beenden von Flache Sequenzstruktur
(18.11.2014 15:38 )GerdW schrieb:  Das ist kein Fehler, wie er von LabVIEW ausgegeben wird. Kannst du das mal genauer beschreiben?

Hallo GerdW,

danke erstmal für deine Mühe.
Also das Programm läuft sehr gut, bis auf dieses kleines Problem Sad
...ich versuche dir zu erklären Tongue
Also wenn ich die Wartezeiten festlege z.B. (10 min AN, 1 min AUS ..usw), dann kann ich wärend diese Zeiten das Programm nicht mehr beenden...Es läuft bis diese Wartezeiten vergehen Undecided
Und das will ich ja beheben.

ich versuche jetzt deinen Tipp nachzugehen und ma gucken Smile

gruß

Mido


P.S.: ich werde mein Profil ergänzen Tongue
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.11.2014, 16:04
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: beenden von Flache Sequenzstruktur
Hallo Mido,

siehe Beitrag #2 und #3 weiter oben. Die beschreiben die Lösung…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.11.2014, 13:40
Beitrag #9

Mido Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Oct 2014

8.6
2014
DE

10555
Deutschland
RE: beenden von Flache Sequenzstruktur
(18.11.2014 16:04 )GerdW schrieb:  Hallo Mido,

siehe Beitrag #2 und #3 weiter oben. Die beschreiben die Lösung…

Hallo GerdW,

es ist mir nicht gelungen, diese Beschreibung zu realisieren Sad
ich kann leider die Wartezeit nicht kurzer machen, wie Jens beschrieben hat ( Anstatt z.B. 1x 50 Sekunden zu warten, warte 500x 100 ms)

vllt kannst du mir dazu noch einen Tipp geben ? ...ich bin ja LabVIEW-Anfänger.

Danke dir im voraus



Gruß
mido




8.6 .vi  DC.vi (Größe: 21,19 KB / Downloads: 181)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.11.2014, 13:49
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: beenden von Flache Sequenzstruktur

Akzeptierte Lösung

Hallo Mido,

hier mal die quick&dirty-Variante:
   

Wie schon gesagt:
- Warteschleife nach dem State
- Schleife, die ein kleines Intervall mehrfach wartet
- FOR-Loop mit Abbruchbedingung (gibt es die schon in LV8.6? Ist wirklich eine sehr alte LV-Version…)
- OR-Verknüpfung mit allgemeiner Abbruchbedingung

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
  Flache Sequenz/Zustandsautomat C.R. 3 5.051 20.09.2014 16:05
Letzter Beitrag: Lucki
  Fläche mit Formelknoten phoenix123 1 3.203 17.07.2014 16:20
Letzter Beitrag: jg
  Fläche in pV-Diagramm Onk123 9 7.691 07.08.2013 15:57
Letzter Beitrag: Onk123
  Flache Sequenz Stoppen MartinS90 7 7.572 18.06.2013 21:46
Letzter Beitrag: jg
  Flache Sequenz Stoppen Van Mummel 9 11.204 17.01.2011 15:55
Letzter Beitrag: Lucki
  Verzögerung in Sequenzstruktur oracle 3 6.838 06.08.2009 08:22
Letzter Beitrag: Lucki

Gehe zu: