Комунікація з інтерфейсами

Комунікація з інтерфейсами здійснюється через змінні in.COM та out.COM. Де COM може мати будь-яку назву. Потім ви можете на правій стороні редактора під Комунікація обрати інтерфейс. Там перелічені всі інтерфейси, які були призначені для проекту. У списку нижче поля вибору можна визначити телеграми. На відміну від інших систем, тут можна ввести кілька точок даних на змінну. Також можливо зв'язати змінну через Drag&Drop безпосередньо з інтерфейсу під Встановлення.

При цьому потрібно правильно вказати тип даних. На відміну від стандарту шини KNX тут використовується універсальний тип, а не типи DPT/EIS.

Будова редактора

Діалогове вікно у редактору дозволяє зв'язувати інтерфейси без того, щоб вони мали вплив на програмування елемента.

У показаному вище прикладі керування здійснювалося з динаміком SONOS через KNX-кнопку. Крім того, аналогове значення було пов'язано зі статусом.

Змінна комунікації status надсилає на групу адрес 1/0/5 і реагує при цьому на зміни від 1/0/5 та 1/7/5. Питання знака запитує при ініціалізації статус від 1/7/5.

Для значень Tr_UP та Tr_DW надсилання було деактивовано шляхом зняття позначки.

Позначені червоним значення (Tr_Play та Tr_Stop) не були знайдені в SPS і відповідно ігноруються. Якщо програма успішно протестована, ці значення можуть бути видалені без впливу на застосування.

Підказка: Натисніть правою кнопкою миші на змінну комунікації, щоб знайти її виникнення в SPS.

Тригери

Вхідні сигнали фільтруються. Повторювані значення ігноруються. Для цієї мети існує тип даних trig, trig_p тощо. Вони генерують фронт, коли надходить телеграма. При кількох шлюзах на одному інтерфейсі імпульс генерується лише через поточний шлюз. Це запобігає послідовному генерації декількох імпульсів.

З'єднання значень

Ви можете безпосередньо зв'язати об'єкти комунікації через Drag&Drop з елементом із структури. Для цього в установці можна перетягнути будь-які об'єкти зі наступними символами.

Символ Опис
Об'єкт можна читати.
Об'єкт можна читати та записувати.
Це константа. Цей значення не можна читати або описувати.

Відповідний інтерфейс автоматично вибирається. Це означає, що вам не потрібно заздалегідь вибирати інтерфейс. Достатньо просто перетягнути. Також не потрібно враховувати, чи правильний інтерфейс. Наприклад, якщо KNX-об'єкт перетягується в SPS, змінна відповідно правильно призначається. Зверніть увагу, що завжди можна надсилати лише перший запис комунікаційної змінної.

Підказка: Під окремими об'єктами в встановлення відображається посилання на відповідні елементи під об'єктами. Це корисно, коли потрібно шукати помилки.

Надсилання значень

Тільки перша точка даних надсилає на шину, якщо позначка справа активована. Всі інші об'єкти вказують стан. Приклад для KNX-шини: Якщо ви дивитесь у ETS на перемикач актора, там зазвичай є два об'єкти комунікації. Один для перемикання актора та один статусний об'єкт (може також міститися в об'єкті перемикання). Оптимально ви можете вставити кожну групу адрес як точку даних у конфігурацію інтерфейсу. Таким чином стан відразу відображається на візуалізації. І не тільки при перемиканні актора.

На інтерфейс передаються лише зміни змінної. Зміна скидається при отриманні на ту саму змінну. Це означає, що при отриманні зміни на in.COM вихід out.COM не надсилається. Це особливо важливо при затримці значень.

Також завжди враховуйте кількість телеграм, які інтерфейс надсилає. Бо занадто багато телеграм блокують шину. Це можна покращити лише додатковою окремою лінією. Якщо змінна швидко надсилає імпульси, це може призвести до перезапису буфера та при цьому видалення телеграм змінної. Таким чином це може призвести до небажаних ефектів. Тому обов'язково сповільніть змінну.

Повторне надсилання того самого значення

Спеціальний випадок - надсилання того самого значення. Це можна реалізувати кількома шляхами.

Якщо значення є булевим, можна безпосередньо використовувати trig_p або trig_n як тип даних. trig_n при цьому надсилає FALSE, а trig_p TRUE, як тільки на виході out.COM згенеровано позитивний фронт.

Інший метод - встановлення NULL. Це можна програмувати кількома способами. Найпростіший спосіб - використання функціонального блоку SEL.

Ініціалізація після перезавантаження

При запуску сервера або при нових телеграмах вони ініціалізуються, якщо перед телеграмою стоїть ? без пробілу. Наприклад, ?1/4/22.

Увага: Якщо в ETS перша група адрес перемикача актора є центральною командою, це може при читанні спричинити центральне включення або вимкнення. Тому завжди визначайте адресу перемикання як надсилану.