JDayToDateTime, converts Julian day to Date/Time

List

Questa pagina fa parte del Manuale Programmazione IEC 61131-3. Vai all indice.

Il giorno giuliano (Julian Day, JD) è il numero di giorni passati dal mezzogiorno del lunedì 1º gennaio 4713 a.C.[1] Il sistema dei giorni giuliani è stato progettato per fornire agli astronomi un singolo sistema di date che potesse essere usato per lavorare con differenti calendari, e per unificare differenti cronologie storiche, giacché esso non presenta la difficoltà di anni bisestili, cambi di calendario, eccetera.

Fornendo come parametro il giorno giuliano e l’indirizzo di una struttura Data/Ora la funzione compila i campi della struttura con i valori ricavati dal valore di giorno giuliano.

Information Circle

Funzione

CODESYS: Non disponibile

LogicLab: eLLabMathsLib

Descrizione

JDay (LREAL) Valore giorno giuliano.

La funzione ritorna una variabile (DATE_AND_TIME) con la data convertita in data Gregoriana.

Immagine F_JDayToDateTime

Esempi

Come utilizzare gli esempi.
Nel seguente esempio sono eseguite alcune conversioni di date.

LogicLab (Ptp179, ST_JDayToDateTime)
PROGRAM ST_JDayToDateTime
VAR
    GDateTime : ARRAY[0..4] OF DATE_AND_TIME; (* Gregorian Date/Time *)
END_VAR

// *****************************************************************************
// PROGRAM "ST_JDayToDateTime"
// *****************************************************************************
// Example of some Julian day converted to Gregorian date.
// -----------------------------------------------------------------------------

    // Giulian day:2451544.4999884367 is Date: 31/12/1999 23:59:59.

    GDateTime[0]:=JDayToDateTime(LREAL#2451544.4999884367);

    // Giulian day:2451544.5000000000 is Date: 01/01/2000 00:00:00.

    GDateTime[1]:=JDayToDateTime(LREAL#2451544.5000000000);

    // Giulian day:2451544.9999884367 is Date: 01/01/2000 11:59:59.

    GDateTime[2]:=JDayToDateTime(LREAL#2451544.9999884367);

    // Giulian day:2451545.0000000000 is Date: 01/01/2000 12:00:00.

    GDateTime[3]:=JDayToDateTime(LREAL#2451545.0000000000);

    // Giulian day:2451545.4999884367 is Date: 01/01/2000 23:59:59.

    GDateTime[4]:=JDayToDateTime(LREAL#2451545.4999884367);

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