LabVIEW 2011: Neue Version zum 25-jährigen Jubiläum »Es schien uns beinahe, als ob FPGAs für LabVIEW erfunden wurden«

Rahman Jamal, National Instruments: »Genauso, wie wir Pionierarbeit in der automatischen Speicherverwaltung und der Entwicklung grafischer Benutzeroberflächen geleistet haben, wollen wir künftig die automatische Kommunikation zwischen Teilsystemen und das Konzept des ‚Graphical System Design’ weiter vorantreiben.«
Rahman Jamal, National Instruments: »Genauso, wie wir Pionierarbeit in der automatischen Speicherverwaltung und der Entwicklung grafischer Benutzeroberflächen geleistet haben, wollen wir künftig die automatische Kommunikation zwischen Teilsystemen und das Konzept des ‚Graphical System Design’ weiter vorantreiben.«

25 Jahre ist es her, dass National Instruments die erste Version seiner Systemdesignsoftware LabVIEW auf den Markt gebracht hat. Markt&Technik hat das Jubiläum und die Neuvorstellung der Version LabVIEW 2011 zum Anlass genommen, zusammen mit Rahman Jamal, Technical & Marketing Director, Europe von NI Rückschau auf den Erfolgsweg des Branchenprimus zu halten und zu beleuchten, wohin der Weg weiter gehen soll.

Markt&Technik: Was war der Ursprungsgedanke bei der Entwicklung der ersten LabVIEW-Version?

Rahman Jamal: Der Ursprungsgedanke spiegelte sich von Anfang an in der Bezeichnung LabVIEW wider – 'Lab' steht für Laboratory und 'VIEW' für Virtual Instrumentation Engineering Workbench. 1986 war die Idee, eine virtuelle Arbeitsumgebung zu schaffen, eine Art Werkbank, auf der der Ingenieur seine Probleme lösen kann. Weil die Firmengründer im Laborbereich zu Hause waren, wurden zuerst Probleme messtechnischer Natur gelöst. Das heißt: Messgeräte wie Oszilloskope, Digitalmultimeter und so weiter ließen sich über die GPIB-Schnittstelle an ein Rechnersystem anbinden und steuern. So wurde mit der Software die Möglichkeit geschaffen, aus vielen Einzelkomponenten eine Gesamtanwendung zu realisieren – wenn Sie so wollen, eine Art maßgeschneidertes Instrument, genannt virtuelles Instrument, das so nicht standardmäßig erhältlich ist. Spätestens hier wird die herausragende Rolle von LabVIEW deutlich: Die Software nimmt eine Schlüsselrolle ein, weil sie letztendlich die Gesamtfunktionalität der Anwendung festlegt.

Welches waren die Key Specs damals?

Damals vermuteten wir schon, wie der Umgang mit Computern in Zukunft aussehen könnte, und uns bewegte die Frage, wie wir einem technisch versierten Anwender dazu verhelfen können, seinem Erfindungsdrang und seiner Kreativität freien Lauf zu lassen. Also gingen wir der Frage nach: »Wie kann der Anwender mit einer Maus und Grafiken sein Problem beschreiben und lösen?« Unsere Antwort darauf war das grafische Grundprinzip hinter LabVIEW: die Datenflussprogrammierung. Im Gegensatz zu dem sequenziellen Befehlsfluss gängiger textbasierter Programmiersprachen stellt das Datenflussprinzip ein vielseitigeres Programmiermodell dar, weil es seinem Wesen nach parallel ist. Dabei wird die Verarbeitung von Daten als Graph oder Blockdiagramm dargestellt, mit dem Vorteil, dass Abhängigkeiten, Parallelität und Komplexität auf einen Blick zu erkennen sind.

Sie haben also gleich eine grafische Programmiersprache erfunden?

Ja, darauf lief es letztendlich hinaus. Aber zu einer guten Programmiersprache gehört wesentlich mehr. Gehen wir beispielsweise auf die Kompilierung eines Programms ein. Bei textorientierten Programmiersprachen erfolgt die Kodierung in Form eines kryptischen Textes, der anschließend an einen Compiler weitergeleitet wird, der die Textabschnitte analysiert und daraus einen Maschinencode generiert. Bei LabVIEW sind Editor und Compiler so miteinander verzahnt, dass das Blockdiagramm keine zusätzliche Analyse durchlaufen muss. Dies geschieht schon beim Editieren. Dadurch erfolgt die Kompilierung oft so schnell, dass dies vom Anwender gar nicht bewusst wahrgenommen wird. Aber die Geschwindigkeit des Compilers ist nur einer von vielen Gründen für die hohe Produktivität, von der Anwender bei der Arbeit mit LabVIEW profitieren. Im Editierprozess erhält der Anwender unmittelbar Rückmeldungen zu Syntax und Semantik, so dass Fehler sofort schneller erfasst und berichtigt werden können.

Und mit dieser Sprache ist der Anwender produktiver?

Natürlich. Nehmen wir beispielsweise die Erstellung einer Anwendung: Aufwendige Benutzeroberflächen lassen sich mit den umfassenden Funktionen des Editors zügig gestalten. Darüber hinaus können einzelne Programmmodule, genannt VIs (virtuelle Instrumente) einfach während jedes Entwicklungsschritts interaktiv getestet werden, weil sie über eine integrierte Benutzeroberfläche verfügen. Gerade dieser Testprozess ist in der Praxis mit herkömmlichen Ansätzen sehr aufwendig, da zusätzlicher Programmcode erstellt werden muss. Insgesamt wird dadurch der Entwicklungsprozess deutlich beschleunigt. Auch die Datentypen auf dem Blockdiagramm sind einfach zu nutzen. Strings und Felder können verschaltet und bearbeitet werden, ohne dass sich der Anwender um die Details der Speicherzuweisung kümmern muss. Die gesamte Fehlerthematik in Zusammenhang mit Speicher ist ein wunder Punkt bei herkömmlichen Programmierparadigmen.

Welche Anwendungen konnte man mit LabVIEW abdecken?

Wie bereits angedeutet, waren die ersten Anwendungen labormesstechnischer Natur. Mittlerweile adressieren wir eine große Bandbreite an Applikationen und Branchen, denn jeder technisch Versierte – sei es Ingenieur, Wissenschaftler oder Techniker –, der mit einer I/O-nahen Aufgabenstellung aus der Mess-, Steuer- und Regeltechnik einschließlich anspruchsvoller Analyseanforderungen konfrontiert ist, nutzt LabVIEW oder kann es potenziell nutzen. Damit meine ich nicht nur die klassischen Gebiete wie Test und Kommunikationsmesstechnik, Embedded-Design oder industrielle Steuerung und Regelung, die wir gut adressieren, sondern auch aufkommende Wachstumsmärkte wie Design und Test, medizinische Geräte oder die Robotik - und nicht zu vergessen der ganze Bereich der erneuerbaren Energien.