FB_EcDcTimeCtrl64

Mit diesem Funktionsbaustein können die einzelnen Komponenten wie Jahr, Monat, Tag usw. einer 64-Bit-„Distributed Clock System Time“-Variable vom Typ T_DCTIME64 gelesen werden. Der Funktionsbaustein besitzt mehrere A_GETXYZ- Aktionen. Nach dem Aufruf der gewünschten Aktion steht der Wert der XYZ- Komponente in der get-Ausgangsvariablen zur Verfügung. Die put- Eingangsvariabel wird zurzeit nicht benutzt.
Der Funktionsbaustein besitzt folgende Aktionen:
- A_GetYear
- A_GetMonth
- A_GetDay
- A_GetDayOfWeek
- A_GetHour
- A_GetMinute
- A_GetSecond
- A_GetMilli
- A_GetMicro
- A_GetNano
Eingänge
VAR_IN_OUT
put : WORD;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
put | WORD | Eingangsparameter (zurzeit nicht benutzt) |
Ein-/Ausgänge
VAR_IN_OUT
in : T_DCTIME64;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
in | T_DCTIME64 | Die zu konvertierende „Distributed Clock System Time”-Variable |
Ausgänge
VAR_IN_OUT
bError : BOOL;
get : WORD;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bError | BOOL | Dieser Ausgang wird gesetzt, wenn ein Fehler beim Aktionsaufruf aufgetreten ist. |
get | WORD | Ausgangsparameter (Jahr, Monat, Tag, usw.) |
Beispiel für eine Implementierung in ST:
PROGRAM P_TEST
VAR
dcStruct : DCTIMESTRUCT;
dcTime : T_DCTIME64;
fbCtrl : FB_EcDcTimeCtrl;
wYear : WORD;
wMonth : WORD;
wDay : WORD;
wDayOfWeek : WORD;
wHour : WORD;
wMinute : WORD;
wSecond : WORD;
wMilli : WORD;
wMicro : WORD;
wNano : WORD;
END_VAR
dcTime := F_GetCurDcTickTime64();
fbCtrl.A_GetYear( in := dcTime, get => wYear );
fbCtrl.A_GetMonth( in := dcTime, get => wMonth );
fbCtrl.A_GetDay( in := dcTime, get => wDay );
fbCtrl.A_GetDayOfWeek( in := dcTime, get => wDayOfWeek );
fbCtrl.A_GetHour( in := dcTime, get => wHour );
fbCtrl.A_GetMinute( in := dcTime, get => wMinute );
fbCtrl.A_GetSecond( in := dcTime, get => wSecond );
fbCtrl.A_GetMilli( in := dcTime, get => wMilli );
fbCtrl.A_GetMicro( in := dcTime, get => wMicro );
fbCtrl.A_GetNano( in := dcTime, get => wNano );
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS- Bibliotheken |
---|---|---|
TwinCAT v3.1.0 | PC oder CX (x86, x64, Arm®) | Tc2_EtherCAT |