Presentazione della libreria

 

Informazioni generali

Panoramica della libreria

La libreria TimeSync implementa la funzionalità client SNTP (Simple Network Time Protocol) che consente al controller di collegarsi a un server dell'ora NTP (Network Time Protocol) o SNTP per sincronizzare il RTC (Real-Time Clock) interno del controller con lo standard orario primario UTC (Universal Time Coordinated) univoco globalmente.

Il client SNTP è conforme con la versione 4 del protocollo SNTP.

Fornisce le seguenti funzioni:

oGenerazione di una richiesta a un server (S)NTP

oRicezione e strutturazione della risposta del server (S)NTP

oCalcolo del ritardo round-trip e dell'offset dell'orologio

oFornire il timestamp sincronizzato per la sincronizzazione del RTC del controller e prendere in considerazione l'offset tra RTC locale e ora del server (S)NTP oltre al ritardo round-trip

oGestione degli errori rilevati

G-SE-0059350.2.gif-high.gif

 

1   Server dell'ora: SNTP o NTP

2   Controller X: client SNTP

3   Controller Y: client SNTP

Caratteristiche della libreria

La seguente tabella indica le caratteristiche della libreria:

Caratteristiche

Valore

Titolo della libreria

TimeSync

Società

Schneider Electric

Categoria

Comunicazione

Spazio dei nomi predefinito

TIMS

Attributo del modello del linguaggio

Solo accesso qualificato

Libreria compatibile con le versioni successive

Sì (FCL)

NOTA: Per questa libreria è impostato il solo accesso qualificato. Questo significa che l'accesso alle POU, alle strutture dati, alle enumerazioni e alle costanti deve avvenire utilizzando lo spazio dei nomi della libreria. Lo spazio dei nomi predefinito della libreria è TIMS.

Progetto di esempio

Insieme alla libreria è fornito il progetto di esempio FB_SntpClient.project. Il progetto di esempio mostra come implementare i componenti dalla libreria TimeSync.

Passo

Azione

Commento

1

In EcoStruxure Machine Expert Logic Builder, eseguire il comando Nuovo progetto.

2

Nella finestra di dialogo Nuovo progetto, selezionare Da esempio nell'elenco Tipo di progetto.

3

Sul lato destro della finestra di dialogo Nuovo progetto, selezionare il controller (1) nell'elenco Controller.

Risultato: gli esempi disponibili vengono elencati nella casella di testo Esempi corrispondenti.

4

Selezionare l'esempio nell'elenco Esempi corrispondenti.

5

Specificare il nome per il nuovo progetto e selezionare il percorso del file.

6

Fare clic su OK.

Risultato: viene creato un nuovo progetto in base all'esempio selezionato.

Considerazioni generali

NOTA: Se si imposta l'RTC del controller, vengono generate voci nel file di registro del controller, pertanto non utilizzare questa funzione più di una volta al giorno per le regolazioni automatiche.

L'intervallo di valori consentiti in cui il RTC (Real-Time Clock) interno del controller può essere impostato dal blocco funzione è limitato a 01.01.1970...01.01.2100. La precisione dipende dal server (S)NTP in uso. È possibile raggiungere la precisione massima di 1 s per la sincronizzazione UTC.

NOTA: Le voci nel file di registro del controller vengono salvate con un timestamp. Tenere presente che quando si porta il RTC (Real-Time Clock) interno del controller indietro nel tempo, si possono ottenere due diversi voci di registro salvate con un timestamp apparentemente inappropriato.

Considerare le limitazioni seguenti per la comunicazione (S)NTP:

oÈ supportato solo IPv4 (Internet Protocol, versione 4).

oÈ consentita solo una richiesta a un server dell'ora (S)NTP alla volta.

oLa libreria TimeSync incorpora dei puntatori agli indirizzi.

oNon utilizzare un intervallo di interrogazione inferiore a 15 secondi.

oUtilizzare server locali qualora disponibili per evitare traffico non necessario sulla rete backbone.

L'esecuzione del comando Modifica in linea può modificare il contenuto degli indirizzi.

Caution_Color.gifATTENZIONE

PUNTATORE NON VALIDO

Verificare la validità del puntatore quando si utilizzano i puntatori sugli indirizzi e durante l'esecuzione del comando Modifica in linea.

Il mancato rispetto di queste istruzioni può provocare infortuni o danni alle apparecchiature.

La libreria descritta in questo documento utilizza internamente la libreria TcpUdpCommunication.

Le librerie TcpUdpCommunication (Schneider Electric) e CAA Net Base Services (CAA Technical Workgroup) utilizzano le stesse risorse di sistema sul controller. L'uso contemporaneo di entrambe le librerie nella stessa applicazione può portare a disturbi durante il funzionamento del controller.

Warning_Color.gifAVVERTIMENTO

FUNZIONAMENTO IMPREVISTO DELL'APPARECCHIATURA

Non utilizzare la libreria TcpUdpCommunication (Schneider Electric) insieme con la libreria CAA Net Base Services (CAA Technical Workgroup) contemporaneamente nella stessa applicazione.

Il mancato rispetto di queste istruzioni può provocare morte, gravi infortuni o danni alle apparecchiature.

Considerazioni relative alla sicurezza informatica

Le funzioni della libreria TimeSync non supportano le connessioni protette come TLS (Transport Layer Security) o SSL (Secure Socket Layer). Poiché i telegrammi SNTP non sono codificati e autentificati, non è necessario ottenere o impostare informazioni su un agente. La comunicazione deve essere eseguita solo all'interno della rete industriale, isolata da altre reti all'interno dell'azienda e protetta da Internet.

NOTA: Schneider Electric aderisce alle migliori pratiche del settore nello sviluppo e nell'implemen­tazione dei sistemi di controllo. Ciò include un approccio "Defense-in-Depth" per la protezione di un sistema di controllo industriale. Secondo questo tipo di approccio, i controller sono protetti da uno o più firewall per limitare l'accesso al personale e ai protocolli autorizzati.

Warning_Color.gifAVVERTIMENTO

ACCESSO NON AUTENTICATO E CONSEGUENTE FUNZIONAMENTO NON AUTORIZZATO DELLA MACCHINA

oValutare se l'ambiente o le macchine sono collegati all'infrastruttura critica e, in caso positivo, adottare le misure appropriate in termini di prevenzione, secondo l'approccio "Defense-in-Depth", prima di collegare il sistema di automazione a una rete.

oLimitare al minimo necessario il numero di dispositivi collegati alla rete.

oIsolare la rete industriale dalle altre reti nell'ambito dell'azienda.

oProteggere le reti dall'accesso non autorizzato mediante l'uso di firewall, VPN, o altre procedure di sicurezza di comprovata efficacia.

oMonitorare tutte le attività del sistema.

oImpedire l'accesso diretto o il collegamento diretto ai dispositivi da parte di persone non autorizzate o con azioni non autenticate.

oRedigere un piano di ripristino che includa il backup del sistema e delle informazioni di processo.

Il mancato rispetto di queste istruzioni può provocare morte, gravi infortuni o danni alle apparecchiature.

Per ulteriori informazioni sulle misure e le regole relative all'accesso alle infrastrutture, consultare ISO/IEC 27000 series, Common Criteria for Information Technology Security Evaluation, ISO/IEC 15408, IEC 62351, ISA/IEC 62443, NIST Cybersecurity Framework, Information Security Forum - Standard of Good Practice for Information Security.

La libreria incorpora le seguenti funzionalità che consentono di impedire gli errori di comunicazione:

oVerifica del timestamp inviato in origine al server per consentire di rilevare gli errori di trasmissione.

oVerifica che la definizione del protocollo sia conforme con lo standard.

oVerifica della versione del server ed emissione di un messaggio di diagnostica in caso di mancata corrispondenza.

Panoramica delle POU

Blocco funzione/funzione

Utilizzo

FB_SntpClient

Fornisce funzioni client SNTP.

FC_EtResultToString

Converte un elemento di un'enumerazione di tipo ET_Result in un valore stringa.

Panoramica delle strutture nell'interfaccia specifica al modulo

Struttura

Utilizzo

ST_TimeRequest

Contiene informazioni specifiche per inviare una richiesta SNTP a un server dell'ora (S)NTP.

ST_TimeResponse

Contiene i timestamp ed è utilizzabile per sincronizzare il RTC.

Panoramica delle enumerazioni

Enumerazione

Utilizzo

ET_ComMode

Definisce la modalità di comunicazione del client SNTP.

ET_Result

Contiene i possibili valori che indicano il risultato delle operazioni eseguite dal blocco funzione.