# CODESYS-Netzwerkvariablenlisten (NVL)

> Daten mit CODESYS-basierten Steuerungen über Netzwerkvariablenlisten austauschen, ohne ein Kommunikationsprotokoll in der SPS zu programmieren.

Netzwerkvariablenlisten sind der einfachste Weg, Daten aus einer CODESYS-Steuerung zu senden: Die SPS sendet eine Variablenliste per UDP, und Empfänger übernehmen sie mit derselben Deklaration. PLCGateway ist ein solcher Empfänger und kann auch eine Liste an die SPS zurücksenden.

Die Deklaration der Liste wird in das Geräteformular eingefügt, sodass die Variablen mit ihren Namen und Typen erscheinen und durchsucht werden können. Große Listen werden so auf Telegramme aufgeteilt, wie CODESYS es tut, und ein Watchdog markiert die Werte als veraltet, wenn kein Telegramm eintrifft.

- **Treiber-ID:** `codesys_nvl`
- **Verbindung:** UDP 1202 · unicast / broadcast / multicast
- **Adressen durchsuchen:** ja
- **Schreiben:** ja
- **Enthalten in:** PLCGateway Connect, PLCGateway SCADA, PLCGateway Embedded

## Was PLCGateway liest und schreibt

- BOOL, BYTE bis LWORD, SINT bis LINT, REAL, LREAL
- TIME, DATE, TIME_OF_DAY, DATE_AND_TIME
- STRING(n) und WSTRING(n)
- Eindimensionale Arrays
- Eine Sendeliste für Werte, die PLCGateway schreibt
- Unicast, Broadcast und Multicast; mehrere Listen auf einem Port

## Adressbeispiele

| Adresse | Bedeutung |
|---|---|
| `rTemperature` | Variable der Empfangsliste |
| `aValues[3]` | Array-Element |
| `tx.bStartCmd` | Variable der Sendeliste (beschreibbar) |
| `@12 · @0.3` | Roher Byte-Offset / Bit |

## Steuerungen und Geräte

- [CODESYS-basierte Steuerungen](https://plcgateway.com/de/controllers/codesys-plcs.md)
- [Schneider Electric Modicon](https://plcgateway.com/de/controllers/schneider-electric.md)

## In wenigen Schritten verbinden

1. In CODESYS eine Netzwerkvariablenliste (Sender) mit den zu sendenden Variablen anlegen; Prüfsumme und Quittierung abschalten.
2. In PLCGateway ein CODESYS-NVL-Gerät mit Port und Listenkennung hinzufügen und dieselbe Deklaration einfügen.
3. Variablen durchsuchen und übernehmen; optional eine Sendeliste für Werte deklarieren, die an die SPS zurückgehen.
4. Werte in Bildern, Historie, Alarmen und OPC UA verwenden.

## Fragen und Antworten

### Welche Steuerungen verwenden CODESYS?

Hunderte SPS-Marken basieren auf CODESYS, zum Beispiel WAGO PFC, ABB AC500 V3, Schneider Electric Modicon M241/M251/M262, Eaton XC300, Festo CPX-E-CEC und Soft-SPS auf Raspberry Pi oder Industrie-PCs.

### Ist NVL besser als OPC UA?

NVL ist schlank und braucht keinen Server auf der SPS, ideal für zyklische Prozesswerte. Wenn die Steuerung einen OPC UA-Server hat und die gesamte Applikation symbolisch durchsucht werden soll, ist der OPC UA-Client die bessere Wahl.

### Was passiert, wenn die SPS nicht mehr sendet?

Nach Ablauf der Watchdog-Zeit erhalten die Werte die Qualität Stale (veraltet), sodass Bilder, Alarme und OPC UA-Clients erkennen, dass die Daten alt sind.

## Verwandte Protokolle

- [OPC UA-Client](https://plcgateway.com/de/protocols/opc-ua.md)
- [Modbus TCP / RTU](https://plcgateway.com/de/protocols/modbus.md)
- [Alle Protokolle](https://plcgateway.com/de/protocols.md)

_Produkt- und Modellnamen sind Marken ihrer Inhaber. Sie werden nur genannt, um zu zeigen, mit welchen Geräten die Treiber kommunizieren; PLCGateway steht in keiner Verbindung zu diesen Unternehmen._

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