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 

SUBVI´s



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!

13.01.2010, 10:24
Beitrag #1

flizzer82 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 152
Registriert seit: Sep 2009

11
-
kA

33100
Deutschland
SUBVI´s
Guten Moregen alle zusammen,
könnte mir jemand ganz schlicht und vor allem einfach erklären was die VOrteile bzw Nachteile von Subvi´s sind??
also einen Vorteil kenne ich schon Platzsparend und deshalb übersichtlicher

ABER SONST??

mfg
flizzer
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
13.01.2010, 10:45
Beitrag #2

BsaiboT Offline
LVF-Stammgast
***


Beiträge: 449
Registriert seit: Nov 2009

2010
2007
kA

22459
Deutschland
SUBVI´s
Wie du schon ganz richtig erkannt hast, besteht der Hauptvorteil darin, dass deinProgramm übersichtlicher und somit leichter lesbar wird.
Ausserdem ist der Debuggingprozess mit SubVI wesentlich einfacher zu händeln.

Nachteile fallen mir spontan keine ein, solange man immer eine kurze Beschreibung in den VI-Eigenschaften hinterlegt, um die Funktion des VI schnell in der Kontexthilfe nachlesen zu können, ohne das VI selbst öffnen zu müssen.
Wenn man dies nicht macht und auch das Icon unklar ist, dann ist somit der Nachteil eines SubVI der, dass man nicht auf die Schnelle sehene kann, was in dem Code-Abschnitt passiert und es öffnen muss.

Auch wenn die meisten es nicht gerne hören: eine gute Dokumentation zahlt sich immer aus!

Tobias Brüggemann
Dipl.-Ing.(FH) Nachrichtentechnik/Elektronik
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.01.2010, 10:57
Beitrag #3

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.696
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
SUBVI´s
SubVIs haben per se keine Nachteile - zumindest keine solchen, die eine Nichtverwendung rechtfertigen würden.

Der zweite, wichtige Punkt nach der Einhaltung des Datenflussprinzips beim Programmieren mit LabVIEW ist das Verwenden von SubVIs. In jeder Programmiersprache werden Unterprogramme verwendet, auch in LV.

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
13.01.2010, 10:59
Beitrag #4

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
SUBVI´s
' schrieb:... Wird das Array an ein SubVI überreicht, so wird der Speicher noch mal gebraucht um die Daten zu kopieren. Hierzu gibt es bei NI geeignete Dokumente die das beschreiben. ...

Beim Rücksprung aus einem SubVI kann man von LV eine Speicherfreigabe anfordern: Application control > Memory Control > Request Deallocation.vi

Wenn ich das richtig verstanden habe (bitte um Berichtigung falls ich falsch liege) geschiet die Werteübergabe i.d.R. by Value und nicht By Reference. D.h. es werden mehr Ressorcen verbraucht. -> Nachteil.

Der größte Vorteil liegt meiner Meinung nach darin, dass Algorithmen die mehrmals im gesamten Programm gebraucht werden, schnell und einfach implementiert werden können.



Gruß dimitri

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.01.2010, 11:06
Beitrag #5

flizzer82 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 152
Registriert seit: Sep 2009

11
-
kA

33100
Deutschland
SUBVI´s
Danke für die Antworten
Sehe ich es denn richtig wenn ich behaupte das ein Subvi eine kompremierung mehrer VI´s ist also fasse ich quasi "27000" VI´s zu einem zusammen sehe in meinem Blockdiagramm nur noch ein VI mit den ein und Ausgängen der "27000" VI´s.
Somit kann ich wenn ich mir einen Timer bastel diesen als Subvi speichern und dann immer in anderen VI´s benutzen? So könnte ich mir eine eigene Bibliothek aufbauen oder?? wenn es mein Sachverstand zulassen würdeSmile

kann man denn ein Subvi auch in dem Funktionstablett des Blockdiagramms einfügen?? wenn ja, wie geht das?Smile

mfg
flizzer
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.01.2010, 11:37
Beitrag #6

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
SUBVI´s
Du hast das richtig verstanden und Du kannst das auch in die Palette einfügen. Zuerst Deine VIs (oder auch LLBs) in den "User.Lib"-Ordner in Deinem LabVIEW-Ordner kopieren und dann unter "Tools"->"Advanced"->"Edit palette set" einfügen.

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
13.01.2010, 11:40
Beitrag #7

flizzer82 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 152
Registriert seit: Sep 2009

11
-
kA

33100
Deutschland
SUBVI´s
DANKE Y-P
aber der Sin deiner Antwort ist es meine Frage zu beantworten, denke ich mir mal so.
Aber wenn du antwortest habe ich imemr noch mehr Fragen jetzt zB was sind LLB´s höre ich jetzt zum erstmal ^^

Smile

mfg
flizzer
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.01.2010, 12:14
Beitrag #8

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.696
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
SUBVI´s
' schrieb:Sehe ich es denn richtig wenn ich behaupte das ein Subvi eine kompremierung mehrer VI´s ist also fasse ich quasi "27000" VI´s zu einem zusammen sehe in meinem Blockdiagramm nur noch ein VI mit den ein und Ausgängen der "27000" VI´s.
Hinweis:

Jedes VI ist immer auch gleichzeitig ein SubVI. Sobald du nämlich ein VI in ein anderes plazierst, ist dieses praktisch ein SubVI. Einen Unterschied zu machen zwischen VI und SubVI macht keinen Sinn.

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
13.01.2010, 12:20 (Dieser Beitrag wurde zuletzt bearbeitet: 13.01.2010 13:14 von Lucki.)
Beitrag #9

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

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
SUBVI´s
' schrieb:könnte mir jemand ganz schlicht und vor allem einfach erklären was die VOrteile bzw Nachteile von Subvi´s sind??
Die Frage läßt ist vielleicht falsch gestellt, dashalb bekommst Du auf der Frage nach den Nachteilen auch keine eindeutige Antwort.
Sinnvoller ist es zu fragen: Wann lohnt es sich ein SubVI zu verwenden und wann nicht?
Ursprünglich diente ja ein SubVI dazu, Code-Duplikate in unterscheidliche Teilen des Programms zu vermeiden. Da durch SUB-Vis ein Programm aber besser strukturiert wird, gehört es zum guten Programmierstil, auch bei einmaliger Verwendung Sub-Vis zu verwenden.
Die Frage ist nur: Ab wieviel Code lohnt es sich, ein SubVI anzulegen? Die Frage läßt sich wohl nicht allgemein beantworten, sicher ist nur: Spätestens wenn das Sub-VI Ikon mehr Platz beansprucht als der eigentliche Code, wird es Krampf. Und man muß auch die Mehrarbeiten beachten: Dokumentation, Erstellen von Ein/Ausgängen, Erstellung der Ikons, Zusammenfassung von Daten zu Clustern o.ä.. Diese Mühe sollte sich schon irgendwie lohnen. Auch ein Aspekt: Bei der Verbreitung von VIs, z.B hier im Forum, ist es lästig, ein VI mit SUBVIs posten zu müssen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.01.2010, 13:02
Beitrag #10

BsaiboT Offline
LVF-Stammgast
***


Beiträge: 449
Registriert seit: Nov 2009

2010
2007
kA

22459
Deutschland
SUBVI´s
Also wir arbeiten nach der Faustregel, dass eine Mainloop komplett auf dem Monitor sichtbar sein sollte. Wird das Programm so gros, dass dies nicht mehr geht, dann werden SubVi's erstellt und das Mainprogramm somit wieder lesbarer.

Wie gesagt, ist das nur eine Fausregel und es gibt genügend Projekte, in denen wir dieser Maxime nicht mehr folgen konnten, da das Programm zu komplex war.
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
  SubVI Funktionen verwenden, ohne SubVI Frontpanel (AVT Kamera) Allyoucaneat 3 8.844 25.08.2011 15:18
Letzter Beitrag: GerdW

Gehe zu: