-
Die Erfindung bezieht sich auf ein Verfahren zur Bestimmung eines Synchronisierungszustands der Uhr eines Feldgerätes, ein Feldgerät, eine Anordnung umfassend ein Feldgerät sowie eine Referenzechtzeituhr, eine Verwendung des Verfahrens und ein Computerprogrammprodukt.
-
Aus dem Stand der Technik ist das in der IEEE 1588 spezifizierte sog. Precision Time Protocol (PTP) bekannt geworden, vermittels dem es möglich ist, Uhren mit einer Genauigkeit von bis zu weniger als einer Mikrosekunde zu synchronisieren. Zwei voneinander unabhängige Uhren weisen nämlich einen zeitlichen Versatz zwischen den von ihnen angezeigten Uhrzeiten an. Dieser Versatz ist u.a auf einer Abweichung in der Ganggenauigkeit der Uhren begründet.
-
Um die Funktionsfähigkeit einer industriellen Anlage zu gewährleisten, ist die Zuverlässigkeit, der zu eine bestimmten Zeitpunkt ausgelösten Aktionen, wie bspw. das Erfassen eines Messwerts oder das Betätigen eines Ventils etc., von grundlegender Bedeutung. Zu diesem Zweck ist es daher erforderlich, die Uhren der in einer solchen Anlage installierten Gerätschaften, d.h. der Feldgeräte, zu synchronisieren.
-
Vermittels des PTP kann anhand von in einer vorgegebenen Liste hinterlegten Zeiten, der Versatz zwischen der Uhr eines Referenzzeitgebers und der Uhr eines Feldgerätes ermittelt werden. Ferner kann die Verzögerung bei der Nachrichtenübertragung über das Netzwerk zwischen dem Referenzzeitgeber und dem Feldgerät ermittelt werden. Eine Möglichkeit zur Synchronisierung gem. dem PTP ist in „High Precision Clock Synchronization according to IEEE1588, Implementation and Performance Issues", von Hans Weibel, Zurich University of Applied Sciences, Institute of Embedded Systems (InES) angegeben.
-
Bei dem Netzwerk, über das das Feldgerät mit dem Referenzzeitgeber verbunden ist kann es sich bspw. um ein Ethernet-Netzwerk oder ein anderes Mutlicast-fähiges Netzwerk handeln.
-
Die Toleranzwerte entsprechend denen die Synchronität zw. dem Referenzzeitgeber und dem Feldgerät ermittelt wird, sind durch den PTP-Standard vorgegeben. Dabei handelt es sich um die Werte 25 ns, 100 ns, 250 ns, 1 µs, 2.5 µs, 10 µs, 25 µs, 100µs, 250 µs, 1 ms, 2.5 ms, 10 ms, 25 ms, 100 ms, 250 ms, 1 s, 10 s und größer als 10 s. Diese oben genannten Zeiten sind aber u.U. zu grob, um die Synchronität und somit die Zuverlässigkeit des Systems beurteilen zu können.
-
Der Erfindung liegt somit die Aufgabe zugrunde, einem Benutzer eines Feldgerätes eine Möglichkeit bereitzustellen, die Synchronisierung des Feldgerätes möglichst genau zu überwachen.
-
Die Aufgabe wird erfindungsgemäß durch ein Verfahren, ein Feldgerät, eine Anordnung umfassen ein Feldgerät sowie eine Referenzechtzeituhr, eine Verwendung des Verfahrens und ein Computerprogrammprodukt gelöst.
-
Hinsichtlich des Verfahrens wird die Aufgabe durch ein Verfahren zur Bestimmung eines Synchronisierungszustands zwischen einer Uhr eines Feldgerätes der Prozessautomatisierungstechnik und einer Uhr eines Referenzzeitgebers gelöst, wobei der Synchronisierungszustand der Uhr des Feldgerätes, bspw. anhand einer vorgegebenen Norm, durch Austausch von Signalen, vorzugsweise gem. dem Precision-Time-Protocol PTP, zwischen dem Feldgerät und dem Referenzzeitgeber ermittelt und ein erster den Synchronisierungszustand kennzeichnender Parameter, bspw. PTP Port State, ermittelt wird, wobei ein zeitlicher Versatz, auch als Offset bezeichnet, zwischen der Uhr des Feldgerätes und der Uhr des Referenzzeitgebers bestimmt wird, wobei ein den Synchronisierungszustand zwischen der Uhr des Feldgerätes und der Uhr des Referenzzeitgebers kennzeichnender Toleranzwert, bspw. „PTP Sync Value“, für den zeitlichen Versatz durch einen Benutzer einstellbar ist, und wobei ein zweiter den Synchronisierungszustand kennzeichnender Parameter, bspw. „PTP Sync State“, anhand eines Vergleichs des von dem Benutzer eingestellten Toleranzwerts mit dem bestimmten zeitlichen Versatz bestimmt wird.
-
In einer Ausführungsform des Verfahrens wird zur Bestimmung des zeitlichen Versatzes zw. der Uhr des Feldgerätes und der Uhr des Referenzzeitgebers eine zeitliche Verzögerung, auch als Delay bezeichnet, bei der Signalübertragung zwischen dem Feldgerät und dem Referenzzeitgeber bestimmt.
-
In einer weiteren Ausführungsform des Verfahrens ist in einer vorgegebenen Norm, vorzugsweise gem. der IEEE 1588 bzw. dem Precision-Time-Protocol, zumindest ein erster und ein zweiter den Synchronisierungszustand kennzeichnender Parameterwert, bspw. „Slave“, des ersten Parameters, bspw. „PTP Port State“, vorgesehen, wobei durch den ersten Parameterwert des ersten Parameters angezeigt wird, dass die Uhr des Feldgeräts innerhalb einer durch die Norm vorgegebenen Toleranz synchron mit der Uhr des Referenzzeitgebers ist.
-
In einer weiteren Ausführungsform des Verfahrens wird der Parameterwert des ersten Parameters durch Vergleich des zeitlichen Versatzes zw. der Uhr des Feldgerätes und der Uhr des Referenzzeitgebers ermittelt wird.
-
In einer weiteren Ausführungsform des Verfahrens wird der Parameterwert des ersten Parameters durch Vergleich des zeitlichen Versatzes anhand von Toleranzwerten in einer, bspw. durch eine Norm, vorzugsweise die IEEE 1855, vorgegebenen Tabelle bestimmt.
-
In einer weiteren Ausführungsform des Verfahrens wird ein Toleranzwert der Abweichung aus der Tabelle von Toleranzwerten, die bspw. durch die Norm gegeben sind, durch den Hersteller des Feldgerätes vorgegeben.
-
In einer weiteren Ausführungsform des Verfahrens wird geprüft, welchen Parameterwert der erste Parameter aufweist, wobei in dem Fall, dass der erste Parameter den ersten Parameterwert, bspw. „Slave“, aufweist, der Vergleich zw. dem von dem Benutzer vorgegebenen Toleranzwert und dem bestimmten zeitlichen Versatz durchgeführt wird.
-
In einer weiteren Ausführungsform des Verfahrens wird in dem Fall, dass der erste Parameter nicht den ersten Parameterwert aufweist, dem zweiten Parameter ein Parameterwert zugewiesen, der angibt, dass die Uhr des Feldgerätes und die Uhr des Referenzzeitgebers außerhalb der von dem Benutzer vorgegebenen Toleranz liegt.
-
In einer weiteren Ausführungsform des Verfahrens wird in dem Fall, dass der erste Parameter den ersten Parameterwert aufweist und der Vergleich zwischen dem von dem Benutzer vorgegebenen Toleranzwert und dem ermittelten zeitlichen Versatz ergibt, dass der zeitliche Versatz außerhalb des von dem Benutzer vorgegebenen Toleranzwert liegt, dem zweiten Parameter ein Parameterwert zugewiesen, der angibt, dass die Uhr des Feldgerätes und die Uhr des Referenzzeitgebers außerhalb der von dem Benutzer vorgegebenen Toleranz liegt.
-
In einer weiteren Ausführungsform des Verfahrens wird in dem Fall, dass der erste Parameter den ersten Parameterwert aufweist und der Vergleich zwischen dem von dem Benutzer vorgegebenen Toleranzwert und dem ermittelten zeitlichen Versatz ergibt, dass der zeitliche Versatz kleiner und/oder gleich des von dem Benutzer vorgegebenen Toleranzwerts ist, dem zweiten Parameter ein Parameterwert zugewiesen, der angibt, dass die Uhr des Feldgerätes und die Uhr des Referenzzeitgebers innerhalb der von dem Benutzer vorgegebenen Toleranz liegt.
-
Hinsichtlich der Anordnung wird die Aufgabe durch eine Anordnung umfassend ein Feldgerät mit einer internen Echtzeituhr und einen Referenzzeitgeber mit einer Referenzechtzeituhr zur Durchführung des Verfahrens nach einem der vorherigen Ausführungsformen gelöst.
-
Hinsichtlich des Feldgerätes wird die Aufgabe durch ein Feldgerät zur Verwendung in einer Anordnung nach einer der vorherigen Ausführungsformen gelöst.
-
Hinsichtlich der Verwendung wird die Aufgabe durch die Verwendung des Verfahrens nach einer der genannten Ausführungsformen zur bzw. während der Kalibrierung eines Feldgerätes gelöst.
-
Hinsichtlich des Computerprogrammprodukts wird die Aufgabe durch ein Computerprogrammprodukt mit Programmcodemitteln, die, wenn sie ausgeführt werden, zur Durchführung des Verfahrens nach einer der genannten Ausführungsformen dienen, gelöst. Als Programmcodemittel kann dabei bspw. eine prozedurale oder objektorientierte Programmiersprache wie C dienen. Ferner kann das Verfahren auch von einer in einem Webserver implementierten bzw. integrierten Funktion ausgeführt werden. Der Webserver selbst kann dabei bspw. in das Feldgerät integriert sein, d.h. es kann sich dabei um ein sog. „embedded system“, d.h. ein eingebettetes System, handeln.
-
Die Erfindung wird anhand der nachfolgenden Zeichnungen näher erläutert. Es zeigt:
-
1: eine Liste der möglichen Parameterwerte eines ersten den Synchronisierungszustand kennzeichnenden Parameters,
-
2: eine Liste der Toleranzwerte anhand derer der Parameterwert des ersten Parameters ermittelt wird,
-
3: eine Anzeige des Synchronisierungszustands eines Feldgerätes zu einem Referenzzeitgeber,
-
4: ein Ablaufdiagramm zur Bestimmung des ersten und des zweiten den Synchronisierungszustand kennzeichnenden Parameters.
-
1 zeigt eine Liste von möglichen Parameterwerten des ersten Parameters gem. dem Precision Time Protocol (PTP). Der erste Parameter „Port State“ kann dabei in Abhängigkeit des Zustands des Synchronisierungsverfahrens die verschiedenen Parameterwerte „Initialiazing“, „Faulty“, ..., „Slave“ annehmen. Einige dieser durch den PTP-Standard vorgegebenen Parameterwerte werden von dem Feldgerät unterstützt, während andere nicht von dem Feldgeräte ausgeführt bzw. angezeigt werden können. So kann das vorgeschlagene Feldgerät bspw. nicht als PTP-Master fugieren, d.h. der Parameter „Port State“ kann den Paramterwert „Master“ nicht annehmen.
-
Vorzugsweise wird das PTP zur Kalibrierung von Feldgeräten, wie bspw. einem Durchflussmessgerät, eingesetzt. Das zu kalibrierende Feldgerät weist zu diesem Zweck vorzugsweise einen Ethernetanschluss auf, über welches es über ein Ethernetnetzwerk mit einem PTP-Master, der als Referenzzeitgeber dient, verbunden ist.
-
2 zeigt eine Liste von Toleranzwerten anhand derer der Parameterwert des ersten Parameters ermittelt wird. Die Toleranzwerte sind durch die Norm IEEE 1588 vorgegeben.
-
Durch die Synchronisierung des als PTP-Slave fungierenden Feldgerätes mit dem als PTP-Master fungierenden Referenzzeitgebers soll der zeitliche Versatz zwischen der in das Feldgerät integrierten (Echtzeit-)Uhr und der Referenz(Echtzeit-)Uhr des Referenzzeitgebers eliminiert werden bzw. zumindest unter der durch den Toleranzwert vorgegebenen Schwelle liegen. Allerdings ist es aufgrund der physikalischen Rahmenbedingungen teilweise nicht möglich, den zeitlichen Versatz zwischen Uhr des Feldgerätes und der Uhr des Referenzzeitgebers zu eliminieren.
-
Ist jedoch eine Genauigkeit die unterhalb der Toleranzwerte liegt ausreichend, so kann ein System mit dieser Genauigkeit als synchron bezeichnet werden und der erste Parameter einen ersten Wert annehmen der diesen Systemzustand repräsentiert. Gem. dem PTP-Standard ist dies der Wert „Slave“ bzw. der Zahlwert „9“.
-
Der zeitliche Versatz T0 zw. der Uhrzeit TM des PTP-Masters und der Uhrzeit TS des PTP-Slaves lautet dann TM = TS + T0.
-
3 zeigt eine Darstellung einer Anzeige des Synchronisierungszustands eines Feldgerätes zu einem Referenzzeitgeber.
-
Eine derartige Anzeige kann bspw. von einem in das Feldgerät integrierten Webserver zur Verfügung gestellt werden. Ein Bediengerät, wie bspw. ein Laptop, mit einer Anzeigeeinheit, welches an das Feldgerät anschließbar ist, kann dann zur Darstellung der Anzeige, wie sie bspw. in 3 dargestellt ist, verwendet werden.
-
Die Anzeige gem. 3 umfasst die Darstellung eines ersten Toleranzwertes „PTP Clock Accuracy“, der durch das PTP und den Standard IEEE 1588 vorgegeben ist, und der im gezeigten Ausführungsbeispiel 100µs beträgt. Der vermittels des PTP bestimmte zeitliche Versatz „PTP Offset“ zwischen der Uhr des Feldgerätes und der Uhr des Referenzzeitgebers beträgt 1833 ns (Nanosekunden). Somit liegt der zeitliche Versatz unterhalb der vorgegebenen Schwelle und die Uhren können gem. den Vorgaben des PTP als synchron bezeichnet werden. Der erste Parameter kann also den Wert „Slave“ bzw. „9“ annehmen, der den als synchron eingestuften Zustand bezeichnet.
-
Da jedoch nicht alle Signale dieselbe Zeit benötigen um über das Netzwerk von einem Teilnehmer zum anderen übertragen zu werden, ist es möglich, dass der zeitliche Versatz aufgrund dieser Verzögerung schwank.
-
Vom einem Benutzer kann ein zweiter Toleranzwert vorgegeben werden, der nicht von dem ersten Toleranzwert der z.B. durch die Norm, vorzugsweise PTP, vorgegebenen ersten Toleranzwert abhängig ist. Der Benutzer kann den zweiten Toleranzwert also frei wählen bzw. eingeben.
-
Durch den zweiten, von dem Benutzer vorgegebenen Toleranzwert von „100“ kann somit unabhängig von dem ersten durch die Norm vorgegebenen Toleranzwert „100µs“ ermittelt werden, ob die Uhren des Feldgerätes und des Referenzzeitgebers auch innerhalb des von dem Benutzer vorgegebenen Toleranzwerts synchron sind. Zu diesem Zweck kann der von dem Benutzer vorgegebene, zweite Toleranzwert mit dem zeitlichen Versatz zwischen der Uhr des Feldgerätes und der Uhr des Referenzzeitgebers verglichen werden. In Abhängigkeit dieses Vergleichs kann dann ein Wert eines zweiten Parameters „PTP Sync State“ gesetzt werden, der angibt, ob der zeitliche Versatz noch innerhalb bzw. unterhalb des von dem Benutzer vorgegebenen, zweiten Toleranzwerts liegt. Bspw. kann der zweite Parameter, der gem. dem Ausführungsbeispiel in 3 die Bezeichnung „PTP Sync State“ trägt, den Parameterwert „Good“ annehmen. Dem Benutzer wird dadurch angezeigt, dass die Uhren bis zu einer von ihm gesetzten Toleranzschwelle synchron sind.
-
Der Synchronisierungszustand „PTP Sync State“ kann dann zur Durchführung einer Kalibrierung eines Feldgerätes genutzt werden. Das Feldgerät kann ein entsprechendes diesen zweiten den Synchronisierungszustand kennzeichnenden Parameter enthaltendes Telegramm an eine Steuereinheit zur Durchführung der Kalibrierung übertragen.
-
4 zeigt ein Ablaufdiagramm zur Bestimmung des ersten und des zweiten den Synchronisierungszustand kennzeichnenden Parameters „Sync State“.
-
Zunächst wird anhand der in der Norm vorgegebene Toleranzwerte ermittelt, ob das Feldgerät sich in dem als „Slave“ bezeichneten Zustand befindet, ob also der erste Parameter den Wert „Slave“ aufweist.
-
Ist dies nicht der Fall wird der zweite Parameter bspw. auf den Wert „Bad“ gesetzt, der angibt, dass die Synchronität außerhalb des durch die Norm vorgegebenen Toleranzwerts liegt.
-
Weist der erste Parameter den Wert „Slave“ auf, d.h. ist die Uhr des Feldgerätes synchron bis zu einer der Toleranzwerte der Norm IEEE 1588, so wird in einem weiteren Verfahrensschritt geprüft, ob der zeitliche Versatz auch innerhalb des von dem Benutzer vorgegebenen Toleranzwert liegt. In 3 ist dies bspw. ein Wert von 100 µs (Mikrosekunden). Ist dies nicht der Fall, so wird der zweite Parameter ebenfalls auf den Wert „Bad“ gesetzt, der angibt, dass die Uhr des Feldgerätes und die Uhr des Referenzzeitgebers außerhalb der von dem Benutzer vorgegebenen Toleranz liegt.
-
Liegt der zeitliche Versatz innerhalb bzw. unterhalb des von dem Benutzer vorgegebenen Toleranzwerts, so wird dem zweiten Parameter „Sync State“ der Wert „Good“ zugewisen, der angibt, dass die Uhr des Feldgerätes und die Uhr des Referenzzeitgebers innerhalb der von dem Benutzer vorgegebenen Toleranz liegt.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- IEEE 1588 [0002]
- „High Precision Clock Synchronization according to IEEE1588, Implementation and Performance Issues“, von Hans Weibel, Zurich University of Applied Sciences, Institute of Embedded Systems (InES) [0004]
- IEEE 1588 [0011]
- IEEE 1855 [0013]
- IEEE 1588 [0030]
- IEEE 1588 [0036]
- IEEE 1588 [0044]