FB_EcExtSyncExtTimes

FB_EcExtSyncExtTimes 1:

Dieser Funktionsbaustein aktiviert bzw. deaktiviert die Synchronisierung der internen und der externen Uhr. Zur Überprüfung der Synchronisierung kann der Funktionsbaustein FB_EcExtSyncIsSynchronized verwendet werden.

Dieser Funktionsbaustein wird zur Synchronisierung zwingend benötigt. Er

  • aktiviert bzw. deaktiviert die Synchronisierung der internen und der externen Uhr.
  • sendet periodisch das Zeitstempelpärchen nExtTime und nIntTime über ADS in das TwinCAT‑Echtzeit‑System.

Der Funktionsbaustein sollte höchstens alle 2‑5 ms aufgerufen werden. Bei jedem Aufruf sollte dem Funktionsbaustein ein neues/frisches Zeitstempelpärchen mitgegeben werden, da der Aufruf sonst sinnlos ist. Die Häufigkeit des Funktionsbausteinaufrufs hat Einfluss auf die Qualität der Zeitregelung. Je häufiger der Funktionsbaustein aufgerufen wird, desto besser kann das nachgeregelte System arbeiten. Bei guter Zeitstempelqualität kann ein Aufruf pro Sekunde z. B. durch ein PPS-Signal (PulsePerSecond) ausreichen.

VAR_INPUT

VAR_INPUT
    sNetId   : T_AmsNetId;
    bEnable  : BOOL;
    nExtTime : T_DCTIME64;
    nIntTime : T_DCTIME64;
END_VAR

sNetId: String, der die AMS-Netzwerkkennung des EtherCAT-Master-Geräts enthält (Typ: T_AMSNetId)

bEnable: Mit bEnable = TRUE wird die Synchronisierung aktiviert. Mit bEnable = FALSE wird die Synchronisierung deaktiviert.

nExtTime: externer Zeitstempel

nIntTime: interner Zeitstempel

VAR_OUTPUT

VAR_OUTPUT
    bTS1Done      : BOOL;
    bError        : BOOL;
    nErrorId      : UDINT;
    stFirstSendTS : ST_ExtTimingTimes;
END_VAR

bTS1Done: Dieser Ausgang wird gesetzt, wenn die Synchronisierung erstmalig aktiviert wird und die internen und externen Zeitstempel in den EtherCAT-Master geschrieben werden.

bError: Dieser Ausgang wird gesetzt, wenn bei der Ausführung des Befehls ein Fehler auftritt.

nErrorId: Dieser Ausgang liefert bei einem gesetzten bError-Ausgang den Fehlercode.

stFirstSendTS: Dieser Ausgang wird auf die internen und externen Zeitstempel gesetzt, die in den EtherCAT-Master geschrieben werden. (Typ: ST_ExtTimingTimes)

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliothek (Kategoriegruppe)

TwinCAT v3.1.0

PC oder CX (x86, x64, ARM)

Tc3_EtherCATExtSync