Ein Framework für echtzeitfähige Ethernet-Netzwerke



Ähnliche Dokumente
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Marktanalyse Industrial Ethernet. - Überblick -

Informationsblatt Induktionsbeweis

Zeichen bei Zahlen entschlüsseln

1 Mathematische Grundlagen

1 topologisches Sortieren

1 Einleitung. 1.1 Motivation und Zielsetzung der Untersuchung

Grundlagen der Theoretischen Informatik, SoSe 2008

Konzepte der Informatik

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Einführung in. Logische Schaltungen

Güte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über

Anmerkungen zur Übergangsprüfung

10. Elektrische Logiksysteme mit

echtzeitfähige Ethernet-Netzwerke

Lineare Gleichungssysteme

Primzahlen und RSA-Verschlüsselung

Das Briefträgerproblem

Speicher in der Cloud

PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Projektmanagement in der Spieleentwicklung

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Man unterscheidet zwischen LAN (Local Area Network) und WAN (Wide Area Network), auch Internet genannt.

Plotten von Linien ( nach Jack Bresenham, 1962 )

1. Einführung Erstellung einer Teillieferung Erstellung einer Teilrechnung 6

Teamentwicklung. Psychologische Unternehmensberatung Volker Rudat

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

SMS/ MMS Multimedia Center

Änderung des IFRS 2 Anteilsbasierte Vergütung

Algorithmische Mathematik

Grundlagen verteilter Systeme

Zahlen auf einen Blick

LEITFADEN ZUR SCHÄTZUNG DER BEITRAGSNACHWEISE

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

Software-Engineering SS03. Zustandsautomat

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

K.U.Müller November 2009

Behörde für Bildung und Sport Abitur 2008 Lehrermaterialien zum Leistungskurs Mathematik

Marktanalyse Industrial Ethernet. - Abschlußbericht -

RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen

Kompetitive Analysen von Online-Algorithmen

Festigkeit von FDM-3D-Druckteilen

Die Größe von Flächen vergleichen

Lineare Funktionen. 1 Proportionale Funktionen Definition Eigenschaften Steigungsdreieck 3

WS 2009/10. Diskrete Strukturen

Gruppenrichtlinien und Softwareverteilung

Insiderwissen Hintergrund

Existenzgründer Rating

JetSym. Programmierung in Hochsprache ST nach IEC We automate your success.

AUTOMATISIERTE HANDELSSYSTEME

Mobile Intranet in Unternehmen

Modellbildungssysteme: Pädagogische und didaktische Ziele

Guide DynDNS und Portforwarding

4. BEZIEHUNGEN ZWISCHEN TABELLEN

Laufzeit-Vergleich verschiedener Switching-Technologien im Automatisierungs-Netz

Berechnung der Erhöhung der Durchschnittsprämien

Musterlösungen zur Linearen Algebra II Blatt 5

Protokoll des Versuches 7: Umwandlung von elektrischer Energie in Wärmeenergie

Skript und Aufgabensammlung Terme und Gleichungen Mathefritz Verlag Jörg Christmann Nur zum Privaten Gebrauch! Alle Rechte vorbehalten!

Zwischenablage (Bilder, Texte,...)

Programmentwicklungen, Webseitenerstellung, Zeiterfassung, Zutrittskontrolle

Korrigenda Handbuch der Bewertung

Die elektronische Rechnung als Fortsetzung der elektronischen Beauftragung so einfach geht es:

Simulation LIF5000. Abbildung 1

Manchester Codierung sowie Differenzielle Manchester Codierung

Statistische Untersuchungen zu endlichen Funktionsgraphen

Inbetriebnahme Profinet mit Engineer. Inhaltsverzeichnis. Verwendete Komponenten im Beispiel:

Theoretische Informatik SS 04 Übung 1

SEQUENZDIAGRAMM. Christoph Süsens

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

Leitfaden zum Personalentwicklungsgespräch für pflegerische Leitungen

Erstellen von x-y-diagrammen in OpenOffice.calc

Professionelle Seminare im Bereich MS-Office

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

Versetzungsregeln in Bayern

TECHNISCHE UNIVERSITÄT MÜNCHEN

I.O. BUSINESS. Checkliste Effektive Vorbereitung aktiver Telefonate

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

Technical Note Nr. 101

16/24 Port Desktop & Rack-mountable Gigabit Ethernet Switch

Hochschule Karlsruhe Klausur EAI Prof. Dr. Christian Pape. Klausur EAI WS 05/06. Note: Bearbeitungszeit 90 Minuten Keine Hilfsmittel

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Einführung in die Algebra

WLAN Konfiguration. Michael Bukreus Seite 1

1. EINLEITUNG 2. GLOBALE GRUPPEN Globale Gruppen anlegen

Data Mining: Einige Grundlagen aus der Stochastik

1 Wiederholung einiger Grundlagen

WinVetpro im Betriebsmodus Laptop

Bei der Tagung werden die Aspekte der DLRL aus verschiedenen Perspektiven dargestellt. Ich habe mich für die Betrachtung der Chancen entschieden,

Tipp III: Leiten Sie eine immer direkt anwendbare Formel her zur Berechnung der sogenannten "bedingten Wahrscheinlichkeit".

Grundlagen der Technischen Informatik. Sequenzielle Netzwerke. Institut für Kommunikationsnetze und Rechnersysteme. Paul J. Kühn, Matthias Meyer

6.2 Petri-Netze. kommunizierenden Prozessen in der Realität oder in Rechnern Verhalten von Hardware-Komponenten Geschäftsabläufe Spielpläne

Meinungen der Bürgerinnen und Bürger in Hamburg und Berlin zu einer Bewerbung um die Austragung der Olympischen Spiele

MC-Hx 006. Einbindung des MC-Hx Modul als MODBus TCP Slave. MB DataTec GmbH. Stand:

Enigmail Konfiguration

R ist freie Software und kann von der Website.

Transkript:

Ein Framework für echtzeitfähige Ethernet-Netzwerke Dr. Frank Dopatka GFU Cyrus AG Gesellschaft für Unternehmensberatung, 51105 Köln-Deutz FrankDopatka@web.de Zusammenfassung. Im Rahmen dieser Arbeit wird die Entwicklung eines formalen Framewoks vorgestellt, mit dessen Hilfe zwischen der Kompatibilität zum verbreiteten baumförmigen Standard-Ethernet und der Einhaltung von Echtzeitanforderungen einer automatisierten Anlage variiert werden kann. Damit kann bereits vor der Auswahl einer bestimmten Technologie eine Schedule der Echtzeit-Übertragungen offline kalkuliert und simuliert werden, sobald die Anforderungen der Geräte im industriellen Echtzeit-Netzwerk bekannt sind. Ausgehend von einer stark vereinfachten Modellbildung werden in mehreren Schritten Verfeinerungen vorgenommen, die zukünftig eine nahtlose Integration in existierende industrielle Lösungen ermöglichen sollen. 1 Motivation Im Umfeld der Automatisierungstechnik ist bereits seit einigen Jahren der Trend zu beobachten, etablierte Feldbusse durch echtzeitfähiges Ethernet zu ersetzen oder zu ergänzen. Das Ziel liegt darin, eine einzige Netzwerkinfrastruktur von der Leitebene im Bürobereich bis hin zu Feldgeräten wie Sensoren, Aktoren und Bedienpulten in industriellen Produktionshallen zu schaffen. Dieser Trend wird als vertikale Integration bezeichnet [1]. Ein Hauptproblem liegt dabei darin, dass die weit verbreiteten Standard-Ethernet Netzwerke nicht den harten Anforderungen der industriellen Echtzeit genügen. So ist bereits in einem kollisionsfreien Vollduplex-Ethernet die Zwischenspeicherung eines Datenpaketes ausreichend, um den Anforderungen der härtesten Echtzeitklasse der Industrial Automation Open Networking Alliance (IAONA) [2] zu widersprechen, bei der die maximale Verzögerung eines Frames im Netzwerk 1ms und die Schwankung dieser Verzögerung der Jitter maximal 1µs beträgt. Andererseits soll jedoch der Ethernet- Standard auch auf der Feldebene eingehalten werden, da ansonsten wiederum separate Feldbusse entstehen. Es existiert bereits eine Reihe von industrie-tauglichen Lösungen für echtzeitfähiges Ethernet, die im folgenden Kapitel kurz vorgestellt und klassifiziert werden. Es lässt sich erkennen, dass jeder Ansatz einen individuellen Kompromiß zwischen den Echtzeitanforderungen aus der Automatisierungstechnik und der Kompatibilität zu Standard-Ethernet darstellt. Die eigene Forschung hat sich nicht zum Ziel gesetzt, einen weiteren dieser Kompromisse hervorzubringen.

2 F. Dopatka Statt dessen wird die Grundlage für ein technologie-unabhängiges, mathematisch formales Framework gelegt, das im dritten Kapitel vorgestellt wird. Die Vorgehensweise bei der Entwicklung des Frameworks verläuft von einer stark vereinfachten Modellierung und Lösungsfindung schrittweise zu realitätsnäheren Ansätzen. Das Ziel besteht darin, möglichst viele der existierenden Ansätze in dem allgemeinen Framework formal zusammenzufassen. Im dritten Kapitel werden exemplarisch idealisierte Vollduplex-Netze unter Verwendung von Switches betrachtet. Im vierten Kapitel werden dann zwei Verfeinerungen der Modellierung vorgestellt, indem zunächst Hubs und anschließend Verzögerungszeiten in die Modellierung aufgenommen werden. Die Betrachtung endet mit einer Zusammenfassung der erreichten Ergebnisse und mit Perspektiven für die zukünftige Forschung. 2 Stand der Forschung Durch das Fehlen eines deterministischen Medienzugriffs, der Pufferung von Daten-Frames in Switches und ggf. sogar deren Verwerfung bei vollen Puffern sowie durch einen hohen Protokoll-Overhead im Vergleich zu Feldbus-Protokollen können härteste Echtzeitanforderungen der Antriebstechnik nicht mit Standard- Ethernet nach IEEE 802.3 umgesetzt werden. Dies beinhaltet insbesondere die Forderung nach Isochronität. Durch die konstanten Perioden isochroner Übertragungen (IRT) sollen mechanische Wellen durch eine zyklische, hoch präzise getaktete Verbreitung der Ist-Werte einer Master-Achse zu ihren Slaves ersetzt werden. Man wünscht sich in diesem Zusammenhang eine Software-Welle [3]. Die IRT-Übertragungen sind in der Automatisierungstechnik im Vorfeld bekannt. Es lässt sich also im Voraus bestimmen, welcher Sensor, Aktor oder welche Steuerung zu welchem Zeitpunkt senden darf. Ebenso kann die maximale Größe der Echtzeit-Frames im Vorfeld festgelegt werden. Im Gegensatz zu herkömmlichen Ethernet-Übertragungen, bei denen u. a. Multimedia-Daten oder E-Mails mit Anhängen übertragen werden, werden im industriellen Bereich lediglich einige Bytes an Nutzdaten pro Frame versendet, die zumeist Soll- und Ist-Positionen der Antriebe enthalten. Ein Lösungsansatz besteht darin, eine Modifikation zum Ethernet-Standard oberhalb der Sicherungsschicht vorzunehmen, wie es unter anderem bei dem verbreiteten Ethernet PowerLink (EPL) der Fall ist. Dabei kommen 100M Bit/s- Hubs anstelle von Switches zum Einsatz, da die Verzögerungszeiten der Frames bei Hubs um ein Vielfaches geringer sind. Nachteile bestehen darin, dass neben dem Einsatz von veralteten Hubs lediglich eine Kommuniktion zu einem Zeitpunkt im Netzwerk erlaubt ist, da durch die Halbduplex-Übertragung das CSMA/CD-Verfahren mit nicht-deterministischer Backoff-Strategie zum Einsatz kommt. Zusätzlich halbiert der Halbduplex-Betrieb die physikalische Bandbreite des Netzes. Auch zerstören Übertragungen von asynchron sendenden Geräte, die nicht dem EPL-Protokoll folgen, die Echtzeitfähigkeit des Netzes. Ein zweiter Lösungsansatz liegt in der Ersetzung oder Ergänzung der physikalischen Ethernet-Schicht inklusive der Medienzugriffssteuerung. Die Ersetzung

Ein Framework für echtzeitfähige Ethernet-Netzwerke 3 hat den Zweck, für die härteste IAONA-Echtzeitklasse optimierte Hardware bereit zu stellen. Als Vertreter dieses Ansatzes existieren ProfiNet IRT, SERCOS III sowie EtherCAT. Der Vorteil der optimierten Hardware für die Automatisierungstechnik spiegelt sich gleichzeitig als Nachteil für die Kompatibilität zum Ethernet-Standard wider. Aus diesen Ansätzen ist zu entnehmen, dass zwar viele gute und auch effiziente Lösungen existieren, die Lösungen jedoch stets einen konkreten Kompromiß zwischen Kompatibilität zum Standard und den Anforderungen der Automatisierungstechnik darstellen. Das zu erstellende Framework soll die Basis für den flexiblen, anwendungsbezogenen Aufbau von industriell echtzeitfähigen Netzen schaffen. 3 Grundlagen der Modellierung Die Idee der Modellierung besteht darin, im ersten Schritt das zu erstellende Netzwerk formal zu modellieren. Die Position der einzelnen Geräte mit verschieden hohen Anforderungen an die Echtzeit wie Antriebe, Sensoren und Aktoren sowie deren Verkabelung lässt sich zum Großteil aus der mechanischen Konstruktion der konkreten Anlage ableiten. Im Anschluß daran werden die Übertragungen mit hohen Echtzeitanforderungen modelliert, die über das Netzwerk verlaufen. IRT-Übertragungen, die gleiche Wege im Netzwerk durchlaufen, dürfen unter Umständen nicht gleichzeitig ausgeführt werden, da dadurch eine erhöhte Verzögerungszeit und insbesondere ein erhöhter Jitter resultieren würde. Zwischen diesen Übertragungen entstehen somit Konflikte, die zeitlich zu entzerren sind. Aus den Konflikten wird ein Konfliktgraph gebildet, der durch seine anschließende Färbung die zeitliche Entzerrung vornimmt. Die einmalige Abarbeitung der Schedule ist gleichzusetzen mit einer Umdrehung der Software-Welle in der automatisierten Anlage und stellt einen Produktions-Zyklus dar. 3.1 Idealisierte Vollduplex-Verbindungen Um sich dem komplexen Problem zu nähern, wird im ersten Schritt von einem stark vereinfachten Netz ausgegangen. Dabei wird die ausschließliche Verwendung von idealisierten, nicht blockierenden Switches angenommen. Dies bedeutet, dass bei n Ports im Idealfall n/2 Übertragungen gleichzeitig möglich sind, ohne dass Daten zwischengespeichert oder verworfen werden. Ein auf Switches basierendes baumförmiges Netz arbeitet nach IEEE 802.3 im Vollduplex-Modus, in dem auf einem Ethernet-Kabel gleichzeitig gesendet und empfangen werden kann. Verzögerungszeiten und deren Jitter werden zunächst ignoriert. Des Weiteren werden einheitliche Framelängen angenommen. Die zusätzliche Übertragung von asynchronen Frames wird nicht betrachtet und später in die entstandene Schedule der Echtzeitübertragungen integriert. Es wird ebenso angenommen, dass jede IRT-Übertragung in jedem Sendezyklus auftritt und ausschließlich Unicast-Übertragungen vorliegen.

4 F. Dopatka Im ersen Schritt wird die Netzwerk-Infrastruktur als Graph modelliert. Über diesen Graph verlaufen die IRT-Übertragungen, deren Sendezeitpunkte zu planen sind. Das Netzwerk besteht aus einer endlichen Menge von Switches und einer endliche Menge von Geräten, die zu einer Knotenmenge des Netzes zusammengefasst werden. Angeschlossene Geräte bilden die Blätter im Netzwerk- Baum. Zusätzlich dazu existiert eine endliche Menge von Netzwerkkabeln, wobei ein Netzwerkkabel zwischen zwei Knoten als Kante zwischen den verbundenen Knoten repräsentiert wird. Ausserdem existiert eine endliche Menge von IRT-Übertragungen, die als Kommunikationslinien bezeichnet werden. Da es sich bei dem Netzwerk um einen Baum handelt, ist der Weg jeder Unicast-Übertragung eindeutig bestimmt. Jeder Kommunikationslinie wird eine einheitliche positive Übertragungsdauer zugeordnet. Jede Kommunikationslinie verläuft von genau einem Quellgerät zu genau einem Zielgerät über einen oder mehrere Knoten des Netzwerkes. Jeder Port eines Switches besitzt einen unabhängigen Eingangs- und Ausgangsteil. Wird ein Daten-Frame zu einem Zeitpunkt an einem Eingangs- oder Ausgangsteil eines Ports übertragen, an dem bereits ein anderer Frame übertragen wird, wird der zweite Frame verkehrsabhängig gepuffert und im Falle der Überlast sogar verworfen. Dies wird im Folgenden als Konflikt bezeichnet, der aufzulösen ist, da die nicht-deterministische, lastabhängige Verzögerungszeit der Frames in harten Echtzeitumgebungen nicht tolerierbar ist. Das Auflösen der Konflikte besteht also darin, dafür zu sorgen, dass die betreffenden Kommunikationslinien nicht zur selben Zeit an den konflikt-trächtigen Knoten im Netz ausgeführt werden. Diese zeitliche Entzerrung bedeutet eine Ablaufplanung der Übertragungen, also die Bildung einer Schedule. Durch die Definition des Konflikt-Begriffes können nun zwei Aussagen getroffen werden, die für die Berechnung der Schedule von Bedeutung sind. Die erste Aussage besteht darin, dass eine lokale Konfliktfreiheit eine globale Konfliktfreiheit impliziert [4, Satz 4.2.4]. Durchlaufen zwei verschiedene Kommunikationslinien einen gemeinsamen Switch und haben dort keinen Konflikt, weil sie nicht in dieselbe Richtung verlaufen, so sind sie global konfliktfrei. Die zweite Aussage besteht darin, dass Konfliktknoten stets einen Weg bilden [4, Satz 4.2.6], also jeweils durch eine eindeutige, zusammenhängende Folge von Knoten miteinander verbunden sind. Im Anschluss an die Modellierung des Netzes und der Übertragungen wird der Kantenkonfliktgraph betrachtet. Die Idee besteht darin, an dieser Stelle auf die Modellierung der Ports eines Switches zurückzugreifen. Die beiden Teile bildet je einen Knoten im Kantenkonfliktgraph. Jede Unicast-Übertragung verläuft von genau einem Eingangsport zu genau einem Ausgangsport und bildet eine Kante im Graphen. Sind mehrere Kanten mit einem Knoten verbunden, so müssen Sie bei einer gültigen Kantenfärbung verschiedene Farben erhalten. Erhalten zwei Kommunikationslinien dieselbe Farbe, so können sie unabhängig voneinander ausgeführt werden. Jede Farbe repräsentiert einen Zeit-Slot in der resultierenden Schedule und die Anzahl der Farben multipliziert mit der Übertragungszeit der

Ein Framework für echtzeitfähige Ethernet-Netzwerke 5 Frames die Zykluszeit des Netzes. Eine optimale Färbung bedeutet gleichzeitig eine optimale Schedule mit minimaler Ausführungsdauer. Es wurde bewiesen, dass Kantenkonfliktgraph eines Vollduplex-Netzwerkes bipartit ist [4, Satz 4.4.8], so dass die Färbung erheblich vereinfacht wird. Zunächst ist bereits bei der Entstehung des Konfliktgraphen bekannt, dass er mit χ (G) = (G) gefärbt werden kann. Auf diese Weise kann vor der Färbung bereits der Switch definitiv ermittelt werden, der für die meisten Zeit-Slots der Schedule verantwortlich sein wird. Ein einfacher optimaler O( E log( E ))- Algorithmus zur Färbung bipartiter Graphen stammt von Alon [5] aus dem Jahre 2003. Die Schedule für einen Switch aus der Netzwerkinfrastruktur lässt sich leicht erzeugen, sofern der gefärbte Konfliktgraph gegeben ist [4, Satz 6.3.1/2]. Man durchläuft alle gefärbten Kanten und sortiert die Anforderungen mit gleicher Farbe F i jeweils in einen Vektor, der dann einem Zeit-Slot entspricht. Da die lokalen Schedules für jeden Switch unabhängig erstellt werden können, ist es möglich, dass derselben Übertragung in zwei lokalen Schedules verschiedene Zeit- Slots zugewiesen werden. Ein Problem besteht jedoch darin, dass eine Kommunikationslinie, welche über mehrere Switches verläuft, bei unabhängiger Berechnung der lokalen Schedules verschiedenen Zeit-Slots zugeordnet werden kann. Es wurde bewiesen, dass die lokalen Schedules nicht stets zu einer globalen Schedule durch Um-Indizierung der Zuordnungen synchronisiert werden können [4, Satz 6.2.2]. Eine Idee zur Lösung besteht darin, zunächst alle Kantenkonfliktgraphen zu erzeugen und exakt zu färben. Ein Switch mit der größten Anzahl an Farben stellt dann den Wurzel-Switch w für die weitere Färbung dar. Treten IRT-Übertragungen auch in Switches auf, die direkt mit w verbunden sind, so erhalten sie jeweils dieselbe Farbe, wie sie in w besitzen. Im Anschluss daran werden die restlichen Übertragungen des Konfliktgraphen neu gefärbt. Dieser Vorgang wiederholt sich für das gesamte Netzwerk. Auf diese Weise erhält man in einem Schritt synchronisierte Schedules. Der Algorithmus hat Nowak [4, S. 118] formal beschrieben. 4 Erweiterung des Frameworks In diesem Kapitel werden nun zwei Erweiterungen des Frameworks vorgestellt, welche die Modellierung realitätsnäher gestalten. Dazu gehört einerseits die Integration von Hubs in das formalisierte Netzwerk und andererseits die die Berücksichtigung von Verzögerungszeiten in Switches sowie deren Auswirkung auf die erstellten Schedules. 4.1 Einbindung von Hubs An einem Hub existiert zu einem Zeitpunkt maximal eine Übertragung, die von allen angeschlossenen Geräten empfangen werden kann. Eine besondere Situation ergibt sich, sobald ein Hub zusammen mit Switches in einem Netzwerk kombiniert wird. Abbildung 1 zeigt fünf Kommunikationslinien, die zwischen zwei

6 F. Dopatka Switches und einem Hub verlaufen. An den Hub ist an Gerät G1 eine Master- Achse sowie 6 Slave-Achsen (G2 bis G7) angeschlossen. Während die beiden Kommunikationslinien 1 und 2 aufgrund des Halbduplex-Betriebes des Hubs sowie an Port 0 von Switch 1 in Konflikt stehen, sind sie in Switch 2, der ausschließlich im Vollduplexbetrieb arbeitet, konfliktfrei. In diesem Fall impliziert die lokale Konfliktfreiheit also keine globale Konfliktfreiheit. Daher ist ein globaler Knotenkonfliktgraph zu bilden, der das gesamte Netzwerk betrachtet (s. Abbildung 1b). Des Weiteren ist zu beachten, dass die dritte Kommunikationslinie auch vom Port 0 des Switches 1 empfangen wird. Trotz der Übertragung innerhalb des Hubs ist der gesamte Port 0 dieses Switches für die Dauer der Übertragung gesperrt. Da der Hub ausschließlich Broadcastsendungen zulässt, kann er als einziges Gerät D im Halbduplex-Betrieb angesehen werden. Alle Übertragungen stehen dort in Konflikt zueinander und benötigen einen eigenen Zeit-Slot. Die Färbung kann mit einem beliebigen Färbungs-Algorithmus zur Knoten- Färbung erfolgen. Aus dem knoten-gefärbten Graphen lassen sich die lokalen Schedules der Switches ableiten (s. Abbildung 1c), indem lediglich die IRT-Übertragungen betrachtet werden, die über den betreffenden Switch verlaufen. Abb. 1. Netzwerk (a), globaler Konfliktgraph (b) und lokale Schedules (c) 4.2 Berücksichtigung von Verzögerungszeiten Die Modellierung ist bislang vereinfachend davon ausgegangen, dass die Knoten des Netzes die IRT-Übertragungen nicht verzögern. Dies ist in der Praxis nicht der Fall. Die Verzögerung eines Hubs liegt in der Praxis sie bei ca. 0.4µs [6], die eines ProfiNet Switches bei ca. 3µs [7]. Modelliert man eine Linientopologie (s.

Ein Framework für echtzeitfähige Ethernet-Netzwerke 7 Abbildung 2a) mit 10 Verteilern (S1 bis S10), so ergibt sich eine Verzögerungszeit eines Frames vom sendenden Gerät am Anfang der Linie bis zum letzten empfangenen Gerät am Ende der Linie von 30µs bei der Verwendung von ProfiNet Switches und 4µs bei Hubs. Die Verzögerungszeiten besitzen insbesondere dann einen großen Einfluss auf die erstellte Schedule, wenn von einer minimalen Framegröße ausgegangen wurde, die ca. 7µs für ihre Übertragung benötigt. Um mögliche Integrationen von Verzögerungszeiten in das Modell zu diskutieren, wird im weiteren Verlauf dieses Kapitels das Beispiel aus Abbildung 2a eines auf Switches basierenden Vollduplex-Netzwerkes mit Unicast-Übertragungen verwendet. Zur besseren Berechenbarkeit wird angenommen, dass alle Verteiler die gleiche Verzögerungszeit T V besitzen. Ein einfacher Ansatz besteht darin, zunächst die globale Schedule zu erstellen. Dies kann über den globalen Knotenkonfliktgraphen in Abbildung 2b geschehen, der greedy-gefärbt wird. Daraus resultiert die globale Schedule in Abbildung 2c, die zunächst keine Verzögerungszeiten berücksichtigt. Abb. 2. Netzwerk mit Verzögerungen (a), gefärbter globaler Konfliktgraph (b) und globale Schedule (c) Geht man von einer minimalen Framelänge aus, so beträgt die ideale Zykluszeit 4 7µs = 28µs. Die Verzögerungszeiten der Kabel werden im folgenden Beispiel vernachlässigt. Die IRT-Übertragungen verlaufen über 10 Verteiler mit einer jeweilgen Verzögerungszeit T V. Basierend auf ProfiNet-Switches mit T V = 3µs ergibt sich eine maximale Gesamtverzögerungszeit von T V,Ges = 30µs, die für die IRT-Übertragung 1 auch zutrifft, da diese über das gesamte Netzwerk verläuft. Dies bedeutet, das bei Berücksichtigung der Verzögerungszeiten die einzelne Übertragung 1 bereits länger dauert als die gesamte idealisierte Schedule. Erweitert man jeden Slot pauschal um die maximale Verzögerungszeit im Netzwerk zuzüglich der Übertragungszeit T U = 7µs des Frames, so würde jeder

8 F. Dopatka Zeit-Slot T V,Ges + T U = 37µs lang sein. Die Zykluszeit wird auf diese Weise von 28µs ohne Berücksichtigung der Verzögerungen auf 4 37µs = 148µs erhöht. Die Einordnung der Übertragungen in die globale Schedule nach ihrem frühest möglichen Start-Zeitpunkt stellt eine Optimierung dar. Dies ist mit einem List-Scheduling bzw. einer First-Fit Vorgehensweise zu vergleichen, das aufgrund der im Vorfeld bekannten IRT-Übertragungen offline durchgeführt werden kann. Die Auflösung der Zeit-Slots hat zur Folge, dass eine Färbung des Konfliktgraphen nicht mehr benötigt wird. Die Erstellung des globalen Knotenkonfliktgraphen ist dennoch sinnvoll, um die Konflikte zwischen einzelnen Kommunikationslinien zu erkennen. Ähnlich wie bei der Graphenfärbung werden dabei zunächst die IRT-Übertragungen in einer Reihenfolge vorsortiert. Entsprechend dieser Reihenfolge werden die IRT-Übertragungen nacheinander direkt in die Schedule eingefügt unter der Prämisse der möglichst frühen Sendung. Es wird also vom Beginn der Schedule bei 0µs untersucht, ob die gerade betrachtete IRT-Übertragung eingefügt werden kann oder nicht. Ist dies nicht der Fall, so wird eine erneute Untersuchung unmittelbar nach Beendigung der Übertragung, mit welcher die betrachtete Übertragung in Konflikt steht, durchgeführt. Dies geschieht so lange über alle Switches, die von der betrachteten IRT-Übertragung betroffen sind, bis ein freier Bereich innerhalb der Schedule gefunden wird. Diese Vorgehensweise ist mit dem Greedy-Algorithmus der Graphenfärbung vergleichbar. Beim Greedy-Algorithmus der Graphenfärbung existiert jedoch stets mindestens eine Vorsortierung, welche zu einem optimalen Ergebnis führt [8]. Eine solche optimale Vorsortierung existiert auch bei der Anwendung des List-Schedulings. Die Aufgabe besteht nun darin, eine optimale Vorsortierung der IRT-Übertragungen zu ermitteln. Nach Abbildung 2b wird zunächt die Anzahl der Konflikte jeder IRT-Übertragung anhand des globalen Knotenkonfliktgraphen ermittelt. Die Anzahl ist jeweils an den Knoten, welche die jeweilige Übertragung repräsentiert, verzeichnet. Im Anschluss daran werden die Übertragungen anhand der Anzahl der Konflikte nacheinander in die Schedule eingefügt, wobei mit der IRT-Übertragung mit den meisten Konflikten begonnen wird. Eine sinnvolle Heuristik besteht darin, die Anzahl der Konflikte der Übertragungen zu zählen, welche noch nicht in die Schedule integriert worden sind und die Knoten der bereits eingefügten Übertragungen mit den inzidenten Kanten aus dem Konfliktgraphen zu entfernen. Dies entspricht einer dynamischen Sortierung und ist mit dem Sättigungsgrad des DSATUR-Algorithmus der Graphenfärbung [9] zu vergleichen, der in der Praxis gute Ergebnisse erzeugt. Die in Abbildung 3 dargestellte resultierende Schedule liegt bei 47µs im Vergleich zu 148µs des ersten beschriebenen Ansatz. So benötigt beispielsweise die IRT-Übertragung 1 an Switch S1 7µs für den Durchlauf des Daten-Frames zuzüglich 3µs Verzögerung, die in dem grauen Block der ersten Zeile der Schedule dargestellt wird. Die Verzögerungszeiten verlängern die idealisierte Schedule, die 28µs lang ist, um 68% bei der Anwendung des List-Schedulings. Der erste beschriebene Ansatz hingegen hat die Verzögerungszeiten pauschal auf jeden Zeit- Slot addiert und die Schedule dabei um 529% erhöht.

Ein Framework für echtzeitfähige Ethernet-Netzwerke 9 Abb. 3. Optimierte Schedule mit Berücksichtigung der Verzögerungen der Switches Eine weitere interessante Eigenschaft des List-Schedulings besteht darin, dass es unabhängig von der Framelänge operieren kann. Ebenso können bei der Anwendung des List-Schedulings neben den Unicast-Übertragungen auch Multicast- und Broadcast-Übertragungen berücksichtigt werden. Dabei erhöhen sich lediglich die Anzahl der betroffenen Switches sowie die Anzahl der Konflikte im globalen Knotenkonfliktgraphen. Werden an den Rändern des Netzwerkes Hubs eingesetzt, so können diese jeweils wie ein einzelnes Gerät betrachtet werden. 5 Zusammenfassung und Ausblick Die erstellte formale Modellierung beinhaltet neben dem bereits vorgestellten Szenario des idealisierten Vollduplex-Netzes mit Unicast-Übertragungen zusätzlich idealisierte Halbduplex-Netze [10] sowie die Integration von Multicast- und Broadcast-Übertragungen auf eine gegebene Ethernet-Netzwerkinfrastruktur [11]. Ausserdem werden Wege zur Einbindung von asynchron auftretenden Übertragungen in das formale Modell diskutiert [11]. Siemens ProfiNet und EPL beispielsweise teilen ihre Schedules in jeweils einen isochronen und einen asynchronen Teil ein. Zusätzlich wurden im Rahmen der Forschung Modelle zur Einbindung variabler Frame-Größen ebenso diskutiert wie die Möglichkeit, nicht jeden Frame in jedem Produktionszyklus zu versenden. So müssen unter ande-

10 F. Dopatka rem unkritische Sensor-Daten nicht zwingend in jedem Kommunikationszyklus übertragen werden und können sich statt dessen abwechseln [11]. Mit diesem Framework wurde also ein grundlegendes formales Modell und eine technologie-unabhängige Vorgehensweise zur Berechnung von Zykluszeiten automatisierter Anlagen geschaffen. Die ersten realitätsnahen Erweiterungen binden Technologien wie Siemens ProfiNet und Ethernet PowerLink in die Modellierung ein. Als nächste Erweiterungen könnten Rundsende-Techniken von Frames, wie sie von Sercos III und EtherCAT verfolgt werden, in die Modellierung integriert werden. Ebenfalls sinnvoll ist es, das Modell auf reale automatisierte Anlagen anzuwenden, um Vergleiche zwischen einer theoretisch ermittelten und realen Zykluszeit anzustellen und um den praktischen Einsatz des Modells zu erproben. Dazu wurde bereits ein erster objektorientierter Prototyp geschaffen, der eine Simulation von Netzen, Protokollen und Schedule-Berechnungen mit verschiedenen Algorithmen zulässt [11]. Die Vollendung dieses Prototyps kann ein weiterer Bestandteil zukünftiger Forschung darstellen. Literaturverzeichnis 1. Soucek S., Loy D.: Vertical Integration in Building Automation Systems. in: Proc. of the 5th IEEE Int. Conf. on Industrial Informatics 2007, Vol. 1, S. 81 86, 2007. 2. Schnell G.: Bussysteme in der Automatisierungs- und Prozesstechnik. Vieweg- Verlag, Braunschweig, Wiesbaden, 5. Auflage, 2003. 3. Moning A., Lanz R.: Datenkommunikation und Rechnernetze, 2006, FH Bern, Skript zur Vorlesung, http://www.sws.bfh.ch/~lanz/skripte/datakomm.pdf (01.07.07). 4. Nowak, U.: Graphentheoretische Modellierung eines automatisierungstechnischen Echtzeitnetzwerks und Algorithmenentwurf zum Kommunikations-Scheduling, Diplomarbeit der Universität Siegen, Fachbereich Mathematik, http://www. uwenowak.de/arbeiten/diplomarbeit.pdf (11.11.07). 5. Alon N.: A Simple Algorithm for Edge-Coloring Bipartite Multigraphs, in: Information Processing Letters 85, Nr. 6, 2003, S. 301-302, ISSN 0020-0190, http: //dx.doi.org/10.1016/s0020-0190(02)00446-5. 6. Scheitlin H., Zuber R.: Kommunizieren Sie pünktlich?, 2003, http://www.edison. ch/uploads/media/kommunizieren_sie_puenktlich.pdf (03.07.07). 7. Popp M.: Das Profinet IO-Buch - Grundlagen und Tipps für Anwender, Hüthig- Verlag, Heidelberg, 2005, ISBN 3-7785-2966-8. 8. Turau V.: Algorithmische Graphentheorie, 2. Auflage, Addison-Wesley Verlag, München, 2004, ISBN 3-4862-0038-0. 9. Brélaz D.: New Methods to Color the Vertices of a Graph, in: Communications of the ACM 22, Nr. 4, 1979, S. 251-256, ISSN 0001-0782, http://dx.doi.org/10. 1145/359094.359101 (15.11.07). 10. Dopatka F., Wismüller R.: A Top-Down Approach for Realtime Industrial-Ethernet Networks using Edge-Coloring of Conflict-Multigraphs, in: IEEE International Symposium on Power Electronics, Electrical Drives, Automation and Motion (SPEE- DAM), Taormina, Italien, 23.-26.05.2006, ISBN 1-4244-0193-3, S. 883-890. 11. Dopatka F.: Ein Framework für echtzeitfähige Ethernet-Netzwerke in der Automatisierungstechnik mit variabler Kompatibilität zu Standard-Ethernet, Dissertation der Universität Siegen, Fachbereich Elektrotechnik und Informatik, 2008, http://dokumentix.ub.uni-siegen.de/opus/volltexte/2008/370/ (27.06.09).