Übersicht

Steuerungen erzeugen Daten, welche in modernen, verteilten Anlagen gesammelt und in Verbindung gebracht werden sollen.
Da Steuerungen erstmal alleinstehende Geräte sind, besitzen diese auch unabhängige Zeitbasen. In einer gemeinsamen Datenbank würden Daten damit nicht in zeitliche Korrelation gebracht werden können.

Um diesem Problem zu begegnen ist es seit langer Zeit möglich Steuerungen untereinander zu synchronisieren, dazu dient beispielsweise das Netzwerkprotokoll IEEE1588, bzw. PTP.
In vielen Szenarien reicht es jedoch aus, die Daten mit einem einheitlichen Zeitstempel zu versehen, die Steuerungen jedoch unabhängig voneinander zu betreiben, sodass zum einen die mit den oben genannten Protokollen verbundenen Hardwarekosten reduziert werden, zum anderen aber auch keine technische Abhängigkeit zwischen den Steuerungen existiert.
In diesem Kapitel werden deswegen die TwinCAT Komponenten zur Adaption von Zeitstempeln für das Speichern von zeitsynchronen Daten beschrieben.

Übersicht 1:

Die Abbildung verdeutlicht die grundlegende Idee: Unabhängige Steuerungen beziehen den lokalen Zeitstempel und passen diesen mittels eines Offset an, welcher dann für die Speicherung der gemeinsamen Daten verwendet wird.

Hierfür steht in der TwinCAT Echtzeit eine zentrale Komponente bereit, das „External Time Interface“. Diese Komponente

Diese korrigierte Uhrzeit kann nun von unterschiedlichen Komponenten innerhalb und außerhalb der Echtzeit verwendet werden.

Als Quelle dient typischerweise entweder ein NTP Server oder ein DC-Zeitsignal basierend auf EtherCAT und z. B. synchronisiert mittels EL6688 durch PTP (IEEE1588). Eine Quelle kann aber auch vom Kunden implementiert werden, sodass andere Zeitsignale als Quelle realisiert werden können.

Neben der oben beschriebenen zentralen Komponente in der TwinCAT Echtzeit umfasst das Konzept also zwei Arten von Komponenten:

  1. External Time Provider: Stellen einen Offset für die Anpassung von Zeitstempeln der zentralen Komponente bereit.
    Ein Provider bezieht z. B. via NTP (Network Time Protocol, vgl. RFC 4330) einen Zeitstempel, woraus er im Vergleich zu der lokalen Systemzeit einen Offset berechnet und diesen bereitstellt.
  2. External Time Consumer: Verwenden einen Offset, den sie aus der zentralen Komponente beziehen. Somit kann in den Komponenten ein Zeitstempel verwendet werden, der auf entfernten Geräten zu vergleichbaren Daten führt.
    Als Consumer kommen dabei alle TwinCAT Komponenten, welche Zeitstempel verwenden in Frage, aber auch Kundenanwendungen.