FP_NTP_SET_SERVER

Impostare la connessione server NTP

Questa istruzione FP imposta un server di destinazione NTP al quale è possibile inviare una richiesta di sincronizzazione data e ora.

Parametri

Ingresso

sNTPServer (STRING)

Indirizzo IP o nome host (parametro richiesto).

  • Indirizzo IP

    Per un indirizzo IP, specificare la parola chiave IPv4 o IPv6 all'inizio.

    Sintassi per IPv4: p.es. 'IPv4=111.122.133.144'

    Sintassi per IPv6: p.es. 'IPv6=1111:122:2:1555:0:0:1888'

  • Nome host

    Parola chiave: HOST

    Sintassi: p.es. 'HOST=ntp.pidsx.com'

Uscita

bError (BOOL)

Impostare su TRUE quando l'operazione termina in modo anomalo senza esecuzione, p.es. quando sys_bIsEthernetInitializing è TRUE

Quando si verifica un errore, controllare la variabile di sistema sys_iEthernetConnectionErrorCode per verificare il numero di codice di errore.

Note

  • Questa istruzione non è disponibile nei programmi di interrupt.

  • L'indirizzo del server NTP è impostato nella CPU (ET-LAN integrata) secondo sNTPServer.

  • I dati già impostati nei registri di sistema (Ethernet > Sincronizzazione data e ora) non sono validi e la richiesta di sincronizzazione data e ora NTP viene eseguita nel momento specificato da tale istruzione.

  • Nei seguenti casi il PLC torna alle impostazioni dei registri di sistema:

    • L'alimentazione viene scollegata.

    • Si passa da Modo PROG a Modo RUN.

    • Si passa a un progetto diverso.

  • I dati di impostazione non andranno persi anche se l'istruzione FP_IPV4_SET_ADDRESS viene eseguita.

  • Prima di eseguire l'istruzione, assicurarsi che sys_bIsEthernetInitializing sia FALSE. sys_bIsEthernetInitializing passa a TRUE quando l'istruzione viene eseguita. Se si esegue l'istruzione mentresys_bIsEthernetInitializing è TRUE, si verifica un errore.

  • Quando questa istruzione è stata eseguita correttamente, le variabili di sistema sys_bIsCarry e sys_iEthernetConnectionErrorCode vengono resettate.

  • Se l'istruzione non è stata eseguita con successo, verificare il codice del risultato di esecuzione nell'uscita nResult dell'istruzione FP_NTP_SYNCHRONIZE.

  • Quando si verifica un errore, controllare la variabile di sistema sys_iEthernetConnectionErrorCode per verificare il numero di codice di errore.

Flag di errore

sys_bIsOperationErrorHold (passa a TRUE e resta TRUE)
  • se un valore specificato per un parametro è fuori dall'intervallo utilizzabile.

  • se l'istruzione viene eseguita in un programma di interrupt

  • se il sistema sincronizza la data e l'ora con il server NTP.

sys_bIsOperationErrorNonHold (passa a TRUE per una scansione)
  • se un valore specificato per un parametro è fuori dall'intervallo utilizzabile.

  • se l'istruzione viene eseguita in un programma di interrupt

  • se il sistema sincronizza la data e l'ora con il server NTP.

sys_bIsCarry (passa a TRUE per una scansione)

se l'istruzione viene eseguita durante l'inizializzazione di Ethernet, sys_iEthernetConnectionErrorCode viene impostato su "11: Ethernet viene inizializzato".

Example

POU header

All input and output variables used for programming this function have been declared in the POU header.The same POU header is used for all programming languages.

	VAR
		sNTPServer: STRING[32]:='IPv4=192.168.2.1';
		bIsError: BOOL:=FALSE;
		bEnable: BOOL:=FALSE;
			END_VAR

LD body

When the system variable sys_bIsEthernetInitializing is FALSE and the variable bEnable is set to TRUE, the function is carried out.

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,1,8,3,N);
B(B_CONTACT,,bEnable,14,1,16,3,);
B(B_F,FP_NTP_SET_SERVER!,,22,0,33,4,,?DEN?DsNTPServer?AENO?AbError);
B(B_VARIN,,sNTPServer,20,2,22,4,);
B(B_VAROUT,,bIsError,33,2,35,4,);
L(1,0,1,5);
L(1,2,6,2);
L(8,2,14,2);
L(16,2,22,2);
        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

ST body

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

L'ultima revisione: 2024-03-08Feedback su questa paginaPanasonic hotline