Übersicht
Der Leitfaden Designing Next Generation Test Systems Developers Guide ist eine Sammlung von Whitepapers, die Sie bei der Entwicklung von Prüfsystemen unterstützen sollen. Sie sollen dazu beitragen, Ihre Kosten zu senken, den Prüfdurchsatz zu erhöhen und das Prüfsystem an künftige Anforderungen anzupassen. In diesem Whitepaper sind einige Punkte zusammengestellt, die die Auswahl einer passenden Entwicklungsumgebung erleichtern sollen. Der gesamte Leitfaden (120 Seiten) kann auf ni.com/automatedtest heruntergeladen werden.
Inhaltsverzeichnis
Einleitung
Auswahlfaktoren für eine Entwicklungsumgebung
Einfache Bedienbarkeit
Die Entwicklungsumgebung befindet sich dort, wo der Kern eines automatisierten Systems entwickelt wird. Daher ist die Bedienfreundlichkeit dieser Werkzeuge ein kritischer Faktor für die Produktivität eines Softwareingenieurs. Bedienfreundlichkeit ist mehr als nur die Möglichkeit, ein System schnell zu installieren und einsatzbereit zu machen. Dank benutzerfreundlicher Entwicklungssoftware können Anwender Verarbeitungsroutinen mit mehreren Messgeräten schnell integrieren. Zudem können sie anspruchsvolle Benutzeroberflächen erstellen, eine Anwendung verteile, warten und sie an wechselnde Systemanforderungen und Produktdesigns anpassen. Weitere Funktionen, die Teil der Entwicklungsumgebung sein sollten, sind umfassender Dokumentations- und Beispielcode.
Mess- und Analysefähigkeiten
Es ist entscheidend, dass die für die Entwicklung eines Prüfsystems verwendete Umgebung Messungen nahtlos verwalten und verarbeiten kann. Um dies wirksam umzusetzen, sollte die Entwicklungsplattform Datentypen direkt integrieren, so dass die Daten sich bei zusätzlichen Verarbeitungsroutinen einfach einsetzen lassen. Um maximale Produktivität bei der Entwicklung zu erzielen, sollte die Umgebung umfassende statistische und numerische Analysefunktionen sowie leistungsstarke Algorithmen für die Signalverarbeitung, Steuerung und Regelung enthalten, die in Messanwendungen gängig sind.
Integrierbarkeit mit Mess-, Steuer- und Regelungstreibern
Allzu häufig nehmen Entwickler von Prüfsystemen an, dass das Vorhandensein eines Gerätetreibers allein ausreichend ist, um ihr Messgerät effektiv zu integrieren. Dies ist jedoch ein Trugschluss. Wichtig ist zudem, dass solche Treiber für die Mess-, Steuer- und Regelungstechnik so nahtlos wie möglich in die Anwendungsentwicklungsumgebung integriert werden können. Im Idealfall ist die Software, die die Messgeräte steuert, transparent und erscheint nur als Teil der Entwicklungsumgebung. Diese ideale Form der Implementierung garantiert ein Maximum an Flexibilität bei der Entwicklung und stellt eine skalierbare Architektur bereit, die sich auf allen Plattformen nutzen lässt.
Schulungen und Support
Die Bedienfreundlichkeit einer Umgebung für die Anwendungsentwicklung kann nur bis zu einem bestimmten Grad neuen Anwendern das Erlernen der Applikation erleichtern. Daher sollte der Anbieter einer Entwicklungsumgebung Handbücher und Online-Schulungen bereitstellen, damit Ingenieure schnell den Umgang mit dem neuen Produkt erlernen können. Fortgeschrittene Anwender benötigen eventuell Vor-Ort-Schulungen, um ihr Wissen zu erweitern und mehr über Designkonzepte auf Systemebene zu erfahren. Diese Vor-Ort-Schulungen sollten Entwicklern die Möglichkeit bieten, sich ihr Wissen zertifizieren zu lassen. Weiterhin ist bei der Auswahl einer Entwicklungssoftware der Support seitens des Anbieters zu beachten und ob dieser während der Erstellung der Anwendung gut über beispielsweise Telefon oder E-Mail erreichbar ist. Soll z. B. eine Plattform weltweit als Standardumgebung eingesetzt werden, ist zu berücksichtigen, ob Ingenieure Zugang zum Support in ihrer eigenen Sprache haben.
Plattformunabhängigkeit
Prüfsoftwareanwendungen sind heutzutage für viele unterschiedliche Architekturen ausgelegt. Unabhängig von der ausgewählten Entwicklungssoftware ist zu berücksichtigen, ob sie flexibel genug ist, um all diese unterschiedlichen Architekturen so nahtlos wie möglich zu unterstützen. Verschiedene Betriebssysteme wie Windows, Linux® und Mac OS X können je nach Applikation andere Vorteile bieten. Anwendern sollte es möglich sein, ihren Programmcode von einer Plattform auf eine andere zu portieren. Falls die verfügbare Anwendungsentwicklungsumgebung nicht mit diesen anderen Plattformen kompatibel ist, müssen unterschiedliche Umgebungen für unterschiedliche Projekte eingesetzt werden. Der Anwender muss dann wertvolle Zeit darauf verwenden, das vorhandene geistige Eigentum von einer Plattform auf die nächste zu übertragen.
Darstellungs- und Dokumentationsfunktionen
Prüfanwendungen sind oft sehr herausfordernd im Hinblick auf Darstellung und Dokumentation, da die grafische Visualisierung der Daten dabei betont wird. Die für die Erstellung der Applikation eingesetzte Umgebung sollte mehrere grafische Komponenten für die Datendarstellung besitzen, so beispielsweise Diagramme, Grafen, Drehknöpfe und Messwertanzeigen. Die Erstellung von Berichten sollte ebenfalls einfach möglich sein, um die Kommunikation der vom System erfassten Informationen zu erleichtern. Ferner ist es wichtig, dass sich die Daten leicht in den gängigsten Reportformaten, wie z. B. Microsoft Word und Microsoft Excel, abspeichern lassen. Ebenfalls nicht zu vernachlässigen ist die schnelle Übermittlung von Ergebnissen, beispielsweise durch Einstellen der Anwendung ins Internet oder Protokollieren von Informationen in einer Datenbank.
Schutz vor Wertverlust
Das Ausmaß einer Entscheidung für eine bestimmte Umgebung als Standard für die Entwicklung eines Prüfsystems ist nicht zu unterschätzen. Die Investition muss auch dann gewahrt bleiben, wenn das Produkt an Wert verliert. Eines der zu berücksichtigenden Merkmale ist die mögliche Integration des Produkts in neueste Softwaretechnologien. Zudem ist wichtig, dass das Produkt gegenüber plötzlich auftretenden Veränderungen bei der Prüfsoftware-Entwicklung stabil ist. Außerdem sollten beim Produkt Upgrades möglich sein, damit neue Funktionen hinzugefügt werden können.
Abb. 1: Unterschiedliche Entwicklungsumgebungen bieten unterschiedliche Vorteile und sorgen für Herausforderungen, wenn sie für die Erstellung eines Prüfsystems eingesetzt werden.
LabVIEW
Bei NI LabVIEW handelt es sich um eine grafische Entwicklungsumgebung für die zügige und kosteneffiziente Entwicklung flexibler, skalierbarer Prüfanwendungen durch Ingenieure und Wissenschaftler. LabVIEW nutzt ein grafisches Entwicklungsparadigma und basiert nicht einer textbasierten Programmierung, wie es bei anderen Programmiersprachen wie Visual Basic, C++ oder C# der Fall ist. Die grafische Datenflusssprache von LabVIEW und die Arbeitsweise mit Blockdiagrammen repräsentieren den natürlichen Fluss Ihrer Daten und ordnen Ihren Daten intuitiv Bedienelemente auf der Benutzeroberfläche zu, so dass Sie Daten oder Steuerungseingaben einfach visualisieren und ändern können. In Abbildung 2 werden ein in LabVIEW geschriebenes Blockdiagramm einer Anwendung sowie das entsprechende Frontpanel gezeigt.
Abb. 2: Mithilfe der grafischen Entwicklungsumgebung LabVIEW lassen sich Prüfanwendungen schnell und übersichtlich erstellen.
LabVIEW beinhaltet überdies Funktionen, die den Zugriff auf die umfassende Dokumentation, die Teil des Produkts ist, erleichtern. Mithilfe der Funktion „Kontext-Hilfe“ kann der Anwender die Vorteile der grafischen Darstellungsweise von LabVIEW nutzen, um Zugriff auf die Dokumentation von SubVIs zu erhalten. Dazu muss er lediglich den Mauszeiger über das SubVI bewegen. LabVIEW bietet Hunderte von Beispielprogrammen, die im Produkt enthalten sind oder online zur Verfügung stehen und zu Demonstrations- und Unterrichtszwecken genutzt werden können.
Trotz der Komplexität der zugrunde liegenden Algorithmen sind die LabVIEW-Analysewerkzeuge äußerst bedienfreundlich. Mehr als 15 Express-VIs zur Datenanalyse (u. a. das Express-VI „Spektralmessungen“) sorgen dank interaktiver Konfigurationsdialogfenster mit integrierter Online-Ergebnisvorschau für eine vereinfachte Integration der Datenanalyse in eine Applikation.

Abb. 3: Express-VIs für die Signalanalyse sind leistungsstarke, einfach einzusetzende Programmierwerkzeuge.
Diese und weitere Werkzeuge für die Messanalyse bieten die Möglichkeit, Zeitbereichssignale direkt von der Datenerfassungshardware zu übernehmen und liefern Ergebnisse, die sofort in Diagrammen oder Grafen dargestellt bzw. anderweitig verarbeitet werden können. Mithilfe dieser Funktionen können Signalcharakteristika wie Gleichanteile/Effektivwerte, harmonische Gesamtverzerrungen (THD bzw. SINAD), Impuls- bzw. Frequenzantworten und Kreuzleistungsspektren ermittelt werden.
Zu den größten Stärken von LabVIEW gehört die Möglichkeit, Treiber für die Mess-, Steuer- und Regelungstechnik eng zu integrieren. Mit LabVIEW ist es ein Leichtes, unterschiedlichste Geräte anzuschließen und mit diesen zu kommunizieren. Mithilfe von Gerätetreibern, interaktiven Assistenten und der enthaltenen Geräte-I/O-Bibliotheken lassen sich schon nach kurzer Zeit Daten von GPIB-, Ethernet-, PXI-, USB- und VXI-gestützten sowie seriellen Geräten erfassen. LabVIEW umfasst überdies einfach einzusetzende Bibliotheken und interaktive Assistenten, um so mit modularen Geräten und Datenerfassungsprodukten von NI zu kommunizieren.
National Instruments bietet LabVIEW-Schulungen für unterschiedliche Wissensstufen an. Die Grundkurse richten sich an Neueinsteiger des Bereichs Programmierung und an Entwickler, die das Produkt kennen lernen wollen. Anwender mit Vorkenntnissen sowie Fortgeschrittene werden ebenfalls Kursinhalte vorfinden, die für ihr Niveau hilfreich sind. Vor-Ort-Kurse sind für Unternehmen geeignet, die eine große Zahl von Entwicklern direkt schulen wollen. Online- und Selbstlernkurse zielen auf Entwickler ab, die beim Lernen Zeit und Tempo selbst bestimmen möchten. Die umfangreichen Schulungsmöglichkeiten zu LabVIEW werden durch den weltweiten Support von anderen Anwendern ergänzt. Applikationsingenieure von National Instruments bieten LabVIEW-Support über die lokalen NI-Niederlassungen auf der ganzen Welt an. So ist es Anwendern möglich, Support zu LabVIEW per Telefon, E-Mail oder Internet in ihrer eigenen Sprache zu bekommen.
Obwohl LabVIEW gewöhnlich als Windows-Anwendung gesehen wird, lief die erste Version auf Macintosh-Rechnern. National Instruments übertrug LabVIEW auf Windows, als dieses Betriebssystem die Desktop-PC-Industrie zu dominieren begann. Auch heute werden noch weitere, neue Plattformen erschlossen. LabVIEW kann unter Windows und Mac OS X ausgeführt werden, läuft aber auch unter Linux, da dessen Beliebtheit bei Kunden zunimmt. Weil LabVIEW-VIs unter verschiedenen Betriebssystemen ausgeführt werden können, ist der Anwender unabhängig von der verwendeten Plattform in der Lage, seine NI-LabVIEW-Kenntnisse einzusetzen. LabVIEW kann zusätzlich auf anderen Zielgeräten, wie echtzeitfähigen Systemen, FPGAs und DSPs ausgeführt werden.
Die Darstellungs- und Dokumentationsfunktionen von LabVIEW sind ein ganz entscheidender Grund dafür, dass sich diese Umgebung so gut für die Prüfsoftware-Entwicklung eignet. LabVIEW enthält eine Vielzahl von Grafen, Diagrammen, Messwertanzeigen, Drehknöpfen und Schaltern in 2D und 3D, die eine grafische Darstellung von Messdaten ermöglichen. Das ergänzende LabVIEW Report Generation Toolkit erlaubt die Erstellung von Berichten im MS-Word- und -Excel-Format. Sollen Ergebnisse der Anwendung über das Internet kommuniziert werden, können LabVIEW-Netzwerk-Panels eingesetzt werden, mit denen das Frontpanel über das Web auf jedem Browser angezeigt wird. Wenn hingegen die Ergebnisse von Messungen in einer Datenbank festgehalten werden sollen, kann dazu das LabVIEW Database Connectivity Toolkit mit einer Reihe bedienfreundlicher Werkzeuge genutzt werden. Diese ermöglichen die Anbindung an lokale und dezentrale Datenbanken und führen zahlreiche gängige Datenbankoperationen durch.
LabWindows/CVI
LabWindows/CVI ist eine bewährte, auf ANSI C basierende Entwicklungsumgebung für Prüf- und Messanwendungen, die zur Steigerung der Produktivität von Ingenieuren und Wissenschaftlern beiträgt. Abbildung 4 zeigt die Entwicklungsumgebung LabWindows/CVI.

Abb. 4: LabWindows/CVI 8.0 umfasst einen kompletten Arbeitsbereich zur zügigen Entwicklung und Verwaltung großer Anwendungen sowie zur Fehlerbeseitigung.
LabWindows/CVI dient der Entwicklung von leistungsstarken, stabilen Applikationen in den Bereichen Produktionsprüfung, Luft- und Raumfahrt, Telekommunikation, Designvalidierung und Automotive. LabWindows/CVI optimiert die Entwicklung in diesen Bereichen mittels Hardwarekonfigurationsassistenten, umfassenden Werkzeugen für die Fehlerbeseitigung und interaktiven Funktionen, die von Anwendern zum Ausführen von Funktionen während des Entwicklungsprozesses genutzt werden können.
Toolkits wie etwa die Advanced Analysis Library ergänzen die Bibliotheken für die Analyse von LabWindows/CVI, so dass sich Messdaten einfach analysieren lassen. Die Advanced Analysis Library von LabWindows/CVI bietet einen umfassenden Satz von Funktionen für die Datenanalyse. Mit diesen leistungsstarken Analyseroutinen können Rohdaten leicht in aussagekräftige Informationen umgewandelt und Prüfanwendungen erstellt werden. Die Advanced Analysis Library enthält Funktionen für die Signalerzeugung, 1D- und 2D-Array-Manipulation, komplexe Mathematik, Signalverarbeitung, Statistiken und Kurvenanpassung.
LabWindows/CVI gehört zu den führenden Entwicklungsumgebungen bei der Gerätesteuerung und -anbindung, da es sich des Instrument Driver Network mit über 4000 Gerätetreibern von mehr als 200 Anbietern bedient. Diese Treiber können genutzt werden, um Anwendungen für die Gerätesteuerung unkompliziert zu programmieren. Mithilfe des Instrumenten-I/O-Assistenten lässt sich Programmcode für die Kommunikation mit z. B. seriellen, Ethernet- und GPIB-basierten Geräten generieren, ohne dass dazu ein Gerätetreiber eingesetzt werden muss. Dieser Assistent bietet eine komfortable Bedienoberfläche, über die das Prototypisieren von Anwendungen sowie die automatische Analyse von Geräteantworten schnell, da ohne jegliche Programmierung, von der Hand gehen. Sie können den erzeugten Programmcode in jede bereits vorhandene Anwendung importieren. So wird bei der Geräteanbindung und -kommunikation sowie der Analyse von als Zeichenketten empfangenen Daten wertvolle Zeit gespart. Zusätzlich zur integrierten NI-DAQmx-Bibliotheken bietet LabWindows/CVI auch den DAQ-Assistenten, bei dem es sich um eine interaktive Schnittstelle zur Treiberarchitektur für die Datenerfassung handelt.
Die für LabVIEW verfügbare Schulungs- und Supportstruktur ist auch für LabWindows/CVI vorhanden. Für LabWindows/CVI werden Schulungen angeboten, die auf unterschiedliche Wissensstufen abgestimmt sind. Auch Vor-Ort-Kurse sind für Unternehmen verfügbar, die eine große Zahl von Entwicklern direkt schulen wollen. Ebenfalls gibt es Schulungsoptionen für Ingenieure, die beim Lernen Zeit und Tempo selber bestimmen möchten. Für sie werden Online- und Selbstlernkurse angeboten. Als Ergänzung zu den Schulungsmöglichkeiten für LabWindows/CVI bieten Applikationsingenieure der lokalen Niederlassungen von National Instruments weltweit Support an.
Microsoft Visual Studio .NET (C++, Visual Basic .Net, C#, und ASP.NET)
Visual Studio .NET ist eine sehr leistungsstarke Entwicklungsumgebung, die vier Programmiersprachen unterstützt: C++, Visual Basic .Net, C# und ASP.NET. Die Möglichkeit, aus diesen Programmiersprachen zu wählen, heißt, dass nicht nur ein Werkzeug eingesetzt, sondern zugleich auch das Fachwissen mehrerer Entwickler genutzt werden kann, selbst wenn sich deren Wissen auf unterschiedliche Programmiersprachen bezieht. Anwendungen, die in Visual Studio .NET entwickelt wurden, können mittels ASP.NET auf einem PC sowie über das Internet ausgeführt werden.
Standardmäßig umfasst Visual Studio .NET keine Funktionen, die die Integration von Mess-, Steuer- und Regelungstreiber in diese Programmierumgebung oder eine Ausführung von Analyseabläufen ermöglichen. Komponenten, wie sie beispielsweise von NI Measurement Studio geboten werden, können Zugang zu Mess- und Gerätetreibern sowie zu Analysefunktionen liefern. Diese Komponenten erhöhen die Integration der Entwicklungsumgebung mit Geräte- und Messtreibern, da sie interaktive Assistenten zur automatischen Codegenerierung bereitstellen. Dagegen beinhaltet die .NET-Plattform bestimmte Eigenschaften, die die Kommunikation mit gewissen Geräten erschweren. Die .NET-Plattform führt Programmcode in der als Common Language Runtime bezeichneten Laufzeitumgebung aus, die einen anwenderseitigen Zugriff auf die Hardware ausschließt. Ohne Zugriff auf die Hardware, ist es sehr schwierig, auf Registerebene mit Geräten zu kommunizieren. Dazu müsste eine DLL erstellt werden, die dann aus einer .NET-Anwendung aufgerufen wird.
Visual Studio .NET bietet standardmäßig wenige Darstellungs- und Dokumentationsfunktionen. Diese Umgebung stellt lediglich ausreichend Funktionen bereit, um eine Standard-Windows-Anwendung zu erstellen. Sie bietet Text-, Kombinations- und Listenfelder, Schaltflächen und andere Elemente, die zur Erstellung einer einfachen Anwendung erforderlich sind. Um leistungsfähigere Komponenten zur Anzeige von Daten (Grafen, Diagramme etc.) nutzen zu können, müssen bestimmte Komponenten für diese spezielle Anwendung erworben werden. Dieses Problem ist ebenfalls bei den Berichterstellungswerkzeugen vorhanden, die für die Programmiersprachen in Visual Studio .NET fehlen. Dagegen beinhaltet die .NET-Plattform leistungsstarke Funktionen für die Berichterstellung durch Speicherung von Informationen in einer Datenbank. ADO .NET, eine .NET-Technologie zur Verwaltung von Datenbankinhalten, kann genutzt werden, um mit Datenbanken zu kommunizieren und Operationen auf vielen unterschiedlichen Datenbanken auszuführen.
Relevante NI-Produkte und -Whitepapers
National Instruments, ein führendes Unternehmen in der Automatisierungsbranche, möchte Hardware- und Softwareprodukte zur Verfügung stellen, mit denen Anwender Testsysteme der neuesten Generation entwickeln können.
Software:
- NI TestStand (Testmanagementarchitektur)
- LabVIEW (grafische Programmierumgebung)
- Signal Express (interaktive Messsoftware)
- NI DIAdem (Datenverwaltung und -auswertung)
Hardware:
- Modulare Messgeräte (Oszilloskope, Multimeter, HF-Geräte, Schaltmodule u. v. m.)
- Multifunktionsdatenerfassung
- Komponenten für PXI-Systeme (Chassis und Controller)
- Gerätesteuerung (GPIB, USB und LAN)
Whitepapers:
NI stellt den Leitfaden Designing Next Generation Test Systems Developers Guide zur Verfügung. Hierbei handelt es sich um eine Sammlung von Whitepapers, die Sie bei der Entwicklung von Prüfsystemen unterstützen sollen, die Ihre Kosten senken, den Prüfdurchsatz erhöhen und an künftige Anforderungen angepasst werden können. Der gesamte Leitfaden (120 Seiten) kann auf ni.com/automatedtest heruntergeladen werden.
Weitere Links:
- Maximierung der Produktivität mit einer Anwendungsentwicklungsumgebungen (engl.)
- Produktivitätssteigerung durch ein integriertes Software-Framework für die Mess- und Automatisierungstechnik (engl.)
- Erweiterung der Lebensdauer von Prüfsystemen (engl.)
AGB
Dieses Tutorium ("Tutorium") wurde von National Instruments ("NI") entwickelt. Auch wenn National Instruments dieses Tutorium technisch unterstützt, ist es jedoch möglich, dass dieses Tutorium nicht umfassend getestet und überprüft wurde. NI übernimmt weder Garantien bezüglich der Qualität des Tutoriums noch bezüglich der weiteren technischen Unterstützung neuer Versionen ähnlicher Produkte und Treiber. DIESES TUTORIUM WIRD IM "IST-ZUSTAND" ZUR VERFÜGUNG GESTELLT UND NI ÜBERNIMMT KEINERLEI GARANTIEN. AUSFÜHRLICHERE ERLÄUTERUNGEN ZU ANDEREN EINSCHRÄNKUNGEN ENTNEHMEN SIE BITTE DEN NUTZUNGSBEDINGUNGEN AUF NI.COM (http://ni.com/legal/termsofuse/unitedstates/us/).


