15 research outputs found

    EchtzeitfÀhige Softwareagenten zur Realisierung cyber-physischer Produktionssysteme

    Get PDF
    Aktuelle ökonomische Trends, wie die zunehmende Globalisierung und die wachsende Technisierung und Individualisierung vieler KonsumgĂŒter, fĂŒhren im Hinblick auf die zur Fertigung dieser GĂŒter eingesetzte Automatisierungstechnik zu steigender KomplexitĂ€t und hohen FlexibilitĂ€tsanforderungen. Ein Konzept zur Adressierung dieser Anforderungen ist die Auslegung von automatisierten Anlagen als modulares System flexibel kombinierbarer cyber-physischer Komponenten. Die namensgebende Einheit von mechatronischem Bauteil und lokaler RechenkapazitĂ€t ermöglicht Herstellern solcher Komponenten, Softwarebausteine fĂŒr typische Steuer-, Bedien- oder Diagnoseaufgaben gebrauchsfertig vorzubereiten und so den (Re-)Engineeringaufwand bei der (Um-)Gestaltung des Gesamtsystems deutlich zu reduzieren. Allerdings stellt diese Vision hohe AnsprĂŒche an die zugrundeliegende Softwarearchitektur, die von den derzeit zur Realisierung automatisierter Systeme eingesetzten Technologien nicht vollstĂ€ndig erfĂŒllt werden. Das Paradigma der Agentenorientierung ist ein tragfĂ€higer Ansatz zur Realisierung solcher lose gekoppelten verteilten Systeme und stellt durch leistungsfĂ€hige Interaktionsmechanismen sowie die enge Integration von semantischem Wissen zusĂ€tzliche FunktionalitĂ€t in Aussicht: Als Agenten ausgelegte Komponenten könnten auch die logische Vernetzung untereinander wĂ€hrend der Inbetriebnahme, nach UmrĂŒstungen oder in Reaktion auf Betriebsstörungen teilweise selbst ĂŒbernehmen. Dadurch ergeben sich FĂ€higkeiten wie Selbstkonfiguration und Selbstregeneration, die in der Fachliteratur unter dem Begriff Self-X zusammengefasst werden. Die fehlende EchtzeitfĂ€higkeit, insbesondere in Bezug auf besagte Interaktionsmechanismen, hat jedoch bisher die Einsetzbarkeit von Agentensystemen in der Automatisierung limitiert und die Ausschöpfung der genannten Potentiale behindert. Deshalb wird in dieser Dissertation eine echtzeitfĂ€hige Laufzeitumgebung fĂŒr Softwareagenten entworfen und anschließend die Überarbeitung bestehenden Kommunikationsmechanismen im Hinblick auf ihre EchtzeitfĂ€higkeit vorgenommen. In diesem Kontext wird mit dem Konzept der semantischen Adressierung eine vielfĂ€ltig einsetzbare Möglichkeit geschaffen, Nachrichten an ausgewĂ€hlte Gruppen von Agenten mit bestimmten, semantisch beschriebenen Eigenschaften zur verschicken. Die dabei zur WissensreprĂ€sentation genutzten Taxonomie-BĂ€ume bieten ein fĂŒr viele Aufgabenstellungen ausreichendes Maß an AusdrucksstĂ€rke und erlauben zudem die Verarbeitung unter harten Echtzeitbedingungen. Abschließend werden die geschaffenen Mechanismen in einem Antwortzeitmodell abgebildet, mit dem das rechtzeitige Reagieren eines Agentensystems auf lokal oder verteilt zu behandelnde Ereignisse ĂŒberprĂŒft und nachgewiesen werden kann. Damit wird ein Hauptkritikpunkt von Agentensystemen adressiert, was zu einer nachhaltigen Steigerung der Akzeptanz des Agentenparadigmas fĂŒhren könnte. WĂ€hrend große Teile der erarbeiten Lösung als allgemeingĂŒltige Grundlagenforschung verstanden werden können, wird bei der Formulierung von Anforderungen, der Darstellung von Beispielen und der ErlĂ€uterung von Entwurfsentscheidungen immer wieder auf automatisierungstechnische Belange Bezug genommen. Außerdem wird am Ende der Arbeit eine kritische Bewertung der Ergebnisse vor dem Hintergrund eines möglichen Einsatzes in zukĂŒnftigen Automatisierungssystemen durchgefĂŒhrt und damit das Gesamtbild abgerundet

    Effiziente externe Beobachtung von CPU-AktivitÀten auf SoCs

    Get PDF
    Die umfassende Beobachtbarkeit von System‐on‐Chips (SoCs) ist eine wichtige Voraussetzung fĂŒr das effiziente Testen und Debuggen eingebetteter Systeme. Ausgehend von einer Analyse verschiedener AnwendungsfĂ€lle ergibt sich ein Katalog von Anforderungen an die Beobachtbarkeit von SoCs. Ein wichtiges Kriterium ist hier die VollstĂ€ndigkeit der Beobachtung und umfasst die AktivitĂ€ten der CPU (ausgefĂŒhrte Instruktionen, gelesene und geschriebene Daten, Verhalten des Caches, AusfĂŒhrungszeiten), des Bussystems und von Umgebungsbedingungen. Weitere Kriterien sind die EchtzeitfĂ€higkeit und die KontinuitĂ€t der Beobachtung sowie die gleichzeitige DurchfĂŒhrung verschiedener Beobachtungsaufgaben. Dabei soll es zu einer möglichst geringen Beeinflussung des SoCs kommen. Weitere wichtige Aspekt sind die Kosten der Lösung, die UniversalitĂ€t, die Skalierbarkeit sowie die Latenz der VerfĂŒgbarkeit der Beobachtungsergebnisse. FĂŒr viele Anwendungen, besonders in sicherheitskritischen Bereichen, muss zudem nachgewiesen werden, dass das Beobachtungsverfahren kein Fehlverhalten des SoCs bewirkt bzw. ein solches maskiert. Eine besondere Herausforderung stellen Multiprozessor‐SoCs (MPSoCs) dar, da hier die Kommunikation zwischen den einzelnen CPUs im Inneren des SoC stattfindet und entsprechend schwierig fĂŒr einen externen Bobachter sichtbar zu machen ist. Der Stand der Technik zur Beobachtung von SoCs wird im Wesentlichen durch zwei Verfahren dargestellt. Bei der Software‐Instrumentierung wird zum funktionalen Programmcode zusĂ€tzlicher Code hinzugefĂŒgt, welcher zur Beobachtung des Programms dient. Diese Methode ist einfach und universell anwendbar, erfĂŒllt aber die genannten Kriterien nur sehr eingeschrĂ€nkt. Nachteilig ist hier der Ressourcenverbrauch im Falle des Verbleibs der Instrumentierung im fertigen Produkt. Wird die Instrumentierung nur temporĂ€r dem Code hinzugefĂŒgt, muss sichergestellt werden, dass das Beobachtungsergebnis auch fĂŒr den finalen Code anwendbar ist – was besonders bei ressourcen‐abhĂ€ngigen Integrationstests nur schwierig erfĂŒllbar ist. Eine alternative Lösung stellt eine spezielle Hardware‐UnterstĂŒtzung in SoCs („embedded Trace“) dar. Hier werden im SoC Zustandsinformationen (z.B. Taskwechsel, ausgefĂŒhrte Instruktionen, Datentransfers) gesammelt und mittels Trace‐Nachrichten an den Beobachter ĂŒbermittelt. Dabei stellt die Bandbreite, die zur Ausgabe der Trace‐Nachrichten vom SoC verfĂŒgbar ist, ein entscheidendes Nadelöhr dar ‐ im SoC sind viel mehr den Beobachter interessierende Informationen verfĂŒgbar als nach außen transferiert werden können. Damit haben beide dem gegenwĂ€rtige Stand der Technik entsprechende Beobachtungsverfahren eine Reihe von EinschrĂ€nkungen, die sich besonders bei der VollstĂ€ndigkeit der Beobachtung, der FlexibilitĂ€t, der KontinuitĂ€t und der UnterstĂŒtzung von MPSoCs zeigen. In dieser Arbeit wird nun ein neuer Ansatz vorgestellt, welcher gegenĂŒber dem Stand der Technik in einigen Bereichen deutliche Verbesserungen bietet. Dabei werden die Trace‐Daten nicht vom zu beobachtenden SoC direkt, sondern aus einer parallel mitlaufenden Emulation gewonnen. Die Bandbreite der fĂŒr die Synchronisation der Emulation erforderlichen Daten ist in vielen FĂ€llen deutlich geringer als bei der Ausgabe von umfassenden Trace‐Nachrichten mittels „embedded Trace“‐Lösungen. Gleichzeitig ist eine vollstĂ€ndige, Ă€ußerst detaillierte Beobachtung der VorgĂ€nge innerhalb des SoC möglich. Das neue Beobachtungsverfahren wurde mittels verschiedener FPGA-basierter Implementierungen evaluiert, hier konnte auch die Anwendbarkeit fĂŒr MPSoCs gezeigt werden

    Konzeption und Realisierung eines neuen Systems zur produktbegleitenden virtuellen Inbetriebnahme komplexer Förderanlagen

    Get PDF
    Die virtuelle Inbetriebnahme ermöglicht die Vorwegnahme der steuerungstechnischen Inbetriebnahme von komplexen Förderanlagen an einem virtuellen Modell. In dieser Arbeit wird die Konzeption eines neuen Systems zur produktbegleitenden virtuellen Inbetriebnahme geschildert und dessen Umsetzung in Form eines neuen prototypischen Simulationssystems beschrieben. Durch die Umsetzung des entwickelten Konzeptes wurde eine durchgÀngige virtuelle Inbetriebnahme der betrachteten Förderanlagen erreicht

    Compileroptimierung und parallele Code-Generierung fĂŒr zeitkritische eingebettete Multiprozessorsysteme

    Get PDF
    Durch den voranschreitenden Trend der Digitalisierung gewinnen intelligente digitale Systeme in vielen Bereichen des tĂ€glichen Lebens zunehmend an Bedeutung. Dies betrifft insbesondere auch den Bereich sicherheitskritischer Echtzeitsysteme, fĂŒr deren sicheren Betrieb die EchtzeitfĂ€higkeit nachgewiesen werden muss. Im Gegensatz zu Anwendungsfeldern ohne diese Anforderung sind effiziente Mehrkernprozessoren in Echtzeitsystemen derzeit noch kaum verbreitet. Der Hauptgrund fĂŒr die bisherige Dominanz der Einzelkernprozessoren sind fehlende Methoden und Werkzeuge, um parallele Echtzeit-Software fĂŒr Mehrkernprozessoren zu entwickeln und selbst im ungĂŒnstigsten Fall noch eine maximale AusfĂŒhrungszeit (englisch Worst Case Execution Time, kurz WCET) garantieren zu können. In diesem Kontext besteht eines der wesentlichen Probleme darin, dass sich parallel ablaufende Software-Routinen im Hinblick auf ihre Laufzeit gegenseitig beeinflussen können. In Mehrkernprozessoren geschieht dies vor allem bei gleichzeitigen Zugriffen mehrerer Kerne auf eine gemeinsam genutzte Hardware-Ressource. Geeignete Methoden, um den Einfluss dieser als Interferenz bezeichneten Effekte bei der Software-Entwicklung prĂ€zise vorherzusagen und sichere Garantien fĂŒr die AusfĂŒhrungszeit abzuleiten, sind Gegenstand aktueller Forschung. Gleiches gilt fĂŒr Software-Werkzeuge zur automatischen Parallelisierung, die auf harte Echtzeitanwendungen spezialisiert sind. Diese Arbeit zielt darauf ab, die Anwendbarkeit von Mehrkernprozessoren in Echtzeitsystemen durch BeitrĂ€ge in den Bereichen der automatischen Software-Parallelisierung, Code-Optimierung und Hardware-Modellierung signifikant zu verbessern. Als Bestandteil einer Werkzeugkette zur automatischen Parallelisierung von sequentieller Echtzeit-Software wird in dieser Arbeit ein Compiler-Werkzeug zur WCET-optimierten parallelen Code-Generierung und ein zugehöriges paralleles Programmiermodell vorgestellt. Hierdurch können -- weitgehend ohne Zutun eines Endanwenders -- gut vorhersagbare parallele Programme erzeugt werden. Durch das Programmiermodell wird dabei sichergestellt, dass die AusfĂŒhrungszeit, einschließlich der Interferenzeffekte, mit Hilfe einer statischen WCET-Analyse sicher nach oben abgeschĂ€tzt werden kann. Als Teil der Code-Generierung stellt die vorliegende Arbeit zwei Optimierungsmethoden vor, die zum einen den Kommunikations- und Synchronisationsaufwand zwischen den Prozessorkernen reduzieren und zum anderen die optimierte Allokation verteilter Speicher in heterogenen Speicherhierarchien ermöglichen. Erstere ist auf des parallele Programmiermodell abgestimmt und erlaubt die optimierte Platzierung von Kommunikations- und Synchronisationsoperationen sowie das Entfernen redundanter Synchronisation auf einer feingranularen Ebene. Die Optimierung der Speicherallokation ergĂ€nzt den Ansatz um ein formales Optimierungsmodell zur Zuweisung der Datenfelder eines generierten Programms zu den Speicherbereichen der Zielplattform. Das Modell bezieht dabei sowohl die Kosten fĂŒr Interferenzeffekte als auch die Speicherhierarchie von Zielplattformen mit verteilten und heterogenen Speichern mit ein. Um die Schritte zur Generierung, Optimierung und Analyse von paralleler Echtzeit-Software weitgehend plattformunabhĂ€ngig aufbauen zu können, beinhaltet die vorliegende Arbeit außerdem einen Ansatz zur generischen Modellierung von Mehrkernprozessorarchitekturen. Dieser erlaubt es, die Zielplattform mit Hilfe einer entsprechend erweiterten Architekturbeschreibungssprache (ADL) zu beschreiben, wodurch sich die darauf aufbauenden Entwicklungswerkzeuge mit ĂŒberschaubarem Aufwand auf ein breites Spektrum von Hardware-Plattformen anwenden lassen. Mit dieser neuartigen Kombination erweitert die vorliegende Arbeit den Stand der Technik um einige wesentliche Bausteine, die die weitgehend automatisierte Parallelisierung von Echtzeit-Software ohne stark einschrĂ€nkende Annahmen bezĂŒglich der Struktur des Eingabeprogramms ermöglichen. Zu den weiteren Neuerungen dieser Arbeit zĂ€hlen die PlattformunabhĂ€ngigkeit bei der WCET-optimierten Software-Parallelisierung und die BerĂŒcksichtigung von Interferenzeffekten bei der Speicherallokation in Echtzeitsystemen. Die experimentelle Evaluation der vorgestellten Methoden und deren prototypischer Umsetzung zeigt, dass die WCET aller betrachteten Testanwendungen von der Parallelisierung profitieren kann. Auf einer Plattform mit vier Prozessorkernen konnte z.B. die WCET einer Anwendung aus dem Bereich der Bildverarbeitung durch die Parallelisierung im Vergleich zum sequentiellen Eingabeprogramm um Faktor 3,21 verbessert werden. Auch die OptimierungsansĂ€tze fĂŒr Kommunikation und Speicherallokation fĂŒhren grĂ¶ĂŸtenteils zu einer deutlichen Verbesserung der WCET. So konnten die durch Interferenzen verursachten Kosten im Zuge der Speicherallokation z.B. um bis zu 49% reduziert werden. Insgesamt haben die Ergebnisse dieser Arbeit damit das Potential, die effiziente und kostengĂŒnstige Nutzung von Mehrkernprozessoren im Bereich harter Echtzeitsysteme wesentlich voranzutreiben

    Skalierbare adaptive System-on-Chip-Architekturen fĂŒr Inter-Car und Intra-Car Kommunikationsgateways

    Get PDF
    Die Kommunikation zwischen Verkehrsteilnehmern ist ein elementarer Bestandteil zukĂŒnftiger MobilitĂ€tskonzepte. Die Arbeit untersucht, welchen Anforderungen die Kommunikationsknotenpunkte gerecht werden mĂŒssen. Das Ergebnis ist eine System-on-Chip Architektur fĂŒr die fahrzeuginterne und fahrzeugĂŒbergreifende Kommunikation. Wesentliche Eigenschaftensind FlexibilitĂ€t und Skalierbarkeit, die es erlauben, mittels neuartiger Methoden und Tools optimierte Architekturen zu realisieren

    Modellbasierte Entwicklung und Optimierung flexibler zeitgesteuerter Architekturen im Fahrzeugserienbereich

    Get PDF

    Kommunikation und Bildverarbeitung in der Automation

    Get PDF
    In diesem Open-Access-Tagungsband sind die besten BeitrÀge des 9. Jahreskolloquiums "Kommunikation in der Automation" (KommA 2018) und des 6. Jahreskolloquiums "Bildverarbeitung in der Automation" (BVAu 2018) enthalten. Die Kolloquien fanden am 20. und 21. November 2018 in der SmartFactoryOWL, einer gemeinsamen Einrichtung des Fraunhofer IOSB-INA und der Technischen Hochschule Ostwestfalen-Lippe statt. Die vorgestellten neuesten Forschungsergebnisse auf den Gebieten der industriellen Kommunikationstechnik und Bildverarbeitung erweitern den aktuellen Stand der Forschung und Technik. Die in den BeitrÀgen enthaltenen anschaulichen Beispiele aus dem Bereich der Automation setzen die Ergebnisse in den direkten Anwendungsbezug
    corecore