- Dem Anwender bieten sich zwei Betriebssysteme, um die Anwendungsanforderungen im Embedded-Bereich zu erfüllen: NI Labview Real-Time und Microsoft Windows Embedded Standard 7 (WES7). Jedes der beiden Betriebssysteme eignet sich für unterschiedliche Aufgaben und Anforderungen, wobei viele Kriterien eine Rolle spielen. Der Leitfaden von National Instruments wägt die Vorteile und Herausforderungen jeder Option ab, damit für jede Anwendung die beste Wahl getroffen werden kann.
Fünf Tipps für die beste Wahl
Bevor die Anforderungen einer Anwendung evaluiert werden können, muss ein Hauptunterschied bei der Entwicklung von Anwendungen mit Labview Real-Time oder WES7 hervorgehoben werden, der bei der Entscheidung für ein Betriebssystem hilfreich sein könnte. Labview Real-Time ermöglicht es dem Anwender, eine Applika- tion mit einem dezentralen Entwicklungs-PC zu erstellen. Damit können Virtuelle Instrumente (VIs) erstellt, Fehler behoben und eine Anwendung auf einem NI-CompactRIO-Zielsystem zum Einsatz gebracht werden. Für WES7 empfiehlt National Instruments (NI) die direkte Installation der Entwicklungsumgebung Labview und des Labview FPGA Module auf dem CompactRIO-System, damit die zuvor genannten Aufgaben durchgeführt werden können. Außerdem muss für diesen Entwicklungsprozess das FPGA-VI mit einem dezentralen Compile-Server, einer Compile-Farm oder dem FPGA Cloud Compile Service kompiliert werden.
1. Wie zuverlässig kann eine Anwendung sein?
Für viele Embedded-Anwendungen ist ein hohes Maß an Zuverlässigkeit erforderlich. Determinismus und erweiterte Systemfunktionen sind hierfür die Schlüsselvorgaben. Sowohl Labview Real-Time als auch WES7 bieten höhere Zuverlässigkeit als Standardbetriebssysteme wie Microsoft Windows 7 oder Mac OSX – Labview Real-Time dank Determinismus und erweiterter Funktionalität während des Betriebs; WES7 ohne Determinismus, aber mit verbesserten erweiterten Funktionen gegenüber einem Standardbetriebssystem.
Das Betriebssystem Labview Real-Time stellt hohe Anwendungszuverlässigkeit zur Verfü-gung, ohne dass ein System mit dem Labview FPGA Module in Hardware implementiert werden muss. Eine wichtige Vorgabe für Zuverlässigkeit ist Determinismus, also die Fähigkeit eines Betriebssystems, eine Aufgabe innerhalb einer bestimmten Zeit sicher und durchgängig auszuführen. Je größer die Abweichung bei der Ausführungszeit oder der Jitter zwischen den Iterationen der gleichen Aufgabe oder eines Zyklus in Labview ist, desto geringer ist auch der Determinismus. Labview Real-Time verfügt über einen sehr hohen Grad an Determinismus, WES7 hingegen über keinen. Dies ist ein entscheidender Unterschied bei vielen Anwendungen. Labview Real-Time erlaubt dabei dem Anwender, das Timing einer Anwendung sehr präzise zu steuern. Durch den Einsatz von zeitgesteuerten Schleifen sowie die Priorisierung von Tasks kann das Betriebssystem sicherstellen, dass die wichtigsten Prozesse der Anwendung durchgängig und in einer bestimmten Zeit ausge-führt werden. In Bezug auf Timing arbeitet WES7 auf dieselbe Art und Weise wie Win-dows 7, da Tasks beinahe willkürlich nacheinander und ohne Priorisierung ausgeführt werden, wodurch keinerlei Determinismus gewährleistet wird. Anwendungen, die eine konstante Ausführungszeit und Zuverlässigkeit, z.B. eine PID-Regelung, oder die Reaktionen auf ein Ereignis, wie eine Notabschaltung, erfordern, sollten immer unter Labview Real-Time ausgeführt werden. Deterministische Kommunikationsprotokolle wie Ethercat, die oft für die I/O-Erweiterung mittels C-Serien-Modulen von NI oder in der Motorsteuerung eingesetzt werden, können nicht unter WES7 verwendet werden, sondern benötigen Labview Real-Time als Grundlage.
Eine weitere Anforderung für die Zuverlässigkeit setzt voraus, dass eine Anwendung über einen längeren Zeitraum korrekt funktioniert. Viele Embedded-Anwendungen werden im Dauerbetrieb eingesetzt. Sowohl das Betriebssystem Labview Real-Time als auch WES7 verfügen über Funktionen und Eigenschaften, die diese zu einer guten Wahl für Aufgaben im Dauerbetrieb machen. Die Betriebssystemkomponenten von Labview Real-Time wurden auf ein Minimum reduziert, damit maximaler Determinismus in einer Anwendung gewährleistet ist. Dadurch werden auch Systemausfälle aufgrund von Abstürzen oder anderen unvorhergesehenen Problemen unwahrscheinlicher. Standardbetriebssysteme müssen Ressourcen und Ausführungszeit für viele unterschiedliche Anwendungen bereitstellen. Jede weitere Anwendung erhöht die Möglichkeit und die Häufigkeit eines Systemausfalls. Labview Real-Time bietet außerdem zusätzliche Funktionen wie das Reliance-Dateisystem und Watchdog-Timer, die dafür sorgen, dass die Anwendungszuverlässigkeit über einen längeren Zeitraum bestehen bleibt. Das Reliance-Dateisystem von Datalight wurde für Embedded-Systeme entwickelt, die eine höhere Zuverlässigkeit benötigen, und ist weniger anfällig gegenüber fehlerhaften Dateien aufgrund von Systemereignissen wie einem unerwarteten Stromausfall. Mit Watchdog-Timern kann ein System beim Anwendungsausfall schnell und automatisch wieder in einen betriebsbereiten Zustand versetzt werden.
WES7 erweitert die allgemeinen Betriebssystemfunktionen von Windows 7 für ein höheres Maß an Zuverlässigkeit um den Schreibfilter EWF (Enhanced Write Filter). Dieser schützt Dateien davor, beschädigt zu werden, z.B. vor einem Systemabsturz bei einem Stromausfall, indem Schreibvorgänge in Dateien während des laufenden Betriebs in einen Speicher (RAM) gesichert werden. Wenn das System schließlich vollständig heruntergefahren ist oder der Anwender bzw. die Anwendung dies anfordert, werden die Dateikopien aus dem Speicher (RAM) auf die physikalische Festplatte geschrieben. Dieser Mechanismus schützt Dateien davor, beschädigt zu werden, und erlaubt gleichzeitig, dass eine Datenmanipulation nur ausgeführt wird, wenn dies sicher ist. Wird die Stromverbindung getrennt, bevor die Dateien auf die Festplatte geschrieben wurden, sind sie verloren. Kritische Anwendungs- und Systemdateien sind jedoch bei einem Absturz vor Beschädigung geschützt. Durch EWF kann auch eine andere Funktion unter WES7 genutzt werden, mit der ein System einmal in den Ruhezustand versetzt wird und sich dann vielfach neu starten lässt. Dies wird als Horm (Hibernate Once/Resume Many) bezeichnet. Damit lässt sich ein System so konfigurieren, dass die Anwendung genau nach den Vorgaben ausgeführt wird. Das System kann dann in den Ruhezustand versetzt werden, wodurch gewährleistet wird, dass es während jedes folgenden Neustarts ohne weiteren Aufwand wieder in den gleichen Ausführungszustand gebracht wird. Bei einem unvorhergesehenen Ereignis oder Ausfall kehrt das System stets mit geringem Zeitaufkommen in einen einsatzbereiten Zustand zurück. Viele Embedded-Anwendungen, z.B. Informationsangaben, können von dieser Funktionalität profitieren.
2. Wie interagieren Anwender mit dem System?
In vielen Anwendungen ist die Interaktion seitens der Anwender und die Visualisierung einer Benutzeroberfläche nötig. Das Entwickeln eines Mensch-Maschine-Interfaces (HMI) ist ein wichtiges Kriterium bei der Wahl eines Embedded-Systems.
Durch die Spezialisierung und Reduzierung des Betriebssystems Labview Real-Time wurden Determinismus und Zuverlässigkeit gestärkt. Dabei wurde allerdings die Fähigkeit zur Anzeige grafischer Objekte entfernt. Deshalb muss das System um einen zusätzlichen Computer (Host) erweitert werden, sodass sich ein grafisches HMI erstellen lässt. Dieses kann ein PC, Laptop oder auch Touchpanel-Computer auf Basis des Labview Touch Panel Module sein. Windows dient auf diesem separaten Computer in Verbindung mit der Plattform Labview für Windows dazu, die HMI-Aufgaben auszuführen und über Kommunikationsmethoden wie TCP, UDP, Labview-Umgebungsvariablen oder andere Methoden Daten und Informationen mit der Labview-Real-Time-Anwendung auszutauschen. Außerdem kann ein HMI für ein Labview-Real-Time-System durch die Anbindung eines geeigneten Displays am seriellen Anschluss (RS232) oder durch den Einsatz eines webbasierten Thin-Client wie dem Labview Web UI Builder für die Darstellung von Webservices realisiert werden.
WES7 muss nicht auf einem separaten Computer installiert sein, um ein HMI einzubinden. Eine WES7-Labview-Anwendung kann als HMI genutzt werden. Dabei wird den Anwendern das Frontpanel wie bei einem Standardbetriebssystem auf einem angeschlossenen VGA-Bildschirm angezeigt und die Verwendung von Tastatur, Maus und Touch-screen über USB ist möglich. Die Kosten für das gesamte System können so gesenkt werden, da der einzelne, zusätzliche Windows-Computer für HMI-Aufgaben durch einen günstigeren und bedienfreundlicheren VGA-Bildschirm ersetzt wird.
3. Benötigt ein System einen OPC-Server?
OPC (OLE for Process Control) ist eine Standardschnittstelle zwischen zahlreichen Datenquellen wie SPSen, dezentralen Bedieneinheiten und Sensoren. Sie bietet diesen Geräten die Möglichkeit, mit HMI/Scada-Anwendungen, zugehörigen Werkzeugen und Datenbanken zu kommunizieren. National Instruments stellt zahlreiche Möglichkeiten bereit, um über OPC zu kommunizieren. Doch da OPC grundsätzlich auf Windows-Technologie basiert, muss WES7 als Betriebssystem eingesetzt werden, damit ein OPC-Server auf einem Embedded-System genutzt werden kann.
NI-OPC-Server bieten einen allgemeinen OPC-Server mit mehreren Treiber-Plug-ins, um über einen Großteil der seriellen und Ethernet-basierten industriellen Geräte und Protokolle kommunizieren zu können. Dieses eigenständige OPC-System dient, in Verbindung mit einer Labview-Client-Anwendung, dazu, viele verschiedene Geräte unter WES7 miteinander kommunizieren zu lassen.
Neben OPC ist WES7 mit einigen Geräten und industriespezifischen Kommunikationsprotokollen kompatibel. National Instruments bietet Methoden zur Kommunikation mit dem auf Windows-basierten Betriebssystemen ausgeführten Labview Datalogging and Supervisory Control (DSC) Module über Modbus, Epics und OPC.
Mit Labview Real-Time können die Kommunikationsprotokolle und -standards wie Modbus und Epics verarbeitet werden. OPC-Kommunikation basiert auf Windows-Technologie, sodass Labview-Real-Time-Systeme nicht nativ über OPC kommunizieren können. Stattdessen müssen sie mit einem eigenen Windows-basierten Computer über TCP, UDP oder Labview-Umgebungsvariablen kommunizieren und den Computer dafür nutzen, ihre Daten und Informationen in OPC zu übertragen. Dies lässt sich einfach mithilfe von Labview DSC und Labview-Umgebungsvariablen auf einem Windows-basierten Computer erzielen.
4. Direkte Einbindung der Datenbank?
WES7 unterstützt das direkte Loggen von Daten in eine Datenbank über das Labview DSC Module. Das Loggen in Datenbanken mit Labview DSC wurde speziell für die einfache Konfiguration sowie den einfachen Betrieb entwickelt. Das Module kann ohne Schwierigkeiten direkt an viele gängige relationale Datenbanken wie Oracle, mySQL und Microsoft SQL angebunden werden und Daten protokollieren. Labview DSC umfasst zudem eine eigene integrierte Datenbank, Citadel, die für effizientes Loggen über lange Zeiträume optimiert wurde. Außerdem kann WES7 das Labview Database Connectivity Toolkit nutzen, durch das Daten von jedem Anbieter, der die ADO-Technologie (ActiveX Data Object) von Microsoft, OPC-Datenbankanbindung (ODBC) oder OLE DB (Object Linking und Embedding Database) verwendet, erfasst werden können, um benutzerdefinierte Abfragen und Datenaustausch zu gewährleisten. Ähnlich wie Labview DSC unterstützt das Database Connectivity Toolkit die Kommunikation mit gängigen Datenbanken wie Oracle und Microsoft SQL.
Wie auch bei OPC basieren viele gängige Datenbankkommunikationsmethoden auf Windows-Technologie wie ActiveX. Aus diesem Grund kann das Labview Database Connectivity Toolkit nicht direkt in Labview-Real-Time-Anwendungen eingesetzt werden. Die Datenbankanbindung ist mit Labview Real-Time möglich, allerdings muss ein Windows-basierter Host-Computer zwischengeschaltet werden, ähnlich der Vorgehensweise bei OPC-Kommunikation und HMI-Funktionalität. Herkömmliche Kommunikationsmethoden wie TCP, UDP und Labview-Umgebungsvariablen kommen für die Kommunikation mit diesem zusätzlichen Windows-Computer zum Einsatz.
5. Weitere Anforderungen an die Windows-Plattform?
Labview für Windows bietet eine umfangreiche Sammlung an weiteren Toolkits, Modulen und Bibliotheken, die nicht in Labview Real-Time verfügbar sind. Dank des Labview Application Builder wird die gesamte Funktionalität der Plattform Labview für Win-dows auch von WES7 unterstützt. Sind für eine Anwendung Labview-Module, beispielsweise Labview DSC, oder Toolkits, wie das Report Generation and Data Finder Toolkit, die nur mit Windows kompatibel sind, nötig, sollte der Einsatz von WES7 als Embedded-Betriebssystem erwogen werden. Außerdem gibt es eine Vielzahl an DLLs, .Net Assemblies und ActiveX-Elementen, mit denen während des Einsatzes von Labview für Windows die Funktionalität einer Anwendung erweitert und die Entwicklungszeit verkürzt werden kann.
Viele Module und Toolkits der Labview-Plattform sind mit Windows und Labview Real- Time kompatibel, z.B. das Labview Control Design and Simulation Module und das Internet Connectivity Toolkit. Es ist also wichtig, die Anforderungen zu überprüfen, um sicherzustellen, dass Labview Real-Time mit allen Modulen, Toolkits und ähnlicher Software eingesetzt werden kann.
Nach Informationen der National Instruments Germany GmbH in München ( www.ni.com/germany )
INFO-TIPP
Interessante Informationen zur im Beitrag erwähnten Standardschnittstelle OPC bietet der Artikel „Universelle Konnektivität" in der Dezember-Ausgabe der elektro Automation (S. 44), den Sie auch online aufrufen können:
praxis plus
Bei der Entscheidung, ob Labview Real-Time oder WES7 für eine Embedded-Anwendung eingesetzt werden soll, müssen die Anwendungsanforderungen die wichtigste Rolle spielen. Wenn Determinismus und ein zuverlässiger Dauerbetrieb für ein erfolgreiches System nötig sind, ist Labview Real-Time die richtige Wahl. Zählen zu den entscheidenden Anforderungen jedoch ein integriertes HMI sowie Zugang zu Funktionen und Diensten von Windows und der Plattform Labview für Windows, sollte die Wahl auf WES7 fallen.
