Vai al contenuto
Vai all indice del manuale di programmazione
Tipo: Funzione
Libreria LogicLab: eLLabCommonLib
Libreria Codesys: Non disponibile

Dalla versione 5.20.x.xx LogicLab supporta tutte le funzioni di gestione data ed ora richieste dalla norma CEI EN 61131-3 nella Parte 3: Linguaggi di programmazione. Per un elenco delle funzioni rimandiamo al manuale LogicLab. Nella libreria eLLabMathsLib forniamo funzioni e blocchi funzioni per la gestione della data e dell’ora.

IsLeapYear, is leap year

Fornendo il valore di anno la funzione ritorna una variabile BOOL con indicazione se l’anno è bisestile. FALSE: Non è bisestile, TRUE: Bisestile.

Descrizione

Year (UINT) Valore anno.

La funzione ritorna una variabile (BOOL) FALSE: Non è bisestile, TRUE: Bisestile.

Immagine F_IsLeapYear

DayOfYearGet, returns the day of year

Fornendo una data la funzione ritorna una variabile UINT con indicazione del giorno dell’anno.

Descrizione

YDate (DATE) Valore Data.

La funzione ritorna una variabile (UINT) con l’indicazione del giorno dell’anno.

Immagine F_DayOfYearGet

Esempi

Come utilizzare gli esempi.
Esempio di utilizzo funzioni gestione Data/Ora.

LogicLab (Ptp201, ST_DateTimeFcts)
PROGRAM ST_DateTimeFcts
VAR
    IsLeap : ARRAY[0..3] OF BOOL; (* Is leap year *)
    DOYear : ARRAY[0..3] OF UINT; (* Day of year *)
END_VAR

// *****************************************************************************
// PROGRAM "ST_DateTimeFcts"
// *****************************************************************************
// Here some day of year calculation.
// -----------------------------------------------------------------------------

    // -------------------------------------------------------------------------
    // LEAP YEAR
    // -------------------------------------------------------------------------
    // Here some years are checked is leap or not.

    IsLeap[0]:=IsLeapYear(1970); //Not leap year
    IsLeap[1]:=IsLeapYear(1995); //Not leap year
    IsLeap[2]:=IsLeapYear(2000); //Leap year
    IsLeap[3]:=IsLeapYear(2010); //Not leap year

    // -------------------------------------------------------------------------
    // DAY OF YEAR
    // -------------------------------------------------------------------------
    // Example how to calculate the day of year of a defined Date.

    DOYear[0]:=DayOfYearGet(CONCAT_DATE(2000, 12, 31)); //31/12/2000 -> 366
    DOYear[1]:=DayOfYearGet(CONCAT_DATE(2001, 1, 1)); //1/1/2001 -> 1
    DOYear[2]:=DayOfYearGet(CONCAT_DATE(2001, 12, 31)); //31/12/2001 -> 365
    DOYear[3]:=DayOfYearGet(CONCAT_DATE(2021, 6, 15)); //15/06/2021 -> 166

// [End of file]
Was this article helpful?