Запустіть “OPC UA C++ Demo Server” та погодьтеся на внесення порту до списку дозволених брандмауером.
У консольному вікні серверу знайдіть запис з URL кінцевої точки.
Для доданого серверу натисніть Connect.
У вікні що з’явиться, виберіть Trust Server Certificate, після чого натисніть Continue.
Settings->Manage Certifacates
, передивіться сертифікат.Objects
BuildingAutomation.AirConditioner_1
Temperature
проаналізуйте атрибути Value
та DataType
.AirConditioner_1.Temperature.EURange
та AirConditioner_1.Temperature.EngineeringUnits
Value
та DataType
для наступних об’єктів:
Demo.Static.Arrays.AnalogMeasurement
Demo.Static.Arrays.Structure
Demo.Static.Matrix.Float
Data Access View
, створіть новий документ такого типуAirConditioner_1
на вікно Data Access View
, повинні поміститися усі об’єкти, що знаходяться всерединіValue
в Data Access View
змініть значення TemperatureSetPoint
рівною 75Data Access View
зайдіть в налаштування Subscription Settings
, виставіть періодичність публікації рівною 4 секундам (4000). Перевірте, що значення змінюються не раніше ніж через 4 секунди.Temperature
в Data Access View
зайдіть в налаштування Monitoring Item Settings
значення зони нечутливості 1 градус.TemperatureSetPoint
рівною 70. Тепер значення температури повинно оновлюватися тільки при зміні на 1 градус.AirConditioner_1.Stop
виберіть Call
і зупиніть установку кондиціонування.AirConditioner_1.StateCondition.Message
та AirConditioner_1.State
AirConditioner_1.StartWithSetpoint
виберіть Call
і запустіть установку кондиціонування з уставкою температури = 25 градусів, і вологістю - 55%.Historizing
для Temperature
Створіть документ History Trend View
(Document->Add->History Trend View
)
StartLogging
запустіть реєстрацію в трендовий архів.Historizing
для Temperature
. Тепер воно має бути TRUE, що значить, що дані для цієї змінної пишуться в історію.AirConditioner_1.Temperature
у вікно Configuration
документа History Trend View
Cyclic Update
і натисніть Start
:
Numeric Value
Ви побачите трендServer Diagnostics View
Підключіть UaExpert до сервера за адресою opc.tcp://opcuaserver.com:48010
Подивіться на структуру адресного простору, там повинні бути такі самі об’єкти.
Необов’язкове завдання.
Suppanel HMI
. Відеоурок доступний за посиланнямhttps://play.google.com/store/apps/details?id=com.suppanel.suppanel&hl=uk
opc.tcp://opcuaserver.com:48010
RED
npm install -g node-red-contrib-opcua@0.2.52
ns=3;s=AirConditioner_1.Temperature
ns=2;s=Demo.Static.Arrays.Double
ns=2;s=Demo.Static.Arrays.Structure;datatype=ExtensionObject
Inject
[{"id":"1eeb5ff0.f9c0e","type":"inject","z":"dd08c8ba.629018","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"ns=3;s=AirConditioner_1.HumiditySetpoint","payload":"[{\"datatype\":\"Double\",\"nodeId\":\"ns=3;s=AirConditioner_1.TemperatureSetPoint\",\"value\":55},{\"datatype\":\"Double Array\",\"nodeId\":\"ns=2;s=Demo.Static.Arrays.Double\",\"value\":[1,22]}]","payloadType":"json","x":150,"y":760,"wires":[["c202eff8.0d922"]]}]
Write Multiple
повинен бути вибраний режим “Writ Multiple”.ns=3;s=AirConditioner_x.Temperature
, де X - від 1 до 10