Programmier Knowhow für Messtechniker 5 praktische Tipps für Einsteiger in LabVIEW

Redakteur: Dipl.-Ing. (FH) Hendrik Härter

Die grafische Programmierumgebung LabVIEW wird für die unterschiedlichsten Mess-, Steuer- und Regelanwendungen verwendet. Gerade Einsteiger stoßen schnell an ihre Grenzen. Wir geben in unserem Beitrag fünf praktische Tipps typische Fehler zu vermeiden.

Firmen zum Thema

Gerade Neueinsteiger stoßen bei LabViEW auf viele Hürden. Unsere fünf Tipps sollen helfen, den Einstieg in die Welt der grafischen Programmierung zu erleichtern.
Gerade Neueinsteiger stoßen bei LabViEW auf viele Hürden. Unsere fünf Tipps sollen helfen, den Einstieg in die Welt der grafischen Programmierung zu erleichtern.
(National Instruments)

LabVIEW unterstützt Ingenieure und Wissenschaftler schon seit Mitte der 80er Jahre, wenn funktionelle Mess-, Steuer- und Regelanwendungen entwickelt werden sollen. Eine grafische Programmierumgebung erweckt schnell den Anschein, sich einfach bedienen zu lassen. Einige Anwender sind sich des Datenflusses in ihrem LabVIEW-Programmen nicht bewusst und kennen oft die Funktionen nicht, mit denen sich die Qualität verbessern lässt. Wir geben Ihnen grundlegende Empfehlungen und Programmiermethoden, die man als Einsteiger mit LabVIEW kennen sollte.

Bildergalerie
Bildergalerie mit 6 Bildern

1. Flache Sequenzstrukturen vermeiden

Viele LabVIEW-Einsteiger haben nur unzureichende Kenntnisse des Datenflussprinzips, das allerdings elementar für die LabVIEW-Programmierung ist. Anwender stützen sich häufig auf flache Sequenzstrukturen, um die serielle Ausführung von Programmcode auf dem Blockdiagramm zu steuern, statt den Datenfluss mit Drähten zwischen den Knoten zu nutzen.

Datenflussprogrammierung bedeutet, dass ein Knoten auf dem Blockdiagramm (SubVI, Funktion oder Struktur) erst ausgeführt wird, wenn alle benötigten Dateneingaben vorhanden sind. Davon profitieren LabVIEW-Programmierer, da voneinander unabhängige Prozesse nativ so angelegt werden, dass sie parallel ablaufen können, während imperative Sprachen für die parallele Ausführung eigens konfiguriert werden müssen.

Da Computer über immer mehr Rechenleistung verfügen, lagert LabVIEW automatisch parallele Prozesse aus und erhöht die Leistung von Programmcode, ohne dass zusätzlicher Kodierungsaufwand erforderlich wäre. Die durch flache Sequenzstrukturen gesteuerte Ausführung auf dem Blockdiagramm kann die parallele Ausführung einschränken und diesen Vorteil zunichtemachen.

Die Einschränkung unnötiger Strukturen auf dem Blockdiagramm unterstützt die allgemeine Lesbarkeit und sorgt zudem für kleinere Diagramme. Fehler-Verbindungen eignen sich besonders gut dafür, den Datenfluss auf dem Blockdiagramm zu steuern, statt nur flache Sequenzstrukturen zu nutzen, wobei sich fast beiläufig ein Error-Handling realisieren lässt.

Wird eine Ausführung mit einer flachen Sequenzstruktur gesteuert, lässt sich die Leistung des Programmcodes besser einordnen. Wird solch eine flache Sequenzstruktur mit einem Timer innerhalb des Rahmens eingebunden, lässt sich die bei der Codeausführung zwischen zwei Timerwerten verstrichene Zeit ermitteln. Bei einer normalen Datenflussprogrammierung ist das nicht möglich.

2. Daten effektiv weitergeben

Ein weiterer gängiger Fehler in LabVIEW-Programmen ist der übermäßige Einsatz lokaler Variablen. Bei lokalen Variablen handelt es sich um einen Teil gemeinsam genutzten Speichers, mit dem Daten zwischen verschiedenen Abschnitten eines Computerprogramms übertragen werden können. Variablen werden in textbasierten Sprachen eingesetzt. Allerdings können sie Laufzeitprobleme hervorrufen.

Anders als bei Programmiersprachen, bei denen die Weitergabe von Daten über Variablen essenziell ist, bietet LabVIEW die Datenflussmethode, bei dem Daten von einen Teil eines Programms zum anderen bewegt werden. Der inhärente Parallelismus von LabVIEW gestaltet es schwierig, wenn übermäßig viele Variablen verwendet werden, da häufig von verschiedenen Stellen gleichzeitig auf den gemeinsamen Speicher zugegriffen wird. Hier hat ein Lese-/Schreibvorgang Priorität, während der andere verliert. Somit verursacht der übermäßige Gebrauch lokaler Variablen einen Datenverlust.

Daten können innerhalb eines LabVIEW-Programms auf sicherem Wege mit unterschiedlichen Methoden übertragen werden, darunter Verbindungen, Queues, Ereignisse, Melder oder funktionale globale Variablen. Alle Mechanismen sind jeweils für bestimmte Anwendungsfälle entwickelt, doch alle können Laufzeitprobleme verhindern.

(ID:39877810)