RTC_EX2

RTC_EX2 1:

Mit dem Funktionsbaustein "RTC_EX2" (Extended Real Time Clock) kann eine interne Software-Uhr in der TwinCAT SPS realisiert werden. Die Uhr muss mit einem Anfangsdatum und einer Uhrzeit initialisiert werden. Nach der Initialisierung wird die Uhrzeit und das Datum mit jedem Aufruf des Funktionsbausteins aktualisiert. Um die aktuelle Uhrzeit und das Datum zu berechnen, wird ein Systemtakt der CPU benutzt. Damit die aktuelle Zeit berechnet werden kann, sollte der Funktionsbaustein in jedem Zyklus der SPS einmal aufgerufen werden. Am Ausgang des Funktionsbausteines steht das aktuelle Datum und Uhrzeit in dem Windows-Systemzeitformat zur Verfügung. Im Gegensatz zu dem RTC-Funktionsbaustein hat RTC_EX2 eine Mikrosekunden-Genauigkeit. In einem SPS-Programm können mehrere Instanzen von dem RTC_EX2-Funktionsbaustein erzeugt werden.

RTC_EX2 2:

Abweichung der RTC_EX2-Zeit von einer Referenzzeit

Bedingt durch die Systemeigenschaften weicht die RTC_EX2-Zeit von einer Referenzzeit ab. Die Abweichung ist abhängig von der Zykluszeit der SPS, dem Wert des System-Basis-Ticks und der verwendeten Hardware.

Um größere Abweichungen zu vermeiden, muss die RTC_EX2-Instanz zyklisch (z. B. mit einer Funkuhr oder mit der lokalen Windows-Systemzeit) synchronisiert werden. Die lokale Windows-Systemzeit können Sie wiederum mit der Hilfe des SNTP-Protokolls mit einer Referenzzeit synchronisieren.

VAR_INPUT

VAR_INPUT
   EN      : BOOL;
   PDT     : TIMESTRUCT;
   PMICRO  : DWORD;
END_VAR

EN: Bei einer steigenden Flanke an diesem Eingang wird der RTC_EX2-Funktionsbaustein mit vorgegebener Uhrzeit, Datum und Millisekunden neu initialisiert.

PDT: (Preset Date and Time) Die Initialisierungswerte für Datum und Uhrzeit des Funktionsbausteins (Typ: TIMESTRUCT). Bei einer steigenden Flanke an dem EN-Eingang wird dieser Wert von dem Funktionsbaustein übernommen.

PMICRO: (Preset Microseconds) Der Initialisierungswert für die Mikrosekunden. Bei einer steigenden Flanke an dem EN-Eingang wird dieser Wert von dem Funktionsbaustein übernommen.

VAR_OUTPUT

VAR_OUTPUT
   Q      : BOOL;
   CDT    : TIMESTRUCT;
   CMICRO : DWORD;
END_VAR

Q: Wurde der Funktionsbaustein mindestens einmal initialisiert, wird dieser Ausgang gesetzt. Ist dieser Ausgang gesetzt, dann sind die Werte für Datum, Uhrzeit und Millisekunden am PDT-Ausgang und CMICRO-Ausgang gültig.

CDT: (Current Date and Time) Aktuelles Datum und Uhrzeit von der RTC_EX2-Instanz (Typ: TIMESTRUCT). Der CDT-Ausgang wird nur dann aktualisiert, wenn der Funktionsbaustein aufgerufen wurde. Daher sollten die Instanzen des Funktionsbausteines einmal in jedem Zyklus der SPS aufgerufen werden.

CMICRO: (Current Microseconds) Der Mikrosekunden-Ausgang.

Beispiel:

Siehe: Beispiel: Software-Uhren (RTC, RTC_EX, RTC_EX2).

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.0

PC oder CX (x86, x64, ARM)

Tc2_Utilities (System)