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 

Adressenkonflikt vermeiden / Sub VI soll aussetzen



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!

10.07.2008, 17:45
Beitrag #1

Labview-Beginner Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 114
Registriert seit: Oct 2007

6.1
2007
kA

67705
Deutschland
Adressenkonflikt vermeiden / Sub VI soll aussetzen
Hi folks,

ich hadere gerade mit einem (oder eigentlich mehreren) Adressenkonflikten:

Das Hauptproblem liegt darin, dass ein Sub VI damit beschäftigt ist über eine Adresse ständig Daten zu erfassen (Temperaturabfrage). Dummerweise soll über diese Adresse auch manchmal ein Befehl an das Gerät selbst (z.B. Programmabbruch).

Sprich, wenn das VI sendet, soll das Sub VI nicht aktiv sein.

Ich habe das Problem bisher so gelöst, dass ich das Sub VI einfach in eine Case Strukture eingebunden habe. So lange der Abbruch Knopf auf False steht, wird brav das Sub VI ausgeführt. Sobald aber der Knopf auf True steht wird eben der Abbruch ausgelöst (und somit das Sub VI nicht ausgeführt).

Nun soll aber eine dritte Möglichkeit eingebunden werden: Und zwar das Programm nich direkt abzubrechen, sondern einfach anzuhalten. Und später wieder fortzuführen (wieder eine Sendung von Daten).

Vielleicht kommen später noch weitere Wünsche dazu, wie in das laufende Programm eingegriffen werden soll. Rolleyes

Anyway!

Also die Frage bleibt: Wie kann ich z.B. kurz ein Sub VI ausführen (es z.B. Daten senden lassen), während in der Zeit ein anderes Sub VI aussetzt?

Cheers.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
11.07.2008, 09:01 (Dieser Beitrag wurde zuletzt bearbeitet: 11.07.2008 09:14 von toaran_.)
Beitrag #2

toaran_ Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 237
Registriert seit: Feb 2007

2012
2006
EN

90763
Deutschland
Adressenkonflikt vermeiden / Sub VI soll aussetzen
Hi

wenn ich das richtig verstanden hab... brauchst du nur das subvi was pausieren soll und das was senden soll in ne case struktur zu packen .... wenn das eine dann das andere nicht ...

das funktioniert natürlich nur wenn deine subvis direkt aus dem hauptvi gestartet werden und nicht im hintergrund mittels referezen gestarten werden ...

dann bruchste ne notifier/queue komunikation mit start/stop/pause/etc

toaran
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.07.2008, 09:38
Beitrag #3

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Adressenkonflikt vermeiden / Sub VI soll aussetzen
' schrieb:Das Hauptproblem liegt darin, dass ein Sub VI damit beschäftigt ist über eine Adresse ständig Daten zu erfassen (Temperaturabfrage). Dummerweise soll über diese Adresse auch manchmal ein Befehl an das Gerät selbst (z.B. Programmabbruch).
Das Problem ist folgendes: Du hast eine Schnittstelle und mehrere, die diese eine Schnittstelle benutzen wollen.

Es ist aus diversen Gründen nicht möglich, dass mehrere gleichzeitig und unabhängig auf eine einzelne Schnittstelle zugreifen. Hier muss immer jemand her, der diese Zugriffe organisiert - also gemeinhin ein Treiber.

Die Lösung ist eigentlich ganz einfach: Ein quasi im Hintergrund ständig laufendes SubVI mit eine Statemachine, die durch eine Queue gesteuert wird. Das SubVI kann z.B. über Melder den aktuellen Zustand bekannt geben. Wenn einer mit der Schnittstelle irgendetwas machen will - lesen, schreiben oder sonstwas - muss der dies per Queue dem SubVI sagen. Dieses managert dann alles derart, dass es nicht zu Überschneidungen kommen kann. Wie das VI das macht und was das VI sonst noch alles möglicherweise automatisch macht, steht auf einem anderen Blatt.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
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
  EOF Fehler vermeiden chrissy 6 5.290 13.12.2016 08:26
Letzter Beitrag: chrissy
  Polling von Curser-Position in Waveform Graph vermeiden UFPhC 11 7.951 16.10.2014 12:00
Letzter Beitrag: Trinitatis
  Wie sehr großen Cluster vermeiden? Matze 10 8.501 31.10.2013 17:21
Letzter Beitrag: macmarvin
  val(sgnl) vermeiden Puma 7 6.517 05.08.2011 08:18
Letzter Beitrag: Kiesch
  Wert von numer. Bedienelement kontinuierlich erhöhen (Sprung vermeiden) lemmo 3 5.472 28.04.2011 18:14
Letzter Beitrag: Lucki
  Express-VIS - Warum sollte man sie vermeiden? Matze 8 7.343 28.04.2010 12:00
Letzter Beitrag: Matze

Gehe zu: