Anwendung des modularen Entwurfs in LabVIEW [message #4064] |
Fri, 09 March 2007 10:03 |
Peter Schieberle
Messages: 3 Registered: March 2007 Location: Geroldsgrün
|
occasional visitor |
From: *lear.com
|
|
Hallo *all,
ich würde hier gerne die Diskussion von http://forum.gsi.de/index.php?t=tree&th=1242&start=0&rid=0&a mp;S=8524bb595c8067ca73143f428b03a959#page_top fortsetzen.
Erstmal Danke an Holger Brand für die schnelle und fundierte Antwort.
Ein objekt-orientierter Ansatz in LabVIEW hört sich ja sehr vielversprechend an. Da ich noch keine Kenntnisse bezüglich der Integration von OOP in LabVIEW habe, kann ich mir an der Stelle kein Urteil erlauben. Allerdings habe ich bemerkt, daß in anderen Bereichen der Begriff „objektorientiert“ ja inzwischen marketingstrategisch recht inflationär verwendet wird, ohne die erforderlichen Sprachelemente zur Verfügung zu stellen.
Mich interessiert vor allem eine analytische Zerlegung eines großen Projekts in kleinere Teilaufgaben. Dazu reicht mir im ersten Ansatz eigentlich der module Entwurf, wenn die notwendigen Sprachmittel zur Verfügung stehen. An eine Objektorientierung möchte ich mich noch gar nicht wagen.
Ich muß auch gestehen, daß ich noch einige Defizite bezüglich Projektverwaltung (LabVIEW 8.x) und Objektmanagement habe (LabVIEW 8.20), da das aktuelle Kundenprojekt in LabVIEW 7.1 umgesetzt wird. Da ich in dieser Version das Attribut "privat" für ein Vi einer LLB nicht gefunden habe, befürchte ich, daß dies erst ab LabVIEW 8.x möglich ist.
Bye,
Peter
|
|
|
Re: Anwendung des modularen Entwurfs in LabVIEW [message #4066 is a reply to message #4064] |
Fri, 09 March 2007 17:40 |
|
Brand
Messages: 180 Registered: January 2004 Location: GSI - SB2 2.256
|
first-grade participant |
From: *dip0.t-ipconnect.de
|
|
Hi Peter,
LabVIEW ist im Prinzip ein Programmiersprache wie jede andere auch, nur halt graphisch und nicht Text-basiert, und erlaubt bedingt durch den Datenfluß das einfache Programmieren von parallelen Abläufen.
Der modulare Entwurf ist mit LabVIEW meiner Meinung nach auch gut möglich. Es bleibt aber natürlich die analytische Begabung des Entwicklers beim Programmentwurf gefragt. Diese wird durch keine Programmiersprache der Welt ersetzt. Daran ändert auch die Methodik nichts, funktional oder objeckt-orientiert. Die Analyse ist eine intellektuelle Leistung.
1. Man erzeuge ein neues VI und beschreibt sein Funktionalität/Verantwortlichkeit in der VI-Beschreibung (Kontexthilfe). Dieses VI kann ein UseCase-, ein Sequenz- oder Aktivitätsdigramm darstellen. Das hängt von der aktuellen Abstraktionsebene, die gerade im Fokus ist, ab.
1.1. Falls es sich um ein UseCase handelt, kann man in dieses weitere neue VIs einfügen, und damit das Blockdiagramm zu einem Sequenzdiagramm machen.
1.2. VIs in den Sequenz-VIs beinhalten die Aktivitäten.
1.3. Die Aktivitätsdiagramme beinhalten VIs mit konkreten Implementierungen, siehe Punkt 3.
2. Kontrollen und Indikatoren, die mit der Connector-Pane verbunden sind, definieren die Ein- und Ausgabe-Parameter. Ihre Kontexthilfe erläutern ihre Funktion. Cluster-Daten sollten als Typedef gespeichert werden.
3. Implementierung der Funktionalität.
3.1. Im ersten Schritt kann der zu implementierende Algorithmus als interaktive Benutzerabfrage gestaltet werden.
3.2. Im zweiten Schritt könnte eine Simulation implementiert werden. Die Möglichkeit einer Simulation erlaubt es auch, absichtlich Fehlerzustände zu erzeugen, die man in der realen Anwendung lieber nicht erleben möchte.
3.3. Im dritten Schritt wird dann der echte Algorithmus implementiert.
3.4. Die Umschaltung zwischen diesen drei Modi könnte über ein VI ermöglicht werden, dass den zubenutzenden Modus als Ausgabeparameter liefert.
Private und öffentliche VIs können per Konvention in entsprechen gekennzeichneten Verzeichnissen oder .llb-Dateien gespeichert werden. Hier ist natürlich die Disziplin der Entwickler gefragt, sich an die Konventionen zu halten. In LabVIEW 8.20 bieten die Libraries die Möglichkeit diese Disziplin zu erzwingen.
Gruß Holger
|
|
|
|
Re: Anwendung des modularen Entwurfs in LabVIEW [message #4069 is a reply to message #4068] |
Mon, 12 March 2007 11:04 |
Peter Schieberle
Messages: 3 Registered: March 2007 Location: Geroldsgrün
|
occasional visitor |
From: *lear.com
|
|
Hallo Holger,
Danke für die beiden Antworten. Ich habe mich am Wochenende mit den verschiedenen Informationen auseinandergesetzt und werde diese Ansätze in mein Projekt einfließen lassen. Bei Bedarf würde ich mich wieder an die Forumsgemeinde wenden.
Eine Frage noch: Inwieweit ist ein Upgrade von LabVIEW 7.0/7.1 auf 8.20 als kritisch zu bewerten. Welchen Aufwand bedeutet es ein mittleres Projekt (ca. 200 Vis.) in die Projektverwaltung zu integrieren.
Danke !
Bye,
Peter
|
|
|