Design einer agentenbasierten Interaktionsarchitektur als Middelware zum einfachen und flexiblen Entwurf verteilter Automatisierungssysteme
Final Report Abstract
Zum Entwurf flexibler, einfach zu implementierender und leicht wartbarer Steuerungsarchitekturen wurden verschiedenste Forschungsanstrengungen unternommen, die zwei Typen von Architekturen hervorgebracht haben, verteilte Auftragssteuerungssysteme und verteilte Prozesssteuerungssysteme. Beide Architekturtypen verwenden Entwurfsmuster für verteilte Steuerungssysteme, die jedoch im jeweils anderen Architekturtyp nicht anwendbar scheinen. Zum Zeitpunkt der Antragstellung des Projektes waren Auftragssteuerungssysteme vorrangig agentenbasiert und navigierten Produktionsaufträge durch ein Netzwerk von Produktionsressourcen. Prozesssteuerungssysteme waren vorrangig funktionsblockbasiert und betrachteten Verteilungs- und Koordinierungsaspekte von Steuerungsentscheidungen. Dies bewirkt in Entwurf und Implementierung Medienbrüche insbesondere zwischen den verschiedenen Steuerungsebenen durch eine scheinbare Inkompatibilität der technologischen Bausteine der beiden Architekturengruppen Funktionsblöcke und Agenten. Ziel von AgentAut war daher die Schaffung einer durchgängigen Methodik für verteilte Steuerungssysteme unter Einschluss von Auftrags- und Prozesssteuerungen. Dazu sollte AgentAut die Bestandteile der existierenden Architekturtypen für verteilte Steuerungssysteme, Agenten und Funktionsblöcke, zu einer in sich konsistenten Architektur mit zugehöriger Entwurfsmethodik kombinieren. Ausgangspunkt der Arbeiten im AgentAut Projekt war eine umfassende Untersuchung der Anwendbarkeit von Agenten- sowie von Funktionsblocksystemen auf verschiedenen Ebenen der Automatisierungspyramide. Es wurden allgemeine Anforderungen an Steuerungssysteme wie z.B. Zeitverhalten und üblicher Weise verwendete Rechentechnik untersucht und daraus allgemeine Anforderungen an die zu schaffende neue Architektur gewonnen. Als zweiter Ausgangspunkt wurden verschiedene Methoden zum Entwurf verteilter Steuerungssysteme auf den verschiedenen Ebenen der Automatisierungspyramide untersucht. Dabei wurde analysiert, welche Methode welche Informationen über das zu entwerfende Steuerungssystem in welcher Art und Weise abbildet und wie diese Informationen im späteren Entwurfsvorgehen genutzt und in Steuerungsarchitekturen bzw. Steuerungsverhalten übertragen werden. Es wurden die im Bereich der Steuerungstechnik üblichen Vorgehensweisen herausgestellt, die von einer Methodik, die Agenten und Funktionsblocksysteme kombiniert, zu unterstützen sind. Unter Nutzung dieser beiden Ausgangspunkte wurden zwei parallele Untersuchungswege verfolgt. Der erste Untersuchungsweg konzentrierte sich auf eine Modellierungsmethode für verteilte Steuerungssysteme, die sowohl zur Modellierung von Funktionsblock- als auch zur Modellierung von agentenbasierten Steuerungssystemen verwendet werden kann. Der zweite Untersuchungsweg konzentrierte sich auf die Kombination existierender Agententechnologien und Laufzeitumgebungen für Funktionsblocksysteme. Im Rahmen des ersten Untersuchungsweges wurde mit der GAIA-UML Modellform und der auf ihr aufbauenden Modellierungsmethodik ein Vorgehen entwickelt, das den Anforderungen der Steuerungstechnik umfassend gerecht wird. GAIA-UML basiert auf dem Rollenmodell der GAIA Methodologie zum Entwurf von Agentensystemen aus dem Bereich der Kl. Es wurde mit wichtigen Darstellungsmöglichkeiten von Informationen aus der UML zum Zwecke der Beschreibung von Rollen kombiniert. Im Ergebnis entstanden eine Modellform und eine Modellierungsmethode, mit denen der Prozess des Treffens von Steuerungsentscheidungen im Rahmen eines verteilten Steuerungssystems, die Verteilungsaspekte von Informationen und Entscheidungsbefugnissen, sowie das interne Verhalten einzelner Bausteine eines verteilten Steuerungssystems unabhängig von ihrer späteren Implementierung durch Agenten oder Funktionsblocksysteme beschrieben werden können. Im Rahmen des zweiten Untersuchungsweges wurde die Kombinierbarkeit von Agentensystemen und Funktionsblocksystemen untersucht und zwei Methodiken zur Integration von Funktionsblocksystemen in Agentensysteme entwickelt. Die erste Möglichkeit der Integration zielt auf die strengen Echtzeitanforderungen der Feldsteuerungssysteme. Hier wurde eine Laufzeitumgebung für Funktionsblocksysteme gemäß der IEC 61499 auf der Basis der Echtzeit - Java - Laufzeitumgebung Jamaika geschaffen und mit dem Jade Agentensystem über eine spezielle Schnittstellenstruktur verbunden. Die zweite Möglichkeit der Integration zielt auf zu steuernde Systeme mit geringeren Echtzeitanforderungen. Hier wurde eine Laufzeitumgebung für Funktionsblocksysteme gemäß der IEC 61499 direkt in das Jade Agentensystem integriert. Mit beiden Systemen steht erstmalig eine flexible und an die Anforderungen der verschiedenen Ebenen der Automatisierungspyramide anpassbare Kombination von Funktionsblocksystemen und Agentensystemen zur Verfügung. Aufbauend auf den beiden Untersuchungswegen wurde ein Softwarewerkzeug begonnen, das zur Implementierung von Steuerungssystemen unter Nutzung der GAIAUML Modellform und Methodologie genutzt werden kann. Es ermöglicht die Modellierung des Systemverhaltens mittels Rollenmodellen und die Implementierung mittels Agenten, Funktionsblocksystemen und Kombinationen von diesen. Die GAIA-UML Modellform und Methodologie wurde im Rahmen des PABADIS'PROMISE Projektes erstmalig zur Spezifikation der PABADIS'PROMISE Steuerungsarchitektur erfolgreich genutzt. Die erreichten Ergebnisse können als Grundlage für Forschungs- und Entwicklungsarbeiten zur Entwicklung neuartiger Architekturen für die Entscheidungsfindung in verteilten Steuerungssystemen, zur Entwicklung neuartiger Sprachen zur Implementierung von Steuerungen und zur Entwicklung von neuartigen Geräten für verteilte Steuerungssysteme dienen. Die Entwicklung neuartiger Steuerungsarchitekturen setzt eine Möglichkeit zur eindeutigen Beschreibung von Entwurfsmustern voraus, die mit der GAIA-UML Modellform und Modellierungsmethodologie gegeben ist. Es wird damit möglich, die Qualität und Umsetzbarkeit von Strukturen auf verschiedenen Ebenen der Automatisierungspyramide zu bewerten. Die wachsenden Anforderungen an Steuerungssysteme setzten neuartige Steuerungsstrukturen voraus, die nur über neuartige Sprachen zur Implementierung von Steuerungssystemen umgesetzt werden können. Die entwickelten Kombinationen auf Agentensystemen und Funktionsblocksystemen sowie ihre Darstellbarkeit durch GAIA-UML Modelle eröffnen die Möglichkeit für eine neue objektorientierte Beschreibungssprache für verteilte Steuerungssysteme. Die Anwendung neuartiger verteilter Steuerungssysteme auf der entwickelten Kombinationen auf Agentensystemen und Funktionsblocksystemen erfordert neuartige Steuerungsgeräte, die sowohl Agentenlaufzeitumgebungen als auch Funktionsblocklaufzeitsysteme mit den normalen Funktionen von Steuerungsgeräten kombinieren. Diese sind zu entwickeln und zu testen.
Publications
- Aspect Orientation and Object Orientation of Control Application Code for Distributed Control Systems in TORERO, 10th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA'05), Catania, Italy, September 2005, Proceedings, Vol. 1, pp. 823-830.
M. Tangermann, Ch. Schwab, A. Lüder
- Formal models for the verification of iEC 61499 function block based control applications, accepted to 10th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA'05), Catania, Italy, September 2005, Proceedings, Vol. 1, pp. 105-112.
A. Lüder, Ch. Schwab, M. Tangermann, J. Peschke
- Integration of Scalable Safety and Security Actions in IEC 61499 Control Applications, 5th IFAC International Conference on Fieldbus Systems and their Applications, Puebla, Mexico, November 2005.
Ch. Schwab, M. Tangermann, A. Lüder
- Java Technology and Industrial Applications, The Industrial Information Technology Handbook, Editor R. Zurawski, CRC Press, Industrial Electronics Series, 2005, S. 63/1 -63/15.
J. Peschke, A. Lüder
- The JAKOBI architecture - a distributed dynamic execution environment in Java, 3rd International IEEE Conference on Industrial Informatics (INDIN2005), Perth, Australia, August 2005.
J. Peschke, A. Lüder
- The Modular TORERO IEC 61499 Engineering Platform - Eclipse in Automation, 10th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA'05), Catania, Italy, September 2005, Proceedings, Vol. 2, pp. 265-272.
Ch. Schwab, M. Tangermann, A. Lüder
- The PABADIS'PROMISE architecture - a new approach for flexible manufacturing systems, accepted to 10th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA'05), Catania, Italy, September 2005, Proceedings, Vol. 1, pp. 491-496.
J. Peschke, A. Lüder, H. Kühnle
- Control Architecture for Reconfigurable Manufacturing Systems - the PABADIS'PROMISE approach, 11th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA2006), Prague, Czech Republic, September, 2006.
L. Ferrarini, C. Veber, A. Lüder, J. Peschke, A. Kalogeras, J. Gialelis, J. Rode, D. Wünsch, V. Chapuriat
- Design Patterns for Distributed Control Applications, ATP International, Vol.3, 2006, pp. 32-40.
A. Lüder, J. Peschke, R. Sanz
- Möglichkeiten und Grenzen agentenbasierter Steuerungssysteme, 2. Workshop Agenten in der Automatisierungstechnik, Stuttgart, Deutschland, Januar 2006
Lüder
- Order Oriented Manufacturing Control - The PABADIS'PROMISE approach, International conference on Methodologies for Emerging Technologies in Automation, 50th Anniversary Congress of ANIPLA, Rome, Italy, November, 2006.
Lüder, J. Peschke
- Possibilities and Limitations of the Application of Agent Systems in Control, 12th International Conference, on Concurrent Enterprising (ICE2006), Milan, Italy, June 2006, Proceedings, pp. 149-156.
Lüder, J. Peschke, D. Reinelt
- Strukturen zur verteilten Steuerung von Produktionssystemen, Habilitationsschrift, Fakultät Maschinenbau, Otto-von-Guericke Universität Magdeburg, 2006.
A. Lüder
- The PABADIS'PROMISE - architecture, International conference on Methodologies for Emerging Technologies in Automation, 50th Anniversary Congress of ANIPLA, Rome, Italy, November, 2006.
Lüder, J. Peschke, A. Bratukhin, A. Treytl, A. Kalogeras, J. Gialelis
- Incremental design of distributed control systems using GAIAUML, 12th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA2006), Patras, Greece, September, 2007.
Lüder, J. Peschke
- Order Oriented Manufacturing Control -The PABADIS'PROMISE project, 1st International Workshop on Advanced Manufacturing Systems (WAMS 2007), Magdeburg, Germany, June 2007, Proceeding, pp. 3-15.
Lüder, J. Peschke, M. Heinze, A. Bratukhin, A. Treytl, A. Kalogeras, J. Gialelis