relevanteLernerfolgeeinwesentlicherFaktor. - ciando.com · LabVIEW zusammenfasst, ordnet und...

29

Transcript of relevanteLernerfolgeeinwesentlicherFaktor. - ciando.com · LabVIEW zusammenfasst, ordnet und...

Im Unterricht und Studium sind schnelle und

relevante Lernerfolge ein wesentlicher Faktor.

Sie fördern die Motivation und sind wichtiger

Wegbereiter für Innovationen. Mit den Tools

von NI sind Studierende in der Lage, auch mit

komplexen Systemen zu experimentieren,

um Probleme zu erkennen und schnell

praktische Lösungen zu erarbeiten.

Erfahren Sie mehr zum praxisnahen Lernenunter ni.com/academic

myRIO, LabVIEW, Schnittstellenkarte von Quanser Mechatronics für NI ELVIS, CompactRIO

©2017 National Instruments. Alle Rechte vorbehalten. CompactRIO, LabVIEW, National Instruments, NI und ni.com sind Marken von National Instruments. Andere erwähnte Produkt- und Firmennamensind Marken oder Handelsmarken der jeweiligen Unternehmen. 29186

V E R SU CH EN

VERSTEHEN

ERKENNEN

29186_Academic_Ad_170x240_DEU.indd 1 4/10/17 9:15 AM

Der Onlineservicebietet unterwww.vbm-fachbuch.de/infoclicknach Codeeingabe zusätzlicheInformationen und Aktualisierungenzu diesem Buch.

In 2 Schritten zum Onlineservice

1. Einfach www.vbm-fachbuch.de/infoclickaufrufen.

2. Den unten stehenden Zugangscode in dieSuchleiste eingeben und bestätigen.

Sofern Aktualisierungen oder Zusatz-informationen zu Ihrem Buch bereitstehen,werden diese anschließend unterhalb derEingabemaske aufgeführt.

Ihr persönlicher Zugangzum Onlineservice

Infoclick_170x240.indd 1Infoclick_170x240.indd 1 11.04.2016 11:54:2411.04.2016 11:54:24

jbeck
Schreibmaschinentext
jbeck
Schreibmaschinentext
341004990002
jbeck
Schreibmaschinentext

Dieses Buch wird mit einer CD-ROM ausgeliefert, die wir Ihnen gerne kostenlos zusenden:[email protected].: 0931-418-2419Fax: 0931-418-2660 ________________________________________________________ _________________________________________

MSc. Dipl.-Ing. (FH)Falk Wurster

www.vikings.softwareCERTIFIED ARCHITECTS

Ihr Architekten TeamLabVIEW und .NET

Dipl.-Ing. (FH)Karsten Dallmeyer

Kurt Reim

LabVIEW-Kurs

Grundlagen, Aufgaben, Lösungen

2, aktualisierte Auflage

Vogel Business Media

ReimLabVIEW-Kurs.indd 3 3/31/2017 2:36:39 PM

Dipl.-Ing. Kurt ReimJahrgang 1947begann seine berufliche Entwicklung mit einer Lehreals Elektromechaniker. Es folgten ein Studium an derFachhochschule und Ingenieurtätigkeit, Studium ander TU Berlin, 5 Jahre Tätigkeit als wissenschaftlicherMitarbeiter und 7 Jahre als Dipl.-Ing. Seit 1991 ist erLehrer an einer Technikerschule in Nürnberg.

Weitere Informationen:www.vbm-fachbuch.de

http://twitter.com/vbm-fachbuch

www.facebook.com/vogel.buchverlag

www.vbm-fachbuch.de/rss/buch.rss

Alle in diesem Buch enthaltenen Programme,Verfahrenund elektronischen Schaltungen wurden nach bestemWissen erstellt und mit Sorgfalt getestet. Dennoch sindFehler nicht ganz auszuschließen. Aus diesem Grundist das im vorliegenden Buch enthaltene Programm-Material mit keiner Verpflichtung oder Garantie ir-gendeiner Art verbunden. Autor und Verlag überneh-men infolgedessen keine Verantwortung und werdenkeine daraus folgende oder sonstige Haftung überneh-men, die auf irgendeine Art aus der Benutzung diesesProgramm-Materials oder Teilen davon entsteht.

ISBN 978-3-8343-3410-72. Auflage. 2017Alle Rechte, auch der Übersetzung, vorbehalten. KeinTeil des Werkes darf in irgendeiner Form (Druck,Fotokopie,Mikrofilm oder einem anderen Verfahren)ohne schriftliche Genehmigung des Verlages reprodu-ziert oder unter Verwendung elektronischer Systemeverarbeitet, vervielfältigt oder verbreitet werden. Hier-von sind die in §§ 53, 54 UrhG ausdrücklich genann-ten Ausnahmefälle nicht berührt.Printed in GermanyCopyright 2014 byVogel Business Media GmbH & Co. KG,WürzburgFotolia-Titelgrafik:© Mademoiselle Bézier - Fotolia.com

ReimLabVIEW-Kurs.indd 4 3/31/2017 2:36:40 PM

jbeck
Schreibmaschinentext
E-Book ISBN 978-3-8343-6222-3

5

Geleitwort

Allen Menschen Zugang zu sauberem Wasser ermöglichen. Verbesserungen in derMedizintechnik vorantreiben. Das menschliche Gehirn rekonstruieren. Solarenergiewirtschaftlich machen. All dies sind nur einige wenige der so genannten «Grandchallenges», die die National Instruments Academy of Engineering vor einiger Zeitals die größten Herausforderungen der Menschheit ausgerufen hat und die es giltzu lösen. Diese dringendsten Herausforderungen sind es, die uns dazu antreiben, zuforschen und zu entwickeln.Albert Einstein bemerkte hierzu einst treffend: «Probleme kann man niemals mitderselben Denkweise lösen, durch die sie entstanden sind.» Für die heutigen Tech-niker, Ingenieure, Studenten und Forscher bedeutet dies, neue systembasierte Lö-sungen mit bis dato noch nie dagewesener Funktionalität zu entwickeln. Um dengroßen Herausforderungen begegnen zu können, müssen die Systeme von morgenwesentlich mehr Fähigkeiten bieten, wodurch sie automatisch erheblich komplexerwerden. Und in der Tat verändern sich Technologien im Moment so schnell wie niezuvor.Alle Branchen erleben gerade eine Konvergenz der Technologien, die ebenfallszu einer erhöhten Komplexität der jeweiligen Systeme führt. Das betrifft autonomeFahrzeuge ebenso wie Smartphones, Halbleiterchips und smarte Fabriken im Zeit-alter von Industrie 4.0.Und immer mehr Funktionen dieser Technologien werden in Software definiert.Aber Software ist nicht gleich Software. Zahlreiche wissenschaftliche Erkenntnissebelegen, dass das menschliche Gehirn bildhafte Darstellungen und Eindrückeschlichtweg besser erfassen kann als textuelle Informationen oder z.B. abstrakteHardware-orientierte Codierung. Dies ist auch nicht verwunderlich, denn bereitsim Kindesalter reagieren wir – lange bevor wir das Lesen und Schreiben erlernen,ja sogar lange, bevor wir Wörter benutzen – auf visuelle Eindrücke und können inder Regel räumliche und bildhafte Informationen verarbeiten und darauf anspre-chen. Auch im naturwissenschaftlichen Umfeld verwenden wir häufig Datenfluss-diagramme, Schaltbilder und Ähnliches. Traditionell werden in der Vorphase derRealisierung von Anwendungen vertraute papierbasierte Visualisierungsschematawie Signalflussdiagramme,Ablaufdiagramme, Petri-Netze, aber auch einfache Ent-wurfsskizzen und andere bildorientierte Paradigmen als Beschreibungsmittel einge-setzt, die sodann in der Realisierungsphase von Software-Ingenieuren in maschi-nennahen Code übersetzt werden.Nicht zuletzt deshalb orientierte sich der heutige Business and Technology Fel-low und Mitbegründer der Firma National Instruments, Jeff Kodosky, Anfangder Achtzigerjahre bei der Entwicklung von LabVIEW nicht etwa an der zugrun-deliegenden Hardware, sondern an den kognitiven Fähigkeiten des Menschen.Mit LabVIEW schuf er auf der Basis einer grafischen Datenflussmaschine einevöllig neue Art der Mensch-Maschine-Kommunikation. Diese grafische Pro-grammierumgebung kombiniert den Datenfluss und die strukturierte Program-mierung miteinander und enthält gleichzeitig alle Elemente, die eine moderneEntwicklungsumgebung aufweisen muss. Auf diese Weise konnten Technikerund Ingenieure erstmalig ihre Mess- und Steueraufgabe anhand der ihnen ver-trauten Denkmodelle, nämlich anhand von Blockschaltbildern, entwerfen undimplementieren.

6 Geleitwort

Mittlerweile hat sich LabVIEW als eine Plattform für eine Vielzahl von technischenund wissenschaftlichen Anwendungen in allen erdenklichen Industriezweigen eta-bliert. Warum? Ganz einfach: Schon der Name «LabVIEW» (Laboratory VirtualInstrumentation Engineering Workbench) deutet auf den Einsatz im technisch-naturwissenschaftlichen Umfeld hin. Es handelt sich nämlich um eine Engineering-Werkbank zur Erstellung von virtuellen Instrumenten.Mit seiner grafischen Programmiersyntax zum einfachen Visualisieren, Entwerfenund Implementieren technischer Systeme ist LabVIEW ein wertvollesWerkzeug, dasPrüfzeiten reduziert, Erkenntnisse auf Grundlage gesammelter Daten liefert undAnwender bei der Umsetzung ihrer Ideen unterstützt. Auch bietet es weitreichendeKompatibilität zu anderer Software, seien es alternative Entwicklungsansätze oderquelloffene Plattformen, so dass alle verfügbarenWerkzeuge genutzt werden können.Da mit jeder neuen Version von LabVIEW auch neue Funktionen hinzukommen,ist die Software mittlerweile zu einer mächtigen und umfassenden Plattform heran-gewachsen.Mein herzlicher Dank gilt daher Herrn Kurt Reim dafür, dass er mit diesem Buch-projekt allen LabVIEW-Neulingen, insbesondere Lernenden an Technikerschulen,den Einstieg in die Struktur dieser Programmiersprache vermittelt und die Schülernach und nach an die Software heranführt. Dazu tragen nicht zuletzt die zahlreichenÜbungsbeispiele und dazugehörigen Musterlösungen bei, die dem Leser ermöglichen,das angewandteWissen in die Praxis umzusetzen. Somit liegt dem Lernenden, aberauch erfahreneren LabVIEW-Anwendern ein Buch vor, das nicht nur Theorie undPraxis miteinander verbindet, sondern aufgrund der im theoretischen Teil aufgelis-teten Funktionen und Eigenschaften auch als Nachschlagewerk für die alltäglicheNutzung von LabVIEW dient.

München, im März 2017

Rahman JamalGlobal Technology & Marketing Director, National InstrumentsVisiting Professor, Chinesisch-Deutsche Hochschule für Angewandte Wissenschaf-ten der Tongji-Universität

ReimLabVIEW-Kurs.indd 6 3/31/2017 2:36:40 PM

7

Vorwort

Was ist LabVIEW?LabVIEW ist eine Entwicklungsumgebung, mit deren Hilfe Programme für mess-,steuer- und regelungstechnische Anwendungen erstellt werden können. Verwendetwird dazu die grafische Programmiersprache G, die zur Abbildung technischerProzesse entwickelt wurde. Sie unterscheidet sich von einer textorientierten Sprachedadurch, dass Funktionsblöcke dargestellt werden, die – entsprechend miteinanderverbunden – den Datenfluss eines Programms abbilden.Ein wesentliches Merkmal von LabVIEW ist die Möglichkeit, physikalische Signa-le in das Programm einzulesen, zu verarbeiten und visuell darzustellen. Dadurchkann ein LabVIEW-Programm nicht nur ein Messgerät ersetzen, sondern es bietetdem Benutzer die Möglichkeit, sich sein eigenes, auf die Messaufgabe zugeschnit-tenes Messgerät zu entwerfen. Ein LabVIEW-Programm bezeichnet man deshalbals VI (Virtuelles Instrument).Diesem Buch liegt eine Studentenlizenz der LabVIEW-Version 2016 bei, die nachFreischaltung über National Instruments einsetzbar ist.

Hinweise zum BuchJe länger man mit LabVIEW arbeitet, desto mächtiger und umfangreicher erscheintes. Paletten und Menüs liefern eine Vielzahl von Bedien- und Anzeigeelementen undeine nicht enden wollende Anzahl von Bearbeitungsfunktionen. Einsteiger sinddavon oft irritiert, wenn nicht sogar ratlos.Dieser vorliegende Kurs soll allen Einsteigern kurz und knapp die ersten Schritte indie LabVIEW-Welt erleichtern. Er basiert auf einem Skript zu der Lehrveranstaltung«Computergestützte Messtechnik» an der Rudolf-Diesel-Fachschule in Nürnberg.Ziel war es, den Schülern einen Überblick über die Struktur von LabVIEW zu ver-schaffen und sie dann Schritt für Schritt mit den wesentlichen Bausteinen der Pro-grammiersprache bekannt zu machen. Jedes Kapitel liefert zuerst eine kurze theo-retische Zusammenfassung der wichtigsten Funktionen und Eigenschaften einesThemas, danach bieten darauf abgestimmte Übungsaufgaben die Möglichkeit, dasErlernte zu sichern und zu festigen. Nach dem Durcharbeiten des Buches besitzt derSchüler eine solide Grundlage, um sich selbstständig in weitere Themenkreise vonLabVIEW einzuarbeiten.Bestimmt kann das Buch auch fortgeschrittenen Anwendern hilfreich sein, da es imTheorieteil wie eine «Formelsammlung» viele Eigenschaften und Funktionen vonLabVIEW zusammenfasst, ordnet und übersichtlich präsentiert.Objekte von LabVIEW enthalten sehr viele Funktionalitäten, so dass es unmöglichist, diese alle zu beschreiben. Das ist in einem Buch auch nicht notwendig, denn diebeste Beschreibung liefert LabVIEW selbst in seiner Hilfe-Funktion. Da dies dieoffizielle Referenz von LabVIEW ist, wird bei der Erklärung von Aufgaben auchhäufig darauf verwiesen.Obwohl die Beschreibungen in der Hilfe-Funktion oft sehr allgemein und dadurchetwas abstrakt formuliert sind, sollte man sie unbedingt häufig nutzen, da zu vielenThemen auch Verweise auf Beispielprogramme enthalten sind.In diesem Buch beschränken sich die Erklärungen daher nur auf die für Bearbeitungund Lösung der Aufgaben notwendigen Kenntnisse, d.h., aus Menüs werden nur

8 Vorwort

konkret benötigte Punkte und der Umgang damit besprochen. Auch die dargestell-ten Bildschirmkopien (Screenshots) zeigen nicht immer die vollständigen Menüs an,sondern beschränken sich aus Platzgründen auf die im Text besprochenen Punkte.Die Übungsaufgaben sind so ausgewählt, dass damit ein möglichst breites Spektruman unterschiedlichen Themen, Methoden und Eigenschaften von LabVIEW abge-deckt wird.Einige der vorgestellten Beispiele sind anwendungstechnisch gesehen vielleicht etwaszu einfach, dadurch sind aber die zugrunde liegenden Funktionen besser zu verste-hen.Ein wichtiger Punkt dieses Buches ist nicht nur die Bereitstellung einer Anzahl vonÜbungsaufgaben, sondern auch die für einen Lernerfolg unbedingt notwendigenLösungen dazu.Wie aber jeder Programmierer weiß, bieten sich bei einem Programm-entwurf immer mehrere Lösungen an. Die vorgestellte Lösung ist also nicht «dierichtige», sondern eine mögliche.Weiterhin findet jeder geübte Nutzer von LabVIEWin vielen vorgestellten Programmen Möglichkeiten zur Verbesserung oder Erweite-rung.Aus Platzgründen wurde hier darauf verzichtet. Ebenso wird die sehr umfang-reiche Fehlerbehandlung von LabVIEW nur in einem Kapitel prinzipiell angedeutet.Abschließend möchte ich mich noch bei allen Schülern bedanken, die durch ihrerege Mitarbeit am Zustandekommen des Buches beteiligt waren. Der Vogel BusinessMedia danke ich für die gute Zusammenarbeit. Anregungen und Verbesserungsvor-schläge aus dem Leser- und Benutzerkreis nimmt der Verlag gerne entgegen.Alle Aufgaben des Buches stehen dem Leser zur Ausführung als VI zur Verfügung.Die Programmfunktion kann getestet werden, das Blockdiagramm ist jedoch ge-sperrt.Anfragen können gerne an folgende E-Mail-Adresse gerichtet werden:[email protected]

Nürnberg Kurt Reim

ReimLabVIEW-Kurs.indd 8 3/31/2017 2:36:40 PM

9

Inhaltsverzeichnis

Vorwort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1 Entwicklungsumgebung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.1 Entwurf eines Virtuellen Instruments (VIs) . . . . . . . . . . . . . . . . . . 15

1.1.1 Startfenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.1.2 Frontpanel und Blockdiagramm . . . . . . . . . . . . . . . . . . . 15

1.2 Arbeiten in den Fenstern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171.2.1 Bearbeitung Frontpanel . . . . . . . . . . . . . . . . . . . . . . . . . . 181.2.2 Bearbeitung Blockdiagramm . . . . . . . . . . . . . . . . . . . . . . 19

1.3 Ausführen eines VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211.4 Werkzeugpalette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231.5 Kontextmenü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

1.5.1 Kontextmenü von Bedien- und Anzeigeelementen . . . . . . 241.5.2 Kontextmenü von Funktionsobjekten im Blockdiagramm 251.5.3 Kontextmenü einer Verbindungsleitung . . . . . . . . . . . . . . 26

1.6 Hilfsmittel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261.6.1 Beispiele suchen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261.6.2 LabVIEW-Hilfe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271.6.3 Kontexthilfe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271.6.4 Hilfsmittel im Bearbeitungsmodus . . . . . . . . . . . . . . . . . . 281.6.5 Hilfsmittel im Ausführungsmodus . . . . . . . . . . . . . . . . . . 29

1.7 Umgang mit Objekten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301.7.1 Markieren von Objekten . . . . . . . . . . . . . . . . . . . . . . . . . 301.7.2 Objektgröße ändern . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

1.8 Express-VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321.9 Diverses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

1.9.1 Passwortschutz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331.9.2 EXE-Programm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331.9.3 Blockdiagramm neu zeichnen . . . . . . . . . . . . . . . . . . . . . 331.9.4 VI speichern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331.9.5 VI ausdrucken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341.9.6 Tastenkombinationen (Shortcuts) . . . . . . . . . . . . . . . . . . 34

2 Numerische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352.1 Bedienelemente zur Eingabe numerischer Daten (Datenquellen) . . . . 352.2 Anzeigeelemente zur Ausgabe numerischer Daten (Datensenken) . . . . 352.3 Formelknoten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392.4 Ausdrucksknoten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

3 Boolesche Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513.1 Vergleichen numerischer Werte . . . . . . . . . . . . . . . . . . . . . . . . . . . 523.2 Logische Verknüpfungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

ReimLabVIEW-Kurs.indd 9 3/31/2017 2:36:41 PM

10 Inhaltsverzeichnis

4 Schleifen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634.1 While-Schleife . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644.2 For-Schleife . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654.3 Ablaufreihenfolge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

5 Graphische Anzeigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815.1 Signalverlaufsdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825.2 Signalverlaufsgraph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845.3 XY-Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6 Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 956.1 Boolesche Case-Struktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 956.2 Numerische Case-Struktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966.3 Ringelement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976.4 Enum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

7 Sequenz und lokale Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1077.1 Sequenz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1077.2 Gestapelte Sequenz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1097.3 Lokale Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

8 SubVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158.1 Erstellen eines SubVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158.2 Benutzung des SubVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1168.3 Automatische Erstellung eines SubVI . . . . . . . . . . . . . . . . . . . . . . 117Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

9 Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

10 Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13310.1 Erstellen eines Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13310.2 Reihenfolge der Cluster-Elemente . . . . . . . . . . . . . . . . . . . . . . . . . 13410.3 Fehler-Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

11 Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14311.1 Erstellen eines Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14311.2 Lottozahlengenerator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14411.3 Autoindizierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

ReimLabVIEW-Kurs.indd 10 3/31/2017 2:36:41 PM

Inhaltsverzeichnis 11

12 Datei-I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15312.1 Speichern von Daten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15312.2 Pfadangabe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15712.3 Lesen von Dateien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

13 Messen mit LabVIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16713.1 Der Befehlssatz SCPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16813.2 Measurement & Automation Explorer . . . . . . . . . . . . . . . . . . . . . 170

14 Serielle Schnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17314.1 Anschluss eines Messgeräts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17314.2 Datenübertragung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17314.3 Ablaufsteuerung (Flow Control) . . . . . . . . . . . . . . . . . . . . . . . . . 17414.4 Betriebsarten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17514.5 RS-232 mit LabVIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

15 GPIB-Schnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18315.1 Aufbau eines GPIB-Messsystems . . . . . . . . . . . . . . . . . . . . . . . . . 18315.2 Aufbau des IEC-Busses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18415.3 Allgemeine Daten eines IEC-Bus-Systems . . . . . . . . . . . . . . . . . . . 18515.4 GPIB mit LabVIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187

16 NI myDAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19316.1 Anschlussmöglichkeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19316.2 Spannungsmessung mit Eingang AI0 und DAQ-Assistent . . . . . . . 19416.3 Datentyp «Dynamisch» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19616.4 Spannungsmessung mit AI0 und DAQmx . . . . . . . . . . . . . . . . . . . 19616.5 Datentyp Signalverlauf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19916.6 Spannungsausgabe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20016.7 Digitale Ein- und Ausgabe mit DAQ-Assistent . . . . . . . . . . . . . . . 20016.8 Digitale Ein- und Ausgabe mit DAQmx . . . . . . . . . . . . . . . . . . . . 201Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213

ASCII-Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

Steuerzeichen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277

Literaturverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278

Stichwortverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279

ReimLabVIEW-Kurs.indd 11 3/31/2017 2:36:41 PM

12 Inhaltsverzeichnis

Aufgaben

Kapitel 2 Numerische FunktionenAufgabe 2.01 Temperaturumrechnung . . . . . . . . . . . . . . . . . . . . . . . . . 42Aufgabe 2.02 Gesamtwiderstand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Aufgabe 2.03 Kugel / Kegel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Aufgabe 2.04 Höhenmessung / Sonnenstand . . . . . . . . . . . . . . . . . . . . 45Aufgabe 2.05 Zylinderdichte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46Aufgabe 2.06 Leitungslänge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47Aufgabe 2.07 Geschwindigkeitsmessung . . . . . . . . . . . . . . . . . . . . . . . 48Aufgabe 2.08 Zeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49Aufgabe 2.09 Farbsynthese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Kapitel 3 Boolesche FunktionenAufgabe 3.01 Soll-Ist-Vergleich . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57Aufgabe 3.02 Safe Schloss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58Aufgabe 3.03 Bargraph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58Aufgabe 3.04 Füllstand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60Aufgabe 3.05 DIP-Schalter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Kapitel 4 SchleifenAufgabe 4.01 Würfel1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72Aufgabe 4.02 Würfel2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Aufgabe 4.03 Sägezahn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74Aufgabe 4.04 Netzteil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Aufgabe 4.05 Blinklicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Aufgabe 4.06 Schleifenfunktionen1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Aufgabe 4.07 Schleifenfunktionen2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 78Aufgabe 4.08 Schleifenfunktionen3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 79Aufgabe 4.09 Schleifenfunktionen4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Kapitel 5 Graphische AnzeigenAufgabe 5.01 Frequenzänderung / Phasenverschiebung . . . . . . . . . . . . 89Aufgabe 5.02 Augenblicksleistung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90Aufgabe 5.03 Blindwiderstand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91Aufgabe 5.04 Lissajous-Figur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92Aufgabe 5.05 Flimmer-Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

Kapitel 6 CaseAufgabe 6.01 Taschenrechner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100Aufgabe 6.02 Obstpreise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102Aufgabe 6.03 Winkelfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102Aufgabe 6.04 Würfelanzeige . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103Aufgabe 6.05 Stern-Dreieck-Umrechnung . . . . . . . . . . . . . . . . . . . . . . 104Aufgabe 6.06 Durchflussmessung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

ReimLabVIEW-Kurs.indd 12 4/4/2017 6:11:20 PM

Inhaltsverzeichnis 13

Kapitel 7 Sequenz und lokale VariableAufgabe 7.01 Wartezeitmessung / Eieruhr . . . . . . . . . . . . . . . . . . . . . . 112Aufgabe 7.02 Summe 1/x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113Aufgabe 7.03 Würfeltreffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

Kapitel 8 SubVIAufgabe 8.01 Rechenoperationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119Aufgabe 8.02 SubVI Tiefpass / Hochpass . . . . . . . . . . . . . . . . . . . . . . 120Aufgabe 8.03 Übertragungsfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . 121Aufgabe 8.04 Rechteckschwingung . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

Kapitel 9 StringsAufgabe 9.01 Stringumwandlungen . . . . . . . . . . . . . . . . . . . . . . . . . . 128Aufgabe 9.02 Stringfunktionen1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129Aufgabe 9.03 Stringfunktionen2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130Aufgabe 9.04 ASCII-Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131Aufgabe 9.05 Datum/Zeitangabe als String . . . . . . . . . . . . . . . . . . . . . 132

Kapitel 10 ClusterAufgabe 10.01 Buchkarteikarte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138Aufgabe 10.02 Prüfprotokoll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139Aufgabe 10.03 Zeitstempel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140Aufgabe 10.04 Messstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141Aufgabe 10.05 Fehler-Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

Kapitel 11 ArrayAufgabe 11.01 Arrayfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147Aufgabe 11.02 Zehn Lottospiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148Aufgabe 11.03 Jahrestabelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149Aufgabe 11.04 Trefferwahrscheinlichkeit . . . . . . . . . . . . . . . . . . . . . . . 150Aufgabe 11.05 Messwertsortierer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151Aufgabe 11.06 Phrasengenerator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

Kapitel 12 Datei-I/OAufgabe 12.01 Bandpassdaten speichern . . . . . . . . . . . . . . . . . . . . . . . 161Aufgabe 12.02 Bandpassdaten lesen . . . . . . . . . . . . . . . . . . . . . . . . . . 162Aufgabe 12.03 Lottozahlen-Datei . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163Aufgabe 12.04 Niederschlagsmessung . . . . . . . . . . . . . . . . . . . . . . . . . 164

Kapitel 14 Serielle SchnittstelleAufgabe 14.01 Nur-Senden-Modus . . . . . . . . . . . . . . . . . . . . . . . . . . . 178Aufgabe 14.02 Senden und Empfangen . . . . . . . . . . . . . . . . . . . . . . . . 179Aufgabe 14.03 Messung konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . 180

ReimLabVIEW-Kurs.indd 13 4/4/2017 6:11:23 PM

14 Inhaltsverzeichnis

Kapitel 15 GPIB-SchnittstelleAufgabe 15.01 Messgerät bedienen . . . . . . . . . . . . . . . . . . . . . . . . . . . 187Aufgabe 15.02 Frequenzgenerator wobbeln . . . . . . . . . . . . . . . . . . . . 189Aufgabe 15.03 Tiefpass-Messung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190Aufgabe 15.04 Diodenkennlinie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

Kapitel 16 NI myDAQAufgabe 16.01 Pt100-Messung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205Aufgabe 16.02 Sägezahnspannung . . . . . . . . . . . . . . . . . . . . . . . . . . . 206Aufgabe 16.03 Kennlinie Solarmodul . . . . . . . . . . . . . . . . . . . . . . . . . 207Aufgabe 16.04 Kennlinien darstellen . . . . . . . . . . . . . . . . . . . . . . . . . . 208Aufgabe 16.05 Klangkontrolle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209Aufgabe 16.06 Signalverlauf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210

ReimLabVIEW-Kurs.indd 14 4/4/2017 6:11:29 PM

1 Entwicklungsumgebung

1.1 Entwurf eines Virtuellen Instruments (VIs)

1.1.1 Startfenster

Nach dem Aufruf von LabVIEW 2016 erscheint das Eröffnungsfenster.

Der Start für den Entwurf eines neuen LabVIEW-Programms (VI) erfolgt entweder– mit Datei→ Neues VI oder– unter Projekt erstellen und einem Doppelklick auf → Leeres VI.Der Aufruf von vorhandenen VIs erfolgt mit dem Auswahlpunkt Datei öffnen.Startet man mit Neues/Leeres VI, öffnen sich zwei hintereinander liegende, leereFenster.Man befindet sich im Bearbeitungsmodus.

1.1.2 Frontpanel und Blockdiagramm

Ein Klick in das jeweilige Fenster bringt es in den Vordergrund.

15

ReimLabVIEW-Kurs.indd 15 3/31/2017 2:36:42 PM

16 1 Entwicklungsumgebung

Strg+T öffnet beide Fensterauf dem Bildschirm.Der Menüpunkt Fenster er-laubt die Auswahl, ob sie ne-beneinander oder untereinan-der dargestellt werden.

HauptmenüBeide Fenster besitzen am oberen Rand ein Menü mit 8 Menüpunkten.

Das Hauptmenü bietet die Grundfunktionen für den Umgang mit einem VI, wieSpeichern, Drucken, Start und Stopp, Zugriff auf Bearbeitungs- und Hilfsfunktionensowie auf Zusatzprogramme.Viele Funktionen des Hauptmenüs sind auch mit Tastenkombinationen (Shortcuts,z.B. Strg+T) aufrufbar. Nichtausführbare Menüpunkte sind ausgegraut.Häufig gebrauchte Menüpunkte des Hauptmenüs findet man als Icon in den beidenSymbolleisten der jeweiligen Fenster.

Symbolleiste Frontpanel

Wahl der Schriftartzur Ausführung eines VI zum Anordnen der Objekte

Symbolleiste Blockdiagramm

Wahl der Schriftartzur Ausführung eines VI zum Anordnen der Objekte

Nachfolgendes VI soll entworfen werden.

Funktion: Es besitzt die drei Eingabeelemente Länge, Breite und Höhe und diebeiden Ausgabenelemente Fläche und Volumen. Aus den Eingabewertenwerden die Ausgabewerte berechnet.

ReimLabVIEW-Kurs.indd 16 3/31/2017 2:36:46 PM

Arbeiten in den Fenstern 17

Frontpanel Blockdiagramm

Frontpanelist die Bedienoberfläche des Programms. Es dient zur Eingabe von Daten oder Ak-tionen und stellt Ergebnisse und Ausgaben dar. Es ist die Schnittstelle zum Benutzer.Alle Bedienelemente und alle Anzeigeelemente werden auf der graukarierten Ober-fläche platziert.

Bedienelement = Eingabeelement = DatenquelleAnzeigeelement = Ausgabeelement = Datensenke

Blockdiagrammist das eigentliche Programm. Darin wird der Programmablauf festgelegt, hier wer-den die Daten bearbeitet. Die auf dem Frontpanel befindlichen Bedien- und Anzei-geelemente findet man hier als Funktionsblöcke mit Anschlüssen. Man nennt sieBlockdiagrammanschlüsse.Eine Verbindung dieser Blockdiagrammanschlüsse durch Leitungen erlaubt denDatentransport zwischen Ein- und Ausgabe. Durch Einfügen von zusätzlichenFunktionsobjekten (man nennt sie allgemein Knoten) mit unterschiedlichen Funk-tionen (Addieren,Multiplizieren) ist eine vielseitige Bearbeitung der Daten möglich.

1.2 Arbeiten in den Fenstern

Für das Arbeiten in den Fenstern stehen zwei Menütypen zur Verfügung:

� Im Hauptmenü oder einer Symbolleiste wird mit demMauszeiger und Linksklickein Menüpunkt oder ein Icon ausgewählt.

� Der Mauszeiger zeigt auf ein beliebiges Objekt, und ein Rechtsklick der Mausöffnet das Kontextmenü: Es zeigt alles an, was an dieser Stelle mit dem Objektmöglich ist. Die Auswahl wird mit Linksklick bestätigt.

Das Kontextmenü ändert sich bei einem Objekt – je nachdem, welche Stelle / Ein-gang / Ausgang man mit der Maus anwählt.

Achtung: i

ReimLabVIEW-Kurs.indd 17 3/31/2017 2:36:46 PM

18 1 Entwicklungsumgebung

Woher kommen die Eingabe-/Ausgabeelemente für das Frontpanel bzw. die Funk-tionsknoten des Blockdiagramms?Sie stehen dem Benutzer auf sog. Paletten zur Verfügung. Sie sind über das Haupt-menü oder über das Kontextmenü der Arbeitsfläche (Rechtsklick) aufrufbar undenthalten alle Bauteile für die Bearbeitung der beiden Fenster. Da jedes Fensterunterschiedliche Aufgaben hat, besitzt jedes auch unterschiedliche Paletten.

1.2.1 Bearbeitung Frontpanel

Auf dem Frontpanel werden Bedienelemente und Anzeigeelemente zur Datenein- und-ausgabe platziert. Dem Frontpanel zugeordnet ist die Elementepalette.Man erhält sie im Frontpanelmenü unter Ansicht→ Elementepalette.

Benutzereinstellung

Klappt man die Elementepalette unten auf, sieht man, dass sie etliche Unterpalettenenthält, die zugeklappt (►) oder aufgeklappt (▼) darstellbar sind.

Da in diesem Buch nur wenige Paletten ge-braucht werden, kann man sich zur besse-ren Übersicht den Inhalt seiner «eigenen»Elementepalette zusammenstellen. Dazu aufAnpassen → Sichtbare Paletten ändernklicken, im erscheinenden Auswahlmenüzum Löschen der Voreinstellung auf Aus-wahl aufheben klicken und die beidenPunkte→Modern und→ Klassisch auswählen.

Nach dieser Einstellung liefert ein Rechtsklick auf die leere Frontpaneloberflächedie Elementepalette, d.h., es ist eine Platzierung von Elementen möglich.

ReimLabVIEW-Kurs.indd 18 3/31/2017 2:36:48 PM

Arbeiten in den Fenstern 19

Von der Unterpalette Modern → Numerisch ein numerisches Bedienelement mitLinksklick auswählen, auf die Arbeitsfläche schieben und mit Linksklick ablegen.

Direkt nach dem Ablegen des Objekts ist die voreingestellte Beschriftung schwarzmarkiert und kann sofort in die Bezeichnung Länge geändert werden.

Aufgabe: Platzieren Sie die noch fehlenden Ein- und Ausgabeobjekte auf das Front-panel.

1.2.2 Bearbeitung Blockdiagramm

Im Blockdiagramm sind die aufdem Frontpanel platzierten Be-dien- und Anzeigeelemente alsSymbole oder als Terminals zusehen. Vor dem Platzieren kanndie Einstellung im HauptmenüunterWerkzeuge→Optionen→Blockdiagramm→Allgemein→Frontpanel-Elemente als Sym-bole darstellen gewählt werden.Es gibt keinen Funktionsunterschied zwischen den Darstellungen. Viele Symbolezeigen die Funktion der Elemente an, die Terminals benötigen weniger Platz. EineUmschaltung der Darstellung ist im Kontextmenü möglich: Als Symbol anzeigenein- oder ausschalten.Im Blockdiagramm stehen die vom Bediener eingestellten Werte als Daten zur Ver-arbeitung bereit.

Ein Bedienelement ist eine Datenquelle und besitzt rechts einen Ausgang.Ein Anzeigeelement ist eine Datensenke und besitzt links einen Eingang.

Grundsatz i

ReimLabVIEW-Kurs.indd 19 3/31/2017 2:36:49 PM

20 1 Entwicklungsumgebung

Die Bearbeitung der Daten erfolgt mit Objekten, die unterschiedliche Funktionenausführen. Die dem Frontpanel zugeordnete Palette ist die Funktionenpalette.

Sie wird im Blockdiagramm mit einem rechten Mausklick aufgerufen.Mit einer Pinnnadel links oben lässt sich die Funtionenpalette fixieren, mit demSymbol ∨ unten ganz aufklappen.Die Palette Programmierung ist aufgeklappt dargestellt und zeigt die am häufigstengebrauchten Unterpaletten an.Eine Anpassung an eigene Bedürfnisse wie bei der Elementepalette ist möglich, abermit den voreingestellten Paletten→Mess-I/O→ Instrumenten-I/O und→Mathematiknicht nötig.Von der Unterpalette Programmierung→ Numerisch ein Objekt mit Multiplizier-funktion auswählen, auf die Arbeitsfläche schieben und mit Linksklick ablegen.

ReimLabVIEW-Kurs.indd 20 3/31/2017 2:36:50 PM

Ausführen eines VI 21

Die Maus über dem Objekt zeigt die Anschlusspunkte für Leitungen. Über einenAnschlusspunkt verwandelt sich der Mauszeiger in eine Drahtrolle. Ein Linksklickbefestigt daran eine Leitung, die zu einem anderen Anschluss oder Leitung gezogenund dort befestigt werden kann.

Im vorliegenden Beispiel wird der Ausgangder Multiplizierfunktion mit dem Eingang desAnzeigeelements Fläche verbunden.

Aufgabe: Fügen Sie noch eine weitere Multiplizierfunktion ein und erstellen Sie diefehlenden Verbindungen.

Ist das VI fertig, speichern Sie es mit Strg+S unter dem Namen Programm1.

1.3 Ausführen eines VI

In der Symbolleiste ganz links findet man den Startknopfzur Ausführung. Wird er betätigt, befindet sich das VI imAusführungsmodus: Das Programm läuft, das Karo imFrontpanel verschwindet.

Die Icons zum Start und Stopp des VI sind in den Symbolleisten beider Fenstervorhanden.

ReimLabVIEW-Kurs.indd 21 3/31/2017 2:36:51 PM

22 1 Entwicklungsumgebung

Sinnvolle Ergebnisse erhält man, wenn alle 3 Ein-gabewerte ungleich null sind. Dazu müssen Werteeingegeben bzw. eingestellt werden. Dies kann voroder während der Programmausführung erfolgen.Ein Doppelklick auf das Eingabefeld von Längemarkiert die enthaltene Zahl schwarz.Sie kann durch eine nachfolgend eingegebene Zahlersetzt werden.Gleichzeitig erscheint am linken Rand der Symbol-leiste die Schaltfläche Texteingabe.Diese zeigt den aktiven Eingabemodus an. Er wirdbeendet durch die Enter-Taste oder einen Maus-klick auf die Arbeitsfläche.Wenn der Mauszeiger sich in eine Bedienhandverwandelt, kann ein Eingabeelement mit der Mausbedient werden.

Im vorliegenden Fall ist die Ausführungsdauer sehr kurz, deshalb ist es sinnvoll,

das VI mit zu starten und eine Änderung der Eingabewerte wäh-rend des Programmlaufs vorzunehmen. Das Ergebnis wird sehr anschaulich darge-stellt.Das VI läuft so lange, bis es mit Ausführung abbrechen gestoppt wird.

Ist der Ausführen-Pfeil gebrochen , kann das VI nicht gestartet werden.Dies kommt vor, wenn sich Fehler im Programm befinden, wie z.B.

offener Eingang oder ungültige Verbindung (zwei Ausgänge).

Löschen aller ungültigen Verbindungen mit Strg+B.

Klickt man trotzdem auf den gebrochenen Aus-führen-Pfeil, so wird eine Fehlerliste angezeigt, dieeine Beschreibung der vorhandenen Fehler enthält.

i Merken:

ReimLabVIEW-Kurs.indd 22 3/31/2017 2:36:52 PM

Werkzeugpalette 23

Ein Klick auf die Schaltfläche Fehler anzeigen markiert die Fehlerstelle im Block-diagramm kurzzeitig mit einem schwarzen Quadrat.

1.4 Werkzeugpalette

Beim Bearbeiten eines VI bemerkt man, dass der Mauszeiger an verschiedenenStellen über einem Objekt verschiedene Formen annimmt. Diese Mauszeigerformennennt man Werkzeuge.Oft ist es bei der Arbeit einfacher, den automatischenWerkzeugwechsel abzuschal-ten und ein festes Werkzeug zu wählen. Das ermöglicht die Werkzeugpalette.Der Aufruf der Werkzeugpalette erfolgt im Menü des Frontpanels oder des Block-diagramms unter Ansicht→Werkzeugpalette oder Shift + Rechtsklick.

Linksklick auf die grüne LED schaltet die automatischeWerkzeugauswahl ab (LEDerlischt). Das gewählte Werkzeug ändert sich jetzt nicht mehr ortsabhängig.Ein Linksklick auf die graue LED schaltet die automatische Werkzeugauswahlwieder ein (LED grün).

ReimLabVIEW-Kurs.indd 23 3/31/2017 2:36:53 PM

24 1 Entwicklungsumgebung

Bedeutung der einzelnen Icons:

1.5 Kontextmenü

Das Kontextmenü von Objekten ist das mächtigste Hilfsmittel bei der Arbeit mitLabVIEW. Es wird mit der rechten Maustaste aufgerufen. Dabei ist es wichtig zuwissen, dass jedes Teil sein eigenes Kontextmenü besitzt. In größeren Objekten gibtes viele verschiedene Kontextmenüs, die gewünschte Stelle im Objekt muss mit derMaus genau ausgewählt werden.Hier einige grundsätzliche Eigenschaften, auf weitere Punkte dieses Menüs wird imEinzelnen noch bei ihrem Gebrauch in den Aufgaben eingegangen.

1.5.1 Kontextmenü von Bedien- und Anzeigeelementen

In der nachfolgenden Darstellung wird im Frontpanel und im Blockdiagramm dasKontextmenü des Bedienelements Länge aufgerufen.

Sichtbare Objekte:Bezieht sich auf darstellbare Teile von Bedien-/Anzeigeelementen, wie Beschriftun-gen, Titel, Legenden, Achsen und zusätzliche Anzeigen.Ein Haken schaltet ein, kein Haken schaltet aus.

ReimLabVIEW-Kurs.indd 24 3/31/2017 2:36:54 PM

Kontextmenü 25

Anschluss suchen:Ein Linksklick markiert den zugehörigen Anschluss im Blockdiagramm.

Bedienelement suchen:Ein Linksklick markiert das zugehörige Bedienelement im Frontpanel.

In Anzeigeelement ändern:Jedes Bedienelement lässt sich in ein Anzeigeelement, jedes Anzeigeelement in einBedienelement umwandeln.Vorhandene, angeschlossene Leitungen zerbrechen dann, d.h. sind ungültig.

In Konstante ändern:Im Blockdiagramm kann jedes Anzeigeelement und jedes Bedienelement in eineKonstante umgewandelt werden.Konstanten sind nur im Blockdiagramm sichtbar!

Eigenschaften:Hier kann das Erscheinungsbild von Elementen wie Farbe,Wertebereich, Anzeige-format, Skalenart eingestellt werden. Für Bedienelemente kann eine Tastatursteue-rung eingestellt werden.

Erstellen:Im Blockdiagramm kann LabVIEW einen Anschluss automatisch beschalten. EinAusgang erhält ein Anzeigeelement, ein Eingang ein Bedienelement oder eine Kon-stante. Sehr hilfreiche Funktion!

1.5.2 Kontextmenü von Funktionsobjekten im Blockdiagramm

Kontextmenü des Funktionsobjekts Multiplizieren

Hilfe:Alle Funktionsobjekte besitzen im Kontextmenü eine leistungsfähige Hilfefunktion,die eine genaue Beschreibung des Funktionsobjekts liefert.

ReimLabVIEW-Kurs.indd 25 3/31/2017 2:36:55 PM

26 1 Entwicklungsumgebung

Erstellen:Anschlüsse können automatisch mit Bedienelement,Anzeigeelement oder Konstan-te beschaltet werden. Sehr hilfreiche Funktion!

Ersetzen:Bereits bestehende Objekte können durch andere ähnliche ersetzt werden. Das er-spart das Erstellen von neuer Verdrahtung.

1.5.3 Kontextmenü einer Verbindungsleitung

Verdrahtung bereinigen:Erstellt kurze, übersichtliche Verbindung.

Verzweigung löschen:Löscht Verbindungen.

Einfügen:Erlaubt das Einfügen von Funktionsobjekten inLeitungen.

Sonde:Setzt eine Sonde auf die Leitung.

Haltepunkt:Setzt einen Haltepunkt auf die Leitung.

1.6 Hilfsmittel

1.6.1 Beispiele suchen

Aufruf im Startfenster oder im Hauptmenü unter Hilfe→ Beispiele suchen.

ReimLabVIEW-Kurs.indd 26 3/31/2017 2:36:56 PM