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 

Allgemeines Vorgehen zum Erstellen von SubVIs



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!

03.09.2010, 12:19 (Dieser Beitrag wurde zuletzt bearbeitet: 03.09.2010 12:23 von Matze.)
Beitrag #1

Matze Offline
LVF-Team
LVF-Team

Beiträge: 1.027
Registriert seit: Apr 2010

20xx
2010
DE_EN

7xxxx
Deutschland
Allgemeines Vorgehen zum Erstellen von SubVIs
Hi zusammen,

ich habe mich gerade gefragt, ob es nicht ein allgemeines Vorgehen gibt, um einen Blockdiagramm-Abschnitt in einem SubVI zusammen zu fassen.
Ich würde gerne einen bestimmten Code in ein SubVI packen, nur ist mir das anschließend zu unübersichtlich, da es zu viele Ein- und Ausgänge gibt. Natürlich könnte man ein paar in einem Cluster zusammenfassen, aber da fällt mir nichts sinnvolles ein.

Mir geht es um das folgende Beispiel, das ich gerne komplett in ein SubVI packen möchte (gerne auch über den "Umweg", erst 2 SubVIs zu erstellen und diese ggf. zu einem zusammen zu fassen).

   

Wie geht ihr bei do etwas vor?

Überlegt ihr, welche Ein- und Ausgänge gleich sind (Referenzen, ...) und fasst diese in einer Typendefinition zusammen?
So habe ich es teilweise sehr gut hinbekommen, wenn ich viele Werte durch mehrere SubVIs reichen muss und alle Zugriff darauf benötigen. Doch im vorliegenden Fall ist das ungeeignet.
Bei exakt gleichen Datentypen geht es auch über Arrays, nur hier nicht.

Und ich möchte ein SubVI haben, da ich genau diesen Abschnitt mehrmals benötige.
Die 3 Anzeigeelemente dienen nur zu Debug-Zwecken und entfallen hinterher.

Es wäre schön, wenn ihr eure Vorgehensweisen schildern könntet.

Die Konstante "0" (= Index) würde ich in meinem Fall als SubVI-Eingang nehmen und die beiden "Array Indizieren"-VIs damit verbinden (Index). Das nur als Egänzung, was jedoch eigentlich nichts zur Sache tut.

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.09.2010, 12:56
Beitrag #2

Martin Heller Offline
LVF-Stammgast
***


Beiträge: 250
Registriert seit: Feb 2010

2011 SP1
2008
EN

5232
Schweiz
Allgemeines Vorgehen zum Erstellen von SubVIs
Hallo Mechatroniker

Ist zwischen dem "RT-READ" und dem "RT-Scale..." ein FPGA Ref? Denn es ist nicht erkenntlich, wie der Ref durchläuft.
Ich weiss nicht wie du ein subVI aufbaust, aber schaue immer, dass ich oben links und oben rechts immer die Ref durchziehen kann.
Ich würde die "Debugg-Anzeigen" unten in der Mitte des sub-VI legen und die oberen als "Steurung" benützen (vielleicht hast ein Case im Sub)
Somit hast links und rechts mehr Platz (evt. Conector links und rechts auf 5 erhöhen).


mfg


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.09.2010, 14:50
Beitrag #3

Matze Offline
LVF-Team
LVF-Team

Beiträge: 1.027
Registriert seit: Apr 2010

20xx
2010
DE_EN

7xxxx
Deutschland
Allgemeines Vorgehen zum Erstellen von SubVIs
Hallo Martin,

gut, danke. Aber mir geht's prinzipiell mal darum, die ganzen Anschlüsse zu managen. Die stellen mein Problem dar.
Und ja, das ist eine Referenz auf ein FPGA-VI. Meist ist es so, wenn man sich aufs Relevate konzentriert, vergisst man doch das ein oder andere. *g*

Referenzen gehören meines Wissens auch laut NI Developer Guidelines nach oben und die Fehlercluster nach unten. Aber was bei mehreren Referenzen etc. ist, steht in keiner Richtlinie.

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.09.2010, 10:31
Beitrag #4

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Allgemeines Vorgehen zum Erstellen von SubVIs
' schrieb:Wie geht ihr bei do etwas vor?
Ich gehe immer "brachial" vor: Markieren und in SubVI umwandeln.

Dass dabei viele Ein-/Ausgänge entstehen, ignoriere ich im ersten Schritt. Im SubVI fasse ich die Ein/Ausgänge dann in entsprechende Cluster zusammen. Die sollten dann typisiert sein, noch Möglichkeit sogar strikt typisiert. Das SubVI hat dann im besten Falle nur noch zwei Ein- und zwei Ausgänge (jeweils Cluster + Error), ggf. einige Eingänge mehr.

Zitat:Überlegt ihr, welche Ein- und Ausgänge gleich sind
Überlegen tue ich eigentlich nicht. Der Aufwand steht in keinen Verhältnis zum Nutzen. Ist das SubVI das einzige seiner Art, führt obiges Verfahren immer sofort zum Ziel.
Stellt sich im Laufe der weiteren Programmentwicklung heraus, dass es wegen weiterer SubVIs oder wegen mehr Parameter notwendig ist, Ein/Ausgänge anzupassen, braucht man nur die strikten Typen zu ändern - der Rest geht quasi wie von alleine, da der Kompiler Fehler meldet, die lediglich behoben werden müssen.

Bei mir haben sich Überlegungen im Vorfeld immer als nutzlos erwiesen, da im Nachhinein genau die Vorüberlegungen nicht eingetreten sind, wohl aber die Sachen, die im Vorfeld keiner wollte/brauchte.

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
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Ein allgemeines Muster in einem Array suchen micheljoel2002 10 9.457 24.09.2010 18:39
Letzter Beitrag: jg
  Gibt es eine Möglichkeit SubVIs zu erstellen ohne dass diese in eine neue Datei ausgelagert werden? hans_p 2 3.913 29.05.2009 08:20
Letzter Beitrag: VDB
  Universelle SubVIs erstellen eg 8 4.391 28.01.2009 14:29
Letzter Beitrag: eg
  allgemeines zu subvis maze 7 8.613 17.05.2007 20:24
Letzter Beitrag: Y-P
  Erstellen von SubVIs mit sich anpassenden Ein- und Ausgangsdatentypen astraios 5 4.188 12.03.2007 16:02
Letzter Beitrag: astraios

Gehe zu: