# Сетевые списки переменных CODESYS (NVL)

> Обмен данными с контроллерами на базе CODESYS через сетевые списки переменных — без программирования коммуникационного протокола в ПЛК.

Сетевые списки переменных — самый простой способ передать данные из контроллера CODESYS: ПЛК рассылает список переменных по UDP, а получатели принимают его с тем же объявлением. PLCGateway — такой получатель, и он также может отправлять список обратно в ПЛК.

Объявление списка вставляется в форму устройства, поэтому переменные появляются со своими именами и типами и доступны для обзора. Большие списки разбиваются на телеграммы так же, как это делает CODESYS, а watchdog помечает значения как устаревшие, если телеграммы перестают приходить.

- **ID драйвера:** `codesys_nvl`
- **Подключение:** UDP 1202 · unicast / broadcast / multicast
- **Обзор адресов:** да
- **Запись:** да
- **Входит в:** PLCGateway Connect, PLCGateway SCADA, PLCGateway Embedded

## Что PLCGateway читает и записывает

- BOOL, от BYTE до LWORD, от SINT до LINT, REAL, LREAL
- TIME, DATE, TIME_OF_DAY, DATE_AND_TIME
- STRING(n) и WSTRING(n)
- Одномерные массивы
- Список передачи для значений, записываемых PLCGateway
- Unicast, broadcast и multicast; несколько списков на одном порту

## Примеры адресов

| Адрес | Значение |
|---|---|
| `rTemperature` | Переменная принимаемого списка |
| `aValues[3]` | Элемент массива |
| `tx.bStartCmd` | Переменная списка передачи (с записью) |
| `@12 · @0.3` | Смещение в байтах / бит |

## Контроллеры и устройства

- [Контроллеры на базе CODESYS](https://plcgateway.com/ru/controllers/codesys-plcs.md)
- [Schneider Electric Modicon](https://plcgateway.com/ru/controllers/schneider-electric.md)

## Подключение за несколько шагов

1. В CODESYS добавьте сетевой список переменных (отправитель) с передаваемыми переменными; отключите контрольную сумму и подтверждение.
2. Добавьте в PLCGateway устройство CODESYS NVL с портом и идентификатором списка и вставьте то же объявление.
3. Просмотрите переменные и добавьте их как теги; при необходимости объявите список передачи для значений, которые возвращаются в ПЛК.
4. Используйте значения на экранах, в архиве, тревогах и OPC UA.

## Вопросы и ответы

### Какие контроллеры используют CODESYS?

На CODESYS построены сотни марок ПЛК, например WAGO PFC, ABB AC500 V3, Schneider Electric Modicon M241/M251/M262, Eaton XC300, Festo CPX-E-CEC, а также программные ПЛК на Raspberry Pi или промышленных ПК.

### NVL лучше, чем OPC UA?

NVL — лёгкий механизм, которому не нужен сервер на ПЛК; он идеален для циклических технологических значений. Если в контроллере есть сервер OPC UA и нужен символьный обзор всего приложения, лучше выбрать клиент OPC UA.

### Что происходит, если ПЛК перестаёт отправлять данные?

По истечении времени watchdog значения получают качество Stale, и экраны, тревоги и клиенты OPC UA видят, что данные устарели.

## Связанные протоколы

- [Клиент OPC UA](https://plcgateway.com/ru/protocols/opc-ua.md)
- [Modbus TCP / RTU](https://plcgateway.com/ru/protocols/modbus.md)
- [Все протоколы](https://plcgateway.com/ru/protocols.md)

_Названия продуктов и моделей являются товарными знаками их владельцев. Они упоминаются только для того, чтобы показать, с каким оборудованием работают драйверы; PLCGateway не связан с этими компаниями._

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