Regole di NVL (Network Variables List, elenco variabili di rete)

Regole relative alla quantità di dati

A causa di alcune limitazioni delle prestazioni, è necessario rispettare le seguenti regole:

Numero

Regola

1

La trasmissione di dati da un NVL (trasmettitore) a un NVL (ricevitore) non deve superare i 200 byte.

2

Lo scambio di dati tra più NVL (trasmettitori) di un controller e i NVL (ricevitori) associati non deve superare 1000 byte di variabili.

Regole relative al numero di datagrammi

Per limitare il tempo di ciclo massimo dei task NVL, rispettare le regole seguenti:

Numero

Regola

Descrizione

1

Limitare a 20 il numero di datagrammi ricevuti per ciclo.

Se si supera questo limite, i datagrammi restanti vengono elaborati nel ciclo successivo. Quando viene raggiunto il limite, viene generata una notifica Overflow in ricezione nei dati di diagnostica.

Un datagramma può contenere fino a 256 byte. Ciò significa che non si deve superare il limite di 5120 byte di dati trasmessi a un ricevitore.

2

Limitare a 20 il numero di datagrammi trasmessi per ciclo.

Se si supera questo limite, i datagrammi restanti vengono elaborati nel ciclo successivo. Quando viene raggiunto il limite, viene generata una notifica Overflow in trasmissione nei dati di diagnostica.

Un datagramma può contenere fino a 256 byte. Ciò significa che non si deve superare il limite di 5120 byte di dati trasmessi da un controller trasmettitore.

Se il numero di datagrammi ricevuti / trasmessi per ciclo supera più volte il limite, può accadere quanto segue:

  • perdita di datagrammi UDP (user datagram protocol)

  • scambio di variabili incoerenti

Adattare i parametri seguenti in base alle proprie esigenze:

  • tempo di ciclo del controller trasmettitore

  • tempo di ciclo del controller ricevitore

  • numero di trasmettitori nella rete

AVVISO
PERDITA DI DATI
Verificare accuratamente la correttezza della trasmissione e ricezione di datagrammi UDP prima di mettere in servizio il sistema.
Il mancato rispetto di queste istruzioni può provocare danni alle apparecchiature.

Numero massimo di NVL (trasmettitori)

Definire un massimo di sette NVL (trasmettitori) per controller (trasmettitore) in modo da contribuire a mantenere la trasparenza delle prestazioni.

Regole sui tempi di ciclo del task di NVL (trasmettitore) e NVL (ricevitore)

Per evitare un overflow in ricezione, occorre definire un tempo di ciclo per il task che gestisce la trasmissione NVL (trasmettitore) che sia almeno due volte maggiore del tempo di ciclo del task che gestisce la ricezione NVL (ricevitore).

Regole relative alla protezione degli identificativi di elenco

La funzione NVL include una verifica degli identificativi di elenco:

L'identificativo di elenco permette di evitare che un NVL (trasmettitore) da due controller separati con lo stesso identificativo di elenco (vedere la finestra di dialogo GVL > Proprietà > Identificativo di elenco:) invii datagrammi allo stesso NVL (ricevitore) di un controller qualsiasi. Se l'identificativo di elenco non è univoco, si può verificare un'interruzione nello scambio di variabili.

AVVISO
PERDITA DI COMUNICAZIONE
Accertarsi che l'identificativo di elenco nella rete venga usato da un solo indirizzo IP.
Il mancato rispetto di queste istruzioni può provocare danni alle apparecchiature.

La funzione di verifica dell'identificativo di elenco viene implementata nel controller ricevitore.

Se un NVL (ricevitore) rileva che due indirizzi IP diversi utilizzano lo stesso identificativo di elenco, il ricevitore interrompe immediatamente la ricezione di datagrammi.

Inoltre viene emessa una notifica nel blocco funzionale NETVARGETDIAGINFO. Gli indirizzi IP dei trasmettitori vengono forniti nei parametri di uscita dwDuplicateListIdIp1 e dwDuplicateListIdIp2 di questo blocco funzionale.

Con il blocco funzione NETVARRESETERROR, gli errori NVL rilevati vengono resettati e la comunicazione si riavvia.

Coerenza nel tipo di variabili di rete

NOTA: Il tipo di variabile di rete non è condiviso tra diversi controller. È necessario controllare che i tipi utilizzati abbiano la stessa definizione su tutti i dispositivi. In caso contrario, la comunicazione NVL non è possibile.

Questo vale ad esempio per i tipi SEC.ETH_R_STRUCT o SEC.PLC_R_STRUCT. Sono disponibili per impostazione predefinita in diversi controller con dimensioni o campi diversi.