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. |
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 dati di diagnostica. neiUn 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 dati di diagnostica. neiUn 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 | |
---|---|
Definire un massimo di sette NVL (trasmettitori) per controller (trasmettitore) in modo da contribuire a mantenere la trasparenza delle prestazioni.
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).
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
) invii datagrammi allo stesso NVL (ricevitore) di un controller qualsiasi. Se l' non è univoco, si può verificare un'interruzione nello scambio di variabili.AVVISO | |
---|---|
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.
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.