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 

Reentrant Funktion in LabVIEW 7.0 deutsch



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!

23.05.2006, 07:34
Beitrag #1

xtro Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Nov 2005

Labview 2009 professional Edition
2004
de

41747
Deutschland
Reentrant Funktion in LabVIEW 7.0 deutsch
Ein nettes Hallo
Ich habe folgendes Problem und hoffe auf Hilfe von euch :-)

Ich muß eine Kommunikation für ein neues Gerät schreiben dieses habe ich auch soweit getan.
Jedoch ist jetzt folgendes Problem.
Einzelne VI's müssen zur selben Zeit ausgeführt werden weil sie jeweils in einer Schleife sind. Jetzt müßte ich meine Untervi's als Reentrant laufen lassen.
Jedoch finde ich nur unter VI Einstellungen ->Priorität und darunter Unterprogramme.
Ist dieses Richtig ??
Wenn ja ergibt sich noch ein problem denn in einem Unterprogramm muß ich leider eine Schleife ausführen. Um aber jedoch nicht zuviele Systemresourcen zu verschwenden müßen diese ja immer mit min. 1 ms getimt werden. Jedoch lässt dieses die VI-Einstellung -> Unterprogramme nicht zu, bekomme da immer eine Fehlermeldung.
Was heißt denn der Modus "Ablaufvariante Ausführung" ?? Denn dieses kann man ja auch nochmals einstellen.

Hoffe habe mich nicht zu missverständlich ausgedrückt

Vielen Dank für die Hilfe im voraus
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.05.2006, 08:29
Beitrag #2

A.Berndsen Offline
LVF-Team
LVF-Team

Beiträge: 2.437
Registriert seit: Feb 2005

8.2.1 - 2011
2004
DE

724xx
Deutschland
Reentrant Funktion in LabVIEW 7.0 deutsch
Hi xtro,

meines Wissens reentrant = ablaufinvariant.
Hab's aber bisher noch nicht gebraucht und auch noch nicht versucht.

Wenn ich mal Zeit habe programmier ich was rekursives, wobei mir
ein ein NI-Techniker mal erzählt hat, dass das nicht geht. Lol

Grüße
Andreas

Geht nicht, gibts nicht!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.05.2006, 08:47
Beitrag #3

xtro Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Nov 2005

Labview 2009 professional Edition
2004
de

41747
Deutschland
Reentrant Funktion in LabVIEW 7.0 deutsch
Danke für deine Hilfe

Meine Meinung ist es müßte Unterprogram und dann noch zusätzlich ablaufvariant sein. Das würde mir dann auch die Sache mit den nicht getimten Schleifen erklären. Zumindest ist das wohl so wenn mann Microcontroller programmiert sagte mir mein Kollege der dieses nur ausschließlich macht.
Bin auf dein Beispiel gespannt :-)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.05.2006, 07:01
Beitrag #4

Svenni Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 227
Registriert seit: Mar 2005

7.1, 8.0, 8.2, 8.21, 8.5, 8.6, 2009, 2010, 2011, 2012, 2013, 2014
2000
DE

23843
Deutschland
Reentrant Funktion in LabVIEW 7.0 deutsch
Hallo,

ich nutze ablaufinvariante SubVI's sehr häufig. In der deutschen Version ist die Einstellung unter Eigenschalten des VI's->Ausführung->Ablaufinvariante Ausführung. Sonsta habe ich nichts geändert. Läuft sehr gut.
Ich nutze es, um sechs Platinen gleichzeitig zu testen.
Hier mal ein paar Schreenshots.
   

   

Hoffe, dass die Bildeer etwas helfen.

Gruß
sven
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.05.2006, 07:53
Beitrag #5

xtro Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Nov 2005

Labview 2009 professional Edition
2004
de

41747
Deutschland
Reentrant Funktion in LabVIEW 7.0 deutsch
Ja vielen Dank für die Hilfe
Wie gesagt mit dieser Funktion von LabVIEW kannte ich mich nicht aus.
Weißt du denn was der AUsführungsmodus Unterprogramm bedeutet ??
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
24.05.2006, 14:22
Beitrag #6

Svenni Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 227
Registriert seit: Mar 2005

7.1, 8.0, 8.2, 8.21, 8.5, 8.6, 2009, 2010, 2011, 2012, 2013, 2014
2000
DE

23843
Deutschland
Reentrant Funktion in LabVIEW 7.0 deutsch
Hallo,

habe mal den Text aus der LabVIEW-Hilfe kopiert. Dort wird die Funktion erklärt.

Zitat:Prioritätslevel "Subroutine"
Das Prioritätslevel Subroutine ermöglicht es einem VI, so effizient wie möglich ausgeführt zu werden. VIs, die mit dieser Priorität laufen, müssen sich die Ausführungszeit nicht mit anderen VIs teilen.

Wenn ein VI auf dem Prioritätslevel Subroutine ausgeführt wird, dann übernimmt es die Steuerung des Threads, in dem es ausgeführt wird und wird im selben Thread wie das aufrufende VI ausgeführt. Selbst dann, wenn das andere VI sich auf dem Prioritätslevel Subroutine befindet, kann kein anderes VI in diesem Thread ausgeführt werden bis das Unterprogramm-VI zu Ende ausgeführt ist. In einer Applikation mit nur einem Thread wird kein anderes VI ausgeführt. Bei Ausführungssystemen bearbeitet der Thread, der die Unterprogramme ausführt, keine anderen VIs. Der zweite Thread des Ausführungssystems kann gemeinsam mit anderen Ausführungssystemen jedoch weiterhin VIs ausführen.

Die Ausführung von VIs mit Unterprogramm-Priorität wird rationalisiert, so dass Bedien- und Anzeigeelemente des Frontpanels nicht aktualisiert werden, wenn das Unterprogramm gerade aufgerufen wird. Das Frontpanel eines VIs mit Unterprogramm-Priorität gibt keine Auskunft über seine Ausführung.

Ein Subroutine-VI kann andere Subroutine-VIs aufrufen, nicht aber ein VI mit einer anderen Priorität. Wenn Sie den Speicherbedarf in einem SubVI minimieren wollen, das einfache Berechnungen ausführt, dann verwenden Sie das Prioritätslevel Subroutine.

Da Unterprogramme nicht mit der Warteschlange interagieren sollen, können sie auch keine andere Funktion aufrufen, mit deren Hilfe LabVIEW sie aus der Schlange herausnehmen könnte. Das bedeutet auch, dass sie die Warten-, GPIB-, VISA- oder Dialogfeld-Funktionen nicht aufrufen können.

Unterprogramme verfügen über ein zusätzliches Feature, das bei zeitkritischen Anwendungen sehr hilfreich sein kann. Wenn Sie ein SubVI mit der rechten Maustaste anklicken und Diese Subroutine übergehen, wenn beschäftigt aus dem Kontextmenü auswählen, übergeht das Ausführungssystem den Aufruf, wenn das Unterprogramm gerade in einem anderen Thread ausgeführt wird. Das kann bei zeitkritischen Schleifen sehr hilfreich sein, bei denen das Ausführungssystem die Operationen übergeht, die das Unterprogramm ausführt und wenn Sie die Verzögerung durch das Warten auf die Beendigung des SubVIs vermeiden möchten. Wenn Sie die Ausführung eines SubVIs übergehen, erhalten alle Ausgänge des SubVIs den Standardwert für das Anzeigeelement auf dem Frontpanel des SubVIs.

Gruß
sven
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
  Excel Funktion "TAGE" in LabView derandyk 11 7.117 27.04.2021 14:35
Letzter Beitrag: jg
  LabVIEW Begriffe Englisch/Deutsch Übersetzung Annemike 3 4.206 10.01.2017 11:01
Letzter Beitrag: GerdW
  Reentrant VI´s debuggen NoWay 2 6.787 07.07.2015 13:59
Letzter Beitrag: Kiesch
  non-reentrant Sub-VIs in unabhängigen Applikationen Nordvestlys 2 2.754 02.03.2015 11:44
Letzter Beitrag: Nordvestlys
  Verständnisfrage zu reentrant VI´s NoWay 1 4.260 27.05.2014 09:50
Letzter Beitrag: gottfried
  reentrant und subpanel raeuberfisch 4 4.107 01.03.2013 06:56
Letzter Beitrag: raeuberfisch

Gehe zu: