-
In
der Automatisierungstechnik, insbesondere in sicherheitskritischen
Anwendungen, ist die Synchronität
verteilter Prozesse von größter, Wichtigkeit und
muss unter harten Industriebedingungen stets gegeben sein. Je höher die
von einem Prozess geforderte Präzision
ist, desto genauer muss die Zeitinformation in den Automatisierungssystemen
abgestimmt sein. In marktgängigen
Realzeitsystemen können
die lokalen Uhren verteilt angeordneter Rechnerknoten aber nur sehr
ungenau mittels programmtechnisch implementierter Funktionen oder
relativ teuer durch in jedem Knoten installierte Funkuhren miteinander
synchronisiert werden. Da der Aufwand für die genaue Zeitsynchronisation
nicht nur teuer, sondern in den meisten Fällen auch sehr hoch ist, versucht
man heutzutage sehr oft, das Problem der Synchronisierung durch
leistungsstarke Feldbussysteme mit Hilfe ihrer Geschwindigkeit zu
lösen.
Da konventionelle Bussysteme für
die Mehrzahl aller Anwendungen ausreichten, wurde von der Industrie kein
großes
Bedürfnis
an neuen Synchronisationstechniken entwickelt.
-
Bisher
versuchte man die Synchronisation von Automatisierungsanlagen auf
verschiedene Arten zu lösen.
So sind in diesem Bereich sowohl geräte- als auch programmtechnische
Lösungen
entstanden, welche aber bedingt durch ihre Nachteile nicht überall einsetzbar
sind.
-
Aus
den Veröffentlichungen
von ERDNER, T.[u.a.]: A fault tolerant and jitter free dual ring
fieldbus system with GPS based time synchronisation. In: Proceedings
of IFAC Conference on New Technologies for Computer Control, NTCC
2001, Hong Kong 2001, S. 159-164 und ERDNER, T. [u.a.]: Eine Feldbusarchitektur
mit GPS-synchronisierten Zeitgebern. In: Elektrotechnik und Informationstechnik,
117. Jahrg., 2000, Heft 5, S. 349-352 sowie den Schriften
DE 199 17 354 A1 und
JP 61-6954 A sind z.B. Verfahren zur Synchronisation der lokalen
Uhren in Doppelringbus-Systemen bekannt.
-
Weiterhin
ist aus der
DE 30 45
315 A1 ein Verfahren zur Umschaltung der Telegrammlaufrichtung
in einem Einzelringbussystem bekannt.
-
Die
Nachteile der programmtechnischen Lösungen liegen in der Regel
im erhöhten
Rechenaufwand für
die Synchronisierungen. Dieser Aufwand muss durch die Prozessoren
in den Steuerungen erbracht werden und vermindert somit die effektive Leistung
der Systeme.
-
Gerätetechnische
Lösungen
sind im Bereich der Synchronisation von Automatisierungsanlagen relativ
teuer und auch sehr aufwändig.
Eine Variante der gerätetechnischen
Lösungen
sind sehr genaue Zeitgeberbausteine, welche in verteilten Steuerungskomponenten
integriert werden. Dieses Verfahren benötigt genau wie eine programmtechnische
Lösung
zusätzliche Übertragungskapazitäten des
Feldbusses für
die Synchronisationsdaten der Zeitgeber. Diese Übertragungskapazitäten belasten
den meist stark in Anspruch genommenen Feldbus zusätzlich durch
ihre speziellen Quittierungssequenzen [4].
-
Eine
andere Möglichkeit
der gerätetechnischen
Lösung
besteht darin, in jeden Knoten hochgenaue Funkuhren zu integrieren.
Allerdings liegt das Problem der Funkuhren bei den hochsensiblen
Empfängern,
welche sich in elektromagnetisch stark verseuchten Umgebungen nur
mit speziellen externen Antennen betreiben lassen. Da jeder Knoten
eine eigene Funkuhr benötigt,
sind die Kosten für
ein System mit vielen Steuerungskomponenten entsprechend hoch.
-
Eine
weitere Einschränkung
im Bereich der Feldbussysteme ist die Laufzeit der Programme zur Bearbeitung
von Telegrammen. In der Regel wird diese Zeit nicht oder sehr unzuverlässig [5]
angegeben, zudem ist sie vom verwendeten Prozessor abhängig. Diese
Zeit muss in bestehenden Feldbussystemen messtechnisch ermittelt
werden.
-
Zusätzliche
Probleme gibt es bei der Bestimmung der Zykluszeit durch die Wärmeabhängigkeit von
Halbleiterbauelementen [3]. Da Halbleiter ihre Eigenschaften unter
Temperatureinflüssen
sehr stark ändern
können,
ist besonders in industriellen Umgebungen keine exakte Bestimmung
von Signallaufzeiten über
längere
Zeiträume
hinweg möglich.
Desweiteren kommen speziell in Senderbaugruppen kurzzeitige Änderungen
der Zykluszeit (Jitter) [1] [2] hinzu, welche durch die Prozessoren
und die implementierten Programme bedingt sind. Aus diesen Gründen ist
es kaum möglich,
eine wirklich exakte Aussage über
die Übertragungszeit
eines bestehenden Feldbussystems zu machen. Das Bestreben, besonders in
sicherheitskritischen Anwendungen eine völlige Determiniertheit zu erreichen,
ist daher mit den bislang entwickelten Systemen kaum zu realisieren.
-
Eine
Verbesserung in Hinsicht auf die Realzeitfähigkeit stellen folgende Lösungen für Einzel- und
Doppelringbussysteme dar. Da die Telegramme zur Laufzeitmessung
beide Ringbusse gegensinnig durchlaufen müssen, sind für jedes
der beiden Verfahren spezielle Anforderungen nötig.
-
Ein
Einzelringbus (1) benötigt zur Ermittlung der Datenübertragungszeiten
in den Empfängern
sowie auch im Sender Senderichtungsumschalter (3).
Die Senderichtungsumschalter ermöglichen
die bidirektionale Telegrammübertragung auf
dem Einzelringbus. Zur Umschaltung der Übertragungsrichtung werden
bei der Übertragungszeitmessung
spezielle Zeitinitialisierungstelegramme eingesetzt, welche die
Senderichtungsumschalter in den Empfängern anweisen, die Senderichtung
nach Empfang eines Zeitinitialisierungstelegramms umzuschalten.
Somit wird nach Durchlauf des ersten Teils der Übertragungszeitmessung auf
dem ganzen Einzelringbus die Übertragungsrichtung
gewechselt und der zweite, gegensinnige Teil der Übertragungszeitmessung
wird gestartet. Nach Abschluss beider Übertragungszeitmessungen kann
der Einzelringbus für
die Übertragung üblicher
Nutzdaten in einer festen Übertragungsrichtung
verharren, da die Umschaltung nur für die Übertragungszeitmessung benötigt wird.
-
Im
Gegensatz zu einem Einzelringbus benötigt ein Doppelringbus (2)
keine Senderichtungsumschalter. Der hier betrachtete Doppelring
besteht aus zwei gleichartigen, voneinander unabhängig aufgebauten
Datenkanälen
(Kanal 1 und Kanal 2), über
die gegenläufig
die gleichen Nachrichten gesendet werden. Zur Zeitmessung müssen daher
diese beiden Datenkanäle
vollkommen identisch sein, d.h. ein bestimmtes Signal muss auf beiden
Kanälen die
gleiche Übertragungszeit
erfordern. Die Einhaltung dieser Bedingung kann während des
Betriebes vom Sendemodul durch Vergleichsmessungen auf beiden Kanälen überprüft werden.
Um die Übertragungszeiten
von Sender zu den entsprechenden Empfängern auf beiden Ringbussystemen
bestimmen zu können,
müssen
lediglich die Kanalumlaufzeit TUK und die
Differenzzeit des jeweiligen Empfängers ΔTSi beim
Ein zelringbus bzw. die Kanalumlaufzeit TUKD und
die Differenzzeit des jeweiligen Empfängers ΔTSiD beim
Doppelringbus im Sendebetrieb ermittelt werden.
-
Die
Kanalumlaufzeit wird bei beiden Verfahren im Sender gemessen und
um fasst die Zeit, welche ein Telegramm zum Durchlauf des ganzen
Ringes benötigt.
Die Differenzzeiten in den Empfängern werden
aus der Differenz der Telegrammempfangszeiten von Telegramm 1 und
Telegramm 2 beim Einzelringbus bzw. der Differenz der Telegrammempfangszeiten über Kanal
1 und Kanal 2 beim Doppelringbus ermittelt. Diese Messaufgaben lassen
sich sehr einfach. durch Zählerbausteine
in den Sende- und Empfangsmodulen lösen.
-
Die
ermittelten Differenzzeiten ΔTSi bzw. ΔTSiD werden von den Empfängern zum Sender übertragen
und im Sender zwischengespeichert. Dort lassen sich aus der Kanalumlaufzeit
und den gespeicherten Differenzzeiten die spezifischen Übertragungszeiten
TT1Si und T2aSi (s.
Gl. (1) u. (2)) für
den Einzelringbus bzw. TK1SiD und TK2SiD (s. Gl. (3) u. (4)) für den Doppelringbus
vom Sender zu den entsprechenden Empfängern ermitteln.
-
Mittels
der spezifischen Übertragungszeiten ist
der Sender nach Übertragung
der Differenzzeiten in der Lage, die Versatzzeiten für die Uhrensynchronisation
zu bestimmen und zu addieren. Zur Bestimmung der empfängerspezifischen
Versatzzeiten müssen
lediglich die aufgelaufenen Zählerwerte
mit der zeitlichen Auflösung
der Zählers
multipliziert werden. Aus diesem Grund ist die Genauigkeit der ein- zustellenden
Zeit lediglich von der Auflösung
der Zählerbausteine
im Sender und in den Empfängern abhängig. Zur
Synchronisation wird die einzustellende Zeit mit dem entsprechenden
Versatz addiert und an die Empfänger
gesendet.
-
Zur
Ermittlung der absoluten Zeit benötigt man aus diesem Grund nur
ein Funkuhrmodul [6] in der Senderbaugruppe. Ausgehend von dieser
Referenzzeit können
alle Empfänger
mit der Genauigkeit der Zählerbausteine
eingestellt werden. Somit werden nicht nur Kosten für die Funkuhrmodule
gespart, sondern auch aufwändige
externe Antennenbauten vermieden. Daraus folgend erhöht sich
der Vorteil der Einsparung mit steigender Anzahl der Empfängermodule:
-
Desweiteren
kann die Übertragungszeit
vom Sender zu den Empfängern
permanent und kontinuierlich im Sendebetrieb überprüft und gegebenfalls bei eventu
ellen Abweichungen korrigiert werden. Somit können temperaturabhängige Laufzeitänderungen
nicht nur kompensiert, sondern letztendlich auch ausgeschlossen
werden.
-
Schließlich ist
der Sender durch Kenntnis der Übertragungszeit
in der Lage, selbständig
die Sendezeiten der Telegramme für
Protokollfunktionen zu erzeugen, ohne die Sendezeiten der Empfänger übertragen
bekommen zu müssen.
Somit wird das Bussystem zusätzlich
von der Übertragung
der Sendezeiten entlastet.
-
Literatur
-
- [1] Byrne, C.J., Karafin, B.J., and Robinson, D.B., Jr.:Systematic
Jitter in a Chain of Digital Regenerators. The Bell Systems Technical
Journal, Nov. 1963.
- [2] Otis K.: Jitter Accumulation in Token Ring UTP Networks.
Chipcom, IEEE 802.5N/91/7-09
- [3] Popp, Alois V.: Low-Cost-Netzwerkkonzept, Der Physical Layer
des CAN-Busses. Hallwag AG, Handbuch der Automatisierungstechnik – Ausgabe 1996/97,
1996
- [4] Riegelmager, Wolfgang P.: Verkabelungskonzepte, Grundlagen
und Praxis, Vogel Buchverlag, 1. Aufl., 1995
- [5] Schwager, Jürgen:
Auswahlkriterien für
Feldbusse. Ludwig Drebinger GmbH, iNet '92 – Conference Proceedings,
1992
- [6] Sterzbach, B.: GPS-based Clock Synchronization in a Mobile,
Distributed Real-Time System. Real-Time Systems 12, 1, 63 – 75, 1997