Библиотека/Элементы регулирования - OpenSCADAWiki

# Библиотека/Элементы регулирования

This page is a translated version of the page Libs/Regulation elements and the translation is 100% complete.

English • ‎mRussian • ‎Українська

Название | Версия | Лицензия | Источник | Языки | Автор | Описание
--- | --- | --- | --- | --- | --- | ---
Библиотека элементов регулирования | 1.0 | GPLv2 | OscadaLibs.db (SQL, GZip) > DAQ.JavaLikeCalc.regEl | en, uk, ru | Роман Савоченко | Библиотека элементов регулирования блочных схем модуля DAQ.BlockCalc. Основано: Январь 2010 Спонсировано: ООО "ДІЯ" Изначально создано: в старой Wiki Использовано: САУ шаровых барабанных мельниц, САУ Фосфатирования, Амминирования и Гидразина Задачи (To Do): - перевести в DAQ-шаблоны после расширения их концепции на предмет внутренних ссылок (+) и расширения DAQ.BlockCalc до использования DAQ-шаблонов.

Библиотека создаётся для предоставления функций различных алгоритмов контроля и она может быть использована в программированных логических контроллерах (PLC) основанных на OpenSCADA для построения схем контроля в модуле DAQ.BlockCalc. Библиотека не является статической, а строится на основе модуля JavaLikeCalc, позволяющего создавать вычисления на Java-подобном языке. Названия функций и их параметров доступны на языках: Английский, Украинский и mRussian.

Для адресации к функции этой библиотеки можно использовать статический адрес вызова DAQ.JavaLikeCalc.lib_regEl.{Func}() или динамический SYS.DAQ.JavaLikeCalc["lib_regEl"]["{Func}"].call(), SYS.DAQ.JavaLikeCalc["lib_regEl"].{Func}(). Где {Func} — идентификатор функции в библиотеке.

Для подключения библиотеки к проекту станции OpenSCADA Вы можете получить файл БД как:

- такой что поставляется с готовым и соответствующим пакетом дистрибутива Linux вроде "openscada-libdb-main", "openscada-LibDB.Main";
- наиболее актуальный и непосредственно полученный из репозиторию subversion, преобразованный в файл БД SQLite путём:

    wget http://oscada.org/svn/trunk/OpenSCADA/data/LibsDB/OscadaLibs.sql
    sqlite3 -init OscadaLibs.sql OscadaLibs.db .exit

- загрузка прикреплённого тут.

Этот загруженный файл Вы далее можете разместить в каталоге проекта станции и создать объект базы данных модуля БД "SQLite", зарегистрировав файл базы данных в конфигурации.

### 1 ПИД унифицированный (pidUnif) | 1.0 | GPLv2 | * | en, uk, ru | Роман Савоченко

Совмещённый-унифицированный аналоговый и импульсный ПИД-регулятор. В основе регулятора лежит ядро стандартного аналогового ПИД-регулятора из библиотеки "FLibComplex1" и реализация ШИМ для импульсной части.

Параметры

Идентификатор | Параметр | Тип | Режим | Скрытый | По умолчанию
--- | --- | --- | --- | --- | ---
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 | T минимальная длина импульса, миллисекунд | Целый | Вход | 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

Структура

### 2 ПИД динамический (pidUnifD) | 1.0 | GPLv2 | * | en, uk, ru | Роман Савоченко

Полностью идентичный унифицированному ПИД-регулятору, но реализованный динамически на JavaLikeCalc. Динамическая реализация позволяет легко адаптировать регулятор под нужные требования, просто отредактировав его.

Параметры

Идентификатор | Параметр | Тип | Режим | Скрытый | По умолчанию
--- | --- | --- | --- | --- | ---
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 | T минимальная длина импульса, миллисекунд | Целый | Вход | 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 | Аналоговое положение импульсного регулятора | Веществ. | Вход | false | -1
impAnImit | Имитация аналогового положения | Веществ. | Вход | false | -1
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

Структура

### 3 ПИД импульсный (pidImp) | 1.0 | GPLv2 | * | en, uk, ru | Роман Савоченко

Специализированный импульсный ПИД регулятор реализованный по особому алгоритму с компенсацией двойного интегрирования.

Параметры

Идентификатор | Параметр | Тип | Режим | Скрытый | По умолчанию
--- | --- | --- | --- | --- | ---
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
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 | T минимальная длина импульса, миллисекунд | Целый | Вход | 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

Структура

Libs/Regulation_elements/ru - GFDL | May 2026 | OpenSCADA 0.9.9