Impostazione di data e ora del controller

Panoramica

Per impostare l'RTC del controller in base a un formato strutturato ed ergonomico, è necessario utilizzare due funzioni diverse.

  1. Convertire il timestamp nel formato SYSTIMEDATE dal formato UNIX utilizzando la funzione SysTimeRtcConvertDateToUtc o SysTimeRtcConvertDateToHighRes.

  2. Scrivere l'RTC utilizzando le funzioni SysTimeRtcSet o SysTimeRtcHighResSet.

NOTA: Alcuni controller supportano una funzione per la correzione settimanale dell'orologio in tempo reale. Il nome di questa funzione è SetRTCDrift. L'uso di questa funzione potrebbe essere un'alternativa all'uso di SysTimeRtcSet per il riallineamento continuo di RTC. Consultare la Guida della libreria PLCSystem del controller per verificare se la funzione è supportata e per ottenere ulteriori informazioni su questa funzione.
NOTA: Dato che solo l'ora UTC (Coordinated Universal Time) è univoca a livello globale, sulla maggior parte dei sistemi viene archiviata ed elaborata solo l'ora UTC.

Schema di principio - Impostare l'RTC del controller nella risoluzione standard

Esempio

Questo esempio di programma può essere utilizzato per impostare l'orologio in tempo reale del controller con una data e un'ora definite dall'utente.

Dichiarazione di variabile:

VAR

uiSetYear: UINT;

uiSetMonth: UINT;

uiSetDay: UINT;

uiSetHour: UINT;

uiSetMinute: UINT;

uiSetSecond: UINT;

uiSetMSecond: UINT

udiResultConvertToUtc: UDINT;

dwSetTimeStamp: DWORD;

xCommandSetRtc: BOOL;

uidResultRtcSet: UDINT;

END_VAR

Programma POU:

1 Assegnare il parametro di data e ora alla struttura.

2 Convertire il formato SYSTIMEDATE in un valore timestamp.

3 Impostare il controller RTC con il nuovo timestamp se xCommandSetRtc = TRUE e la conversione è riuscita.