Пакет
«Автоматика»: расширение возможностей
А.Г.
Александров,
в.н.с., д. ф.-м. н., проф., alex7@ipu.ru,
Д.В.
Шатов,
инж., dvshatov@gmail.com,
ИПУ РАН, г. Москва
Пакет «Автоматика» предназначен
для исследования и разработки алгоритмов управления объектами с учетом
параметрической и структурной неопределенностей их при наличии внешних возмущений.
Пакет предназначен для
ученых и инженеров-разработчиков систем автоматического управления. Целью
вторых является получение допустимых установившихся ошибок по регулируемым
переменным в условиях неизвестных ограниченных внешних возмущений и при
медленноменяющихся, неизвестных параметрах объекта. В таких ситуациях требуется
идентификация параметров объекта и преобразование регулятора. Пакет содержит
специальные структуры для таких пользователей. Основой этих структур являются
директивы (программы), которые решают конкретный класс задач. Пакет включает
три группы директив: синтез регуляторов, конечно-частотная идентификация,
частотное адаптивное управление.
Package «Automatica» is intended for research
and development the control algorithm considering parameter and structural
uncertain; disturbance is unknown but bounded function. The package is intended
for engineers-developers
of real-world control system. The purpose of engineers is to provide the given
tolerance on steady-state error for each controlled variables when the
disturbance is unknown but bounded function and the uncertain plant parameters
change their values slowly. In this connection, the identification of plant
parameters and redesign of controller are required. The package has special
structure that is oriented for such users. The basis of this structure is the
directives that solve defined class of problems. The package includes three
groups of directives: controller design, finite-frequency identification,
frequency adaptive control.
Пакет «Автоматика»
предназначен для исследования и разработки алгоритмов управления объектами с
учетом параметрической и структурной неопределенностей их при наличии внешних возмущений. Он
ориентирован на две группы пользователей. Первая группа — это исследователи,
хорошо знающие теорию управления и проблемы управления в конкретной предметной
области.
Вторая группа
пользователей — инженеры-разработчики систем автоматического управления. Цели
этой группы и ограниченное время на разработку систем управления исключают
возможность их участия в создании программного обеспечения для решения их задач. Кроме того необходимость глубоких знаний теории
управления также является препятствием для участия в разработке директив.
Инженер выбирает директиву, которая решает его задачу из списка директив пакета
и вводит описание задачи. Решение задачи выполняется автоматически.
Проанализировав результаты, он принимает решение о приемлемости разработанного
регулятора.
Пакет состоит из функций
и программы для решения реальных задач. Программы составляются из функций и
служат для решения какой-либо конкретной задачи (далее такие программы будем
называть «директивы»). Директива состоит из трех частей: пользовательский
интерфейс, вычислительная часть и средства вывода промежуточных и окончательных
результатов. Каждая директива решает определенный класс задач.
Пакет «Автоматика»
содержит 3 группы директив: синтез регуляторов, конечно-частотная
идентификация, частотное адаптивное управление. Этот пакет является расширением
ранее разработанного программного обеспечения. Директивы пакета GAMMA-1PC [1]
для синтеза регуляторов многомерных систем были написаны на FORTRAN. Теперь они
разработаны в среде MATLAB. Пакет ADAPLAB-3 [2]
улучшен возможностью самонастройки тестового сигнала. Это очень важная
модификация. Суть заключается в том, что базой для адаптивного управления является
метод конечно-частотной идентификации. Этот метод использует тестовый сигнал, в
котором число гармоник не превышает порядка объекта. Определение амплитуд и
частот тестового сигнала составляет главную трудность метода. Амплитуды
настраиваются таким образом, чтобы разность между текущим выходом объекта и в
отсутствие тестового сигнала лежала в допустимых границах. Самонастройка частот
позволяет уменьшить длительность идентификации. В отличие от пакета ADAPLAB-3, который позволяет осуществлять
самонастройку тестового сигнала для одномерных объектов, пакет «Автоматика»
позволяет производить самонастройку для многомерных объектов.
В представленной в
докладе версии пакета произведено разделение директив на одномерные и
многомерные случаи. Так для одномерных объектов используются алгоритмы, заложенные в предыдущих пакетах
(GAMMA-1PC, ADAPLAB-3), но с некоторыми модификациями. Для многомерных задач
написан большой объем нового программного обеспечения. Это касается директив
идентификации и синтеза.
Сравним возможности
представленного пакета с подобными пакетами MATLAB. Пакет Control System
Toolbox предназначен для первой группы пользователей (исследователей), которые
владеют обширными знаниями по теории управления и знаниями в области применения
теории управления (например, авиация, энергетика и т. д.). Такие специалисты
используют широкий спектр m-функций
для разработки процедур решения реальных систем проектирования. Но
использование такого пакета затруднительно для инженера-разработчика систем
управления.
Пакет идентификации
Frequency-domain system identification toolbox может применяться только в
отсутствии внешнего возмущения, или если оно представляет собой белый шум
(частотный метод, метод наименьших квадратов). Метод инструментальных
переменных [3] применим для произвольного внешнего возмущения, но нет
возможности проводить настройку регулируемого выхода объекта. Из-за этого
длительность идентификации может существенно увеличиться. По этой причине метод
мало пригоден для адаптивного управления.
Рассмотрим
асимптотически устойчивую систему управления:
(1)
(2)
где — вектор состояний объекта, — вектор состояния регулятора (2), — вектор управления, — вектор измеряемых переменных, — вектор регулируемых переменных, — вектор неизмеряемых внешних
возмущений, — вектор помех
измерений, — переменные во времени матрицы чисел.
Внешнее возмущение и
помеха — ограниченные полигармонические функции:
(3)
где частоты и и
фазы и () — неизвестны, а неизвестные амплитуды и () удовлетворяют условиям:
(4)
где и () — известные числа.
При выполнении условий
(4) справедливы неравенства:
(5)
Частным случаем функций
(3) являются кусочно-непрерывные функции, разложенные в ряд Фурье,
удовлетворяющий условиям (4).
Установившиеся ошибки по
регулируемым переменным и управлениям определим как:
(6)
Цель управления имеет
вид:
(7)
где — заданные числа.
Управление,
обеспечивающее достижение цели (7) называется точным управлением.
Пакет предназначен для
нахождения матриц регулятора (2), при которых достигается цель управления (7)
для объекта (1) при различных уровнях неопределенности матриц объекта (1).
Пакет содержит 3 группы
директив: синтез регуляторов, конечно-частотная идентификация, частотное
адаптивное управление.
Каждая директива
содержит интерфейс, с помощью которого вводятся дифференциальные уравнения
объекта, и при необходимости внешние возмущения и их границы , допуски на регулируемые переменные.
Настраиваемые параметры алгоритмов управления и идентификации задаются по
умолчанию для простоты, но также могут задаваться с помощью интерфейса. Кроме
того, с помощью интерфейса возможно выведение на экран промежуточных
результатов.
Дифференциальные
уравнения объекта вводятся либо в форме Коши, «вход-выход», произвольная форма.
В этих директивах дается
объект (1) с фиксированными числовыми матрицами, известными с достаточной
точностью:
(8)
Следовательно, объект (8) — робастно
стабилизируем. Последнее означает, что
существуют матрицы чисел регулятора:
(9)
такого, что при малых вариациях матриц
объекта (9) система (9), (10) асимптотически устойчива.
Целью директив является нахождение
регулятора (10) такого, чтобы при заданных границах внешнего возмущения (5)
выполнялись требования к точности управления (7).
Директивы синтеза
отличаются видами уравнений объекта.
Цель управления (7)
достигается управлением минимизирующим функционал
(10)
в котором
(11)
Объекты (9) делятся на 3
вида:
Объект первого вида
описывается уравнениями:
(12)
Цель управления (7)
достигается управлением
(12)
Объект второго вида
описывается уравнениями:
(13)
Кроме того, он должен
быть минимально фазовым. Это означает что, если записать уравнение объекта (12)
в форме «вход-выход», то получим уравнение:
(14)
тогда корни полинома имеют отрицательные
вещественные части.
Введя управление
(15)
и приводя уравнение к форме Коши. Получим,
используя директиву 441 и получая вектор x
из (12) с помощью вектора y через выражение (11) () получим управление
(16)
Объект общего вида
описывается уравнениями (8). Эта директива основана на функции hinfric, в которой матрицы определяются
выражением (11).
Для первых двух видов
директивы обеспечивают выполнение требований к радиусу запасов устойчивости
(17)
где — наименьшее
положительное число, при котором
выполняется неравенство
(18)
А для объекта общего
вида могут нарушаться требования (17) к запасам устойчивости системы.
Заметим, что директивы
для первого и второго видов объектов обеспечивают достижение цели управления
при любых заданных значениях . В директиве для третьего вида эти значения должны
удовлетворять неравенству
(19)
Директивы
конечно-частотной идентификации предназначены для моделирования процессов конечно-частотной
идентификации и уточнения параметров алгоритмов идентификации.
В методе
конечно-частотной идентификации [4] используются испытательные сигналы, которые
являются суммой гармоник, число которых не превышает размерности вектора
состояний объекта. Директивы отличаются самонастройкой амплитуд, частот и
длительностью испытательных сигналов.
Рассмотрим
асимптотически устойчивый объект (8), где и — неизвестные
ограниченные функции, также неизвестны его коэффициенты.
Представим уравнение (9)
как
(20)
где .
Элементы передаточной
матрицы имеют вид
(21)
Числа и полагаем для простоты известными. К объекту (20) прикладываются
испытательные сигналы
(22)
где — момент приложения тестового сигнала, а — длительность приложения испытательного сигнала (время
идентификации) частоты — положительные, не
совпадающие друг с другом числа, амплитуды — неотрицательные
числа.
Идентификация предназначена для нахождения оценок коэффициентов передаточных
функций (21).
Используется следующий алгоритм
идентификации: уравнение (8) с управлением (22) решаются программой
моделирования.
Решение поступает на
вход фильтра Фурье, чьи выходы дают следующие частотные параметры объекта
(23)
Решается система линейных уравнений
(24)
и находим оценки (в момент времени ) коэффициентов передаточных функций (21).
Пакет содержит следующие
директивы идентификации:
Директива
d123sumi: идентификация без самонастройки испытательного сигнала;
Директива
d123dumi: идентификация с самонастройкой времени идентификации;
Директива d123admi: идентификация с
самонастройкой амплитуд испытательного сигнала и времени идентификации;
Директива
d123floadumi: идентификация с самонастройкой частот и амплитуд испытательного
сигнала и времени идентификации.
Директивы частотного
адаптивного управления предназначены для моделирования процессов адаптации и
уточнения параметров алгоритмов идентификации и адаптации. Директивы могут быть
применены для адаптации регулятора объекта (1).
Эти директивы являются простым
соединением директив идентификации и директив точного управления. Названия этих
директив является объединением соответствующих названий директив идентификации
и синтеза. Например, d123sumi442 — эта директива адаптивного
управления с идентификацией объекта второго вида без самонастройки
испытательного сигнала.
Директива на первом
этапе производит идентификации. Объекта управления с помощью директив из п. 5.
Затем на втором этапе для этого объекта рассчитывается регулятор с помощью
директив из п. 3.
Пусть, используя одну из
директив п. 5.1 адаптации, построен регулятор (2). С течением времени
коэффициенты объекта ушли от идентифицированных значений и точность регулятора
снизилась. Требуется произвести идентификацию заново. Примем при этом, что
система (1),(2) сохранила устойчивость.
Для идентификации
объекта к нему прикладывается заданные испытательные сигналы
(25)
объект (1) описывается уравнением
(26)
Выходы объекта и
регулятора передаются на фильтр Фурье и, используя функцию fourmi, находим значения преобразования
Фурье для входных и выходных сигналов. Затем вычисляются частотные параметры.
С помощью функции freqmi находим
оценки коэффициентов передаточной матрицы объекта.
Пакет содержит следующие
директивы адаптации:
Директива
d323sumi: адаптация без самонастройки испытательного сигнала;
Директива
d323dumi: адаптация с самонастройкой времени идентификации;
Директива d323admi: адаптация с самонастройкой
амплитуд испытательного сигнала и времени идентификации;
Директива
d323floadumi: адаптация с самонастройкой частот и амплитуд испытательного
сигнала и времени идентификации;
В качестве
примера рассмотрим работу директивы адаптации с самонастройкой длительности
адаптации и амплитуд испытательного сигнала.
Объект описывается
передаточной функцией:
(27)
Внешнее
возмущение имеет вид:
(28)
Верхние
границы модулей ошибки регулирования и внешнего возмущения:
(29)
Ограничения
по выходу и входу объекта:
(30)
На рис. 1
приведен интерфейс директивы
рис. 1. Интерфейс директивы адаптации
с самонастройкой длительности
адаптации и амплитуд испытательного
сигнала
Исходная
передаточная функция объекта по управлению имела вид:
(31)
В результате
идентификации разомкнутой системы получим передаточную функцию:
(32)
В результате
идентификации замкнутой системы получим передаточную функцию:
(33)
Результаты
идентификации носят удовлетворительный характер. А графики подтверждают
точность по ошибке для замкнутой системы.
На рис. 2 изображены
результаты выполнения директивы
рис. 2. Результат выполнения директивы
адаптации с самонастройкой длительности
адаптации и амплитуд испытательного
сигнала
Литература
1. Alexandrov A. G. and S.
Yu. Panin (1997). GAMMA-1PC as CACSD tools for practisins engineers.
Proceedings of 7th Symposium on Computer Aided Control System Design
(CACSD’97), Gent, Belgium, P. 287-292
2. Alexandrov A. G., Yu. F.
Orlov and L. S. Mikhailova (2009). ADAPLAB-3: finite-frequency identification
and adaptation toolbox for MATLAB. Preprints of the 15th IFAC
Symposium on System Identification. Saint-Malo, France, P. 498-503
3. Ljung L. (1987). System Identification
— Theory for the User. Prentice-Hall, Englewood Cliffs, New Jersey.
4. Alexandrov A. G. (2005).
Finite-frequency identification: selftuning of test signal. Preprints of the 16th
IFAC World Congress, Prague, CD_ROM