Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR TIME SYNCHRONIZATION IN AN ETHERNET-BASED NETWORK
Document Type and Number:
WIPO Patent Application WO/2021/058247
Kind Code:
A1
Abstract:
The invention relates to a method for time synchronization in an Ethernet-based network, which has at least one master network subscriber and one slave network subscriber, which method comprises steps for the sending out of a first telegram by the master network subscriber, the slave network subscriber receiving the first telegram at a first reception time value of a local system time of the slave network subscriber and storing the first receiving time value; for the reading out of the first reception time value by the master network; for the sending out of a second telegram by the master network subscriber, the slave network subscriber receiving the second telegram at a second reception time value of the local system time of the slave network subscriber and storing the second reception time value; for the reading out of the second reception time value by the master network subscriber; for the calculation of a speed parameter of the local system time of the slave network subscriber from the reception time values by the master network subscriber; and for the transfer of the speed parameter to the slave network subscriber.

Inventors:
BÜTTNER HOLGER (DE)
JANSSEN DIRK (DE)
VONNAHME ERIK (DE)
BECKHOFF HANS (DE)
RETTIG THOMAS (DE)
BUNTE THORSTEN (DE)
BECKHOFF JOHANNES (DE)
BECKMANN GUIDO (DE)
WEBER KARL (DE)
Application Number:
PCT/EP2020/074545
Publication Date:
April 01, 2021
Filing Date:
September 03, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BECKHOFF AUTOMATION GMBH (DE)
International Classes:
H04L12/40; H04J3/06
Foreign References:
US20110170534A12011-07-14
US20180227068A12018-08-09
DE102019125529A2019-09-23
US20170346588A12017-11-30
US20170195109A12017-07-06
Other References:
HYUNTAE CHO ET AL: "Implementation of a PTP Bridge to Extend IEEE 1588 to Zigbee Networks", COMPUTER AND INFORMATION TECHNOLOGY (CIT), 2010 IEEE 10TH INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 29 June 2010 (2010-06-29), pages 2604 - 2611, XP031757844, ISBN: 978-1-4244-7547-6
Attorney, Agent or Firm:
PATENTANWALTSKANZLEI WILHELM & BECK (DE)
Download PDF:
Claims:
Ansprüche

1. Verfahren zur Zeitsynchronisation in einem Ethernet-basierten Netzwerk (10), wobei das Netzwerk (10) zumindest einen Master-Netzwerkteilnehmer (100) und ei nen Slave-Netzwerkteilnehmer (200, 201) aufweist, wobei das Verfahren die folgenden Schritte umfasst:

- Aussenden eines ersten Telegramms (410) durch den Master-Netzwerkteilnehmer

(100), wobei der Slave-Netzwerkteilnehmer (200, 201) das erste Telegramm (410) zu ei nem ersten Empfangszeitwert (511) einer lokalen Systemzeit (210) des Slave-Netz werkteilnehmers (200, 201) empfängt und den ersten Empfangszeitwert (511) ab speichert;

- Auslesen des ersten Empfangszeitwerts (511) durch den Master-Netzwerkteilneh mer (100);

- Aussenden eines zweiten Telegramms (420) durch den Master-Netzwerkteilneh mer (100), wobei der Slave-Netzwerkteilnehmer (200, 201) das zweite Telegramm (420) zu ei nem zweiten Empfangszeitwert (512) der lokalen Systemzeit (210) des Slave-Netz werkteilnehmers (200, 201) empfängt und den zweiten Empfangszeitwert (512) ab speichert;

- Auslesen des zweiten Empfangszeitwerts (512) durch den Master-Netzwerkteil nehmer (100);

- Berechnen eines Geschwindigkeitsparameters (230) der lokalen Systemzeit (210) des Slave-Netzwerkteilnehmers (200, 201) unter Verwendung des ersten Emp fangszeitwerts (511) und des zweiten Empfangszeitwerts (512) durch den Master- Netzwerkteilnehmer (100);

- Übertragen des Geschwindigkeitsparameters (230) an den Slave-Netzwerkteilneh mer (200, 201).

2. Verfahren gemäß Anspruch 1 , wobei das Netzwerk (10) einen Referenzzeitgeber (300) aufweist, wobei der Referenzzeitgeber (300) das erste Telegramm (410) zu einem ersten Re ferenzzeitwert (531) einer lokalen Systemzeit (210) des Referenzzeitgebers (300) empfängt und den ersten Referenzzeitwert (531) abspeichert, wobei der erste Referenzzeitwert (531) durch den Master-Netzwerkteilnehmer (100) ausgelesen wird, wobei der Referenzzeitgeber (300) das zweite Telegramm (420) zu einem zweiten Referenzzeitwert (532) der lokalen Systemzeit (210) des Referenzzeitgebers (300) empfängt und den zweiten Referenzzeitwert (532) abspeichert, wobei der zweite Referenzzeitwert (532) durch den Master-Netzwerkteilnehmer (100) ausgelesen wird, wobei der Geschwindigkeitsparameter (230) aus den Empfangszeitwerten (511,

512) und den Referenzzeitwerten (531, 532) berechnet wird.

3. Verfahren gemäß Anspruch 1 , wobei der Master-Netzwerkteilnehmer (100) das erste Telegramm (410) zu einem ersten Referenzzeitwert (531) einer Systemzeit (110) des Master-Netzwerkteilneh mers (100) aussendet, wobei der Master-Netzwerkteilnehmer (100) das zweite Telegramm (420) zu einem zweiten Referenzzeitwert (532) der Systemzeit (110) des Master-Netzwerkteilneh mers (100) aussendet, wobei der Geschwindigkeitsparameter (230) aus den Empfangszeitwerten (511,

512) und den Referenzzeitwerten (531, 532) berechnet wird.

4. Verfahren gemäß einem der vorhergehenden Ansprüche, wobei der Master-Netzwerkteilnehmer (100) eine Referenzzeitdifferenz (530) als Dif ferenz zwischen dem ersten Referenzzeitwert (531) und dem zweiten Referenzzeit wert (532) berechnet und eine Empfangszeitdifferenz (510) als Differenz zwischen dem ersten Empfangszeitwert (511) und dem zweiten Empfangszeitwert (512) be rechnet, wobei der Master-Netzwerkteilnehmer (100) den Geschwindigkeitsparameter (230) aus der Referenzzeitdifferenz (530) und der Empfangszeitdifferenz (510) berechnet.

5. Verfahren gemäß einem der vorhergehenden Ansprüche, wobei das Netzwerk (10) einen weiteren Slave-Netzwerkteilnehmer (200, 202) auf weist, wobei der weitere Slave-Netzwerkteilnehmer (200, 202) das erste Telegramm (410) zu einem weiteren ersten Empfangszeitwert (521) einer lokalen Systemzeit (210) des weiteren Slave-Netzwerkteilnehmers (200, 202) empfängt und den weiteren ers ten Empfangszeitwert (521) abspeichert, wobei der weitere erste Empfangszeitwert (521) durch den Master-Netzwerkteilneh mer (100) ausgelesen wird, wobei der weitere Slave-Netzwerkteilnehmer (200, 202) das zweite Telegramm (420) zu einem weiteren zweiten Empfangszeitwert (522) der lokalen Systemzeit (210) des weiteren Slave-Netzwerkteilnehmers (200, 202) empfängt und den weite ren zweiten Empfangszeitwert (522) abspeichert, wobei der weitere zweite Empfangszeitwert (522) durch den Master-Netzwerkteil nehmer (100) ausgelesen wird, wobei der Master-Netzwerkteilnehmer (100) einen weiteren Geschwindigkeitspara meter (230) der lokalen Systemzeit (210) des weiteren Slave-Netzwerkteilnehmers (200, 202) aus den weiteren Empfangszeitwerten (521, 522) berechnet, wobei der weitere Geschwindigkeitsparameter (230) an den weiteren Slave-Netz werkteilnehmer (200, 202) übertragen wird.

6. Verfahren gemäß einem der vorhergehenden Ansprüche, wobei das zweite Telegramm (420) zwischen 0,1 Sekunden und 10 Sekunden nach dem ersten Telegramm (410) ausgesendet wird, bevorzugt zwischen 0,2 Sekunden und 5 Sekunden nach dem ersten Telegramm (410).

7. Verfahren gemäß einem der vorhergehenden Ansprüche, wobei das Auslesen des ersten Empfangszeitwerts (511) durch Aussenden eines ersten Auslese-Telegramms (415) durch den Master-Netzwerkteilnehmer (100) er folgt, wobei das Auslesen des zweiten Empfangszeitwerts (512) durch Aussenden eines zweiten Auslese-Telegramms (425) durch den Master-Netzwerkteilnehmer (100) er folgt.

8. Verfahren gemäß einem der vorhergehenden Ansprüche, wobei das Übertragen des Geschwindigkeitsparameters (230) durch Aussenden ei nes Übertragungs-Telegramms (430) durch den Master-Netzwerkteilnehmer (100) erfolgt. 9. Verfahren gemäß einem der vorhergehenden Ansprüche, wobei das Verfahren während einer Initialisierung des Netzwerks (10) durchgeführt wird.

10. Verfahren gemäß einem der vorhergehenden Ansprüche, wobei der Geschwindigkeitsparameter (230) in einem nicht-flüchtigen Datenspeicher (120) des Master-Netzwerkteilnehmers (100) hinterlegt wird. 11. Verfahren gemäß einem der vorhergehenden Ansprüche, wobei das Netzwerk (10) ein EtherCAT-Netzwerk ist.

Description:
Beschreibung

Verfahren zur Zeitsynchronisation in einem Ethernet-basierten Netzwerk

Die vorliegende Erfindung betrifft ein Verfahren zur Zeitsynchronisation in einem Ethernet- basierten Netzwerk.

Diese Patentanmeldung beansprucht die Priorität der deutschen Patentanmeldung DE 10 2019 125 529.5, deren Offenbarungsgehalt hiermit durch Rückbezug aufgenommen wird.

Datennetzwerke sind aus dem Stand der Technik bekannt. Kabelgebundene Datennetz werke nach dem Stand der Technik basieren häufig auf dem Ethernet-Standard. Unter dem Oberbegriff „Industrial Ethernet“ ist es im Stand der Technik bekannt, Ethernet-Da- tennetzwerke zur Vernetzung von Geräten in der industriellen Fertigung und der Automati sierungstechnik zu nutzen. Solche Datennetzwerke können beispielsweise auf dem Ether- CAT-Standard basieren. Solche Datennetzwerke können auch als Feldbus bezeichnet werden.

Für bestimmte Steuerungsaufgaben ist es notwendig, dass alle an dieser Steuerungsauf gabe beteiligten und über einen Feldbus vernetzten Geräte dieselbe Uhrzeit benutzen. Dabei kann beispielsweise gefordert sein, dass die Uhrzeiten der einzelnen Geräte um maximal 1 ps voneinander abweichen sollen. Um dies zu gewährleisten, ist es bekannt, bei Feldbussen eine zyklische Zeitsynchronisation durchzuführen.

Bei Ethernet-basierten Netzwerken mit Zeitsynchronisation nach dem Stand der Technik ist es bekannt, während einer Initialisierungsphase des Netzwerks eine Vielzahl von meh reren tausend Synchronisationsschritten durchzuführen, um die Ganggeschwindigkeiten der Zeitgeber der einzelnen Teilnehmer des Netzwerks im Sinne einer Regelung an eine vorgegebene Referenz anzugleichen.

Die US 2017/0346588 A1 beschreibt ein Verfahren zur Synchronisation der Uhren von Netzwerkteilnehmern, die jeweils mindestens eine Uhr aufweisen. Die Synchronisation er folgt mittels mehrerer Synchronisationsnachrichten.

Die US 2017/0195109 A1 beschreibt ein Verfahren zur Uhrensynchronisation, bei dem ein Uhrenversatz auf Grundlage gemessener Übertragungs- und Empfangszeiten ermittelt wird. Eine Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren zur Zeitsynchroni sation in einem Ethernet-basierten Netzwerk anzugeben. Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des unabhängigen Patentanspruchs gelöst. In den abhängi gen Ansprüchen sind verschiedene Weiterbildungen angegeben.

Ein Verfahren zur Zeitsynchronisation in einem Ethernet-basierten Netzwerk, das zumin dest einen Master-Netzwerkteilnehmer und einen Slave-Netzwerkteilnehmer aufweist, umfasst Schritte zum Aussenden eines ersten Telegramms durch den Master-Netzwerk teilnehmer, wobei der Slave-Netzwerkteilnehmer das erste Telegramm zu einem ersten Empfangszeitwert einer lokalen Systemzeit des Slave-Netzwerkteilnehmers empfängt und den ersten Empfangszeitwert abspeichert, zum Auslesen des ersten Empfangszeitwerts durch den Master-Netzwerkteilnehmer, zum Aussenden eines zweiten Telegramms durch den Master-Netzwerkteilnehmer, wobei der Slave-Netzwerkteilnehmer das zweite Tele gramm zu einem zweiten Empfangszeitwert der lokalen Systemzeit des Slave-Netzwerk teilnehmers empfängt und den zweiten Empfangszeitwert abspeichert, zum Auslesen des zweiten Empfangszeitwerts durch den Master-Netzwerkteilnehmer, zum Berechnen eines Geschwindigkeitsparameters der lokalen Systemzeit des Slave-Netzwerkteilnehmers aus den Empfangszeitwerten durch den Master-Netzwerkteilnehmer und zum Übertragen des Geschwindigkeitsparameters an den Slave-Netzwerkteilnehmer.

Vorteilhafterweise erlaubt dieses Verfahren eine direkte Messung einer Gangabweichung der lokalen Systemzeit des Slave-Netzwerkteilnehmers und dadurch eine direkte und sehr genaue Anpassung der Ganggeschwindigkeit der lokalen Systemzeit des Slave-Netz werkteilnehmers. Dadurch ermöglicht das Verfahren vorteilhafterweise eine sehr schnelle Korrektur einer Gangabweichung der lokalen Systemzeit des Slave-Netzwerkteilnehmers.

In einer Ausführungsform des Verfahrens weist das Netzwerk einen Referenzzeitgeber auf. Dabei empfängt der Referenzzeitgeber das erste Telegramm zu einem ersten Refe renzzeitwert einer lokalen Systemzeit des Referenzzeitgebers und speichert den ersten Referenzzeitwert ab. Der erste Referenzzeitwert wird durch den Master-Netzwerkteilneh mer ausgelesen. Der Referenzzeitgeber empfängt das zweite Telegramm zu einem zwei ten Referenzzeitwert der lokalen Systemzeit des Referenzzeitgebers und speichert den zweiten Referenzzeitwert ab. Auch der zweite Referenzzeitwert wird durch den Master- Netzwerkteilnehmer ausgelesen. Anschließend wird der Geschwindigkeitsparameter aus dem ersten und zweiten Empfangszeitwert und dem ersten und zweiten Referenzzeitwert berechnet. Liegen die Empfangszeitwerte weiter auseinander als die Referenzzeitwerte, so läuft die lokale Systemzeit des Slave-Netzwerkteilnehmers zu schnell ab. Ist die Diffe renz zwischen den Empfangszeitwerten kleiner als die Differenz zwischen den Referenz zeitwerten, so läuft die lokale Systemzeit des Slave-Netzwerkteilnehmers zu langsam ab. Als Referenzzeitgeber des Netzwerks kann beispielsweise ein Slave-Netzwerkteilnehmer des Netzwerks fungieren, insbesondere beispielsweise der erste Slave-Netzwerkteilneh mer in dem Netzwerk.

In einer anderen Ausführungsform des Verfahrens sendet der Master-Netzwerkteilnehmer das erste Telegramm zu einem ersten Referenzzeitwert einer Systemzeit des Master- Netzwerkteilnehmers aus. Das zweite Telegramm sendet der Master-Netzwerkteilnehmer zu einem zweiten Referenzzeitwert der Systemzeit des Master-Netzwerkteilnehmers aus. Dabei wird der Geschwindigkeitsparameter aus den Empfangszeitwerten und den Refe renzzeitwerten berechnet. In dieser Ausführungsform fungiert der Master-Netzwerkteil nehmer selbst als Referenzzeitgeber des Netzwerks.

In einer Ausführungsform des Verfahrens berechnet der Master-Netzwerkteilnehmer eine Referenzzeitdifferenz als Differenz zwischen dem ersten Referenzzeitwert und dem zwei ten Referenzzeitwert und eine Empfangszeitdifferenz als Differenz zwischen dem ersten Empfangszeitwert und dem zweiten Empfangszeitwert. Dabei berechnet der Master-Netz werkteilnehmer den Geschwindigkeitsparameter aus der Referenzzeitdifferenz und der Empfangszeitdifferenz. Vorteilhafterweise kann durch einen Vergleich der Referenzzeitdif ferenz und der Empfangszeitdifferenz nicht nur festgestellt werden, ob die lokale System zeit des Slave-Netzwerkteilnehmers zu schnell oder zu langsam abläuft. Es kann auch di rekt berechnet werden, um welchen Faktor die Ganggeschwindigkeit der lokalen System zeit von dem gewünschten Sollwert abweicht. Dies ermöglicht vorteilhafterweise eine di rekte und sehr genaue Korrektur der Ganggeschwindigkeit der lokalen Systemzeit des Slave-Netzwerkteilnehmers.

In einer Ausführungsform des Verfahrens weist das Netzwerk einen weiteren Slave-Netz werkteilnehmer auf. Der weitere Slave-Netzwerkteilnehmer empfängt das erste Tele gramm zu einem weiteren ersten Empfangszeitwert einer lokalen Systemzeit des weiteren Slave-Netzwerkteilnehmers und speichert den weiteren ersten Empfangszeitwert ab. Der weitere erste Empfangszeitwert wird durch den Master-Netzwerkteilnehmer ausgelesen. Das zweite Telegramm empfängt der weitere Slave-Netzwerkteilnehmer zu einem weite ren zweiten Empfangszeitwert der lokalen Systemzeit des weiteren Slave-Netzwerkteil nehmers und speichert den weiteren zweiten Empfangszeitwert ab. Auch der weitere zweite Empfangszeitwert wird durch den Master-Netzwerkteilnehmer ausgelesen. Dann berechnet der Master-Netzwerkteilnehmer einen weiteren Geschwindigkeitsparameter der lokalen Systemzeit des weiteren Slave-Netzwerkteilnehmers aus den weiteren Empfangs zeitwerten und überträgt den weiteren Geschwindigkeitsparameter an den weiteren Slave- Netzwerkteilnehmer. Damit ermöglicht das Verfahren vorteilhafterweise auch eine Korrek tur der Ganggeschwindigkeit der lokalen Systemzeit des weiteren Slave-Netzwerkteilneh mers. Auf analoge Weise kann das Verfahren auch noch für eine Mehrzahl weiterer Slave-Netzwerkteilnehmer des Netzwerks durchgeführt werden. Ein besonderer Vorteil liegt darin, dass die Aufzeichnung der jeweiligen ersten Empfangszeitwerte und zweiten Empfangszeitwerte für eine Mehrzahl von Slave-Netzwerkteilnehmern gemeinsam durch das erste Telegramm und das zweite Telegramm angestoßen werden kann. Dadurch lässt sich das Verfahren vorteilhafterweise besonders schnell und mit besonders gerin gem Aufwand durchführen.

In einer Ausführungsform des Verfahrens wird das zweite Telegramm zwischen 0,1 Se kunden und 10 Sekunden nach dem ersten Telegramm ausgesendet, bevorzugt zwischen 0,2 Sekunden und 5 Sekunden nach dem ersten Telegramm. Dadurch wird vorteilhafter weise sichergestellt, dass sich eine eventuelle Gangabweichung der lokalen Systemzeit des Slave-Netzwerkteilnehmers ausreichend stark auf die Zeitdifferenz zwischen dem ers ten Empfangszeitwert und dem zweiten Empfangszeitwert auswirkt, um eine genaue Kor rektur der Ganggeschwindigkeit der lokalen Systemzeit des Slave-Netzwerkteilnehmers zu ermöglichen. Gleichzeitig ist die zwischen dem Aussenden des ersten Telegramms und des zweiten Telegramms vergehende Zeit bei diesem Verfahren ausreichend kurz, um eine schnelle Initialisierung des Netzwerks zu ermöglichen.

In einer Ausführungsform des Verfahrens erfolgt das Auslesen des ersten Empfangszeit werts durch Aussenden eines ersten Auslese-Telegramms durch den Master-Netzwerk teilnehmer. Das Auslesen des zweiten Empfangszeitwerts erfolgt durch Aussenden eines zweiten Auslese-Telegramms durch den Master-Netzwerkteilnehmer. Umfasst das Netz werk mehrere an dem Verfahren beteiligte Slave-Netzwerkteilnehmer, so können die ers ten Empfangszeitwerte mehrerer Slave-Netzwerkteilnehmer gemeinsam mit dem ersten Auslese-Telegramm ausgelesen werden, was vorteilhafterweise eine besonders schnelle Durchführung des Verfahrens ermöglicht. Dies gilt entsprechend für die zweiten Emp fangszeitwerte der mehreren Slave-Netzwerkteilnehmer. Es ist aber auch möglich, die Empfangszeitwerte aller Slave-Netzwerkteilnehmer mit jeweils eigenen Auslese-Tele grammen auszulesen. In einer Ausführungsform des Verfahrens erfolgt das Übertragen des Geschwindigkeitspa rameters durch Aussenden eines Übertragungs-Telegramms durch den Master-Netzwerk teilnehmer. Umfasst das Netzwerk mehrere an dem Verfahren beteiligte Slave-Netzwerk teilnehmer, so können die Geschwindigkeitsparameter mehrerer Slave-Netzwerkteilneh mer gemeinsam mit nur einem Übertragungs-Telegramm ausgesendet werden, was vor teilhafterweise eine besonders schnelle Durchführung des Verfahrens ermöglicht. Es ist aber auch möglich, die Geschwindigkeitsparameter der mehreren Slave-Netzwerkteilneh mer mit jeweils eigenen Übertragungs-Telegrammen zu übertragen.

In einer Ausführungsform des Verfahrens wird dieses während einer Initialisierung des Netzwerks durchgeführt. Vorteilhafterweise kann dadurch bereits während der Initialisie rung des Netzwerks sichergestellt werden, dass die Ganggeschwindigkeit der lokalen Systemzeit des Slave-Netzwerkteilnehmers sehr nahe an einem vorgegebenen Sollwert liegt.

In einer Ausführungsform des Verfahrens wird der Geschwindigkeitsparameter in einem nicht-flüchtigen Datenspeicher des Master-Netzwerkteilnehmers hinterlegt. Dies ermög licht es, den Geschwindigkeitsparameter bei einer erneuten Initialisierung des Netzwerks ohne vorherige Messung an den Slave-Netzwerkteilnehmer zu übertragen. Dadurch wird eine noch schnellere Initialisierung des Netzwerks ermöglicht, wenn der Geschwindig keitsparameter bereits bei einer vorhergehenden Initialisierung des Netzwerks ermittelt worden ist.

In einer Ausführungsform des Verfahrens ist das Netzwerk ein EtherCAT-Netzwerk. In diesem Fall können das erste Telegramm und das zweite Telegramm als EtherCAT-Tele- gramme ausgebildet sein.

Die Erfindung wird im Folgenden anhand von Figuren näher erläutert. Dabei zeigen:

Figur 1 eine schematische Darstellung eines Netzwerks mit einem Master-Netz werkteilnehmer und mehreren Slave-Netzwerkteilnehmern;

Figur 2 eine schematische Darstellung eines Slave-Netzwerkteilnehmers des Netz werks;

Figur 3 eine schematische Darstellung mehrerer nacheinander ausgesendeter Te legramme; Figur 4 einen Zeitstrahl zur Illustration von Empfangszeitwerten und Referenzzeit werten; und

Figur 5 eine schematische Darstellung einer anderen Variante des Netzwerks.

Figur 1 zeigt eine schematische Darstellung eines beispielhaften Netzwerks 10. Das Netz werk 10 ist ein Ethernet-basiertes Netzwerk und kann beispielsweise für Steuerungs- und Automatisierungszwecke dienen. Das Netzwerk 10 kann auch als Feldbus bezeichnet werden. Das Netzwerk 10 kann beispielsweise ein EtherCAT-Netzwerk sein.

Das Netzwerk 10 weist einen Master-Netzwerkteilnehmer 100 und mehrere Slave-Netz werkteilnehmer 200 auf. Im in Figur 1 gezeigten Beispiel sind ein erster Slave-Netzwerk teilnehmer 200, 201 und ein zweiter Slave-Netzwerkteilnehmer 200, 202 vorhanden. Das Netzwerk 10 kann aber auch eine andere Anzahl von Slave-Netzwerkteilnehmern 200 aufweisen, beispielsweise nur den ersten Slave-Netzwerkteilnehmer 200, 201 oder mehr als zwei Slave-Netzwerkteilnehmer 200.

Das in Figur 1 gezeigte Netzwerk 10 weist eine Linien-Topologie auf. Der Master-Netz werkteilnehmer 100 ist mit dem ersten Slave-Netzwerkteilnehmer 200, 201 verbunden.

Der erste Slave-Netzwerkteilnehmer 200, 201 ist mit dem zweiten Slave-Netzwerkteilneh mer 200, 202 verbunden. Das Netzwerk 10 könnte aber auch eine andere Topologie auf weisen. Beispielsweise könnte das Netzwerk 10 auch Verzweigungen aufweisen.

Der Master-Netzwerkteilnehmer 100 übt in dem Netzwerk 10 eine Leitungsfunktion aus. Beispielsweise sendet der Master-Netzwerkteilnehmer 100 Telegramme (Datentele gramme) aus, die in dem Netzwerk 10 zirkulieren. Solche Telegramme können beispiels weise alle Slave-Netzwerkteilnehmer 200 des Netzwerks 10 durchlaufen und anschlie ßend zu dem Master-Netzwerkteilnehmer 100 zurückkehren.

Figur 2 zeigt eine schematische Darstellung eines beispielhaften Slave-Netzwerkteilneh mers 200. Alle Slave-Netzwerkteilnehmer 200 des Netzwerks 10 sind wie der Slave-Netz werkteilnehmer 200 der Figur 2 ausgebildet, weisen also jeweils zumindest die in Figur 2 gezeigten Komponenten auf. Jeder Slave-Netzwerkteilnehmer 200 weist jeweils eine lokale Systemzeit 210 auf. Die lo kale Systemzeit 210 kann beispielsweise ein Zahlenwert sein, der eine seit einem festge legten Startzeitpunkt vergangene Zeitspanne angibt. Beispielsweise kann die lokale Sys temzeit 210 die Anzahl der seit dem ersten Januar 2000, 00:00 Uhr vergangenen Nanose- kunden angeben.

Jeder Slave-Netzwerkteilnehmer 200 inkrementiert seine lokale Systemzeit 210 selbstän dig auf Grundlage eines internen Taktgebers des jeweiligen Slave-Netzwerkteilnehmers 200. Dabei weist jeder Slave-Netzwerkteilnehmer 200 zumindest einen Geschwindigkeits parameter 230 auf, der die Geschwindigkeit beeinflusst, mit der der jeweilige Slave-Netz werkteilnehmer 200 seine lokale Systemzeit 210 inkrementiert. Der Geschwindigkeitspa rameter 230 kann beispielsweise angeben, wie häufig die lokale Systemzeit 210 anstatt um einen Regelwert von beispielsweise 10 ns um einen abweichenden Wert von bei spielsweise 9 ns oder 11 ns erhöht werden muss, damit sich im Mittel über einen längeren Zeitraum die gewünschte Erhöhungsgeschwindigkeit der lokalen Systemzeit 210 ergibt. Die Geschwindigkeit, mit der die lokale Systemzeit 210 wächst, kann auch als Gangge schwindigkeit der lokalen Systemzeit 210 bezeichnet werden.

Zusätzlich weist jeder Slave-Netzwerkteilnehmer 200 ein Register 220 auf, in dem der Slave-Netzwerkteilnehmer 200 auf Anforderung einen gegenwärtigen Wert der lokalen Systemzeit 210 des Slave-Netzwerkteilnehmers 200 abspeichern kann.

Es ist erforderlich, dass die lokale Systemzeit 210 bei jedem Slave-Netzwerkteilnehmer 200 des Netzwerks 10 möglichst genau mit einer vorgegebenen Referenzzeit des Netz werks 10 übereinstimmt und möglichst genau mit derselben Geschwindigkeit fortschreitet wie die Referenzzeit. Zu diesem Zweck führt der Master-Netzwerkteilnehmer 100 nach der Inbetriebnahme des Netzwerks 10 eine Initialisierung des Netzwerks 10 durch, wäh rend der die Absolutwerte und die Ganggeschwindigkeiten der lokalen Systemzeiten 210 der einzelnen Slave-Netzwerkteilnehmer 200 an die vorgegebene Referenzzeit des Netz werks 10 angeglichen werden. Die Anpassung der Ganggeschwindigkeit der lokalen Sys temzeit 210 jedes Slave-Netzwerkteilnehmers 200 erfolgt dabei durch das nachfolgend dargestellte Verfahren zur Zeitsynchronisation, bei dem der Master-Netzwerkteilnehmer 100 den Geschwindigkeitsparameter 230 für jeden an der Initialisierung beteiligten Slave- Netzwerkteilnehmer 200 des Netzwerks 10 ermittelt und an den jeweiligen Slave-Netz werkteilnehmer 200 überträgt. Auch nach der Initialisierung des Netzwerks 10 können die Geschwindigkeitsparameter 230 der einzelnen Slave-Netzwerkteilnehmer 200 im Regel betrieb des Netzwerks 10 noch periodisch nachjustiert werden. Bei dem in Figur 1 gezeigten Netzwerk 10 fungiert der Master-Netzwerkteilnehmer 100 als Referenzzeitgeber 300 des Netzwerks 10. Der Master-Netzwerkteilnehmer 100 weist hier für eine Systemzeit 110 auf, die die Referenzzeit des Netzwerks 10 darstellt.

Zur Zeitsynchronisation sendet der Master-Netzwerkteilnehmer 100 ein in Figur 3 sche matisch gezeigtes erstes Telegramm 410 aus. Der Master-Netzwerkteilnehmer 100 sen det das erste Telegramm 410 zu einem Zeitpunkt aus, zu dem die Systemzeit 110 einen ersten Referenzzeitwert 531 aufweist. Der erste Referenzzeitwert 531 ist in Figur 4 sche matisch auf einem Zeitstrahl dargestellt. Der erste Referenzzeitwert 531 wird in dem Mas ter-Netzwerkteilnehmer 100 abgespeichert.

Der erste Slave-Netzwerkteilnehmer 200, 201 empfängt das erste Telegramm 410 zu ei nem Zeitpunkt, zu dem die lokale Systemzeit 210 des ersten Slave-Netzwerkteilnehmers 200, 201 einen ersten Empfangszeitwert 511 aufweist. Der Zeitstrahl der Figur 4 verdeut licht, dass der Zeitpunkt, zu dem die lokale Systemzeit 210 des ersten Slave-Netzwerkteil nehmers 200, 201 den ersten Empfangszeitwert 511 aufweist, nach dem Zeitpunkt liegt, zu dem die Systemzeit 110 des Master-Netzwerkteilnehmers 100 den ersten Referenz zeitwert 531 aufweist. Der erste Slave-Netzwerkteilnehmer 200, 201 speichert den ersten Empfangszeitwert 511 des ersten Slave-Netzwerkteilnehmers 200, 201 in seinem Regis ter 220 ab.

Der zweite Slave-Netzwerkteilnehmer 200, 202 empfängt das erste Telegramm 410 zu ei nem nachfolgenden Zeitpunkt, zu dem die lokale Systemzeit 210 des zweiten Slave-Netz werkteilnehmers 200, 202 einen ersten Empfangszeitwert 521 aufweist. Auch der erste Empfangszeitwert 521 des zweiten Slave-Netzwerkteilnehmers 200, 202 ist schematisch in Figur 4 gezeigt. Der zweite Slave-Netzwerkteilnehmer 200, 202 speichert diesen ersten Empfangszeitwert 521 des zweiten Slave-Netzwerkteilnehmers 200, 202 in seinem Regis ter 220 ab.

Würde das Netzwerk 10 noch weitere Slave-Netzwerkteilnehmer 200 umfassen, so wür den auch diese das erste Telegramm 410 jeweils zu einem Zeitpunkt empfangen, zu dem die lokale Systemzeit 210 des jeweiligen Slave-Netzwerkteilnehmers 200 einen jeweiligen ersten Empfangszeitwert aufweist. Die jeweiligen Slave-Netzwerkteilnehmer 200 würden diesen jeweiligen ersten Empfangszeitwert in ihrem jeweiligen Register 220 abspeichern. Nachdem das erste Telegramm 410 alle an dem Zeitsynchronisationsverfahren beteiligten Slave-Netzwerkteilnehmer 200 des Netzwerks 10 durchlaufen hat, liest der Master-Netz werkteilnehmer 100 die in den Registern 220 der Slave-Netzwerkteilnehmer 200 abge speicherten ersten Empfangszeitwerte 511, 521 aus. Dies kann beispielsweise erfolgen, indem der Master-Netzwerkteilnehmer 100 ein in Figur 3 schematisch dargestelltes erstes Auslese-Telegramm 415 aussendet. Alle an dem Zeitsynchronisationsverfahren beteilig ten Slave-Netzwerkteilnehmer 200 des Netzwerks 10 fügen jeweils den in ihrem Register 220 abgespeicherten ersten Empfangszeitwert 511, 521 in das erste Auslese-Telegramm 415 ein. Nach der Rückkehr des ersten Auslese-Telegramms 415 zu dem Master-Netz werkteilnehmer 100 liest der Master-Netzwerkteilnehmer 100 die ersten Empfangszeit werte 511, 521 aus dem ersten Auslese-Telegramm 415 aus und speichert diese ab.

Alternativ wäre es möglich, die ersten Empfangszeitwerte 511, 521 der einzelnen Slave- Netzwerkteilnehmer 200 mit jeweils einzelnen ersten Auslese-Telegrammen 415 auszule sen. In diesem Fall sendet der Master-Netzwerkteilnehmer 100 für jeden Slave-Netzwerk teilnehmer 200 jeweils ein eigenes erstes Auslese-Telegramm 415 aus.

Zu einem späteren Zeitpunkt, zu dem die Systemzeit 110 des Master-Netzwerkteilneh mers 100 einen zweiten Referenzzeitwert 532 aufweist, sendet der Master-Netzwerkteil nehmer 100 ein in Figur 3 schematisch dargestelltes zweites Telegramm 420 aus. Das Aussenden des zweiten Telegramms 420 kann beispielsweise zwischen 0,1 Sekunden und 10 Sekunden nach dem Aussenden des ersten Telegramms 410 erfolgen, insbeson dere beispielsweise zwischen 0,2 Sekunden und 5 Sekunden nach dem Aussenden des ersten Telegramms 410. Zweckmäßig ist, das zweite Telegramm 420 etwa 1 Sekunde nach dem Aussenden des ersten Telegramms 410 auszusenden. Der zweite Referenz zeitwert 532 ist schematisch in Figur 4 gezeigt.

Der erste Slave-Netzwerkteilnehmer 200, 201 empfängt das zweite Telegramm 420 zu ei nem Zeitpunkt, zu dem die lokale Systemzeit 210 des ersten Slave-Netzwerkteilnehmers 200, 201 einen zweiten Empfangszeitwert 512 aufweist. Der erste Slave-Netzwerkteilneh mer 200, 201 speichert den zweiten Empfangszeitwert 512 in seinem Register 220 ab.

Der zweite Slave-Netzwerkteilnehmer 200, 202 empfängt das zweite Telegramm 420 zu einem nachfolgenden Zeitpunkt, zu dem die lokale Systemzeit 210 des zweiten Slave- Netzwerkteilnehmers 200, 202 einen zweiten Empfangszeitwert 522 aufweist. Der zweite Slave-Netzwerkteilnehmer 200, 202 speichert den zweiten Empfangszeitwert 522 in sei nem Register 220 ab. Der zweite Empfangszeitwert 512 des ersten Slave-Netzwerkteilnehmers 200, 201 und der zweite Empfangszeitwert 522 des zweiten Slave-Netzwerkteilnehmers 200, 202 sind schematisch in Figur 4 gezeigt.

Gegebenenfalls vorhandene weitere Slave-Netzwerkteilnehmer 200 empfangen das zweite Telegramm 420 jeweils zu einem Zeitpunkt, zu dem die lokale Systemzeit 210 des jeweiligen Slave-Netzwerkteilnehmers 200 einen zweiten Empfangszeitwert aufweist. Die weiteren Slave-Netzwerkteilnehmer 200 speichern den jeweiligen zweiten Empfangszeit wert in ihrem jeweiligen Register 220 ab.

Anschließend liest der Master-Netzwerkteilnehmer 100 die in den Registern 220 der Slave-Netzwerkteilnehmer 200 abgespeicherten zweiten Empfangszeitwerte 512, 522 aus. Dies kann beispielsweise analog zum Auslesen der ersten Empfangszeitwerte 511, 521 durch Aussenden eines in Figur 3 schematisch gezeigten zweiten Auslese-Tele gramms 425 erfolgen.

Eine alternative Möglichkeit besteht darin, die ersten Empfangszeitwerte 511, 521 und die zweiten Empfangszeitwerte 512, 522 der einzelnen Slave-Netzwerkteilnehmer 200 ge meinsam auszulesen. Dies erfordert es, dass die Slave-Netzwerkteilnehmer 200 die je weiligen ersten Empfangszeitwerte 511, 521 und die jeweiligen zweiten Empfangszeit werte 512, 522 in getrennten Registern abspeichern. Dann können die ersten Empfangs zeitwerte 511, 521 und die zweiten Empfangszeitwerte 512, 522 der einzelnen Slave- Netzwerkteilnehmer 200 gemeinsam durch das zweite Auslese-Telegramms 425 ausgele sen werden. Das Aussenden des ersten Auslese-Telegramms 415 kann in diesem Fall entfallen.

Eine weitere alternative Möglichkeit besteht darin, dass die Slave-Netzwerkteilnehmer 200 die ersten Empfangszeitwerte 511, 521 direkt in dem ersten Telegramm 410 und die zwei ten Empfangszeitwerte 512, 522 direkt in dem zweiten Telegramm 420 hinterlegen. In die sem Fall liest der Master-Netzwerkteilnehmer 100 die ersten Empfangszeitwerte 511, 521 direkt mit dem ersten Telegramm 410 und die zweiten Empfangszeitwerte 512, 522 direkt mit dem zweiten Telegramm 420 aus. Das Aussenden des ersten Auslese-Telegrammen 415 und des zweiten Auslese-Telegramms 425 kann dann entfallen. Ebenso ist es dann nicht erforderlich, dass die Slave-Netzwerkteilnehmer 200 ihre jeweiligen ersten Emp fangszeitwerte 511, 521 in ihrem jeweiligen Register 220 abspeichern und ihre jeweiligen zweiten Empfangszeitwerte 512, 522 in ihrem jeweiligen Register 220 abspeichern. Anschließend liegen in dem Master-Netzwerkteilnehmer 100 der erste Referenzzeitwert 531 und der zweite Referenzzeitwert 532, der erste Empfangszeitwert 511 und der zweite Empfangszeitwert 512 des ersten Slave-Netzwerkteilnehmers 200, 201 , der erste Emp fangszeitwert 521 und der zweite Empfangszeitwert 522 des zweiten Slave-Netzwerkteil nehmers 200, 202 sowie gegebenenfalls die ersten und zweiten Empfangszeitwerte wei terer Slave-Netzwerkteilnehmer 200 vor. Hieraus kann der Master-Netzwerkteilnehmer 100 für jeden Slave-Netzwerkteilnehmer 200 den Geschwindigkeitsparameter 230 so be rechnen, dass die lokale Systemzeit 210 des jeweiligen Slave-Netzwerkteilnehmers 200 mit größtmöglicher Genauigkeit genauso schnell abläuft wie die die Referenzzeit des Netzwerks 10 bildende Systemzeit 110 des Master-Netzwerkteilnehmers 100.

Die Berechnung des Geschwindigkeitsparameters 230 beruht jeweils auf der Einsicht, dass beispielsweise bei dem ersten Slave-Netzwerkteilnehmer 200, 201 zwischen dem ersten Empfangszeitwert 511 und dem zweiten Empfangszeitwert 512 dieselbe Zeitdiffe renz läge wie zwischen dem ersten Referenzzeitwert 531 und dem zweiten Referenzzeit wert 532, wenn die lokale Systemzeit 210 des ersten Slave-Netzwerkteilnehmers 200,

201 bereits mit derselben Geschwindigkeit abliefe wie die Systemzeit 110 des Master- Netzwerkteilnehmers 100.

Zur Berechnung des Geschwindigkeitsparameters 230 für jeden Slave-Netzwerkteilneh mer 200 kann der Master-Netzwerkteilnehmer 100 daher beispielsweise eine Referenz zeitdifferenz 530 als Differenz zwischen dem ersten Referenzzeitwert 531 und dem zwei ten Referenzzeitwert 532 berechnen, indem also der erste Referenzzeitwert 531 von dem zweiten Referenzzeitwert 532 subtrahiert wird. Ferner kann der Master-Netzwerkteilneh mer 100 für den ersten Slave-Netzwerkteilnehmer 200, 201 eine Empfangszeitdifferenz 510 als Differenz zwischen dem ersten Empfangszeitwert 511 des ersten Slave-Netzwerk teilnehmers 200, 201 und dem zweiten Empfangszeitwert 512 des ersten Slave-Netzwerk teilnehmers 200, 201 berechnen. Entsprechend kann der Master-Netzwerkteilnehmer 100 für den zweiten Slave-Netzwerkteilnehmer 200, 202 eine Empfangszeitdifferenz 520 als Differenz zwischen dem ersten Empfangszeitwert 521 des zweiten Slave-Netzwerkteil nehmers 200, 202 und dem zweiten Empfangszeitwert 522 des zweiten Slave-Netzwerk teilnehmers 200, 202 berechnen. Ebenso kann der Master-Netzwerkteilnehmer 100 wei tere Empfangszeitdifferenzen für weitere Slave-Netzwerkteilnehmer 200 des Netzwerks 10 berechnen. Die Referenzzeitdifferenz 530, die Empfangszeitdifferenz 510 des ersten Slave-Netzwerkteilnehmers 200, 201 und die Empfangszeitdifferenz 520 des zweiten Slave-Netzwerkteilnehmers 200, 202 sind in Figur 4 dargestellt. Ist die Empfangszeitdifferenz 510 des ersten Slave-Netzwerkteilnehmers 200, 201 größer als die Referenzzeitdifferenz 530, so läuft die lokale Systemzeit 210 des ersten Slave- Netzwerkteilnehmers 200, 201 schneller ab als die Systemzeit 110 des Master-Netzwerk teilnehmers 100 und muss durch Anpassung des Geschwindigkeitsparameters 230 des ersten Slave-Netzwerkteilnehmers 200, 201 verlangsamt werden. Ist die Empfangszeitdif ferenz 510 des ersten Slave-Netzwerkteilnehmers 200, 201 dagegen kleiner als die Refe renzzeitdifferenz 530, so läuft die lokale Systemzeit 210 des ersten Slave-Netzwerkteil nehmers 200, 201 langsamer ab als die Systemzeit 110 des Master-Netzwerkteilnehmers 100 und muss beschleunigt werden. Die Größe der Abweichung zwischen der Empfangs zeitdifferenz 510 und der Referenzzeitdifferenz 530 ist dabei proportional zur Abweichung zwischen den Geschwindigkeiten der lokalen Systemzeit 210 des ersten Slave-Netzwerk teilnehmers 200, 201 und der Systemzeit 110 des Master-Netzwerkteilnehmers 100. Hie raus lässt sich der Geschwindigkeitsparameter 230 für den ersten Slave-Netzwerkteilneh mer 200, 201 berechnen. Entsprechend kann der Geschwindigkeitsparameter 230 auch für die übrigen Slave-Netzwerkteilnehmer 200 berechnet werden.

Nach dem Berechnen des Geschwindigkeitsparameters 230 für jeden an dem Synchroni sationsverfahren beteiligten Slave-Netzwerkteilnehmern 200 des Netzwerks 10 überträgt der Master-Netzwerkteilnehmer 100 den jeweiligen Geschwindigkeitsparameter 230 an jeden beteiligten Slave-Netzwerkteilnehmer 200 des Netzwerks 10. Der für den ersten Slave-Netzwerkteilnehmer 200, 201 berechnete Geschwindigkeitsparameter 230 wird also an den ersten Slave-Netzwerkteilnehmer 200, 201 übertragen. Der für den zweiten Slave- Netzwerkteilnehmer 200, 202 berechnete Geschwindigkeitsparameter 230 wird an den zweiten Slave-Netzwerkteilnehmer 200, 202 übertragen.

Das Übertragen des Geschwindigkeitsparameters 230 kann jeweils durch Aussenden ei nes in Figur 3 schematisch dargestellten Übertragungs-Telegramms 430 erfolgen. Dabei wird der jeweilige Geschwindigkeitsparameter 230 mittels des Übertragungs-Telegramms 430 an den jeweiligen Slave-Netzwerkteilnehmer 200 übertragen. Es ist möglich, mit nur einem Übertragungs-Telegramm 430 die jeweiligen Geschwindigkeitsparameter 230 für mehrere an dem Zeitsynchronisationsverfahren beteiligte Slave-Netzwerkteilnehmer 200 gleichzeitig zu übertragen. Es ist aber auch möglich, den Geschwindigkeitsparameter 230 für jeden Slave-Netzwerkteilnehmer 200 mit einem jeweils eigenen Übertragungs-Tele gramm 430 zu übertragen. Der Master-Netzwerkteilnehmer 100 kann die berechneten Geschwindigkeitsparameter 230 aller an dem Zeitsynchronisationsverfahren beteiligten Slave-Netzwerkteilnehmer 200 des Netzwerks 10 in einem nicht-flüchtigen Datenspeicher 120 des Master-Netzwerkteil nehmers 100 und/oder in den jeweiligen Slave-Netzwerkteilnehmern 200 hinterlegen.

Dies ermöglicht es, dass der Master-Netzwerkteilnehmer 100 nach einer erneuten Inbe triebnahme des Netzwerks 10 die in dem nicht-flüchtigen Datenspeicher 120 hinterlegten Geschwindigkeitsparameter 230 der Slave-Netzwerkteilnehmer 200 ausliest und unmittel bar an die Slave-Netzwerkteilnehmer 200 überträgt. In diesem Fall kann auf die vorste hend beschriebenen Verfahrensschritte zum Aussenden des ersten Telegramms 410, zum Auslesen der ersten Empfangszeitwerte 511 , 521 , zum Aussenden des zweiten Tele gramms 420, zum Auslesen der zweiten Empfangszeitwerte 512, 522 und zum Berech nen des Geschwindigkeitsparameters 230 für jeden Slave-Netzwerkteilnehmer 200 ver zichtet werden. Dadurch kann die Initialisierung des Netzwerks 10 bei der erneuten Inbe triebnahme des Netzwerks 10 beschleunigt werden. Das Hinterlegen der berechneten Ge schwindigkeitsparameter 230 in dem nicht-flüchtigen Datenspeicher 120 des Master-Netz werkteilnehmers 100 kann aber auch entfallen.

Figur 5 zeigt eine schematische Darstellung einer alternativen Ausgestaltung des Netz werks 10. Bei der in Figur 5 gezeigten Variante des Netzwerks 10 fungiert nicht der Mas ter-Netzwerkteilnehmer 100 als Referenzzeitgeber 300. Stattdessen ist im Vergleich zu der in Figur 1 gezeigten Variante des Netzwerks 10 ein zusätzlicher Slave-Netzwerkteil nehmer 200, 203 vorhanden, der als Referenzzeitgeber 300 fungiert. Der zusätzliche Slave-Netzwerkteilnehmer 200, 203 ist im Vergleich zu der in Figur 1 gezeigten Variante des Netzwerks 10 zwischen dem Master-Netzwerkteilnehmer 100 und dem ersten Slave- Netzwerkteilnehmer 200, 201 eingefügt worden. Dadurch bildet der zusätzliche Slave- Netzwerkteilnehmer 200, 203 in der Linientopologie des Netzwerks 10 den ersten dem Master-Netzwerkteilnehmer 100 nachfolgenden Slave-Netzwerkteilnehmer 200. Der zu sätzliche Slave-Netzwerkteilnehmer 200, 203 könnte allerdings auch an beliebiger ande rer Stelle in das Netzwerk 10 eingefügt werden. Der zusätzliche Slave-Netzwerkteilneh mer 200, 203 ist ausgebildet wie die übrigen Slave-Netzwerkteilnehmer 200 des Netz werks 10.

Der zusätzliche Slave-Netzwerkteilnehmer 200, 203 fungiert als Referenzzeitgeber 300 des Netzwerks 10, was bedeutet, dass die lokale Systemzeit 210 des zusätzlichen Slave- Netzwerkteilnehmers 200, 203 die Referenzzeit des Netzwerks 10 darstellt. Die jeweilige lokale Systemzeit 210 jedes weiteren Slave-Netzwerkteilnehmers 200 des Netzwerks 10 soll mit der lokalen Systemzeit 210 des als Referenzzeitgeber 300 fungierenden zusätzli chen Slave-Netzwerkteilnehmers 200, 203 synchronisiert werden. Da die lokale System zeit 210 des zusätzlichen Slave-Netzwerkteilnehmers 200, 203 selbst die Referenzzeit des Netzwerks 10 darstellt, muss die lokale Systemzeit 210 des zusätzlichen Slave-Netz werkteilnehmers 200, 203 nicht mit der Referenzzeit synchronisiert werden. Eine Anpas sung des Geschwindigkeitsparameters 230 des zusätzlichen Slave-Netzwerkteilnehmers 200, 203 ist daher nicht erforderlich.

Die jeweiligen Geschwindigkeitsparameter 230 der übrigen Slave-Netzwerkteilnehmer 200 des Netzwerks 10 werden während der Initialisierung des Netzwerks 10 durch das oben bereits beschriebene Zeitsynchronisationsverfahren ermittelt. Da allerdings bei der in Figur 5 gezeigten Variante des Netzwerks 10 der zusätzliche Slave-Netzwerkteilnehmer 200, 203 als Referenzzeitgeber 300 fungiert, müssen der erste Referenzzeitwert 531 und der zweite Referenzzeitwert 532 bei der in Figur 5 gezeigten Variante des Netzwerks 10 etwas anders ermittelt werden als vorstehend beschrieben. Nachfolgend wird beschrie ben, wodurch sich das Verfahren zur Zeitsynchronisation bei seiner Anwendung in der in Figur 5 gezeigten Variante des Netzwerks 10 von der vorstehend beschriebenen Anwen dung in der in Figur 1 gezeigten Variante des Netzwerks 10 unterscheidet.

Bei der in Figur 5 gezeigten Variante des Netzwerks 10 sendet der Master-Netzwerkteil nehmer 100 zunächst das erste Telegramm 410 aus. Der als Referenzzeitgeber 300 fun gierende zusätzliche Slave-Netzwerkteilnehmer 200, 203 empfängt das erste Telegramm 410 zu einem Zeitpunkt, zu dem die als Referenzzeit fungierende lokale Systemzeit 210 des zusätzlichen Slave-Netzwerkteilnehmers 200, 203 einen ersten Referenzzeitwert 531 aufweist. Dieser erste Referenzzeitwert 531 wird durch den als Referenzzeitgeber 300 fungierenden zusätzlichen Slave-Netzwerkteilnehmer 200, 203 in seinem Register 220 abgespeichert.

Nachfolgend empfangen der erste Slave-Netzwerkteilnehmer 200, 201 , der zweite Slave- Netzwerkteilnehmer 200, 202 und alle eventuellen weiteren an dem Zeitsynchronisations verfahren beteiligten Slave-Netzwerkteilnehmer 200 des Netzwerks 10 das erste Tele gramm 410 und speichern die jeweiligen ersten Empfangszeitwerte 511, 521 auf die oben beschriebene Weise in ihrem jeweiligen Register 220 ab.

Anschließend wird der in dem Referenzzeitgeber 300 abgespeicherte erste Referenzzeit wert 531 ebenso durch den Master-Netzwerkteilnehmer 100 ausgelesen wie die in den übrigen Slave-Netzwerkteilnehmern 200 abgespeicherten ersten Empfangszeitwerte 511, 521. Dies kann beispielsweise mittels des ersten Auslese-Telegramms 415 erfolgen.

Später sendet der Master-Netzwerkteilnehmer 100 das zweite Telegramm 420 aus. Der als Referenzzeitgeber 300 fungierende zusätzliche Slave-Netzwerkteilnehmer 200, 203 empfängt das zweite Telegramm 420 zu einem Zeitpunkt, zu dem die die Referenzzeit des Netzwerks 10 bildende lokale Systemzeit 210 des zusätzlichen Slave-Netzwerkteil nehmers 200, 203 einen zweiten Referenzzeitwert 532 aufweist. Der als Referenzzeitge ber 300 fungierende zusätzliche Slave-Netzwerkteilnehmer 200, 203 speichert den zwei ten Referenzzeitwert 532 in seinem Register 220 ab.

Nachfolgend empfangen der erste Slave-Netzwerkteilnehmer 200, 201 , der zweite Slave- Netzwerkteilnehmer 200, 202 und alle eventuellen weiteren an dem Zeitsynchronisations verfahren beteiligten Slave-Netzwerkteilnehmer 200 des Netzwerks 10 das zweite Tele gramm 420 und speichern jeweils die zweiten Empfangszeitwerte 512, 522 in ihrem jewei ligen Register 220 ab, wie dies oben beschrieben worden ist.

Anschließend liest der Master-Netzwerkteilnehmer 100 den in dem Referenzzeitgeber 300 abgespeicherten zweiten Referenzzeitwert 532 genau so aus, wie auch die in den übrigen Slave-Netzwerkteilnehmern 200 abgespeicherten zweiten Empfangszeitwerte 512, 522 ausgelesen werden. Dies kann beispielsweise mittels des zweiten Auslese-Telegramms 425 erfolgen.

Dadurch sind dem Master-Netzwerkteilnehmer 100 nun auch bei der in Figur 5 gezeigten Variante des Netzwerks 10 der erste Referenzzeitwert 531 und der zweite Referenzzeit wert 532 bekannt. Außerdem sind dem Master-Netzwerkteilnehmer 100 wieder der erste Empfangszeitwert 511 des ersten Slave-Netzwerkteilnehmers 200, 201 , der zweite Emp fangszeitwert 512 des ersten Slave-Netzwerkteilnehmers 200, 201, der erste Empfangs zeitwert 521 des zweiten Slave-Netzwerkteilnehmers 200, 202, der zweite Empfangszeit wert 522 des zweiten Slave-Netzwerkteilnehmers 200, 202 und die ersten und zweiten Empfangszeitwerte aller weiteren an dem Zeitsynchronisationsverfahren beteiligten Slave- Netzwerkteilnehmer 200 des Netzwerks 10 bekannt. Hieraus kann der Master-Netzwerk teilnehmer 100 auf die vorstehend beschriebene Weise für jeden an dem Zeitsynchronisa tionsverfahren beteiligten Slave-Netzwerkteilnehmer 200 den jeweiligen Geschwindig keitsparameter 230 berechnen und diesen anschließend an den jeweiligen Slave-Netz werkteilnehmer 200 übertragen. Die berechneten Geschwindigkeitsparameter 230 können wahlweise wiederum in dem nicht-flüchtigen Datenspeicher 120 des Master-Netzwerkteilnehmers 100 abgespeichert werden, um sie bei einer nachfolgenden erneuten Inbetriebnahme des Netzwerks 10 aus zulesen und an die Slave-Netzwerkteilnehmer 200 zu übertragen.

Bei der in Figur 5 gezeigten Variante des Netzwerks 10 kann auch der Master-Netzwerk teilnehmer 100 an dem Synchronisationsverfahren teilnehmen und seine Systemzeit mit dem Referenzzeitgeber synchronisieren. Hierzu muss er seine Aussendezeitwerte des ersten Telegrams 410 und des zweiten Telegrams 420 speichern. Die Berechnung des Geschwindigkeitsparameters für den Master-Netzwerkteilnehmer 100 erfolgt dann wie vorstehend beschrieben, wobei anstatt der vorgenannten Empfangszeitwerte die Aus sendezeitwerte verwendet werden.

Bezugszeichenliste

10 Netzwerk

100 Master-Netzwerkteilnehmer 110 Systemzeit

120 nicht-flüchtiger Datenspeicher

200 Slave-Netzwerkteilnehmer

210 lokale Systemzeit

220 Register

230 Geschwindigkeitsparameter

201 erster Slave-Netzwerkteilnehmer

202 zweiter Slave-Netzwerkteilnehmer

203 zusätzlicher Slave-Netzwerkteilnehmer

300 Referenzzeitgeber

410 erstes Telegramm

415 erstes Auslese-Telegramm

420 zweites Telegramm

425 zweites Auslese-Telegramm

430 Übertragungs-Telegramm

510 Empfangszeitdifferenz des ersten Slave-Netzwerkteilnehmers

511 erster Empfangszeitwert des ersten Slave-Netzwerkteilnehmers

512 zweiter Empfangszeitwert des ersten Slave-Netzwerkteilnehmers

520 Empfangszeitdifferenz des zweiten Slave-Netzwerkteilnehmers

521 erster Empfangszeitwert des zweiten Slave-Netzwerkteilnehmers

522 zweiter Empfangszeitwert des zweiten Slave-Netzwerkteilnehmers

530 Referenzzeitdifferenz

531 erster Referenzzeitwert

532 zweiter Referenzzeitwert