Модуль | Ім'я | Версія | Ліцензія | Джерело | Мови | Платформи | Тип | Автор | Опис |
---|---|---|---|---|---|---|---|---|---|
LogicLev | Логічний рівень | 2.9 | GPL2 | daq_LogicLev.so | en,uk,ru,de | x86,x86_64,ARM | DAQ | Роман Савоченко | Надає чистий логічний рівень параметрів сбору даних. |
Модуль є чистою реалізацією механізму логічного рівня, заснованого на шаблонах параметрів підсистеми "Збір даних (DAQ)". Реалізація модуля заснована на проекті "Логічний рівень параметрів OpenSCADA". Практично, цей модуль є реалізацією підсистеми "Параметри" вказаного проекту, без шаблонів та винесений до модуля.
Модуль надає механізм формування параметрів підсистеми "DAQ" рівня користувача на основі інших джерел цієї підсистеми. Фактично, модулем використовуються шаблони підсистеми "DAQ" та специфічний формат опису посилань на атрибути параметрів підсистеми "DAQ".
Також, модулем реалізуються функції горизонтального резервування, а саме — спільної роботи з віддаленою станцією цього-ж рівня. Крім синхронізації значень та архівів атрибутів параметрів, модулем здійснюється синхронізація значень обчислювальних шаблонів з метою безударного підхоплення алгоритмів.
Для додання джерела даних параметрів логічного рівня створюється та конфігурується об'єкт контролеру OpenSCADA. Приклад вкладки конфігурації об'єкту контролера даного типу зображено на рисунку 1.
За допомогою цієї вкладки можна встановити:
Модуль надає два типи параметру: "Логічний (Prm)" та "Віддзеркалення параметру (PrmRefl)". Додатковими конфігураційними полями параметрів цього модуля (рис.2) є:
При формуванні шаблону логічного типу параметру цього модуля треба враховувати особливість формату посилання шаблону. Посилання має записуватися у вигляді: {Параметр}|{Ідентифікатор}, де:
Подібний запис дозволяє групувати декілька атрибутів одного вихідного параметру та призначати їх обранням тільки самого параметру. Тобто, у діалозі конфігурації шаблону (рис.3) буде вказуватися лише параметр. Це однак не виключає можливості призначати атрибути параметрів окремо кожний, крім того, якщо опустити у конфігурації шаблону опис посилання у вказаному форматі, то призначатися буде атрибут параметру (рис.4).
Модулем передбачено особливу обробку низки атрибутів шаблону:
Знак "(+)", у кінці адреси, сигналізує про вдале зв'язування та присутність цільового об'єкту. Для атрибутів об'єктного типу дозволений ієрархічний доступ до конкретної властивості об'єкта шляхом визначення його шляху через символ '#', наприклад: "LogicLev.experiment.Pi.var#pr1.pr2".
Відповідно до шаблону, що лежить у основі параметру, ми отримуємо набір атрибутів параметру рис.5.
Всі атрибути вказаного до віддзеркалення параметру просто становляться доступними у даному параметрі, тим самим здійснюючи функцію проксування, наприклад, для зведення параметрів інших джерел у один — експортний об'єкт контролеру (для ПЛК).
У зв'язку із підтримкою параметрів логічного типу, має сенс надання низки функцій користувацького API для їх виклику із шаблону логічного параметру.
Об'єкт "Параметр" [this]
Сервісні функції — це інтерфейс доступу до OpenSCADA із зовнішніх систем посередництвом Інтерфейсу Управління. Цей механізм покладено в основу усього обміну всередині OpenSCADA, реалізованого шляхом слабких зв'язків та власного протоколу обміну OpenSCADA.
Отримання значень ВВ шаблону параметру Логічного Рівня об'єкту контролеру
ЗАП: <get path="/DAQ/LogicLev/{CNTR}/prm_{PRM}[/prm_{PRM}]/%2fserv%2ftmplAttr" />
ВІДП: <get path="/DAQ/LogicLev/{CNTR}/prm_{PRM}[/prm_{PRM}]/%2fserv%2ftmplAttr" rez="0">{IOs}</get>
<get path="/DAQ/LogicLev/gen/prm_F3/%2fserv%2ftmplAttr" rez="0" user="roman">
<ta id="in">44.9998202036118</ta>
<ta id="inProc" />
<ta id="var">44.9999585116556</ta>
<ta id="ed">ton/h</ta>
<ta id="min">0</ta>
<ta id="max">100</ta>
<ta id="scSqr">0</ta>
</get>
Встановлення значень ВВ шаблону параметру Логічного Рівня об'єкту контролеру
ЗАП[root-DAQ]: <set path="/DAQ/LogicLev/{CNTR}/prm_{PRM}[/prm_{PRM}]/%2fserv%2ftmplAttr">{IOs}</set>
<set path="/DAQ/LogicLev/gen/prm_F3/%2fserv%2ftmplAttr">
<ta id="in">44.9998202036118</ta>
<ta id="var">44.9999585116556</ta>
</set>
Modules/LogicLev/uk - GFDL | March 2024 | OpenSCADA 0.9.7 |