FP_NTP_SET_SYNCHRONIZE_TIME

Establecer la hora de sincronización del servidor NTP

Esta instrucción FP establece la hora para ejecutar una sincronización de tiempo automática con el servidor NTP.

Parámetros

Entrada

sSynchronizeTime (STRING)

Especifica la hora para la sincronización de tiempo automática con el servidor NTP.

Ajustar la hora con uno o más de los siguientes ajustes de palabra clave:

  • Sincronización diaria (parámetro opcional)

    Palabra clave: DAY

    Sintaxis: 'DAY=xxx'

    Valores: DISABLE, HHMM

    HH=horas (0–23), MM=minutos (0–59)

    Ejemplos:

    1. Sin sincronización diaria: 'DAY=DISABLE'

    2. Diariamente a las 13:30: 'DAY=1330'

  • Sincronización semanal (parámetro opcional)

    Palabra clave: WEEK

    Sintaxis: 'WEEK=xxxxx'

    Valores: DISABLE, WHHMM

    W=día de la semana (0=Domingo, 1=Lunes, 2=Martes, 3=Miércoles, 4=Jueves, 5=Viernes, 6=Sábado), HH=horas (0–23), MM=minutos (0–59)

    Ejemplos:

    1. Sin sincronización semanal 'WEEK=DISABLE'

    2. Todos los domingos a las 23:59: 'WEEK=02359'

  • Sincronización mensual (parámetro opcional)

    Palabra clave: MONTH

    Sintaxis: 'MONTH,xxxxxx'

    Valores: DISABLE, DDHHMM

    DD=día (0–28), HH=horas (0–23), MM=minutos (0–59)

    Ejemplos:

    1. Sin sincronización mensual: 'MONTH=DISABLE'

    2. Día 15 de cada mes a las 15:30: 'MONTH=150330'

Salida

bError (BOOL)

Ajustar a TRUE cuando la operación termine anormalmente sin ejecución, p. ej., sys_bIsEthernetInitializing es TRUE

Cuando se produce un error, consulte la variable del sistema sys_iEthernetConnectionErrorCode para conocer el número de código de error.

Observaciones

  • Esta instrucción no está disponible en los programas de interrupción.

  • No cambiar el orden de las palabras clave. Especificar las palabras clave y sus parámetros de ajuste en el orden en que se enumeran aquí.

  • Se puede omitir una parte de la sintaxis del parámetro. Los ajustes no se modifican cuando los parámetros se omiten parcialmente.

  • Al omitir la parte que precede a una palabra clave especificada, omitir solo la palabra clave, pero no la coma "," que separa las palabras clave: ',,MONTH=150300'.

  • Al omitir la parte que va después de una palabra clave especificada, omitir tanto la coma "," como la palabra clave: 'DAY=1130,WEEK=DISABLE'.

  • No especificar la misma palabra clave más de una vez. Si se especifica la misma palabra clave más de una vez, se produce un error.

  • El tiempo de la solicitud de sincronización horaria del servidor NTP se establece de acuerdo con sSynchronizeTime.

  • Los datos que ya están configurados en los registros del sistema (sincronización de tiempo Ethernet > ) no son válidos y la solicitud de sincronización de tiempo NTP se ejecuta a la hora especificada por esta instrucción.

  • El PLC vuelve a la configuración de los registros del sistema en los siguientes casos:

    • La alimentación se desconecta.

    • Se pasa de Modo PROG a Modo RUN.

    • Se pasa a otro proyecto.

  • Los datos de ajuste no se perderán aunque se ejecute la instrucción FP_IPV4_SET_ADDRESS.

  • Antes de ejecutar la instrucción, asegurarse de que sys_bIsEthernetInitializing es FALSE. sys_bIsEthernetInitializing pasa a TRUE cuando se ejecuta la instrucción. Cuando ejecuta la instrucción mientras sys_bIsEthernetInitializing es TRUE, se produce un error.

  • Cuando esta instrucción se ha ejecutado con éxito, las variables del sistema sys_bIsCarry y sys_iEthernetConnectionErrorCode se reinician.

  • Cuando se produce un error, consulte la variable del sistema sys_iEthernetConnectionErrorCode para conocer el número de código de error.

Banderas de error

sys_bIsOperationErrorHold (pasa a TRUE y permanece TRUE)
  • Si el valor especificado para un parámetro está fuera del rango permitido.

  • si la instrucción se ejecuta en un programa de interrupción

  • Si el sistema sincroniza la hora con el servidor NTP.

sys_bIsOperationErrorNonHold (pasa a TRUE para un ciclo de scan)
  • Si el valor especificado para un parámetro está fuera del rango permitido.

  • si la instrucción se ejecuta en un programa de interrupción

  • Si el sistema sincroniza la hora con el servidor NTP.

sys_bIsCarry (pasa a TRUE para un ciclo de scan)

si la instrucción se ejecuta durante la inicialización de Ethernet, sys_iEthernetConnectionErrorCode pasa a "11: Ethernet se está inicializando".

Ejemplo

Cabecera de la POU

Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU.Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.

	VAR
		sSynchronizeTime: STRING[32]:='DAY=1130,WEEK=62345,MONTH=280200';
		bIsError: BOOL:=FALSE;
		bEnable: BOOL:=FALSE;
			END_VAR

Cuerpo LD

Cuando la variable del sistema sys_bIsEthernetInitializing está a FALSE y la variable bEnable pasa a TRUE, se ejecuta la función.

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_CONTACT,,sys_bIsEthernetInitializing,6,2,8,4,N);
B(B_CONTACT,,bEnable,14,2,16,4,);
B(B_F,FP_NTP_SET_SYNCHRONIZE_TIME!,,22,1,38,5,,?DEN?DsSynchronizeTime?AENO?AbError);
B(B_VARIN,,sSynchronizeTime,20,3,22,5,);
B(B_VAROUT,,bIsError,38,3,40,5,);
L(1,0,1,5);
L(1,3,6,3);
L(8,3,14,3);
L(16,3,22,3);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Cuerpo en ST

if NOT (sys_bIsEthernetInitializing) AND (bEnable) then
    FP_NTP_SET_SYNCHRONIZE_TIME(sSynchronizeTime := sSynchronizeTime,
    bError => bIsError);
end_if;

Modificado el: 2024-11-13Comentarios sobre esta páginaLínea directa de Panasonic