TCP/UDP

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

Інформація: Інтерфейс автоматично синхронізується з найповільнішим циклом приєднаної ПЛК. Телеграми буферуються системою, тому жодне телеграма не втрачається.

Монітор

У моніторі використовуються наступні кольори.

Колір Опис
Білий Помилок не виникло.
Помаранчевий Досягнуто таймауту.
Зелений З’єднання було успішним.
Червоний Не вдалося встановити з’єднання або досягнуто критичного таймауту при відправці. Може бути, що помилка у UDP-комунікації не виявлена.

Broadcast та Multicast

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

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

Режим Опис
Unicast Дозволяє пряму комунікацію.
Limited Broadcast Дозволяє комунікацію лише в локальній мережі. (Незалежно від IP)
Directed Broadcast Дозволяє комунікацію з підмережею 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.