TCP/UDP

С помощью интерфейса TCP/UDP можно обмениваться сырыми данными между ПЛК и удаленным сервером. Одновременно можно запустить сервер для прослушивания данных.

Информация: Интерфейс автоматически синхронизируется с самым медленным циклом, назначенным ПЛК. Телеграммы буферизуются системой, поэтому ни одно сообщение не теряется.

Монитор

В мониторе используются следующие цвета.

Цвет Описание
Белый Ошибок не произошло.
Оранжевый Достигнут тайм-аут.
Зеленый Соединение было успешным.
Красный Соединение не удалось установить или достигнуто критическое время ожидания при отправке. Возможно, ошибка в UDP-коммуникации не распознается.

Бroadcast и Multicast

С помощью интерфейса TCP/UDP можно отправлять и принимать Broadcast и Multicast. При этом режим работы выбирается в конфигурации шлюза. После этого некоторые параметры, такие как TCP, становятся недоступными. Кроме того, выбор исходящего интерфейса становится обязательным.

Для отправки телеграмм также необходимо указать IP-адрес в соответствии с требованиями рядом с полем. Если это не сделано, то передача осуществляется с помощью Unicast.

Режим Описание
Unicast Позволяет осуществлять прямую связь.
Limited Broadcast Позволяет обмениваться данными только в локальной сети. (Независимо от IP-адреса)
Directed Broadcast Позволяет осуществлять связь с подсетью широковещательной передачи. Например, 10.0.0.255, если подсеть содержит 24 бита или установлена на 255.255.255.0.
Multicast Позволяет осуществлять связь с помощью Multicast. При этом используется IGMP-Snooping.

Определение конца пакета

В конфигурации "Перевод строки" можно установить условие для завершения передачи. Обнаруженный конец также передается.

Если конец не обнаружен, интерфейс ждет истечения времени ожидания или окончания соединения и отправляет результат в ПЛК. Поэтому рекомендуется проверять все принятые пакеты. Прием UDP-телеграмм не имеет времени ожидания.

HTTP-передача

Метод можно определить с помощью следующего перевода строки:

HTTP

Этот метод особенный, так как позволяет реагировать на Content-Length в заголовке.

После определенной длины

Чтобы завершить прием после определенной длины, можно использовать следующую строку символов в конфигурации "Перевод строки":

LEN === ###

Где ### соответствует количеству символов. Запись должна точно соответствовать этой, включая пробелы.

Внимание: Использование LEN === 1 принимает каждый символ по отдельности и может привести к повышенной нагрузке на сервер.

Индивидуальный конец строки

Можно определить различные окончания строк. Обычно для этого используются \n или \r. Каждая строка определяет другое окончание строки.

В конфигурации следующим символам требуется экранирование:

\\ \r \n \0

Коммуникация

При исходящей коммуникации через TCP после каждого запроса соединение снова завершается.

Если при запросе sendrecv не поступает ответ, то отправляющий интерфейс блокируется до тех пор, пока не истечет время ожидания. В мониторе выводится ошибка.

Переменная Описание
send Отправляет данные на сервер.
!send Отправляет все данные на сервер и при этом не пропускает ни одно сообщение.
sendrecv Как send, но ожидает ответа.
!sendrecv Как !send, но ожидает ответа.
response Ответ от sendrecv. При достижении времени ожидания возвращается пустая строка.
recv Данные, полученные от локального сервера.
error Если при передаче данных возникает ошибка, значение истинно. Это может произойти при sendrecv только после истечения времени ожидания.

Примечание: Обратите внимание на безопасность интерфейса. Данные никогда не следует передавать напрямую через Интернет. Здесь отсутствует аутентификация и шифрование с помощью SSL или TLS.