Herunterladen Inhalt Inhalt Diese Seite drucken

Beckhoff EL6688 Dokumentation Seite 89

Ieee-1588-ptp-external-synchronisation-interface
Vorschau ausblenden Andere Handbücher für EL6688:
Inhaltsverzeichnis

Werbung

Antworten auf häufig gestellte Fragen
Frage
Antwort
Welche Zeitbasis eignet
Um Zeitsprünge zu vermeiden (die zu ungewünschten Effekten innerhalb einer Anlage führen können), ist
sich zur Synchronisation
es ratsam, eine konstant ansteigende Zeit (z.B. ohne Schaltsekunden) zu verwenden, wie beispielsweise die
verteilter Systeme?
internationale Atomzeit [französisch Temps Atomique International (TAI)].
Die koordinierte Weltzeit [englisch Coordinated Universal Time (UTC)] hingegen birgt die Gefahr von
Zeitsprüngen (durch Schaltsekunden) ist dafür jedoch synchron zur Sonnenzeit und somit für viele Prozesse
"alltagstauglicher".
Trotzdem wird von der Nutzung der UTC abgeraten, da (für die Steuerung unvorhersehbare) Zeitsprünge
den ordnungsgemäßen Betrieb einer Anlage erheblich stören können.
Worauf ist zu achten,
Sollte eine Schaltsekunde beinhaltende Zeit gewählt werden, werden hierfür verschiedene Informationen im
wenn Sonnenzeiten (z.B.
CoE bereitgestellt, welche sich in der Steuerung verarbeiten lassen. Die aktuelle Anzahl an Schaltsekunden
UTC) verwendet werden
(CoE: CurrentUtcOffset (0xFA80.0B)) sowie Ankündigungen möglicher weiterer Schaltevents (CoE: Leap61
sollen?
(0xFA80.0D) für plus 1s und Leap59 (0xFA80.0E) für minus 1s) werden übermittelt und sollten vom Anwen-
der ausgewertet werden, um in einem solchen Fall beispielsweise vorsorglich Achsen in einen sicheren Zu-
stand bringen zu können.
Wie berechnet sich eine
Sofern eine externe Zeitquelle (z.B. ein GPS-gestützter PTP-Master) über die EL6688 mit TwinCAT verbun-
absolute Zeit, wie bei-
den ist, lässt sich die UTC Zeit über folgende Formel berechnen:
spielsweise die UTC?
UTCabsolut := F_GetCurDcTaskTime64() + DcToTcTimeOffset + leapSeconds + DcToExtTimeOffset
● UTCabsolut - Task aktuelle UTC Zeit als Abstand in Nanosekunden vom 1.1.2000 00:00.
● F_GetCurDcTaskTime64() - liefert die Startzeit (als T_DCTIME64 alias ULINT) der Task in der sie aufge-
rufen wurde. Teil von SPS Bibliotek: Tc2_EtherCAT.lib
● DcToTcTimeOffset - während des TwinCAT-System-Starts wird die TC Zeit durch die Windowsuhr initiali-
siert. Sofern die externe Uhr während des Systemstarts auch zur Verfügung steht, werden Abweichungen
zwischen diesen Uhren hiermit ausgeglichen.
● leapSeconds - Da TwinCAT intern mit der TAI Zeit arbeitet müssen bisher eingeführte Schaltsekunden
hinzuaddiert werden (Stand Juli 2015: 36 Sekunden) (siehe auch EL6688-CoE: CurrentUtcOffset
(0xFA80.0B)).
● DcToExtTimeOffset - Um größere Abweichungen, die während des Betriebs (z.B. durch Verlust der Ver-
bindung zur externen Uhr) zwischen der externen Uhr und der DC Zeit entstehen, zu händeln, welche sich
nicht mehr automatisch ausregeln lassen, nutzt TwinCAT diese Offset-Variable.
Wieso ist mal DcToTcTi-
Während der Entwicklungsphase einer Steuerung ist die Einstellung "Auto Boot" unter "Boot Settings" des
meOffset = 0 und mal Dc-
TwinCAT Systems möglicherweise noch auf "Config Mode". Sofern dies der Fall ist, kann TwinCAT während
ToExtTimeOffset = 0?
der Startphase (selbst bei physikalischer Verbindung zwischen PTP Master und EL6688) nicht auf die exter-
ne Uhr zugreifen - somit bleibt DcToTcTimeOffset = 0 und der Unterschied wird von TwinCAT in DcToExtTi-
meOffset eingetragen.
Erst durch Setzen der Einstellung "Auto Boot" auf "Run Mode (Enable)" kann TwinCAT während der Start-
phase auch auf die Externe Uhr zugreifen und somit den Offset verarbeiten und in der Variable "DcToTcTi-
meOffset" speichern.
Wie wird aus einer
sXXX := DCTIME64_TO_STRING(tXXX)
T_DCTIME64 Variable
● tXXX - 503764149978700026 - DCTIME64 alias ULINT: Zeit als Abstand in Nanosekunden vom 1.1.2000
etwas Menschenlesba-
00:00
res?
● sXXX - '2015-12-18-14:29:09.978700026' - STRING(29):
● DCTIME64_TO_STRING() - Verwandelt eine T_DCTIME64 zu einem 29 Zeichen langen String. Teil von
SPS Bibliotek: Tc2_EtherCAT
Fehler in PTP Diagnose:
● Kontrollieren Sie die Übereinstimmung der PTP Settings zwischen PTP Master und EL6688 (CoE:
PTP State wechselt nicht
0xF882).
von „LISTENING" zu
● Kontrollieren Sie die Netzwerkeinstellungen zwischen dem PTP Master und der EL6688 (CoE: 0xF8E0).
„SLAVE"
IP Adresse muss ungleich Null sein.
Fehler in PTP Diagnose:
● Kontrollieren Sie, ob der "Auto Boot" auf "Run Mode" eingestellt ist und starten Sie das System neu.
„Offset From Master"
● Entsprechend der verwendeten Hardware und deren Genauigkeit (beispielsweise: kleiner ±1000ns = 1µs
schwingt sich nicht um
bei einem GPS gestützten System) schwingt der Wert „Offset From Master" entsprechend dieser Genauig-
„0" herum ein
keit.
Eine Erhöhung des Sync Intervals (CoE: OxF882.3) kann die Genauigkeit verbessern, erhöht jedoch auch
den netzwerkseitigen Traffic.
Default Zustand
• PTPv1 Slave (Index 0xF880:01)
• SyncInterval (Index 0xF881:03): 2 Sekunden
• DomainName (Index 0xF881:01): _DFLT
• eigene IP: 0.0.0.0
• eigene MAC: 00.01.05.xx.xx.xx (Beckhoff)
EL6688
Version: 2.4
Inbetriebnahme
89

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis