Academic Über NI Veranstaltungen NI Developer Zone Support Lösungen Online Store Kontakt MyNI

Dokumententyp: Tutorium
Von NI unterstützt: Ja
Veröffentlichungsdatum: 04.03.2008


Feedback


Ja Nein

Ähnliche Kategorien

Thematisch verwandte Links - Developer Zone

Thematisch verwandte Links - Products and Services

Langfristige Lösungen für die Gerätesteuerung und -anbindung

0 Bewertung(en) | 0.00 von 5
Sprache | Drucken | PDF

Übersicht

Der Schlüssel zur Entwicklung langfristiger Gerätesteuerungsanwendungen liegt in flexibler und skalierbarer Hard- und Software, die eine nahtlose Anbindung an nahezu jedes Messgerät ermöglicht und über integrierte Funktionen für komplexe Datenanalyse und -darstellung verfügt. Die Wahl des Messgeräts sollte die Auswahl der geeigneten Software nicht einschränken und umgekehrt. Die Wahl des passenden Messgeräts und der geeigneten Software sollte unabhängig voneinander getroffen werden, so dass Anwender das optimale Messgerät sowie die am besten geeignete Softwareumgebung für ihre Anwendung wählen können.
Für eine flexible Gerätesteuerung und -anbindung benötigen Sie:

  • Nahtlose Integration von Industriestandardsoftware
  • Vielfältige Optionen zur Hardwareanbindung
  • Unterstützung einer großen Anzahl an Treibern
Dieses Whitepaper beschreibt verschiedene Industriestandardoptionen, die diese Vorraussetzungen erfüllen, so dass für jede Anwendung die passende Hard- und Softwarelösung bereit steht.

Hauptmerkmale von Gerätesteuerungssoftware

Bevor ein Softwarewerkzeug für die Anwendungsentwicklung ausgewählt wird, gilt es verschiedene Merkmale zu vergleichen. Die richtige Entwicklungsumgebung ist ein wichtiger Faktor beim Erfolg des Projekts, da somit die Werkzeuge zur Verfügung stehen, die zur Herstellung hochwertiger Produkte notwendig sind.

Hauptmerkmale von Gerätesteuerungssoftware
1) Vollständige Entwicklungsumgebung vs. Programm mit begrenztem Funktionsumfang
2) Integrierte Funktionen zur Geräteanbindung
3) Analyse- und Darstellungsfunktionen

1) Vollständige Entwicklungsumgebung vs. Programm mit begrenztem Funktionsumfang
Eine vollständige Entwicklungsumgebung bietet zahlreiche Vorteile gegenüber einem vorprogrammierten Softwarewerkzeug. Vollständige Entwicklungsumgebungen bieten die notwendige Flexibilität und Leistungsstärke für benutzerdefinierte Anpassungen, Anwendungsintegration, Systemanbindung u. v. m. Diese Flexibilität kombiniert mit mess- und automatisierungsspezifischen Werkzeugen sind die Grundlage für Anwendungen mit virtuellen Instrumenten. Virtuelle Instrumente sind ein fundamentaler Wechsel von traditionellen, hardwarezentrierten Messsystemen und festgelegten Softwarepaketen hin zu flexiblen Systemen, die hauptsächlich auf Mess- und Automatisierungssoftware basieren und die Computerleistung und Produktivität sowie Darstellungs- und Anbindungsmöglichkeiten gängiger Desktop-PCs und Workstations nutzen. Obwohl im Bereich von PCs und integrierten Schaltkreisen erhebliche Fortschritte erzielt wurden, ist es die Software, die mithilfe dieser leistungsstarken Hardware die notwendige Flexibilität für die Entwicklung virtueller Instrumente bietet, indem sie mehr Produktinnovationen ermöglicht und für Kostenreduzierungen sorgt. Mithilfe virtueller Instrumente sind Ingenieure und Wissenschaftler in der Lage, Mess- und Automatisierungssysteme zu erstellen, die genau ihren Anforderungen entsprechen (benutzerdefiniert), anstatt wie bei herkömmlichen Messgeräten auf festgelegte Funktionen (herstellerdefiniert) beschränkt zu sein.

2) Integrierte Funktionen zur Geräteanbindung
Ein weiterer Schlüssel zum Erfolg eines Projekts liegt in der sofortigen Einsatzfähigkeit eines Softwarepakets. Um Projekte innerhalb strikter Zeitvorgaben zu realisieren, ist es notwendig, dass die Software bestimmte Aufgaben übernimmt. So sorgen z. B. integrierte Anbindungsfunktionen für eine deutliche Zeiteinsparung bei der Entwicklung. Es ist ein bedeutender Unterschied, ob nur ein nativer Abfragebefehl zur Kommunikation mit dem Messgerät notwendig ist oder die Funktion über einen wesentlich umständlicheren DLL-Aufruf festgelegt wird, bei welchem die Übergabeparameter in richtiger Reihenfolge angegeben werden müssen und der Programmierer sich manuell um die Fehlerbehandlung kümmern muss.

3) Analyse- und Darstellungsfunktionen
Des Weiteren sollte Software über robuste Analyse- und Darstellungsfunktionen verfügen. Nachdem Daten vom Messgerät erfasst wurden, benötigen Anwender integrierte, leistungsstarke Algorithmen und Funktionen zur Messdatenanalyse und Signalverarbeitung. Wenn die Software keine Funktionen für die Messdatenanalyse enthält, müssen eigene Algorithmen geschreiben werden, um aus den Rohdaten Informationen zu gewinnen. Mit den richtigen Softwarefunktionen können Informationen aus erfassten Daten und Messungen gewonnen, Signale erzeugt, modifiziert, verarbeitet und analysiert werden. Daneben können auch Funktionen zur Entscheidungsfindung hinzugefügt, On- und Offline-Analysen durchgeführt und anschließend die Informationen in einer professionellen Benutzeroberfläche speziell für Messdaten bzw. in einem Datenverwaltungssystem dargestellt werden.

Wie werden nun diese drei Merkmale in den Industriestandardplattformen NI LabVIEW, NI LabWindows™/CVI und Microsoft Visual Studio umgesetzt?

LabVIEW
LabVIEW ist eine vollständige grafische Entwicklungsumgebung. Die Software ist eine hochgradig interaktive und offene Umgebung für eine schnelle Prototypisierung und Anwendungsentwicklung − von Mess- und Automatisierungsanwendungen über Embedded-Echtzeitanwendungen bis hin zum Hardwaredesign. LabVIEW bietet all die flexiblen Funktionen traditioneller Entwicklungsumgebungen und verbindet diese mit der grafischen Programmierung für eine revolutionär schnelle Anwendungsentwicklung. Die grafische Benutzeroberfläche von LabVIEW ermöglicht es:


· das Instrumentierungsprogramm zu bedienen
· ausgewählte Hardware zu steuern
· erfasste Daten zu analysieren
· Ergebnisse darzustellen

Es ist möglich, Frontpanels mit Drehknöpfen, Druckschaltern, Analogwertanzeigen und Diagrammen individuell anzupassen, so dass sie den Bedien- und Anzeigefeldern herkömmlicher Messgeräte entsprechen. Außerdem können benutzerdefinierte Testpanels erstellt und die Steuerung sowie der Ablauf von Prozessen visuell dargestellt werden. Aufgrund der Ähnlichkeit der grafischen LabVIEW-Programmierung mit Standardflussdiagrammen verkürzt sich die Einarbeitungszeit, die i. d. R. für herkömmliche textbasierte Sprachen erforderlich ist.



[+] Bild vergrößern

Abb. 1: Blockdiagramm und Frontpanel in LabVIEW

Das Verhalten virtueller Instrumente wird durch das Verbinden von Symbolen zu Blockdiagrammen festgelegt. Diese Art der Ablaufdarstellung ist Wissenschaftlern und Ingenieuren bestens vertraut. Mithilfe der grafischen Programmierung können Systeme schneller entwickelt werden als mit herkömmlichen Programmiersprachen, wobei die zur Erstellung vielfältiger Anwendungen notwendige Leistung und Flexibilität erhalten bleiben.

Software
Vollständige Entwicklungsumgebung
Integrierte Funktionen zur Geräteanbindung
Integrierte Datenanalyse- und -darstellungsfunktionen
LabVIEW
Ja
Ja
Ja


LabWindows/CVI
Bei LabWindows/CVI handelt es sich ebenfalls um eine vollständige Entwicklungsumgebung, allerdings basiert sie im Gegensatz zu LabVIEW auf der Programmiersprache ANSI C und nicht auf grafischer Programmierung. LabWindows/CVI bietet dieselbe Flexibilität wie andere mess- und automatisierungsspezifische Umgebungen, wie z. B. LabVIEW. Die Umgebung ermöglicht die ANSI-C-Entwicklung mittels Hardwarekonfigurationsassistenten, umfassenden Fehlerbeseitigungswerkzeugen und einem interaktiven Ausführungsprogramm zum Ablauf von Funktionen während des Entwicklungsprozesses. Integrierte Messbibliotheken sorgen für die schnelle Entwicklung komplexer Anwendungen einschließlich direkter Busunterstützung, Analysefunktionen und Benutzeroberflächensteuerung.

Software
Vollständige Entwicklungsumgebung
Integrierte Funktionen zur Geräteanbindung
Integrierte Datenanalyse- und -darstellungsfunktionen
LabWindows/CVI
Ja
Ja
Ja



Microsoft Visual Studio
Microsoft Visual Studio ist ebenfalls eine vollständige Entwicklungsumgebung und umfasst Visual C# .NET, Visual Basic .NET, Visual Basic 6.0 und Visual C++. Jedoch ist es im Vergleich zu LabVIEW und LabWindows/CVI ein Universalwerkzeug, das nicht für Mess- und Automatisierungsanwendungen konzipiert bzw. optimiert wurde. Aufgrund dessen enthält es keine integrierten Werkzeuge für mess- und automatisierungsspezifische Aufgaben, wie z. B. Gerätesteuerung, Messdatenanalyse oder -darstellung. Für diesen Zweck bietet NI die Add-in-Werkzeuge von Measurement Studio an. Measurement Studio integriert speziell für die Anzeige von Messdaten konzipierte native Gerätesteuerungswerkzeuge, anspruchsvolle Analyseroutinen und native Benutzeroberflächensteuerungselemente in die universelle Umgebung Visual Studio.

Software
Vollständige Entwicklungsumgebung
Integrierte Funktionen zur Geräteanbindung
Integrierte Datenanalyse- und -darstellungsfunktionen
Visual Studio
Ja
Nein
Nein
Visual Studio mit Measurement Studio
Ja
Ja
Ja


Nach Auswahl der geeigneten Entwicklungsumgebung wird der optimale I/O-Bus und die I/O-Anbindung festgelegt.  

Hardwareoptionen

Es existieren verschiedene Hardwareoptionen zur Kommunikation mit und Steuerung von Messgeräten. Bisher haben die meisten Anwender ihre Messgeräte über ausgereifte Bustechnologien wie GPIB und RS-232 (seriell) gesteuert. Aufstrebende Technologien wie Ethernet und USB sind jedoch immer häufiger im Mess- und Automatisierungsbereich anzutreffen. Werden bestehende Messgeräte, die auf Kommunikationsbussen wie GPIB oder RS-232 basieren, mit den neuesten Ethnernet- und USB-Messgeräten kombiniert, spricht man von hybriden I/O-Prüfsystemen. Die Software ist ein entscheidendes Werkzeug in der Entwicklung und Wartung hybrider I/O-Systeme. Es sind Softwarewerkzeuge notwendig, die eine breite Auswahl an Busprotokollen sowie skalierbare Hardwarelösungen unterstützen.

General Purpose Interface Bus (GPIB)
Der General Purpose Interface Bus (GPIB) ist eine der am häufigsten verwendeten I/O-Schnittstellen für Messgeräte der letzten Jahre. Das Bussystem GPIB wurde speziell für Gerätesteuerungsanwendungen entwickelt. IEEE 488, die standardisierte Bezeichnung für diesen Bus, definiert die elektrischen, mechanischen und funktionellen Spezifikationen sowie die grundlegenden Softwarekommunikationsrichtlinien des Busses. GPIB ist eine digitale, parallele Kommunikationsschnittstelle mit 8 bit, die Datenübertragungsraten von bis zu 8 MB/s und die Anbindung von bis zu 14 Messgeräten plus einen System-Controller ermöglicht. GPIB bietet robuste geschirmte Anschlüsse, die insbesondere für raue Industrieumgebungen geeignet sind.
GPIB-Hardware von NI wird mit der Treibersoftware NI-488.2 ausgeliefert, die über native Schnittstellen für LabVIEW, LabWindows/CVI, Visual Basic 6.0, Visual Basic .NET, Visual C# .NET und Visual C++ verfügt. Des Weiteren ermöglicht die Virtual Instrumentation Software Architecture (VISA) die Kommunikation mit GPIB-Hardware. VISA ist eine Standardarchitektur, die ursprünglich von der VXIplug&play Systems Alliance, gegründet 1993, definiert wurde, um eine gemeinsame Grundlage für die Entwicklung, Verteilung und Interoperabilität von High-level-Softwaresystembestandteilen verschiedener Hersteller zu schaffen. Dies beinhaltet Unterstützung von GPIB-, VXI-, PXI-, VME-, USB- und seriellen Schnittstellen. VISA stellt native Schnittstellen für LabVIEW, LabWindows/CVI, Visual Basic 6.0, Visual Basic .NET, Visual C# .NET und Visual C++ zur Verfügung.

RS-232 (seriell)
RS-232 ist eine Spezifikation für die serielle Kommunikation und findet weite Verbreitung in Messgeräten, die für analytische und wissenschaftliche Zwecke eingesetzt werden. Des Weiteren wird sie häufig zur Steuerung von Modems und Druckern verwendet. Im Gegensatz zur GPIB-Schnittstelle kann an die RS-232-Schnittstelle immer nur ein Gerät angeschlossen und gesteuert werden. RS-232 ist außerdem eine relativ langsame Schnittstelle mit typischen Datenübertragungsraten von weniger als 20 kB/s.
Im Lieferumfang der seriellen Hardware von NI ist die Treibersoftware NI-Serial enthalten. Über die serielle Windows- bzw. NI-VISA-Programmierschnittstelle kann auf den Treiber NI-Serial zugegriffen werden, der über native Schnittstellen für LabVIEW, LabWindows/CVI, Visual Basic 6.0, Visual Basic .NET, Visual C# .NET und Visual C++ verfügt.

Ethernet
Die jüngste Entwicklung zeigt, dass Gerätehersteller anfangen, Ethernet als alternative Kommunikationsschnittstelle in Stand-alone-Geräte zu integrieren. Obwohl der Einsatz von Ethernet für die Gerätesteuerung noch in den Anfängen steckt, handelt es sich um eine ausgereifte Technologie, die, wenn auch in anderer Funktion, eine breite Anwendung in Messsystemen findet. Die Vorteile von Ethernet für die Gerätesteuerung liegen in der Fernsteuerung von Messgeräten, der gemeinsamen Nutzung von Geräten durch mehrere Anwender von unterschiedlichen Standorten aus sowie in der einfacheren Integration und Veröffentlichung von Daten. Die heutzutage am häufigsten genutzten Ethernet-Netzwerke ermöglichen Datenübertragungsraten von 10 Mbit/s, 100 Mbit/s bis hin zu 1 Gbit/s mit dem neuen Gigabit-Ethernet-Standard. Hierbei handelt es sich jedoch um theoretisch mögliche maximale Übertragungsraten, die von den meisten Anwendungen so nicht erreicht werden. Des Weiteren ist die Datenübertragung über Ethernet nicht deterministisch und zusätzliche Sicherheitsmaßnahmen, wie z. B. Firewalls, sind zum Schutze der Daten erforderlich.
Die in LabVIEW, LabWindows/CVI, Visual Basic 6.0, Visual Basic .NET, Visual C# .NET und Visual C++ vorhandene VISA-Schnittstelle sorgt für die Kommunikation und Steuerung von Ethernet-basierten Messgeräten.

USB
Der Universal Serial Bus (USB) wurde ursprünglich zur Anbindung von Peripheriegeräten, wie z. B. Tastaturen und Drucker, konzipiert. USB ist plug-and-play-fähig und unterstützt bis zu 127 Geräte an einem Anschluss. Der Bus ermöglicht theoretische Datenübertragungsraten von bis zu 480 Mbit/s (High-Speed USB definiert als die Spezifikation USB 2.0). USB-Anschlüsse gehören heutzutage zur Standardausstattung jedes PCs und werden als die natürliche Evolution der konventionellen seriellen Anschlusstechnologie betrachtet. Allerdings verfügt der Bus über Merkmale, die ihn für bestimmte Aufgaben ungeeignet machen. So sind USB-Kabel u. a. nicht industriegenormt und rauschempfindlich und können sich versehentlich lösen. Außerdem kann die maximale Entfernung zwischen Gerät und Controller nicht mehr als 30 m betragen.
Die in LabVIEW, LabWindows/CVI, Visual Basic 6.0, Visual Basic .NET, Visual C# .NET und Visual C++ vorhandene VISA-Schnittstelle sorgt für die Kommunikation und Steuerung von USB-basierten Messgeräten.

IEEE 1394
IEEE 1394 (auch FireWire) ist ein leistungsstarker serieller Bus, der von Apple Computer, Inc. Anfang der 1990er entwickelt wurde. Der Basisstandard ermöglicht Durchsatzraten von bis zu 400 Mbit/s. Die IEEE 1394 Trade Association hat die Spezifikation überarbeitet, so dass Übertragunsgraten von bis zu 3,2 Gbit/s erreicht werden können. Die angeschlossenen Geräte dürfen sich nicht weiter als 4,5 m vom Busanschluss entfernt befinden, um die Spezifikation zu erfüllen. Es ist jedoch möglich, bis zu 16 Kabel hintereinander anzuschließen, um somit eine maximale Länge von 72 m zu erreichen. IEEE 1394 eignet sich in der Regel jedoch weniger für Prüf- und Messanwendungen. So sind die IEEE-1394-Kabel nicht industriegenormt und der isynchrone Modus sorgt zwar für eine ausreichende Bandbreite, kann aber nicht sicherstellen, dass keine Daten verloren gehen. Bei der Überprüfung des IEEE-1394-Standards stellte sich zudem heraus, das die tatsächlichen Datenübertragungsraten wesentlich geringer sind als die theoretischen Werte.
Die IEEE-1394-Treiber können als DLL-Schnittstelle für Entwicklungsumgebungen, wie z. B. LabVIEW und LabWindows/CVI, zur Steuerung von und Kommunikation mit IEEE-1394-Messgeräten eingesetzt werden.

Drahtlos
Drahtloses Ethernet (IEEE 802.11) ist ein weiterer aufstrebender Standard für I/O-Busse, der in Anwendungen zur Gerätesteuerung Einsatz finden kann. Es ermöglicht nicht ganz so hohe Übertragungsraten wie Standard-Ethernet und weist einige der Sicherheitsprobleme auf, bietet aber gleichzeitig die Vorteile der Fernsteuerung ohne Kabelaufwand. Eine weitere drahtlose Busalternative, auf die an dieser Stelle nicht näher eingegangen werden soll, ist Bluetooth.
Die IEEE-802.11-Treiber können als DLL-Schnittstelle für Entwicklungsumgebungen, wie z. B. LabVIEW und LabWindows/CVI, zur Steuerung von und Kommunikation mit IEEE-802.11-basierten Messgeräten eingesetzt werden.

Busbrücken
Die bisher genannten Busse bieten zwar einige Vorteile für die Gerätesteuerung, allerdings verfügen sie auch über bereits erwähnte Nachteile, so dass nicht abzusehen ist, welcher dieser Busse - wenn überhaupt - eine so breite Akzeptanz wie GPIB erreichen wird. Aus diesem Grunde zögern viele Hersteller, diese Busse in ihren Produkten einzusetzen. Eine Alternative zur nativen Buskommunikation besteht in Busbrückenprodukten. Diese Brücken erlauben das Umschalten von einem Bustyp auf einen anderen, z. B. von USB auf Ethernet oder von GPIB auf seriell.

Diese Buswandler bieten viele Vorteile für die Gerätesteuerung. Sie ermöglichen die Verwendung der anspruchsvollen Funktionen und Technologien dieser Bustypen, ohne dass bestehende Programme kostenintensiv umgerüstet werden müssen. Gute Busbrücken sollten softwaretransparent sein und Anwendungen, die für Steckkarten dieses Bustyps geschrieben wurden, ohne Modifikation unterstützen (z. B. USB-zu-GPIB-Wandler vs. GPIB-Steckkarte).
Die in LabVIEW, LabWindows/CVI, Visual Basic 6.0, Visual Basic .NET, Visual C# .NET und Visual C++ vorhandene NI-VISA-Programmierschnittstelle oder NI-488.2-Schnittstelle sorgt für die Kommunikation mit und Steuerung von busbrückenbasierten Messgeräten.

Bus-I/O-Software
Busbrücken bieten einen einfachen Einsteig in neue Bustechnologien. In Prüfsystemen kommen sowohl langjährig bewährte Busse als auch einige der neuen, bereits beschriebenen Busse zum Einsatz. Der Schlüssel zu einer nahtlosen Integration verschiedener Bustypen in ein System liegt in einer soliden Softwarearchitektur und leistungsstarken Entwicklungsumgebungen.

Weiterführende Links:
NI-GPIB
Gerätesteuerung

Einsatz von Gerätetreibern

Es gibt verschiedene Möglichkeiten, Messgeräte zu steuern. Entweder mithilfe eines Gerätetreibers oder über direkte I/O-Befehle (siehe Abb. 2).



[+] Bild vergrößern

Abb. 2: Gerätetreiber und interaktive, direkte I/O-Werkzeuge für die Gerätesteuerung


NI empfiehlt in der Regel, wenn möglich den Einsatz eines Gerätetreibers, da dieser für eine erhebliche Kosten- und Zeitersparnis sorgt. NI erkannte den enormen Nutzen von Gerätetreibern bereits sehr früh und führte im Jahre 1990 eine Plattform für Gerätetreiber ein, die mittlerweile zum Industriestandard gehört − das Instrument Driver Network (ni.com/idnet). Diese Online-Plattform umfasst zur Zeit mehr als 2200 Gerätetreiber von über 150 verschiedenen Herstellern.
Ein Gerätetreiber ist entweder ein VI, eine Bibliothek oder eine Klasse, die anspruchsvolle Funktionen für die Steuerung spezifischer Messgeräte oder einer Reihe von Messgeräten umfasst. Sollte es für Messgeräte keinen passenden Treiber geben oder kein Treiber benötigt werden, stellt NI-Software verschiedene interaktive Werkzeuge für die direkte I/O-Steuerung und -Kommunikation zur Verfügung.
Gründe, keinen Gerätetreiber zu verwenden, sind beispielsweise:
• Es müssen nur wenige Befehle an das Gerät gesendet werden.
• Es existiert kein Treiber für das Gerät.
• Die Befehlssätze müssen nicht an andere Entwickler weitergegeben werden.

Weiterführende Links:
Instrument Driver Network

Gerätetreiber

Gerätetreiber spielen eine wichtige Rolle für die schnelle Entwicklung von Prüf- und Messanwendungen. Gerätetreiber bieten anspruchsvolle und modulare VIs, Bibliotheken und Klassen für eine einfache Programmierung und sorgen somit dafür, dass Anwender keine komplexen Kommunikationsprotokolle lernen müssen. Ein Gerätetreiber umfasst eine Sammlung an Softwareroutinen, die programmatischen Operationen, wie dem Konfigurieren, Lesen und Schreiben von Daten sowie der Triggerung des Geräts, entsprechen.

National Instruments stellt Gerätetreiber für eine große Auswahl an Messgeräten zur Verfügung. Die Gerätetreiber sind in LabVIEW und/oder LabWindows/CVI geschrieben und nutzen die VISA-Programmierschnittstelle (Virtual Instrumentation Software Architecture) zur Steuerung von Geräten.



Abb. 3: Verschiedene Gerätetreiber bieten unterschiedliche Funktions- und Komplexitätsumfänge


Da die Anforderungen unterschiedlicher Prüfanwendungen variieren können, existieren zwei verschiedene Gerätetreibertypen: Plug-and-play-Treiber und IVI-Treiber.

Weiterführende Links:
Instrument Driver Network

Plug and play


Plug-and-play-Gerätetreiber vereinfachen die Steuerung und Kommunikation des Messgeräts mithilfe eines standardisierten und einfachen Programmiermodells. Plug-and-play-Treiber bieten nativen Quellcode für LabVIEW und LabWindows/CVI.

LabVIEW-plug-and-play-Treiber

Ein LabVIEW-plug-and-play-Treiber umfasst eine Sammlung an VIs zur Steuerung von und Kommunikation mit einem programmierbaren Messgerät. Jedes VI entspricht einer programmatischen Operation, wie z. B. Konfiguration, Lesen und Schreiben von Daten sowie Triggerung eines Messgeräts. LabVIEW-plug-and-play-Treiber erfüllen die Vorgaben und Empfehlungen bezüglich Programmierstil, Fehlerhandhabung, Frontpanels, Blockdiagrammen, Symbolen und Online-Hilfe. Da alle LabVIEW-Gerätetreiber über eine einheitliche Architektur und Schnittstelle verfügen, lassen sich Messgeräte schnell und einfach anschließen, ohne dass Code entwickelt werden muss. Des Weiteren verfügen alle LabVIEW-Gerätetreiber über ein einheitliches Programmiermodell, so dass Prüfsysteme einfach durch zusätzliche Geräte erweitert werden können, ohne dass neue Kommunikationsprotokolle oder Programmierparadigmen erlernt werden müssen.

Zusätzlich sind LabVIEW-Gerätetreiber, die den Anforderungen und Empfehlungen von National Instruments entsprechen, nicht ständigen Veränderungen in der Technologie, z. B. Microsoft-Technologien, ausgesetzt. Stattdessen handelt es sich bei diesen Treibern um langfristig einsetzbare Lösungen, die Kompatibilität gewährleisten. LabVIEW-Gerätetreiber, die 1992 geschrieben wurden, können auch in heutigen Prüfanwendungen verwendet werden, mit geringer oder gar keiner Codemodifizierung.

LabWindows/CVI-plug-and-play-Treiber

Ein LabWindows/CVI-plug-and-play-Treiber umfasst eine Sammlung an ANSI-C-Softwareroutinen zur Steuerung eines programmierbaren Messgeräts. Jede Routine entspricht einer programmatischen Operation, wie z. B. Konfiguration, Lesen und Schreiben von Daten sowie Triggerung eines Messgeräts. LabWindows/CVI-plug-and-play-Treiber erfüllen die Vorgaben und Empfehlungen bezüglich Programmierstil, Fehlerhandhabung, Funktionspanels, Funktionsbäumen und Hilfedateien. Da die LabWindows/CVI-Gerätetreiber über eine einheitliche Architektur und Schnittstelle verfügen, lassen sich Messgeräte mit geringen Codeveränderungen schnell und einfach anschließen. Des Weiteren verfügen alle LabWindows/CVI-Gerätetreiber über ein einheitliches Programmiermodell, so dass Prüfsysteme einfach durch zusätzliche Geräte erweitert werden können, ohne dass neue Kommunikationsprotokolle oder Programmierparadigmen erlernt werden müssen. Genau wie LabVIEW-Gerätetreiber gewährleisten die LabWindows/CVI-Treiber eine langfristige Kompatibilität.  

Interchangeable Virtual Instruments (IVI)


Interchangeable Virtual Instruments (IVI) sind komplexe Gerätetreiber mit höherer Leistungsfähigkeit und Flexibilität für anspruchsvolle Prüfanwendungen, die den Austausch von Messgeräten, Zustands-Caching und Messgerätesimulation erfordern. IVI-Treiber entsprechen den Industriestandards, die von der IVI Foundation festgelegt wurden. Die Interchangeable Virtual Instruments (IVI) Foundation wurde gegründet, um einen Gerätetreiberstandard zu entwickeln, der auf dem VXI-plug-and-play-Standard basiert, aber gleichzeitig den Austausch von Messgeräten, Simulation, Zustands-Caching und sicheres Multithreading ermöglicht. Mitglieder der IVI Foundation sind Unternehmen wie Boeing, Integratoren wie BAE Systems sowie Hard- und Softwarehersteller wie National Instruments, Agilent Technologies und Tektronix. Die IVI Foundation wurde 1998 gegründet und 2001 in eine Corporation umgewandelt mit 32 aktiven Mitgliedern. Zu den Funktionen der IVI-Treiber gehören u. a. Zustands-Caching und Multithreading für höhere Leistungsfähigkeit, Simulation für größere Produktivität und Austauschbarkeit von Geräten für die Wiederverwendbarkeit von Software bei ähnlichen Gerätetypen.

Die IVI-Treiber von National Instruments verfügen über eine Zustands-Caching-Engine, die nur Befehle an das Gerät schickt, um dessen Zustand inkrementell zu verändern. Dies trägt zu einer erheblichen Steigerung der Leistungsfähigkeit des Systems bei.

Die IVI Foundation definiert zwei Architekturen für IVI-Treiber. Die eine basiert auf ANSI C, während die zweite auf der COM-Technologie (Component Object Model) von Microsoft beruht. Beide Architekturen wurden konzipiert, nebeneinander zu existieren und sich nicht gegenseitig auszuschließen, d. h. IVI-C und IVI-COM können in ein und derselben Anwendung eingesetzt werden.

Obgleich die zugrundeliegenden Technologien voneinander abweichen, sollte die Implementierung an sich keine übergeordnete Rolle spielen. Stattdessen sollte der Fokus auf zwei Hauptpunkten liegen: 1) die Lebensdauer der Architektur, auf welcher der Gerätetreiber basiert und 2) die Verwendbarkeit des Treibers in der Entwicklungsumgebung.

Lebensdauer der Architektur
Die Lebensdauer einer Architektur ist ein besonders wichtiger Aspekt für Nutzer von IVI-Treibern. Die Möglichkeit des Geräteaustauschs ist einer der Hauptvorteile von IVI. Dafür ist es notwendig, den Austausch von Geräten in Systemen, die bis zu 20 Jahre lang eingesetzt werden, zu vereinfachen. Eine gemeinsame Programmierschnittstelle reicht nicht aus, wenn sich die Architektur, die den Gerätetreibern zugrunde liegt, innerhalb von einigen Jahren ändert.

Aus diesem Grunde konzentriert sich National Instruments auf die IVI-C-Architektur. Bei ANSI C handelt es sich um einen etablierten Standard, der mit allen Plattformen kompatibel ist und es auch zukünftig bleiben wird. Im Gegensatz dazu ist COM nicht mit allen Plattformen kompatibel und wurde zudem bereits von .NET abgelöst, welches Microsoft im Jahre 2002 auf den Markt brachte.

Verwendbarkeit
Die Hauptmotivation bei der Entwicklung von IVI-COM-Treibern war die Vorstellung, einen Treiber zu entwickeln, der automatisch mit allen Entwicklungsumgebungen kompatibel ist. Leider geht dies zu Lasten der Verwendbarkeit. IVI-COM-Treiber verfügen über eine Benutzeroberfläche, die nur in Microsoft Visual Basic 6.0, welches bereits von Microsoft Visual Basic .NET abgelöst wurde, optimal funktioniert.

Im Idealfall sollten Gerätetreiber eine Benutzeroberfläche bieten, die in allen Entwicklungsumgebungen optimal genutzt werden kann. So sollten Gerätetreiber in LabVIEW als eine Sammlung an LabVIEW-VIs, in Microsoft Visual C++ als eine Sammlung an C++-Klassen und in Microsoft Visual Basic .NET und Visual C# als eine Sammlung an .NET-Klassen dargestellt werden.

National Instruments hält sich bei der Implementierung von IVI-Treibern an diese Vorgabe. Die Treiberprodukte von NI bieten native Unterstützung für die NI-Entwicklungsumgebungen LabVIEW und LabWindows/CVI. Die Treiber unterstützen zudem andere gängige Entwicklungsumgebungen. Die IVI-C-Treiber von National Instruments werden mit einer ANSI-C-Schnittstelle, LabWindows/CVI-Funktionspanels und LabVIEW-VI-Wrappern ausgeliefert. Bei nachrichtenbasierten Geräten ist der ANSI-C-Quellcode im Lieferumfang des Treibers enthalten. Für Nutzer von Measurement Studio stehen C++-Wrapper für IVI-Treiber zur Verfügung. Zukünftig bietet NI ebenfalls .NET-Objekte-Wrapper für IVI-Treiber von NI. Da Visual Basic 6.0 aufgrund der Akzeptanz von Visual Basic .NET überholt ist, wird National Instruments keine COM-Wrapper für NI-IVI-C-Treiber entwickeln.

IVI-Treiber sind robuste Werkzeuge, welche Geräteaustausch und Simulation in Prüfanwendungen ermöglichen und somit für eine erhebliche Zeit- und Kostenersparnis sorgen.

IVI-C-Treiber sind die erste Wahl, wenn es um die Erstellung eines Prüfsystems geht, bei dem ein Geräteaustausch stattfinden soll. Sie sind jedoch nicht für alle Messgeräte verfügbar, so dass IVI-COM- und VXI-plug-and-play -Treiber eine Alternative darstellen. Das Hauptziel ist die einfache Kommunikation mit Messgeräten und nicht die Abhängigkeit von einer bestimmten Treibertechnologie.

Weiterführende Links:
IVI-C-Treibertechnologie ermöglicht eine lange Systemlebensdauer und den Einsatz auf mehreren Plattformen

Direkte I/O-Anbindung


Sollte für ein Messgerät kein Treiber zur Verfügung stehen, bieten sich die in Entwicklungsumgebungen integrierten, interaktiven Funktionen zur direkten I/O-Kommunikation an. Software von NI enthält den Assistenten für Instrumenten-I/O, integrierte VISA- und busspezifische Schnittstellen, verschiedene Fehlerbehebungswerkzeuge im Measurement and Automation Explorer, u. a. NI Spy, interaktive Steuerelemente für den Schnittstellenbus (Interface Bus Interactive Control, IBIC – für GPIB) und interaktive Steuerelemente für VISA (VISA Interactive Control, VISAIC).

Assistent für Instrumenten-I/O
Die Benutzeroberfläche des Assistenten für Instrumenten-I/O ermöglicht das Schreiben von Befehlen an ein Gerät, das Lesen von Daten des Geräts sowie das Formatieren der Antwortdaten zur Nutzung in der Anwendung. Er ist vollständig in die Umgebungen LabVIEW, LabWindows/CVI, Visual Studio .NET (über Measurement Studio) und Visual C++ (über Measurement Studio) integriert. Der Assistent vereinfacht das Schreiben von Messanwendungen, da er automatisch den Konfigurationscode in der Umgebung generiert.


[+] Bild vergrößern


Abb. 4: Interaktives Dialogfenster im Assistenten für Instrumenten-I/O


Der Assistent für Instrumenten-I/O ermöglicht zudem die schnelle Analyse komplexer Antwortdaten von Messgeräten für die Nutzung in Gerätetreibern mit nativem Code. Die Analyse von Antwort-Strings kann eine sehr komplexe Aufgabe sein, deshalb sorgt das interaktive Fenster des Assistenten für die Analyse komplizierter Antwortdaten für eine Zeitersparnis bei der Entwicklung von Messanwendungen.

Integrierte Gerätesteuerungs- und -anbindungsfunktionen
Integrierte Funktionen für die Gerätesteuerung und -anbindung sorgen für eine erhebliche Zeiteinsparung bei der Anwendungsentwicklung. Über native Bibliotheken oder NI-VISA für GPIB, PXI, seriell, Ethernet, USB u. v. m. werden LabVIEW, LabWindows/CVI sowie Measurement Studio für Visual Basic 6.0, Visual Basic .NET, Visual C# .NET und Visual C++ unterstützt.

Weiterführende Links:
Demo: Gerätesteuerung mit LabVIEW
Whitepaper: LabWindows/CVI

Fazit

Der Schlüssel zur Entwicklung langfristiger Gerätesteuerungsanwendungen liegt in flexibler und skalierbarer Hard- und Software, die eine nahtlose Anbindung an nahezu jedes Messgerät ermöglicht und über integrierte Funktionen für komplexe Datenanalyse und -darstellung verfügt.

NI bietet flexible Werkzeuge für die Gerätesteuerung und -anbindung durch:

  • Optimierte Industriestandard-Entwicklungsumgebungen und Add-ins
  • Vielfältige Optionen zur Hardwareanbindung
  • Langfristige Kompatibilität
  • Unterstützung einer großen Anzahl an Treibern

Aufgrund dessen können Anwender das für ihre Gerätesteuerungsanwendung optimale Gerät und die passende Software aussuchen.

Weiterführende Links:
Instrument Driver Network

 

0 Bewertung(en) | 0.00 von 5
Sprache | Drucken | PDF

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/).