Vor fast 30 Jahren wurde das Konzept der virtuellen Maschine allgemein bekannt im damaligen UCSD-Pascal auf dem Apple, dessen Pascal-Compiler den sog. p-Code erzeugte, der schließlich auf diversen CPUs lauffähig war. Dass das Konzept keineswegs veraltet ist, zeigen uns die entsprechenden modernen Varianten z.B. in Java und .NET/C#. Diesen Sprachen ist gemeinsam, dass sie universelle, grundsätzliche Programmieranweisungen kodieren und die virtuelle Maschine entsprechend viel Bytecode interpretieren muss, um eine vollständige Applikation auszuführen. Daher rührt die im Vergleich zu direkt in Maschinencode übersetzten Programmen verlangsamte Ausführung. Bei Java wird diesem Problem inzwischen mit speziellen, Maschinencode erzeugenden Compilern oder speziellen, Java-Bytecode ausführenden Prozessoren begegnet. Bytecode für Softwaremodule Aus den Erfahrungen mit zigtausenden geschriebenen Programmzeilen in VisualBasic, C/C++ und Java in den vergangenen Jahren kristallisierte sich bei MFP eine neue Sicht für die Struktur von Anwendungsprogrammen heraus. Nicht die Kombination der einzelnen Programmanweisungen einer beliebigen Hochsprache war relevant, sondern die Organisation der Bibliotheken mit den vielen, im Idealfall für mehrere Projekte geeigneten und für unterschiedliche Betriebssysteme verfügbaren Softwaremodulen. So entstand aus der gewünschten überschaubaren Verwaltung von Softwaremodulen eine Strukturierung über Bytecode, die einen entsprechenden Interpreter und ergänzende Ablaufelemente (If, Then, Else, GoTo, ….) nahe legte. Entstanden ist schließlich UMAS (Universelles Modulares Applikations-System), bestehend aus einem Compiler, der Bytecodes aus einer an C++ orientierten Skriptsprache erzeugt, und virtuellen Maschinen, die auf Windows und Linux lauffähig sind und die zurzeit immer noch wachsenden Programmbibliotheken beherbergen. Implizit war gleichsam der Anspruch, die Sprachelemente, deren Pendants die Softwaremodule in den virtuellen Maschinen sind, beliebig erweitern zu können. So entstand ein Compiler, der seinen verarbeitbaren Befehlsvorrat über externe XML-Dateien erhält und beliebig auf zukünftige Programmentwicklungen anpassbar ist. Optimiert für die Anwendung Die Softwaremodule, die über einen spezifischen Bytecode adressiert und parametriert werden, sind an der Anwendung orientiert und im Vergleich zu sonst üblichen, z.B. in Java kodierten, Programmelementen funktional deutlich mächtiger, so dass man dagegen die Laufzeitverzögerungen durch die vir-tuellen Maschinen vernachlässigen kann. Mit UMAS entwickelte Programme sind also nicht langsamer als direkt in C/C++ geschriebene. Bei MFP wurde die Chance genutzt, UMAS zusätzlich mit den Sprachelementen zu versorgen, die man bei der Entwicklung von Anwendungsprogrammen immer vermisst hat bzw. nur umständlich programmieren konnte. Dazu gehörte in erster Linie der einfache Zugriff auf andere virtuelle Maschinen, unabhängig davon, ob sie auf demselben PC laufen oder über das Netzwerk erreichbar sind. So öffnet sich der Weg für neue Konzepte in der Gestaltung von Anwendungen. Das Konzept verteilter Anwendungen Bei UMAS werden die Ressourcen der virtuellen Maschinen in Gruppen unterteilt und die Anwendung in darauf zugeschnittene Anwendungsmodule gegliedert. Die Unterteilung ist grundsätzlich ausgelegt, und zwar in Automatisierung (Messen, Steuern, Regeln), Visualisierung (Mensch-Maschine-Interface) und Datenbankanbindung (ODBC-Schnittstelle und XML-Datenhaltung). Jede virtuelle Maschine hat einen direkt adressierbaren Datenspeicher (Datenpool), der über einen integrierten Server von anderen virtuellen Maschinen über TCP/IP-Kommunikation erreichbar ist (Bild 2). Um die Abläufe an die zeitlichen Randbedingungen einer Automatisierung anzupassen, wird nur der Datenpool des Automatisierungsmoduls öffentlich gemacht und als gemeinsamer Speicher für alle Module genutzt. So greift das Automatisierungsmodul direkt (schnell) auf den Arbeitsspeicher zu, während Visualisierung und Datenbankanbindung am Server hängen und beliebig im lokalen Netzwerk platziert sein können, über Router auch im Internet. Mit einem Monitorprogramm kann der Inhalt des Datenpools über die TCP/IP-Kommunikation ausgelesen oder auch verändert werden, wenn das Automatisierungsmodul entsprechende Zugriffe erlaubt. Selbstredend wird dieses Konzept durch einfache UMAS-Sprachelemente unterstützt. Jede virtuelle Maschine hat einen Peripheriecode, z.B. MSR1, MMI3 oder DBA7. Eine Variable mit dem Namen myVar01 in der virtuellen Maschine MSR1 wird aus allen anderen virtuellen Maschinen über den direkten Zugriff mit MSR1:myVar01 erreicht. Ähnlich einfach wurde das Starten von Threads in der eigenen oder in anderen virtuellen Maschinen gestaltet. Integration von Geräten über ASAM GDI Während sich viele andere Integrationskonzepte auf betriebssystemspezifische Methoden ab-stützen (z.B. OPC), wurde für UMAS ein Konzept gewählt, das die Unabhängigkeit vom Betriebssystem in den Vordergrund stellt. Damit stehen die Geräte grundsätzlich für alle virtuellen Maschinen zur Verfügung, unter Windows, Linux oder auch Echtzeitbetriebssystemen. Das Konzept des ASAM GDI sieht vor, die Geräteeinbindung in einen betriebssystemunabhängigen Gerätetreiber (Kodierung der Gerätestruktur und der Kommunikationsprotokolle) und einem betriebssystemabhängigen Plattformadapter (konkreter Datenaustausch mit dem Gerät) zu unterteilen (Bild 3). Gerätetreiber werden also, beim ASAM in C/C++, vom Gerätespezialisten programmiert und der Zugriff auf die Peripherieschnittstelle vom Betriebssystemspezialisten. Ein weiterer Vorgang der Modularisierung, der gerade bei den häufigeren Treiberkonzeptänderungen der Windows-Betriebssysteme (Legacy, WDM, signierte Vista-Treiber) die Entwicklungsarbeiten kanalisiert und eine optimale Aufgabenteilung erlaubt. Von der Programmierung zur Konfiguration Bei MFP sieht man die Ent-wicklung von UMAS als den ersten wichtigen Schritt einer grundsätzlichen Strukturveränderung bei Anwendungsprogrammen. Mit konsequenter Fortsetzung der Modularisierung hin zu beliebig kombinierbaren Anwendungsmodulen wird ein Umstieg von individuell zugeschnittenen auf individuell konfigurierbare Programme erreicht. Die Konfiguration kann aber, im Gegensatz zur Programmierung, wieder dem Anwender zugemutet werden, wodurch sich mit dem Einsatz entsprechender Hilfsmittel für die Konfiguration eine hohe Flexibilität bei Reduktion der Entwicklungskosten ergibt. Derzeit wird bei MEP die klassische SPC-Software (Statistic Process Control) zur Qualitätssicherung neu strukturiert und in ein übergreifendes Konzept eines modularen MES (Manufacturing Execution System) mit Maschinen-, Personal- und Betriebs-datenerfassung eingebunden, das vom Anwender selbst auf seine Randbedingungen zugeschnitten (konfiguriert) werden kann. Ohne UMAS würde eine entsprechende Neugestaltung ein Vielfaches an Zeit und Aufwand mit sich bringen.
Betriebssystemunabhängig und beliebig verteilt: Virtuelle Maschinen für modulare Anwendungen
-
Bietet IE5-Wirkungsgrad
Induktionsmotor
WEG hat den W22 Prime auf den Markt gebracht, die nächste Generation seiner W22-Induktionsmotorenreihe.
-
Erfolgreicher Pharma Tech Talk von Pepperl+Fuchs
Am 1. und 2. Juli brachte Pepperl+Fuchs in Mannheim Experten aus der Pharma-, Life-Science- und der Automatisierungsbranche zusammen.
-
Erfolgreiche Veranstaltung von Gemü, IHK & VDMA
Gemü setzte mit der IHK Heilbronn-Franken und dem VDMA bei einer gemeinsamen Veranstaltung Impulse zu denThemen industrielle Datenräume und digitaler Produktpass.
-
Endress+Hauser eröffnet zwei neue Gebäude in den USA
Endress+Hauser hat zwei neue Vertriebsgebäude in den USA eröffnet.
-
Neue Doppelspitze am Fraunhofer FKIE
Prof. Christoph Igel ist mit Wirkung zum 15. August zum Institutsleiter des Fraunhofer-Instituts für Kommunikation, Informationsverarbeitung und Ergonomie FKIE berufen worden.
-
Für 24V-Anwendungen
Unterbrechungsfreie Stromversorgung
Weidmüller erweitert das Portfolio um die unterbrechungsfreie Stromversorgung Duramax.
-
Für Bahn-Anwendungen
Kabeldurchführungen aus TPE
Kabeldurchführungs-Systeme werden nach den strengen branchenspezifischen Normen geprüft und zertifiziert.
-
Schlüsselkomponente für IEC61800-5-2-konforme Antriebssysteme Sicherheitszertifizierte Drehgeber
Funktionale Sicherheit im Maschinenbau beginnt nicht im Antrieb, sondern am Sensor.
-
Für Rechenzentren, Edge-Umgebungen und Enterprise-IT
Gemanagte Rack-Stromverteilung
Panduit gibt den Produktlaunch der ES2P Power Distribution Unit bekannt, eine gemanagte Rack-PDU,…
-
Neue Automation-Einheit bei Siemens
Rainer Brehm übernimmt Leitung
Siemens stärkt sein Automatisierungsgeschäft und bündelt dazu die bisher vier Geschäftsbereiche in einer…
-
Ifo-Umfrage
Unternehmen erwarten eher sinkende Löhne durch KI-Einsatz
Viele Unternehmen in Deutschland erwarten durch den Einsatz von Künstlicher Intelligenz eher sinkende…
-
Zur Modernisierung von Werkzeugmaschinen
Bügelclips für Energieketten
Wollen Konstrukteure von Werkzeugmaschinen bei einer Modernisierung größere Schläuche einsetzen, erfordert das häufig…
-
Mit 8-poligem M12-Anschluss
Not-Halt-Schalter
Georg Schlegel erweitert seine Baureihe Shortron Connect um drei neue Not-Halt-Geräte mit 8-poligen…
-
… den aktiven Verteilern und Passivverteilern von Bihl+Wiedemann?
Unter dem Titel ‚Sichere Sache‘ stellte Bihl+Wiedemann in der Titelstory der Ausgabe 7/2016…
-
Geschäftsführerwechsel bei Alphitan
Alphitan gibt im 25. Jubiläumsjahr der deutschen Tochtergesellschaft Antecs einen Wechsel bekannt: Geschäftsführer…
-
Neue Fachmesse: All About Electronic Solutions
Mit der All About Electronic Solutions startet Easyfairs eine neue Messereihe.
-
Steuerungstechnik
SPS ermöglicht dezentrale Echtzeitkommunikation über CAN UDS
Die Arcon-SPS ist eine IEC61131-kompatible Steuerung für räumlich verteilte Automatisierungssysteme.
-
Inlandsbestellungen ziehen kräftig an
Elektroindustrie mit Auftragsplus zur Jahresmitte
Im Juni verzeichnete die deutsche Elektroindustrie ein Plus von 13,3% gegenüber dem Vorjahr…
-
Auch Importe gestiegen
Exporte im Juni lagen bei +0,9%
Im Juni sind die deutschen Exporte gegenüber Mai kalender- und saisonbereinigt um 0,9%…
-
Industrielle Kommunikation
Mobilfunkmodule bringen 4G und 5G auf den Raspberry Pi
Spectra erweitert mit der Calyx Embedded Modul Serie Raspberry Pi 4 und Raspberry…
-
Drehzahl- und Positionssensor
Drehgeber kombiniert Positionsmessung und Zustandsüberwachung
Lenord+Bauer erweitert sein Portfolio digitaler MiniCoder um eine Variante mit serieller Schnittstelle für…
-
Drehzahl- und Positionssensor
Drehgeber kombiniert Positionsmessung und Zustandsüberwachung
Lenord+Bauer erweitert sein Portfolio digitaler MiniCoder um eine Variante mit serieller Schnittstelle für…
-
Neuer Muttertyp sorgt für mehr Leistung
Bosch Rexroth erweitert die Performance Line seiner Kugelgewindetriebe um eine Lösung für vertikale…
-
Flexible Ethercat-Architektur
Der duale Ansatz von Dunkermotoren bei der Ethercat-Architektur ermöglicht es OEMs, die Antriebsarchitektur…
-
Physical-AI an der Edge
Das applikationsfertige Modul aReady.COM Conga-HPC/cRX1 mit AMD Ryzen AI Embedded X100 Series Prozessoren…
















