uk OPC UA Server - SEB103/QtOpcUaManager GitHub Wiki

English · Deutsch · Français · Italiano · Русский · Українська

OPC UA Server

Server Studio дозволяє спроєктувати OPC UA-сервер, запустити його локально, захистити та симулювати значення — без написання коду. Спроєктований сервер працює як окремий процес (автономна OpcUaServerRuntime, що вбудовує open62541), керований з інтерфейсу через ServerStudio та ServerRuntimeController (див. Архітектура).

Серверні проєкти

Серверний проєкт (.uaserver) — це JSON-файл з усім, що потрібно середовищу виконання: користувацькими просторами імен, вузлами адресного простору, будь-якими користувацькими переліковими типами даних, конфігурацією кінцевої точки, налаштуваннями безпеки та правилами поведінки (ServerProject::ProjectData). Проєкти створюються, відкриваються, зберігаються та закриваються в Server Studio.

Проєктування адресного простору

У студії ви будуєте дерево вузлів (ServerNodeModel):

  • об'єкти для організації адресного простору;
  • змінні з типом даних і початковим значенням;
  • користувацькі перелікові типи даних, на які посилаються змінні;
  • користувацькі простори імен, яким належать ваші вузли.

Адресний простір можна також отримати, а не малювати вручну:

  • Імпорт/експорт NodeSet2 — обмін моделлю як стандартним OPC UA NodeSet2 XML (ServerProject::NodeSet).
  • Клонування зі сервера, що переглядається — перенесення адресного простору сервера, до якого ви підключені в клієнті, до нового серверного проєкту.

Перед збиранням або запуском проєкт перевіряється валідатором (ServerProject::Validator).

Кінцева точка та безпека

Конфігурація кінцевої точки задає порт та ім'я застосунку. Конфігурація безпеки обирає політику безпеки та прийнятні посвідчення:

  • Без безпеки для швидких локальних тестів;
  • Basic256Sha256 з підписом і шифруванням, використовуючи самопідписаний сертифікат сервера, що створюється у власному сховищі PKI сервера;
  • анонімний доступ та/або користувачі за ім'ям/паролем.

Ці налаштування дозволяють перевірити клієнт проти реалістичної безпеки без зовнішнього сервера.

Запуск сервера

Під час запуску сервера стартує процес середовища виконання; студія чекає, доки він повідомить свою кінцеву точку, і потім показує його як працюючий. Діагностика в реальному часі — кількість сеансів, захищених каналів і час роботи — передається до студії локальним побічним каналом (DiagnosticsServer). Ви можете зупинити, перезапустити або примусово завершити середовище виконання; контролер повідомляє про збої та дозволяє перепідключитися.

Симуляція значень

Змінним можна призначити симуляцію, щоб їхні значення змінювалися в часі під час роботи сервера — лічильник, перемикач, випадкове, синус або пила (SimulationEngine). Середовище виконання записує симульовані значення до сервера, тому підключені клієнти отримують справжні сповіщення про зміну даних, що корисно для тестування трендів і підписок.

Реакція на запис (правила поведінки)

Змінній можна призначити правила поведінки: коли клієнт записує змінну, середовище виконання виконує одну або кілька дій над іншими змінними. Дія або записує фіксоване значення, або копіює щойно записане значення, за потреби із затримкою. Це відтворює обміни «запит/відповідь», яких HMI очікує від ПЛК — наприклад, запис PageRequest змушує сервер встановити PageResponse, — чого не може статичний знімок адресного простору. Правила зберігаються у проєкті й обчислюються середовищем виконання через зворотні виклики запису OPC UA (RuleEngine).