| Ім'я: | regEl |
| Засновано: | січень 2010г |
| Версия: | 1.0.0 |
| Статус: | Відкритий (GPL) |
| Автор: | Роман Савоченко |
| Опис: | Бібліотека функцій регулювання. |
| Адреса: | БД у файлі: SQLite.LibDB.regEl ( |
Бібліотека створюється для надання функцій різних алгоритмів регулювання та може бути використана у програмованих логічних контролерах (ПЛК) на основі OpenSCADA для побудови схем керування. Бібліотека не є статичною, та будується на основі модуля JavaLikeCalc, який дозволяє створювати обчислення на мові подібній до Java.
Для адресації до цієї бібліотеки можна використати статичну адресу виклику "DAQ.JavaLikeCalc.lib_regEl.{Func}()" або динамічну "SYS.DAQ.JavaLikeCalc["lib_regEl"]["{Func}"].call()", "SYS.DAQ.JavaLikeCalc["lib_regEl"].{Func}()". Де {Func} — ідентифікатор функції у бібліотеці.
Підключити бібліотеку до проекту станції OpenSCADA можна шляхом завантаження вкладеного файлу БД, розташування його у директорії БД проекту станції та створення об'єкту БД для модуля БД "SQLite", вказавши файл БД у конфігурації.
У своєму складі бібліотека містить декілька функцій часто потрібних при створені схем регулювання. Назви функцій та їх параметрів доступні на трьох мов: Англійська, Російська та Українська.
Опис: Суміщений-уніфікований аналоговий та імпульсний ПІД-регулятор. У основі регулятора лежить мова стандартного аналогового ПІД-регулятора з бібліотеки "FLibComplex1" та реалізація ШІМ для імпульсної частини.
Параметри:
| ID | Параметр | Тип | Режим | Прихований | По замовченню |
| var | Змінна | Реальний | Вхід | false | 0 |
| sp | Завдання | Реальний | Вхід | false | 0 |
| max | Макс. шкали | Реальний | Вхід | false | 100 |
| min | Мін. шкали | Реальний | Вхід | false | 0 |
| manIn | Ввід ручного | Реальний | Вхід | false | 0 |
| out | Вихід (%) | Реальний | Повернення | false | 0 |
| impQup | Імп. вихід у гору | Логічний | Вихід | false | 0 |
| impQdwn | Імп. вихід до низу | Логічний | Вихід | false | 0 |
| analog | Аналоговий | Логічний | Вхід | false | 1 |
| auto | Автомат | Логічний | Вхід | false | 0 |
| casc | Каскад | Логічний | Вхід | false | 0 |
| Kp | Kп | Реальний | Вхід | false | 1 |
| Ti | Tі (мс) | Цілий | Вхід | false | 1000 |
| Kd | Кп диференціалу | Реальний | Вхід | false | 1 |
| Td | Tд (мс) | Цілий | Вхід | false | 0 |
| Tzd | T фільтра диференціалу (мс) | Цілий | Вхід | false | 0 |
| TImpPer | T періодичність імпульсів (мс) | Цілий | Вхід | false | 5000 |
| TImpMin | Мінімальна довжина імпульсу (мс) | Цілий | Вхід | false | 500 |
| KImpRfact | Рейтинг фактор імпульсів | Реальний | Вхід | false | 1 |
| Hup | Верхня границя виходу (%) | Реальний | Вхід | false | 100 |
| Hdwn | Нижня границя виходу (%) | Реальний | Вхід | false | 0 |
| Zi | Нечутливість (%) | Реальний | Вхід | false | 0 |
| followSp | Відслідковувати завдання за змінною у ручному | Логічний | Вхід | false | 1 |
| K1 | Коеф. входу 1 | Реальний | Вхід | false | 0 |
| in1 | Вхід 1 | Реальний | Вхід | false | 0 |
| K2 | Коеф. входу 2 | Реальний | Вхід | false | 0 |
| in2 | Вхід 2 | Реальний | Вхід | false | 0 |
| K3 | Коеф. входу 3 | Реальний | Вхід | false | 0 |
| in3 | Вхід 3 | Реальний | Вхід | false | 0 |
| K4 | Коеф. входу 4 | Реальний | Вхід | false | 0 |
| in4 | Вхід 4 | Реальний | Вхід | false | 0 |
| impAnOut | Аналогове положення імпульсного регулятора або швидкість ходу крана (%/с) під час імітації. | Реальний | Вхід | false | 0 |
| impAnImit | Імітація аналогового положення | Логічний | Вхід | false | 0 |
| impQupTm | Імп. вихід вгору утримано для GUI | Цілий | Вихід | false | 0 |
| impQdwnTm | Імп. вихід додолу утримано для GUI | Цілий | Вихід | false | 0 |
| f_frq | Частота обчислення (Гц) | Цілий | Вхід | true | 1 |
| f_start | Перший запуск | Логічний | Вхід | true | 0 |
| f_stop | Останній запуск | Логічний | Вхід | true | 0 |
| int | Знач. інтегралу | Реальний | Вихід | true | 0 |
| dif | Знач. диференціалу | Реальний | Вихід | true | 0 |
| lag | Значення затримки | Реальний | Вихід | true | 0 |
| impLag | Час утримання імпульсу | Реальний | Вихід | true | 0 |
| perLag | Час очікування генерації нового імпульсу | Реальний | Вихід | true | 0 |
Структура:

Опис: Повністю ідентичний уніфікованому ПІД регулятор, реалізований динамічно на JavaLikeCalc. Динамічна реалізація дозволяє легко адаптувати регулятор під потрібні вимоги, просто відредагувати його.
Параметри:
| ID | Параметр | Тип | Режим | Прихований | По замовченню |
| var | Змінна | Реальний | Вхід | false | 0 |
| sp | Завдання | Реальний | Вхід | false | 0 |
| max | Макс. шкали | Реальний | Вхід | false | 100 |
| min | Мін. шкали | Реальний | Вхід | false | 0 |
| manIn | Ввід ручного | Реальний | Вхід | false | 0 |
| out | Вихід (%) | Реальний | Повернення | false | 0 |
| impQup | Імп. вихід у гору | Логічний | Вихід | false | 0 |
| impQdwn | Імп. вихід до низу | Логічний | Вихід | false | 0 |
| analog | Аналоговий | Логічний | Вхід | false | 1 |
| auto | Автомат | Логічний | Вхід | false | 0 |
| casc | Каскад | Логічний | Вхід | false | 0 |
| Kp | Kп | Реальний | Вхід | false | 1 |
| Ti | Tі (мс) | Цілий | Вхід | false | 1000 |
| Kd | Кп диференціалу | Реальний | Вхід | false | 1 |
| Td | Tд (мс) | Цілий | Вхід | false | 0 |
| Tzd | T фільтра диференціалу (мс) | Цілий | Вхід | false | 0 |
| TImpPer | T періодичність імпульсів (мс) | Цілий | Вхід | false | 5000 |
| TImpMin | Мінімальна довжина імпульсу (мс) | Цілий | Вхід | false | 500 |
| KImpRfact | Рейтинг фактор імпульсів | Реальний | Вхід | false | 1 |
| Hup | Верхня границя виходу (%) | Реальний | Вхід | false | 100 |
| Hdwn | Нижня границя виходу (%) | Реальний | Вхід | false | 0 |
| Zi | Нечутливість (%) | Реальний | Вхід | false | 0 |
| followSp | Відслідковувати завдання за змінною у ручному | Логічний | Вхід | false | 1 |
| K1 | Коеф. входу 1 | Реальний | Вхід | false | 0 |
| in1 | Вхід 1 | Реальний | Вхід | false | 0 |
| K2 | Коеф. входу 2 | Реальний | Вхід | false | 0 |
| in2 | Вхід 2 | Реальний | Вхід | false | 0 |
| K3 | Коеф. входу 3 | Реальний | Вхід | false | 0 |
| in3 | Вхід 3 | Реальний | Вхід | false | 0 |
| K4 | Коеф. входу 4 | Реальний | Вхід | false | 0 |
| in4 | Вхід 4 | Реальний | Вхід | false | 0 |
| QO | Ознака "Відкритий" виконавчого механізму | Логічний | Вхід | false | 0 |
| QZ | Ознака "Закритий" виконавчого механізму | Логічний | Вхід | false | 0 |
| impAnOut | Реальне аналогове положення імпульсного регулятора, [0...100], -1 - вимкнути. | Реальний | Вхід | false | 0 |
| impAnImit | Імітація аналогового положення | Логічний | Вхід | false | 0 |
| impQupTm | Імп. вихід вгору утримано для GUI | Цілий | Вихід | false | 0 |
| impQdwnTm | Імп. вихід додолу утримано для GUI | Цілий | Вихід | false | 0 |
| f_frq | Частота обчислення (Гц) | Цілий | Вхід | true | 1 |
| f_start | Перший запуск | Логічний | Вхід | true | 0 |
| f_stop | Останній запуск | Логічний | Вхід | true | 0 |
| impLag | Час утримання імпульсу | Реальний | Вихід | true | 0 |
| perLag | Час очікування генерації нового імпульсу | Реальний | Вихід | true | 0 |
| integ | Накопичення інтегралу | Реальний | Вихід | true | 0 |
| difer | Накопичення диференціалу | Реальний | Вихід | true | 0 |
| dlag | Фільтр диференціалу | Реальний | Вихід | true | 0 |
Структура:

Опис: Спеціалізований імпульсний ПІД регулятор реалізований за особливим алгоритмом з компенсацією подвійного інтегрування.
Параметри:
| ID | Параметр | Тип | Режим | Прихований | По замовченню |
| var | Змінна | Реальний | Вхід | false | 0 |
| sp | Завдання | Реальний | Вхід | false | 0 |
| max | Макс. шкали | Реальний | Вхід | false | 100 |
| min | Мін. шкали | Реальний | Вхід | false | 0 |
| manIn | Ввід ручного | Реальний | Вхід | false | 0 |
| out | Вихід (%) | Реальний | Повернення | false | 0 |
| outPID | Вихід ПІД | Реальний | Вихід | false | 0 |
| impQup | Імп. вихід вгору | Логічний | Вихід | false | 0 |
| impQdwn | Імп. вихід додолу | Логічний | Вихід | false | 0 |
| analog | Аналоговий | Логічний | Вхід | false | 1 |
| auto | Автомат | Логічний | Вхід | false | 0 |
| casc | Каскад | Логічний | Вхід | false | 0 |
| Kp | Kп | Реальний | Вхід | false | 1 |
| Ki | Кп інтегралу | Реальний | Вхід | false | 1 |
| Ti | Tі (мс) | Цілий | Вхід | false | 1000 |
| Kd | Кп диференціалу | Реальний | Вхід | false | 1 |
| Td | Tд (мс) | Цілий | Вхід | false | 0 |
| Tzd | T фільтра диференціалу (мс) | Цілий | Вхід | false | 0 |
| TImpPer | T періодичність імпульсів (мс) | Цілий | Вхід | false | 5000 |
| TImpMin | Мінімальна довжина імпульсу (мс) | Цілий | Вхід | false | 500 |
| KImpRfact | Рейтинг фактор імпульсів | Реальний | Вхід | false | 1 |
| Hup | Верхня границя виходу (%) | Реальний | Вхід | false | 100 |
| Hdwn | Нижня границя виходу (%) | Реальний | Вхід | false | 0 |
| Zi | Нечутливість (%) | Реальний | Вхід | false | 0 |
| followSp | Відслідковувати завдання за змінною у ручному | Логічний | Вхід | false | 1 |
| K1 | Коеф. входу 1 | Реальний | Вхід | false | 0 |
| in1 | Вхід 1 | Реальний | Вхід | false | 0 |
| K2 | Коеф. входу 2 | Реальний | Вхід | false | 0 |
| in2 | Вхід 2 | Реальний | Вхід | false | 0 |
| K3 | Коеф. входу 3 | Реальний | Вхід | false | 0 |
| in3 | Вхід 3 | Реальний | Вхід | false | 0 |
| K4 | Коеф. входу 4 | Реальний | Вхід | false | 0 |
| in4 | Вхід 4 | Реальний | Вхід | false | 0 |
| impAnOut | Аналогове положення імпульсного регулятора або швидкість ходу крана (%/с) під час імітації. | Реальний | Вхід | false | 0 |
| impAnImit | Імітація аналогового положення | Логічний | Вхід | false | 0 |
| impQupTm | Імп. вихід вгору утримано для GUI | Цілий | Вихід | false | 0 |
| impQdwnTm | Імп. вихід додолу утримано для GUI | Цілий | Вихід | false | 0 |
| f_frq | Частота обчислення (Гц) | Цілий | Вхід | true | 1 |
| f_start | Перший запуск | Логічний | Вхід | true | 0 |
| f_stop | Останній запуск | Логічний | Вхід | true | 0 |
| impLag | Час утримання імпульсу | Реальний | Вихід | true | 0 |
| perLag | Час очікування генерації нового імпульсу | Реальний | Вихід | true | 0 |
| integ | Накопичення інтегралу | Реальний | Вихід | true | 0 |
| difer | Накопичення диференціалу | Реальний | Вихід | true | 0 |
| dlag | Фільтр диференціалу | Реальний | Вихід | true | 0 |
| err1 | Помилка крок назад | Реальний | Вихід | true | 0 |
| err2 | Помилка два кроки назад | Реальний | Вихід | true | 0 |
Структура: