# Network variable list (NVL) CODESYS

> Scambia dati con i controllori basati su CODESYS tramite le network variable list, senza programmare un protocollo di comunicazione sul PLC.

Le network variable list sono il modo più semplice per inviare dati da un controllore CODESYS: il PLC trasmette in broadcast un elenco di variabili su UDP e i ricevitori lo acquisiscono con la stessa dichiarazione. PLCGateway è uno di questi ricevitori e può anche inviare una lista al PLC.

La dichiarazione della lista si incolla nel modulo del dispositivo, così le variabili compaiono con nomi e tipi e possono essere sfogliate. Le liste grandi vengono suddivise in telegrammi come fa CODESYS, e un watchdog segnala i valori come non aggiornati quando non arriva alcun telegramma.

- **ID driver:** `codesys_nvl`
- **Collegamento:** UDP 1202 · unicast / broadcast / multicast
- **Navigazione degli indirizzi:** sì
- **Scrittura:** sì
- **Incluso in:** PLCGateway Connect, PLCGateway SCADA, PLCGateway Embedded

## Cosa legge e scrive PLCGateway

- BOOL, da BYTE a LWORD, da SINT a LINT, REAL, LREAL
- TIME, DATE, TIME_OF_DAY, DATE_AND_TIME
- STRING(n) e WSTRING(n)
- Array monodimensionali
- Una lista di invio per i valori scritti da PLCGateway
- Unicast, broadcast e multicast; più liste sulla stessa porta

## Esempi di indirizzi

| Indirizzo | Significato |
|---|---|
| `rTemperature` | Variabile della lista ricevuta |
| `aValues[3]` | Elemento di array |
| `tx.bStartCmd` | Variabile della lista di invio (scrivibile) |
| `@12 · @0.3` | Offset in byte grezzo / bit |

## Controllori e dispositivi

- [Controllori basati su CODESYS](https://plcgateway.com/it/controllers/codesys-plcs.md)
- [Schneider Electric Modicon](https://plcgateway.com/it/controllers/schneider-electric.md)

## Collegamento in pochi passi

1. In CODESYS aggiungi una network variable list (mittente) con le variabili da inviare; disattiva checksum e acknowledgement.
2. In PLCGateway aggiungi un dispositivo CODESYS NVL con la porta e l'identificativo della lista e incolla la stessa dichiarazione.
3. Sfoglia le variabili e aggiungile come tag; se serve, dichiara una lista di invio per i valori che tornano al PLC.
4. Usa i valori in schermate, storico, allarmi e OPC UA.

## Domande e risposte

### Quali controllori usano CODESYS?

Centinaia di marchi di PLC si basano su CODESYS, ad esempio WAGO PFC, ABB AC500 V3, Schneider Electric Modicon M241/M251/M262, Eaton XC300, Festo CPX-E-CEC e soft PLC su Raspberry Pi o PC industriali.

### NVL è meglio di OPC UA?

NVL è leggero e non richiede un server sul PLC: è ideale per i valori di processo ciclici. Se il controllore ha un server OPC UA e serve la navigazione simbolica dell'intera applicazione, il client OPC UA è la scelta migliore.

### Cosa succede quando il PLC smette di inviare?

Trascorso il tempo di watchdog i valori assumono la qualità Stale, così schermate, allarmi e client OPC UA vedono che i dati non sono aggiornati.

## Protocolli correlati

- [Client OPC UA](https://plcgateway.com/it/protocols/opc-ua.md)
- [Modbus TCP / RTU](https://plcgateway.com/it/protocols/modbus.md)
- [Tutti i protocolli](https://plcgateway.com/it/protocols.md)

_I nomi di prodotti e modelli sono marchi dei rispettivi proprietari. Sono citati solo per indicare con quali apparecchiature comunicano i driver; PLCGateway non è affiliata a queste aziende._

---
Source: https://plcgateway.com/it/protocols/codesys-nvl
