Labview NXG
Eintauchen in eine neue Welt
Seit der ersten Labiew-Version sind viele Funktionen hinzugekommen, wogegen sich die Benutzeroberfläche kaum verändert hat. Die runderneuerte NXG-Version bietet alle Features einer modernen HMI-Oberfläche: feinstufiges Zoomen, 3D-Objekte und die Unterstützung mobiler Geräte.
National Instruments Labview kann mittlerweile auf eine 31-jährige Geschichte zurückblicken. In dieser Zeit hat sich das User Interface der Messtechnik-Software kaum verändert. Großen Anteil daran hatte die Multiplattformfähigkeit zum Erstellen von Virtuellen Instrumenten. Unterstützt wurden Mac, Windows, verschiedene Unix-Derivate und Linux zum Erstellen Virtueller Instrumente.
Um alle Plattformen nativ unterstützen zu können, musste man den kleinsten gemeinsamen Nenner verwenden. Dies führte dazu, dass das User-Interface etwas altbacken wirkt, da die Unix-Derivate nahezu gleich geblieben sind und in der Messtechnik keine Verwendung mehr finden. Auch der Mac hat im technischen Bereich erheblich Federn lassen müssen. Fast alle Labview-Entwickler verwenden als OS-Plattform Microsoft Windows, da nur hier die vollständige Funktionalität zur Verfügung steht. Die intensive Zusammenarbeit mit dem Partner Microsoft eröffnete darüber hinaus bahnbrechende Optionen, um die Altlasten ein für alle Mal loszuwerden. Aus diesen Gründen ist als ernstzunehmende Entwicklungsplattform nur noch Windows übriggeblieben. Hauptziel ist nun neben Realtime-Linux- und Xilinx- FPGA-Plattformen auch deren Kombinationen.
National Instruments hat die Zeichen der Zeit erkannt und das Flaggschiff Labview mittels parallel entwickelter NeXt-Generation-Implementierung (NXG) runderneuert. Schon das seit geraumer Zeit angebotene Labview Communications – eine Spezialsoftware für den Bereich Software Designed Radio – hat gezeigt, wo die Reise hingeht. Die neue NXG-Version unterscheidet sich fundamental von der traditionellen Plattform, die derzeit in Version 2017 auf dem Markt ist. Beide Produktlinien werden parallel weiterentwickelt und gemeinsam – ohne Aufpreis für NXG – verkauft.
Bei der NXG-Version fehlen im Vergleich zu Labview 2017 eine Vielzahl an Funktionen. Und auch der Hardware-Support lässt mit NI DAQmx, VISA und NI-XNet noch zu wünschen übrig. Ein paar Funktionen sind jedoch auch dazugekommen, unter anderem die ‚Inline‘-C-Code Möglichkeit, die in den traditionellen Versionen nur über ‚Code-Interface Node‘ möglich war. Die Entwicklungsagenda zeigt einen Meilensteinplan für die Implementierung der Funktionalitäten, die bereits von Labview 2017 bekannt sind.
Aus den genannten Gründen kann man mit NXG derzeit nur begrenzte Projekte umsetzen, die sich auf Datenerfassung, Meßgeräte-Ansteuerung und zum Beispiel CAN-basierte Kommunikation über NI X-Net beschränken. Auch die Erstellung von Stand Alone Executables ist derzeit noch nicht möglich, soll jedoch zeitnah in Version 2 implementiert werden.
Moderne Bedienoberfläche
Trotz dieser Nachteile macht es durchaus Sinn, sich mit NXG zu beschäftigen. Bei Datenerfassungsapplikationen kann man in Version 1 bereits sinnvolle Applikationen erstellen. Die großen Potenziale, die Labview NXG dem Anwender bietet, erschließen sich bereits nach kurzer Zeit. Nach der Installation erscheint die Oberfläche in der Sprache, in der das Betriebssystem läuft. Das gilt für die Sprachen Englisch, Deutsch, Französisch, Chinesisch, Japanisch oder Koreanisch ist. Alle anderen Sprach-Implementierungen müssen mit Englisch vorliebnehmen. Das vielfältige Sprachangebot ist nur durch die komplette Unterstützung von Unicode möglich. Zudem kann die Sprache jetzt durch den Neustart der Applikation innerhalb einer Minute umgeschaltet werden. Vorbei ist die Zeit, in der die Internationalisierung von Anwendungen aufwendig und teilweise nur mit Zusatztools möglich war.
Vektororientierte Icons sorgen für weitaus übersichtlicheren Sourcecode in Blockdiagrammen. Dabei sind beliebige rechteckige Terminalformen möglich.
© SystecAuch die Bedienoberfläche wurde grundlegend überarbeitet und optimiert. Die in die Jahre gekommene und kaum gepflegte GUI ist einer modernen Plattform mit einer Mehrfachdokumentoberfläche (Multiple Document Interface) gewichen – basierend auf der Microsoft Windows Presentation Foundation (WPF, Codename Avalon). Dank der implementierten Vektorgrafik ermöglicht dieser WPF-Grafik-Framework unter anderem ein feinstufiges Zooming – und zwar sowohl für das Block-Diagramm (was eine User-Forderung seit Anfang der 90er-Jahre des letzten Jahrhunderts ist!) und für die Icons als auch für das Frontpanel. Außerdem werden die Texte jetzt mitskaliert – ein großer Fortschritt im Vergleich zu den traditionellen Versionen.
Unterstützt mobile Geräte
Durch die Unterstützung der Megatrends in der Informatik, wie HTML5, erspart sich National Instruments einen Teil des Plattform-Entwicklungsaufwands, um sich auf die eigenen Stärken konzentrieren zu können: Die Integration von Hard- und Software basierend auf virtueller Systemtechnik. Derzeit sind flache GUI-Elemente im Trend und entsprechend auch Bestandteil der ersten NXG-Version. Die WPF ermöglicht eine dynamische Weiterentwicklung der User-Interface-Elemente.
Ein weiterer Vorteil liegt in der stark verbesserten Unterstützung von Mobile Devices wie Tablets und Smartphones. Designbrüche verschwinden in absehbarer Zukunft, die nahtlose Integration wird Realität. Ein Performance-Sprung ist für zukünftige 3D-Darstellungen zu erwarten: Unterstützt wird die ‚WPF Direct3D‘ und somit auch performante Grafikkarten (GPUs), die in diesem Bereich den neuesten Standardprozessoren wie Intels Corei7 um Größenordnungen überlegen sind.
Was nützen einem neuen Entwicklungssystem seine Potenziale, wenn man nicht auf bestehenden Code zurückgreifen kann? National Instruments hat in NXG einen Code-Konverter eingebaut, der nach ersten Tests erstaunlich gut funktioniert, wenn im Ursprungsprogramm Elemente verwendet werden, die NXG unterstützt. Konvertierbar sind Projekte der letzten traditionellen Versionen ab der Version 2014. Auch bestehender Labview-Code ist mittels Labview-Interop-VI direkt implementierbar. Hier gibt es aber einige Einschränkungen, da nur Werte übergeben werden können und das VI (virtuelle Instrument) zusammen mit der jeweiligen Runtime-Umgebung im Speicher bleibt. Diese Funktionalität ist für VIs ab Version Labview 2008 verfügbar.
Interaktive Aufzeichnungs- und Analysemöglichkeiten
Eine der großen Stärken der neuen Version liegt in den interaktiven Aufzeichnungs- und Analysemöglichkeiten, die einen Konfigurationsansatz ohne Programmierung ermöglichen, ohne die großen Applikationen zu vernachlässigen. So will NI das Beste der verschiedenen Welten vereinen. Dabei stützt man sich, wie bereits erwähnt, auf Entwicklungen von Partnerfirmen, vor allem der Microsoft Corporation aus Redmond. Das ist eine gut nachvollziehbare Entscheidung, die National Instruments noch mehr Entwickler zutreiben könnte, die vorher nichts mit dieser grafischen Plattform anfangen konnten. Im Embedded-Bereich setzt man bereits seit längerem erfolgreich auf Realtime Linux mit seiner großen Community.
Die programmatischen und analytischen Funktionen NXGs sind bereits nahezu vollständig implementiert. Hier einige Beispiele an Analysefunktionen (Quelle: NI):
- Kurvenanpassung – Sucht nach der Kurve, die mit einem bestimmten Anpassungsverfahren ein Eingangssignal oder einen Eingangsdatensatz am besten darstellt.
- Statistik – Führt statistische Berechnungen an einem Signal durch.
- Histogramm – Zeigt das diskrete Histogramm eines Signals an.
- Amplitudenmessungen – Misst den Scheitelwert eines Signals.
- FFT-Spektrum – Berechnet das durchschnittliche FFT-Spektrum eines Signals.
- Messung von Frequenzkomponenten – Sucht Schwingungen mit bestimmten Amplituden- und Frequenzparametern.
- Impuls- und Übergangsmessungen – Ermittelt verschiedene Impulsparameter von periodischen Signalverläufen oder Arrays aus periodischen Signalverläufen, zum Beispiel Periodendauer, Impulsdauer oder Tastgrad.
- Grenzwerttest – Führt einen Grenzwerttest an einem Signal durch.
- Filter – Wendet einen Tiefpass-, Hochpass-, Bandpass- oder Bandsperrfilter auf ein Signal an.
- Skalieren und Umrechnen – Skaliert ein Signal anhand einer Geraden.
- Neu abtasten – Tastet ein Signal entsprechend bestimmter Verzögerungen und Sample-Intervalle neu ab.
- Signalkorrelation – Berechnet die Autokorrelation eines Signals oder Korrelation zweier Signale.
Versprechen für die Zukunft
Labview NXG in der Version 1.0 unterstützt objektorientierte Programmierung nicht nativ. Das ist für Version 2 vorgesehen. Es bleibt abzuwarten, wie schnell fortschrittliche Technologien wie das Actor-Framework integriert werden.
Die NXG-Version ist ein Versprechen für die Zukunft, das Zug für Zug eingelöst werden muss. Noch fehlen viele Funktionen, die die traditionellen Implementierungen auszeichnen. Glaubt man der NI-Roadmap, so ist es jedoch nur eine Frage der Zeit, bis die wichtigsten Lücken geschlossen sind. Das Potenzial für eine mächtige und moderne Entwicklungsplattform ist jetzt schon gegeben. NXG wird viele neue Freunde gewinnen und die jetzigen Labview-Entwickler sukzessive zum Umstieg bewegen.
Autor:
Herbert Pichlik ist Geschäftsführer bei Systec.












