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:

Steuerung zwischen zwei 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!

04.07.2016, 15:02
Beitrag #1

katanad Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Jun 2016

2011
2015
EN

70569
Deutschland
Steuerung zwischen zwei while Schleife
Hi zusammen,

ich bin neu mit Labview und auch Deutsch. Ich bitte um Entschuldigung.
Ich möchte eine Steuerungscode für Kamera machen. Die Funktion ist so, das Kamera zeigt immer live Bild und bewegt in einer Richtung mit Schrittmotor. Nach einem bestimmten Abstand mache ich ein Foto mit dem Kamera. Jetzt funktionieren die Code von Kamera und Schrittmotor getrennt richtig. Jetzt möchte ich den Prozess automatisiert laufen lassen. Ich habe mit Notifier versucht und ein vereinfachten Beispiel wie die Abbildung unten

   

Die While Schleife(random value) unten ist die Funktion für Kamera. (Wenn ich "Mess" gedrückt, das Kamera zeigt live Bild) Ich möchte die Steuerung von Motor direkt in den Ereignisstruktur machen. (Ein Event case einfügen und innerhalb eine While Schleife für Schrittmotor machen) Aber jetzt wie kann ich das Foto machen?(Ein Signal von Schrittmotor-schleife ausgeben und Kamera-schleife reagiert)

Bin ich richtig auf den Weg oder habe ich komplett falsch gemacht? Kann jemand mir ein paar Tipps geben?

Danke im Voraus
Liebe Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2016, 06:28
Beitrag #2

RMR Offline
Laborkater
**


Beiträge: 238
Registriert seit: Nov 2008

09f1 - 2010SP1(f4) - 2012SP1f5 - 2014 SP1f10 -2017f3
2009
DE_EN

76437
Deutschland
RE: Steuerung zwischen zwei while Schleife
Hallo,

du arbeitest in deinem Screenshot mit 2 queues.
Schaue dir bitte mal die Beispiele zu queues und notifiern an.

Hope it helps, Ralf aka RMR

100nF passen immer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2016, 07:35 (Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2016 07:37 von GerdW.)
Beitrag #3

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Steuerung zwischen zwei while Schleife
Hallo Ralf,

beide Notifier erhalten den selben Namen: damit könnte man die beiden Schleifen problemlos auf 2 subVIs verteilen!

@katanad:
- Warum müssen die Notifier ständig in den Schleifen neu angefordert und freigegeben werden? Schau dir die BeispielVIs an!
- Warum wird der Notifier in der oberen Schleife andauernd neu angefordert, aber nie freigegeben? Schau dir die BeispielVIs an!!!
- Ich hoffe, du machst etwas sinnvolles im Timeout-Event der oberen Schleife! Gibt es einen Grund, diesen mit einem Delay von 0ms aufzurufen?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2016, 10:51
Beitrag #4

RMR Offline
Laborkater
**


Beiträge: 238
Registriert seit: Nov 2008

09f1 - 2010SP1(f4) - 2012SP1f5 - 2014 SP1f10 -2017f3
2009
DE_EN

76437
Deutschland
RE: Steuerung zwischen zwei while Schleife
(05.07.2016 07:35 )GerdW schrieb:  beide Notifier erhalten den selben Namen: damit könnte man die beiden Schleifen problemlos auf 2 subVIs verteilen!

Hallo Gerd,

ok, wieder einwenig schlauer.
Für mich waren die Verbindungen von gestarteten Queues oder Notifiern immer irgendwie "normal".
Das diese über die Bezeichung inititialisiert werden wusste ich schlichtweg nicht.

Danke fürs "Augen öffnen".

Böde Frage, ergibt das nicht eine Menge overflow an code wenn ich jedesmal den Elementdatentyp neu bereitstellen muß?
Je nach Verwendung können das ja schon recht große Cluster sein.
Was macht der Compiler damit? Weiß das jemand?

Danke & Keep on... Ralf

100nF passen immer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2016, 11:45 (Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2016 11:47 von GerdW.)
Beitrag #5

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Steuerung zwischen zwei while Schleife
Hallo Ralf,

Zitat:ergibt das nicht eine Menge overflow an code wenn ich jedesmal den Elementdatentyp neu bereitstellen muß? Je nach Verwendung können das ja schon recht große Cluster sein.
Ich packe die Anfrage für eine solche Queue/Notifier mit komplexen Datentypen in ein subVI, welches ich dann aufrufe:
   
(Im Bild: Queues für mehrere Ausgabegeräte erzeugen, gesteuert über die Namen der Geräte.)
Und da der Cluster typdefiniert ist, hat man beim Lesen der Queue auch keine größeren Probleme zu erwarten…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2016, 12:08
Beitrag #6

RMR Offline
Laborkater
**


Beiträge: 238
Registriert seit: Nov 2008

09f1 - 2010SP1(f4) - 2012SP1f5 - 2014 SP1f10 -2017f3
2009
DE_EN

76437
Deutschland
RE: Steuerung zwischen zwei while Schleife
(05.07.2016 11:45 )GerdW schrieb:  Ich packe die Anfrage für eine solche Queue/Notifier mit komplexen Datentypen in ein subVI, welches ich dann aufrufe:

(Im Bild: Queues für mehrere Ausgabegeräte erzeugen, gesteuert über die Namen der Geräte.)
Und da der Cluster typdefiniert ist, hat man beim Lesen der Queue auch keine größeren Probleme zu erwarten…

Ok, das ist natürlich viel schöner als meine Copy/paste-Methode der Anzeigeelemente. Smile
Typdef ist klar, wird ja sonst sehr unübersichtlich beim unbundle und wartungsintensiv bei einer Änderung.

Danke dir.

Keep on, Ralf

100nF passen immer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2016, 12:33 (Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2016 12:46 von katanad.)
Beitrag #7

katanad Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Jun 2016

2011
2015
EN

70569
Deutschland
RE: Steuerung zwischen zwei while Schleife
(05.07.2016 06:28 )RMR schrieb:  Hallo,

du arbeitest in deinem Screenshot mit 2 queues.
Schaue dir bitte mal die Beispiele zu queues und notifiern an.

Hope it helps, Ralf aka RMR
Danke für die Antwort.


(05.07.2016 07:35 )GerdW schrieb:  Hallo Ralf,

beide Notifier erhalten den selben Namen: damit könnte man die beiden Schleifen problemlos auf 2 subVIs verteilen!

@katanad:
- Warum müssen die Notifier ständig in den Schleifen neu angefordert und freigegeben werden? Schau dir die BeispielVIs an!
- Warum wird der Notifier in der oberen Schleife andauernd neu angefordert, aber nie freigegeben? Schau dir die BeispielVIs an!!!

Ich habe das Beispiel General Notifier Example angeschaut und meine Code geändert.
   
Aber jetzt wenn ich Schließen drückt, funktioniert das Mess-Knopf nicht mehr. Was ich möchte ist, die obere Schleife läuft immer und die Notifier kann zweite, dritte Mal aufgerufen wird.


- Ich hoffe, du machst etwas sinnvolles im Timeout-Event der oberen Schleife! Gibt es einen Grund, diesen mit einem Delay von 0ms aufzurufen?
Im Timeout-Event steht gar nichts. Können Sie detailed erklären, wieso nicht direkt Timeout aufrufen.

Danke im Voraus
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2016, 13:15 (Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2016 13:16 von GerdW.)
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Steuerung zwischen zwei while Schleife
Hallo katanad,

Zitat:Aber jetzt wenn ich Schließen drückt, funktioniert das Mess-Knopf nicht mehr. Was ich möchte ist, die obere Schleife läuft immer und die Notifier kann zweite, dritte Mal aufgerufen wird.
Wenn du "schließen" betätigst, dann wird die untere Schleife beendet.
Wenn die Schleife beendet wurde, kannst du auch nichts mehr darin ausführen. Logisch, oder?
Wenn du dagegen weiterhin Code in der unteren Schleife ausführen willst, dann solltest du sie eben nicht beenden!

Zitat:Im Timeout-Event steht gar nichts. Können Sie detailed erklären, wieso nicht direkt Timeout aufrufen.
Wenn nichts im Timeout-Event passiert, dann musst du es auch nicht aufrufen. Und schon gar nicht mit 0ms Delay!
Lösche dieses Ereignis einfach, wenn du es nicht brauchst…

Beide Fragen lassen sich leicht beantworten, wenn du dir dein VI mal im Highlight-Modus anschauen würdest…
Ach ja: ein Klick auf den Aufräum-Button würde auch nicht schaden!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2016, 14:38
Beitrag #9

katanad Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Jun 2016

2011
2015
EN

70569
Deutschland
RE: Steuerung zwischen zwei while Schleife
(05.07.2016 13:15 )GerdW schrieb:  Hallo katanad,

Zitat:Aber jetzt wenn ich Schließen drückt, funktioniert das Mess-Knopf nicht mehr. Was ich möchte ist, die obere Schleife läuft immer und die Notifier kann zweite, dritte Mal aufgerufen wird.
Wenn du "schließen" betätigst, dann wird die untere Schleife beendet.
Wenn die Schleife beendet wurde, kannst du auch nichts mehr darin ausführen. Logisch, oder?
Wenn du dagegen weiterhin Code in der unteren Schleife ausführen willst, dann solltest du sie eben nicht beenden!

Vielleicht das Problem liegt an meinem Deutsch. Ich versuche noch mal zu erklären. Was Sie geschrieben haben, verstehe ich schon und es ist natürlich logisch.
Was ich geschrieben ist, "funktioniert Mess-Knopf nicht mehr". Das Mess Knopf hat nichts zu tun mit der unteren Schleife.
Ich meine, auf der Oberfläche steht zwei Knöpfe -- Mess und Schließen. Nachdem Mess-Knopf gedrückt, wird die untere Schleife ausgeführt. Bei mir funktioniert das Kamera und zeigt live Bild. Dann möchte ich Kamera schließen("schließen" bestätigen) für einige Hardware Einstellungen(z.B. Ausrichtung von Kamera ändern) Danach möchte ich wieder das Kamera einschalten,aber geht es nicht("funktioniert Mess-Knopf nicht mehr")

Ach ja: ein Klick auf den Aufräum-Button würde auch nicht schaden!

Danke im Voraus


Angehängte Datei(en)
11.0 .vi  forum.vi (Größe: 9,73 KB / Downloads: 151)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2016, 14:43 (Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2016 14:44 von GerdW.)
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Steuerung zwischen zwei while Schleife

Akzeptierte Lösung

Hallo katanad,

das mit dem Autocleanup hast du aber noch nicht bemerkt, oder? Big Grin

Schau mal im Anhang.
Es ist auch empfehlenswert, den Schaltmodus der Buttons sinnvoll einzustellen…


Angehängte Datei(en)
11.0 .vi  forum.vi (Größe: 9,65 KB / Downloads: 167)

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
  zwei Plots in einem X-Y Graphen mit zwei Achsen bachatero18 7 5.396 20.11.2019 15:06
Letzter Beitrag: Lucki
  Zeitmessung zwischen zwei Zustände Armeldonald 7 5.045 19.06.2019 17:16
Letzter Beitrag: Trinitatis
  Zwischen Regelung und Steuerung umschalten, Stellwert übergeben NewLabviewer 3 5.705 26.04.2016 15:15
Letzter Beitrag: GerdW
  Tiefpass mit for-Schleife vs. zwei Tiefpässe in Reihe sanjo 5 5.505 11.01.2013 11:54
Letzter Beitrag: sanjo
  Steuerung von zwei Servomotoren Mimo_LV002 1 3.695 12.09.2012 15:40
Letzter Beitrag: A.Berndsen
  Wert aus einer Geraden zwischen zwei Punkten ermitteln b.r. 1 4.817 24.05.2012 14:02
Letzter Beitrag: Lucki

Gehe zu: