Middleware-Konzept
Das Middleware-Konzept
Jedes moderne Computersystem lässt sich in Schichten beschreiben. Die oberste und erste Schicht ist üblicherweise die Anwendung, die auf einem Betriebssystem (2. Schicht) aufsetzt, welches wiederum auf der Hardware (3. Schicht) läuft, sie kontrolliert und über sie kommuniziert.
Der Benutzer sieht üblicherweise nur die Anwendung und interagiert mit dieser. Betriebssystem und Hardware vermitteln zwischen Anwendung und Außenwelt (I/O, Netzwerk). Diese Methode setzt voraus, dass die Anwendung betriebssystemspezifisch programmiert wird. Auch I/O-Funktionen und noch viel mehr Feldbusse müssen oft mit hohem Aufwand hardwarespezifisch eingebunden werden. Ein flexiblerer Ansatz führt eine neue Schicht zwischen Applikation und Betriebssystem ein – die Middleware. Die Applikation kommuniziert nun nur noch mit einer von der Middleware bereitgestellten Schnittstelle. Der sonst zusätzlich entstehende Aufwand für die Programmierung der Kommunikation entfällt. Die Programmierung reduziert sich ausschließlich auf die reine Anwendung.
Integration auf einheitlicher Datenebene
Middleware-Technologien verbinden Maschinen und stellen relevante Daten bereit. So ebnen sie den Weg von der klassischen Automatisierungspyramide hin zum modernen, datenzentrischen Ansatz. Sie ermöglichen damit eine durchgängige Kommunikation vom einzelnen Sensor bis zur Cloud. Offene Schnittstellen erlauben zum Beispiel die Integration bestehender, noch nicht auf die Anforderungen der digitalen Fabrik ausgelegter Maschinen in eine serviceorientierte Architektur. Dem Maschinenbauer als Zulieferer der Produktion erlauben sie die Einführung anpassungsfähiger Maschinensteuerungen, die sich leicht in bestehende Produktionsnetze integrieren lassen.
Funktionen
Gamma VI verfügt über eine Reihe von Funktionen, die leicht integrierbar sind und so Ihren Entwicklungsaufwand erheblich senken:
- Multidimensionale, hierarchische Variablenstrukturen mit Aliasen
- Anwendungsspezifische Erweiterung der Variablen durch Properties
- Mächtige Selektionsverfahren durch Browsing und Wildcards
- Simulation / Failure-Injection für Testsysteme oder für den Test middleware-basierter Steuerungen
- Zeitmodell mit Funktionen zur Prozesskontrolle (auch im Multicore-Betrieb), wie z. B. Scheduler
- Datenlogging mit zahlreichen Datenbankadaptionen durch eine offene Schnittstelle
- Automatische Grenzwertkontrollen
-
- Einfache Anbindung von I/O-Hardware und Feldbussen durch Plug-ins: IoT-Protokolle wie Connext DDS, MQTT, OPC-UA
- Feldbusse wie EtherCAT, emBRICK, Modbus, CAN, ARINC429, AFDX etc.
- Digital- und Analog-I/O und Sonderfunktionen wie Synchro/Resolver etc.
- Zur Zeit sind bereits über 70 Busse und I/O-Interfaces verfügbar
I/O-Integration
Daten mit der Außenwelt zu verbinden wird in Gamma VI einfacher als je zuvor. Jeder I/O-Kanal kann direkt auf einer Prozessvariablen abgebildet und die Daten automatisch skaliert und auf verschiedene Arten gefiltert werden. Lesezugriffe auf die Prozessvariable (PV) liefern nun den an der Hardware anliegenden Wert. Entsprechend wird der Wert an einem Ausgang durch einen Schreibzugriff auf die verknüpfte Prozessvariable gesetzt. Die Konfiguration erfolgt per XML oder über das mit Gamma ausgelieferte Konfigurationswerkzeug Ga_Builder.
Die offenen Schnittstellen der Gamma-VI-Plattform erlauben es, eine Vielzahl von I/O-Hardware und Protokollen direkt an Ihre Applikation anzubinden. Gamma VI unterstützt gängige Feldbusse aus Industrie und Automatisierung, sowie Avionik und Automotive. Aktuelle Middleware- und IoT-Schnittstellen werden ebenfalls unterstützt. Dazu kommen zahlreiche I/O-Interfaces von Basisfunktionen wie Analog- und Digital-I/O oder Schrittmotoren bis zu anspruchsvollen Präzisionsschnittstellen wie Synchro/ Resolver oder LVDT.
- Feldbusse allgemein
- Feldbusse Automatisierung
- Feldbusse für Avionik und Automotive
- Middleware- und IoT-Interfaces
- I/O-Karten und -Interfaces
- Spezialmessgeräte über GPIB oder LXI
Über das Comedi-Interface lassen sich hunderte I/O-Karten einfach an die Middleware andocken. Plug-ins für neue I/O-Hardware lassen sich mit geringem Programmieraufwand erstellen und werden auf Anhieb vom Konfigurationswerkzeug Ga_Builder unterstützt, so dass sie direkt mit der Middleware verbunden werden können. Somit ist Gamma VI offen für individuelle Hardwarelösungen und zukunftssicher für neue Entwicklungen.
Umfangreiche Werkzeuge
Alle Aspekte der Middleware können über XML-Dateien konfiguriert werden. Außerdem stehen diverse Werkzeuge zu Ihrer Unterstützung bereit:
Gamma Builder: Konfigurationstool zur einfachen Erstellung von Projekten
Mit dem Gamma Builder ist es möglich, komplexe Daten- und Zeitmodelle mit allen I/O-Funktionen zu erstellen. Die Baumstruktur bietet einen schnellen Überblick über das Datenmodell, das Zeitmodell und die adaptierten Hardwarekomponenten mit den jeweiligen verknüpften I/O-Kanälen. Neue Elemente werden über ein einfach zu bedienendes Kontextmenü hinzugefügt. Drag-And-Drop-Operationen stehen ebenso zur Verfügung wie die Zwischenablage. Die Eigenschaften aller Objekte stehen direkt zum Editieren zur Verfügung. Alle Eingaben werden gegen ein XML-Schema geprüft und auftretende Fehler werden sofort angezeigt. Ein Doppelklick auf die Fehlermeldung öffnet automatisch den fehlerhaften Eintrag und ermöglicht so eine schnelle Korrektur. Zudem existiert die Möglichkeit, dass die Signale/Nachrichten bestimmter I/O-Plugins zur Laufzeit gescannt und automatisiert konfiguriert werden können.
Gamma Explorer: Benutzerfreundliches Tool zur manuellen Kontrolle des Systems
Der Gamma Explorer ist ein klassisches Inbetriebnahme- und Wartungstool. Es bietet weitreichende Möglichkeiten für den Anwender, direkt mit der Middleware und dem laufenden System zu interagieren. Für lokale Anwendungen kann der Gamma Explorer den zentralen Gamma-Service konfigurieren und starten. Sowohl für lokale als auch vernetzte Datenmodelle bietet der Explorer direkten Zugriff auf alle im System vorhandenen Prozessvariablen.
Von hier aus kann der Anwender nicht nur alle Werte in Echtzeit verfolgen, sondern auch jederzeit direkt in den Prozessverlauf eingreifen. Der Explorer erlaubt direkte Lese- und Schreibzugriffe auf das gesamte Modell, sowohl auf lokale als auch auf entfernte Prozessvariablen. Integrierte Funktionsgeneratoren, die mit jeder beliebigen Variablen verknüpft werden können, erlauben es dem Anwender, Werte über einfache Funktionen wie Sinuswellen oder Sägezähne zu generieren und in das Datenmodell einzuspeisen. Diese Generatoren können während der Laufzeit z. B. in Frequenz und Amplitude editiert und jederzeit ein- und ausgeschaltet werden.
Über Plots ist es außerdem möglich, den Werteverlauf jeder Variable grafisch darzustellen. So sind Trends schnell erkennbar, Wertebereiche können optisch verglichen werden und Wechselwirkungen können direkt nachverfolgt werden. Zwar ersetzen Plots keine vollwertige Visualisierung, zu Diagnosezwecken während der Entwicklung oder zur Überwachung nicht visualisierter Systeme sind sie aber äußerst wertvoll.
GUI Designer: Freikonfigurierbare Visualisierung
Mit dem GUI Designer steht eine komfortable Möglichkeit zur Verfügung, schnell einfache Visualisierungen und Bedienoberflächen für Gamma-basierte Systeme zu gestalten. Durch die enge Verknüpfung unserer Tools können grafische Elemente im GUI Designer direkt mit dem Datenmodell verknüpft werden. So können grafische Anzeigen jede Variable im System abbilden, Werte können über Schiebe- oder Drehregler manipuliert werden und Buttons können Prozesse und Aktionen auslösen.
Das Gamma-Ökosystem
Die Gamma-VI-Middleware ist eine ideale Plattform, auf der verschiedene Technologien von verschiedenen Herstellern zusammengefügt werden können.
So können wir mit unseren Partnern zahlreiche weitere Lösungen für die Gamma-Plattform anbieten. Hierzu zählen unter anderem vektorbasierte Visualisierungslösungen, Soft-SPS-Lösungen (IEC61131 und IEC61499), textuelle und grafische, teils modellbasierte, Programmiermethoden, die direkt auf das Datenmodell aufsetzen, sowie Entwicklungsumgebungen mit Anbindung an die Gamma-API. Auch für den Testbereich werden spezielle Werkzeuge, z. B. für modellbasierte Tests für HIL-, MIL- und SIL-Anwendungen zur Verfügung gestellt. So entsteht ein weitreichendes Ökosystem, aus dem kundenspezifische Lösungen exakt zusammengestellt werden können.
- Für den Kunden entstehen optimal auf ihn abgestimmte Systeme, in denen leicht die eigene Kernkompetenz eingebracht werden kann
- Für den Systempartner steht eine leicht adaptierbare Systemplattform zur Verfügung, die es ermöglicht, auch die eigenen Produkte zu vermarkten