Stand der Technik
-
Der PROFIBUS ist ein in Deutschland und europaweit genormter Feldbus (DIN 19245, EN 50170) [1],
[2], [4]. Seine Definition deckt die physikalische Schicht, die Mediumzugriffs und Sicherungsschicht
sowie die Anwendungsschicht des OSI Referenzmodells ab.
-
Auf der physikalischen Schicht wird u. a. RS-485 eingesetzt, die Topologie entspricht einer Bus- bzw.
Baumtopologie. Das Medium ist, unabhängig von einer Topologie, ein Broadcast-Medium, d. h. alle
Stationen können die gesendeten Signale ohne weiteres empfangen.
-
Auf der Mediumzugriffs-Teilschicht (MAC - Media Access Control) benutzt der PROFIBUS ein
Protokoll mit explizitem Token-Passing über ein Broadcast-Medium. Hierzu werden sogenannte Token-
Telegramme benutzt. Es wird zwischen zwei Typen von Stationen unterschieden: aktive und passive
Stationen. Aktive Stationen können und wollen am Token-Passing teilnehmen, passive nicht. Die
aktiven Stationen sind in einem logischen Ring organisiert (anhand aufsteigender Stationsaddressen),
und das Token wird von Station zu Station innerhalb dieses Ringes weitergereicht. Verbunden mit
dem Tokenbesitz ist die Berechtigung, die Übertragung von Nutz- oder Kontrolldaten zu initiieren.
Jede Station berechnet die Tokenhaltezeit, also die Zeitdauer, die sie nach Token-Empfang Daten
senden und empfangen darf, nach einer modifizierten Variante des Timed-Token-Protokolls.
-
Um aktuelle drahtlose Übertragungstechnik, insbesondere sog. Wireless Local Area Network (WLAN)
Technologie für den PROFIBUS nutzbar zu machen, wurden bisher folgende Ansätze verfolgt:
Ersatz eines Stück Kabels durch eine drahtlose Strecke basierend auf Radio oder Infrarot-
Technologie, während alle PROFIBUS-Stationen weiterhin einen Transceiver (Sende- und
Empfangseinheit, die die physikalische Schicht implementiert) für RS-485 besitzen [3].
Eine PROFIBUS-Station wird mit einem wireless Transceiver ausgestattet, während das MAC-
Protokoll unverändert oder weitgehend unverändert bleibt [3].
-
Aufgrund der speziellen Eigenschaften des drahtlosen Übertragungskanals, insbesondere in den
für WLANs interessanten Frequenzbereichen (2.4 GHz und 5 GHz ISM-Bänder - Industrial,
Scientific and Medical bands), können sehr viele Kanalfehler auftreten. Ursachen hierfür können u. a.
Multipath-Fading, Co- und Adjacent-Channel-Interference, Pfadverlust, und Noise sein [5]. Für den
speziellen Fall eines IEEE 802.11-kompatiblen Direct Sequence Spread Spectrum (DSSS)
Radiomodems/Transceivers konnte durch Messungen in industriellen Umgebungen gezeigt werden, daß
sowohl mit Bitfehlern als auch mit dem Verlust kompletter Pakete gerechnet werden muss, und daß
dieses Verhalten zeitvariabel bzw. burstartig ist [7].
Problem
-
Untersuchungen haben gezeigt, daß für das Token-Passing-Protokoll des PROFIBUS in Umgebungen
mit höheren Bitfehlerraten (≍ 10-4 . . . 10-3) und Paketverlusten (beides aufgrund von Kanalfehlern)
im Bereich von 1% bis 10% mit einem instabilen logischen Ring zu rechnen ist [6], [8]. Durch
fehlerhafte oder verlorene Token-Telegramme können Stationen aus dem logischen Ring verloren gehen,
ohne das sie selber das wollen, und damit auch Gelegenheiten zum Initiieren von Datentransfers
verlieren. So beträgt für ein Szenario von zehn Stationen bei einer Paketverlustrate von 7% (keine
Bitfehler) der Anteil der Zeit, in der nicht alle Stationen Mitglied des logischen Rings sind, mehr als
50% [6]. Herausgefallene Stationen müssen wieder in den Ring aufgenommen werden. Hierzu bietet
der PROFIBUS spezielle Protokollmechanismen, die aber zeitaufwendig sind. Insbesondere können
in dieser Zeit keine Daten übertragen werden. Das ist besonders kritisch für sicherheitskritische
Daten mit Echtzeitanforderungen (z. B. Alarmmeldungen von Maschinen an Steuerungen).
Lösung
-
Dieses Problem wird gelöst durch ein Verfahren zur Kopplung von drahtlosen Segmenten an ein
verdrahtetes PROFIBUS-Netzwerk, die auf der Mediumzugriffs- und Sicherungsschicht arbeitet, und
folgende Eigenschaften hat:
Es wird ein spezielles Kopplungselement verwendet.
Die verdrahteten Stationen bleiben unverändert, insbesondere ihr Protokollstack.
Drahtlose Stationen können mit verdrahteten Stationen Daten austauschen (und umgekehrt).
Die drahtlosen Stationen verwenden ein Zugriffsprotokoll mit zentraler Zugriffssteuerung (durch
Zentralstation). Es findet auf dem drahtlosen Teil keine Übertragung statt, die mit Token-
Passing oder Wartung des logischen PROFIBUS-Rings zusammenhängt.
Die verdrahteten Stationen haben eine Sicht auf den logischen Ring, die alle Stationen,
drahtlose und verdrahtete, unterschiedslos einschließt (Transparenz).
Das Zugriffsprotokoll auf drahtloser Seite greift zur Pflege der LAN-Mitgliedschaft nicht auf
Verfahren zurück, die die permanente und korrekte Übertragung von Verwaltungspaketen
(z. B. Token-Telegrammen) erfordern. Stattdessen kommen Verfahren mit deutlich geringeren
Anforderungen an korrekt übertragene Pakete zur Wartung der LAN-Mitgliedschaft zum
Einsatz. Ein solches Verfahren könnte zum Beispiel die einmalige Registrierung bei der
Zentralstation darstellen. Allerdings wird dieses Verfahren hier nicht weiter spezifiziert.
-
Als zentrales Element der Kopplung wird ein spezielles Kopplungselement verwendet, das im
folgenden als BaseStation/InterWorking-Unit (BS-IWU) bezeichnet wird. Die BS-IWU sorgt dafür, daß:
aktive und passive Stationen sowohl drahtlos als auch verdrahtet sein können,
alle drahtlosen aktiven Stationen von den verdrahteten aktiven Stationen als Mitglieder des
logischen Rings angesehen werden,
verdrahtete Stationen beim Versuch, drahtlose Stationen in den Ring aufzunehmen keinen
Unterschied zu verdrahteten Stationen erkennen,
eine neu eingeschaltete verdrahtete Station, die logisch von einer drahtlosen Station in den
logischen Ring aufgenommen werden müßte, auch tatsächlich in den logischen Ring
aufgenommen wird,
eine Protokollumsetzung auf den Ebenen des Mediumzugriffs- und auch der Sicherungsschicht
vorgenommen wird.
-
Hierzu führt die BS-IWU Funktionen aus, die zum einen die Übertragung von Paketen zwischen
dem drahtlosen und dem verdrahteten Segment ermöglichen (Forwarding), zum anderen den
verdrahteten Stationen das Bild eines vollständig aus verdrahteten Stationen bestehenden logischen
Rings vermitteln (sog. Mimikry-Funktionen).
-
Gleichzeitig ist in die BS-IWU die für das drahtlose Zugriffsprotokoll nötige Funktionalität der
Zentralstation integriert.
Erreichte Vorteile
-
Auf der drahtlosen Seite kann ein Mediumzugriffs- und ggf. auch Sicherungsschicht-Protokoll
verwendet werden, das an die speziellen Verhältnisse der Funkübertragung, insbesondere das Verhalten
in Bezug auf Übertragungsfehler, besser angepaßt ist, als das Token-Passing-Protokoll des
PROFIBUS.
-
Der Verzicht auf Token-Passing und der Ersatz desselben durch andere Mechanismen der Ringmitgliedschafts-
Wartung (z. B. einmalige Registrierung) beseitigt eine mögliche Quelle der Verhinderung von
Datenübertragungen.
Weitere Ausgestaltung der Erfindung
-
Als Nebeneffekt erlaubt die Einführung einer Zentralstation (BS-IWU) für den drahtlosen Teil auch
die Implementierung von Caching-Verfahren, bei denen die BS-IWU anstelle von drahtlosen
Stationen antwortet, etwa wenn diese in ihrem Energieverbrauch beschränkt sind, oder aufgrund von
Kanalstörungen nicht antworten können.
Ausführungsbeispiele
-
Als Ausführungsbeispiel wird im folgenden das Verhalten der BS-IWU für den Fall eines
pollingbasierten Protokolls auf der drahtlosen Seite diskutiert.
-
Beim betrachteten pollingbasierten Protokollen erteilt die Zentralstation/BS-IWU einer drahtlosen
Station a das Senderecht durch Senden eines an a addressierten Polling-Frames. Im Gegensatz zum
Token-Passing-Protokoll verliert a nicht zwangsläufig seine Mitgliedschaft im Ring/LAN, wenn es
auf diesen Frame mehrfach nicht reagiert.
-
Die folgende Beschreibung bezieht sich der vereinfachten Darstellung halber auf den Fall, wo es
eine Anzahl n1 von verdrahteten aktiven Stationen, genau eine BS-IWU und eine Anzahl n2 von
drahtlosen aktiven Stationen gibt. Es wird angenommen, dass
n1 > 0, n2 > 0 und
alle drahtlosen Stationen sind bereits erfolgreich bei der BS-IWU registriert sind.
-
Es wird folgende Notation verwendet:
x, y, z seien PROFIBUS-Adressen von verdrahteten Stationen
a, b, c seien PROFIBUS-Adressen von drahtlosen Stationen
A(t) die Menge der drahtlosen aktiven Stationen zum Zeitpunkt t
P(t) die Menge der drahtlosen passiven Stationen zum Zeitpunkt t
S(t) = A(t) U P(t) die Menge der drahtlosen Stationen zum Zeitpunkt t
Die Funktion Succ(s, t) gibt für den logischen PROFIBUS-Ring den zum Zeitpunkt t gültigen
logischen Nachfolger der Station s an.
Die Funktion Succn(s, t) gibt den n-ten logischen Nachfolger an. Sie ist induktiv wie folgt
definiert:
Succ0(s, t) = s
Succ1(s, t) = Succ(s, t)
Succn(s, t) = Succ(Succn-1 (s, t), t) (n > 1)
MAC-Pakete auf dem verdrahteten Teil werden in Übereinstimmung mit dem PROFIBUS-
Standard als Telegramme bezeichnet, auf dem drahtlosen Teil als Frames.
-
Die BS-IWU führt eine sog. Liste aktiver Stationen (LAS) auf genau die gleiche Art, wie eine aktive
verdrahtete PROFIBUS-Station dies tut: sie inspiziert alle als korrekt empfangenen Token-Telegramme,
und überträgt die dort enthaltenen Sender- und Empfängeraddressen in ihre LAS. Ferner fügt sie
noch die bei ihr registrierten aktiven drahtlosen Stationen (bzw. deren emulierte PROFIBUS-Adressen)
hinzu. Die BS-IWU sendet die LAS zu Informationszwecken periodisch an alle drahtlosen Stationen
(info broadcast).
-
Wenn zum Zeitpunkt t die verdrahtete Station x ein Token-Telegramm an eine drahtlose Station
a ∈ A(t) sendet, wartet x eine kurze Zeit lang (die PROFIBUS-slot-time, TSL), ob auf dem Kabel
Signale/Telegramme auftauchen. Wenn ja, geht x davon aus, dass die Tokenübergabe erfolgreich
war, andernfalls wiederholt x die Tokenweitergabe (maximal drei Versuche). Um x eine erfolgreiche
Tokenweitergabe zu vermitteln, erzeugt die BS-IWU unmittelbar nach dem Token-Telegramm ein
von a an a gerichtetes Telegramm des unbestätigten Datagramm-Dienstes (sog. SDN-Telegramm),
welches keine Daten enthält.
-
Die BS-IWU hat also das Token anstelle von a angenommen. Im nächsten Schritt prüft sie nach, wie
viele unmittelbare Nachfolger von a ebenfalls im drahtlosen Segment liegen, indem sie die Zahl:
n0 = max{n = 0, 1, 2, 3 ,. . . |Succn(a, t) ∈ A(t)}
bildet. Seien a1 = a, a2, . . ., an 0 die Stationen der sog. drahtlosen Kette, und y der logische Nachfolger
von an 0. Die Station y ist eine verdrahtete Station, da n1 > 0 angenommen wurde. Auf der Grundlage
der Anzahl n0 berechnet die BS-IWU eine modifizierte Tokenhaltezeit für die gesamte Kette. Das
hierfür verwendete Schema wird nicht näher spezifiziert.
-
Danach führt die BS-IWU folgende Aktionen durch:
Für i = 2 bis i = n0 werden Token-Telegramme von ai-1 an ai erzeugt. Dies ermöglicht den
verdrahteten Stationen die Vervollständigung ihrer LAS.
-
Es wird zum Ende der berechneten Tokenhaltezeit, oder falls keine der drahtlosen aktiven
Stationen a1 bis an 0 mehr Sendewünsche hat, ein Token-Telegramm von an 0 an y gesendet.
-
Die BS-IWU erteilt während der Tokenhaltezeit nach einem nicht näher spezifizierten Schema
Senderechte an die drahtlosen aktiven Stationen. Falls eine solche Station a einen Datenframe
an eine verdrahtete Station x sendet, erzeugt sie aus dem Frame unmittelbar ein Telegramm
(Forwarding-Funktion). Das Acknlowledgement-Telegramm von x an a wird ebenfalls
geforwardet.
-
Falls eine drahtlose aktive Station a einen Datenframe an eine drahtlose Station b schickt, wird
dieser nicht auf das verdrahtete Segment weitergeleitet. Zur Prävention eines Timeout-Timer-
Ereignisses (siehe unten) bei verdrahteten Stationen erzeugt die BS-IWU SDN-Telegramme von
a1 an a1 mit einer geeigneten minimalen Frequenz.
-
Das PROFIBUS Token-Passing-Protokoll enthält Vorkehrungen zur Behandlung verschiedener
Fehlerfälle. Einer davon ist der Verlust des Tokens durch den Absturz der Station, die gerade im Besitz
des Tokens ist. Jede aktive Station x pflegt einen sog. Timeout Timer, der jedes mal gestartet wird,
wenn eine Telegrammübertragung auf dem verdrahteten Medium endet, und zurückgesetzt wird,
wenn eine neue Übertragung beginnt. Der Timeoutwert, den x benutzt, hängt, abgesehen von
einer Konstanten, linear von x' Stationsaddresse ab. Wenn der Timer abläuft, heißt dies, das auf dem
Medium genau diese Timeoutzeit lang keine Signale aufgetaucht sind. Dieser Zustand wird von
x als Tokenverlust interpretiert, und x "nimmt das Token an sich", d. h. es beginnt sofort mit der
Übertragung eines Telegramms. Dies kann ein Datentelegramm, ein Managementtelegramm oder
das Tokentelegramm sein.
-
Um zu verhindern, daß bei verdrahteten Stationen der Timeout-Timer während der Tokenhaltezeit
der drahtlosen Kette abläuft, muß die BS-IWU hinreichend häufig Signale auf dem verdrahteten
Medium erzeugen, insbesondere wenn nur rein drahtlose Datenübertragungen stattfinden. Hierzu
kann sie die Tokentelegramme von a1 an a2 bis an 0-1 an an 0 heranziehen, Datenübertragungen vom
drahtlosen ins verdrahtete Segment, oder leere SDN-Telegramme von a1 an a1.
-
Die BS-IWU pflegt einen eigenen Timeout-Timer, dessen Timeout-Zeit der drahtlosen aktiven Station
a ∈ A(t) mit der kleinsten numerischen Stationsaddresse entspricht (und deren Timer zuerst
auslaufen würde). Wenn der Timeout-Timer abläuft, nimmt die BS-IWU anstelle von a das Token an, und
verhält sich genauso, als wäre das Token von einer verdrahteten Station x an a geschickt worden.
-
Nach erfolgter Tokenweitergabe von an 0, an y läßt die BS-IWU keine von drahtlosen Stationen
initiierten Datenübertragungen mehr zu, sie unterbricht den Polling-Vorgang. Sie kann allerdings, falls
das Token sich im verdrahteten Teil befindet, und die BS-IWU den Beginn von verdrahteten
Übertragungen hinreichender Länge erkennt (d. h., solchen Übertragungen, in denen weder Quell- noch
Zieladdresse im drahtlosen Teil liegen), die entstehende Zeitlücke für spezielle Übertragungen im
Funksegment nutzen, z. B. für Registrierungs-/Deregistrierungszwecke, Management-Zwecke, info
broadcast, oder zur Durchführung rein drahtloser Datenübertragungen (d. h. solchen
Übertragungen, bei denen ausschließlich drahtlose Stationen beteiligt sind).
-
Im PROFIBUS-Protokoll sind die aktiven, bereits im Ring befindlichen Stationen für die Aufnahme
von neuen aktiven Stationen in den logischen Ring verantwortlich (z. B. nach Neueinschalten einer
Station). Hierfür pflegt jede Station eine als GAPL (gap list) bezeichnete Tabelle, die alle Adressen
enthält, die echt zwischen ihrer eigenen Adresse und der Adresse ihres logischen Nachfolgers im
Ring liegen. Die aktive Station x schickt in konfigurierbaren Zeitabständen an jede in ihrer GAPL
enthaltene Addresse ein spezielles Aufruf-Telegramm (Request-FDL-Status). Wenn sie eine Antwort
von einer aktiven Station y erhält, nimmt sie diese Station in ihre LAS auf, kürzt ihre GAPL
entsprechend und gibt das Token an den neuen Teilnehmer y weiter. Damit ist y in den Ring aufgenommen.
-
Für jede Station a ∈ A(t) pflegt die BS-IWU eine separate GAPL. Die BS-IWU erzeugt nach einem
nicht näher vorgegebenen Prinzip Request-FDL-Status Telegramme, mit denen sie, stellvertretend
für a, neue verdrahtete Stationen in den Ring aufnehmen kann. Diese Telegramme werden erzeugt,
wenn sich das Token logisch im drahtlosen Segment befindet, und können ebenfalls zur Prävention
des Timeout-Timers eingesetzt werden.
-
Verdrahtete Stationen können nicht nur Datentelegramme verschicken, sondern auch Management-
Telegramme, zu denen insbesondere das Request-FDL-Status Telegramm gehört. Falls eine
verdrahtete aktive Station x ein Request-FDL-Status Telegramm an a ∈ S(t) sendet, antwortet die BS-IWU
mit einem korrespondierenden Antworttelegramm. Dieses bezeichnet den Typ von a (aktiv, passiv)
und auch den Bereitschaftsstatus im Falle einer aktiven Station (bereit für den Ring, nicht bereit für
den Ring). Die BS-IWU erhält diese Informationen von den drahtlosen Stationen bereits im Zuge
der Registrierung im Funksegment, trägt sie in eine interne Tabelle ein und beantwortet das
Telegramm aus dieser Tabelle heraus. Drahtlose aktive Stationen werden nach ihrer Registrierung stets
als bereit für den Ring angesehen. Ein ganz ähnliches Vorgehen kommt in dem Fall zum Tragen,
dass eine verdrahtete aktive Station ein Request-Ident-With-Reply Telegramm an eine drahtlose
Station sendet. Mit diesem Telegramm werden statische Informationen zu einer Station abgefragt, etwa
Herstellername (Vendor), Produktidentifikation usw. Die diesbezüglichen Daten über eine drahtlose
Station erhält die BS-IWU ebenfalls im Zuge der Registrierung, und speichert sie in einer Tabelle.
Das Antworttelegramm wird aus dieser Tabelle heraus erzeugt.
-
Falls A(t) leer ist, beschränkt sich die BS-IWU auf die Forwarding-Funktion.
-
Die Forwarding-Funktion sorgt für den Transfer von Telegrammen auf dem verdrahteten Segment
auf das drahtlose Segment, wo korrespondierende Frames erscheinen. Dies ist z. B. bei Datentransfers
der Fall, die Daten- und Acknowledgement Frames- oder Telegramme von einer drahtlosen/verdrahteten
zu einer verdrahteten/drahtlosen Station einbeziehen. Es ist dabei nicht festgelegt, ob das
Forwarding als Cut-Through-Forwarding oder als Store-and-Forward ausgelegt wird. Aus
Geschwindigkeitsgründen ist aber Cut-Through-Forwarding vorzuziehen.
-
Es werden generell nur solche Telegramme geforwardet, die einen drahtlosen Empfänger haben oder
an eine Mehrfachadresse (Broadcast, Multicast) gehen.
-
Es werden generell nur solche Frames geforwardet, die einen verdrahteten Empfänger haben oder
an eine Mehrfachaddresse gehen.
-
Zur Mobilitätsunterstützung kann die BS-IWU auch Registrierungen und Deregistrierungen von
anderen BS-IWU's annehmen (Handover). Das Netzwerk, welches die BS-IWU's untereinander
benutzen, ist nicht näher spezifiziert.
Literatur
[1] DIN - Deutsches Institut für Normung, Beuth Verlag Berlin. DIN 19245 Teil 1 - PROFIB US:
Übertragungstechnik, Buszugriffs- und Übertragungsprotokoll, Dienstschnittstelle zur Anwendungsschicht,
Management, April 1991.
[2] DIN - Deutsches Institut für Normung, Beuth Verlag Berlin. DIN 19245 Teil 2 - PROFIBUS:
Kommunikationsmodell, Dienste für die Anwendung, Protokoll, Syntax, Codierung, Schnittstelle zur
Schicht 2, Management, April 1991.
[3] Projektkonsortium Funbus. Das verbundprojekt drahtlose feldbusse im produktionsumfeld
(funbus) - abschlußbericht. INTERBUS Club Deutschland e.V, Postf. 1108, 32817 Blomberg,
Bestell-Nr. TNR 5121324, October 2000. http:/ / www.softing.de/d/NEWS/Funbusbericht.pdf.
[4] Union Technique de 1'Electricite. General Purpose Field Communication System, EN 50170, Volume
2: PROFIBUS, 1996.
[5] Bernhard Walke. Mobilfunknetze und ihre Protokolle, Band 1. Informationstechnik. B. G. Teubner,
Stuttgart, 1998.
[6] Andreas Willig. Analysis of the PROFIBUS Token Passing Protocol over Wireless Links. In 2002
IEEE International Symposium on Industrial Electronics, 2002. submitted.
[7] Andreas Willig, Martin Kubisch, Christian Hoene, and Adam Wolisz. Measurements of a
Wireless Link in an Industrial Environment using an IEEE 802.11-Compliant Physical Layer. IEEE
Transactions on Industrial Electronics, 2001. accepted for publication.
[8] Andreas Willig and Adam Wolisz. Ring Stability of the PROFIBUS Token Passing Protocol over
Error Prone Links. IEEE Transactions on Industrial Electronics, 48(5): 1025-1033, October 2001.