Нейро-нечеткий ПИД-регулятор в задаче угловой стабилизации
мультироторного БПЛА
Пенской И.С., МГТУ им. Н.Э. Баумана
igorpenskoy@yandex.ru Рогозин О.В., МГТУ им. Н.Э. Баумана logic00@mail.ru
Аннотация
Рассмотрена задача угловой стабилизации мультироторного беспилотного летательного аппарата. Представлена математическая модель мультироторного БПЛА на примере четырехроторной версии типа «квадрокоптер». Предложено решение задачи угловой стабилизации с использованием пропорционально-интегрально-дифференциального регулятора, а также разработан метод подбора коэффициентов регулятора с помощью нейро-нечеткой сети.
1 Введение
Мультироторный беспилотный летательный аппарат (БПЛА) представляет собой летающую платформу с тремя или более бесколлекторными двигателями с пропеллерами, управляемую дистанционно. В настоящее время интерес к таким техническим средствам со стороны различных сфер человеческой деятельности, начиная научной и заканчивая торгово-промышленной, сильно возрастает [Андропов, 2016].Это обусловлено широким кругом возможностей БПЛА такого типа, например:
• перевозка малогабаритных грузов с малыми затратами ресурсов;
• съемка и анализ местности и объектов в различных ракурсах и положениях;
• непрерывное и скрытное наблюдение объекта;
• возможность проводить наблюдение и какие-либо механические манипуляции в условиях, опасных для человека.
Целью этой работы является разработка нейро-нечеткого ПИД-регулятора для решения задачи угловой стабилизации мультиро-торного БПЛА. Стоит отметить, что в этой работе рассматривается вопрос угловой стабилизации БПЛА и не учитывается стабилизация положения центра БПЛА в пространстве.
2 Математическая модель мультироторного БПЛА
Рассмотрим квадрокоптер с известными физическими параметрами, движением которого можно управлять, изменяя скорости вращения винтов. Аппарат движется относительно неподвижной инерциальной системы отсчета, связанной с Землей и заданной перпендикулярными друг другу координатными осями О(д., Оу и 02, причем ось СК направлена противоположно вектору силы тяжести. С квадрокоптером связана строительная система координат, центр которой размещен в центре масс аппарата, а оси ОхЬ, ОуЬ и 02Ь параллельны и сонаправлены с осями неподвижной системы.
Угловое положение аппарата задаем тремя углами Крылова: углами крена ф, тангажа 0 и рыскания у, определяющими вращение вокруг осей 0хЬ, Оуь и 0зЬ соответственно. На рисунке 1 изображена строительная система координат квадрокоптера.
Рис. 1. Строительная система координат квадрокоптера
Будем считать квадрокоптер шаром с ради-
усом
массой Мз (кг), на расстоянии I
от центра которого расположены матери-
альные точки с массой М„
Тогда его
можно представить в том виде, как показано на рисунке 2.
Рис. 2. Схематическое изображение квадрокоптера
Математическая модель такого квадрокоптера описывается выражениями (1) - (6) [Гурьянов, 2014] и включает в себя линейные и угловые ускорения аппарата.
3 Задача угловой стабилизации
Определим задачу угловой стабилизации мультироторного БПЛА через термины теории автоматического управления (ТАУ) [Денисенко, 2014]. Объектом управления является сам летательный аппарат. Уставкой в случае мультироторного БПЛА будет являться требуемое значение, заданное СУ для каждого из углов Крылова. Уставка не изменяется в задаче стабилизации. Регулируемой величиной будет являться текущее значение того или иного угла Крылова. Тогда ошибкой в каждый момент времени будет являться разница между заданным и текущим значением угла.
р рх2
£
р . _ ру2
у = - СфЗу)---5у
Р . рг2
г = СуСв--д- ^пШс, —51
■IX 1
в = уЧ
'у
,, 1 Ф = 7
где Са — косинус угла а (безразмерная величина),
— синус угла а (безразмерная величина), Г — суммарная тяга аппарата (Н),
т^ — общая масса аппарата (кг),
— коэффициент аэродинамической силы (безразмерная величина), р — плотность воздуха (кг/м3),
а — линейная скорость по оси а (м/с),
Б) — площадь поверхности, на которую действует набегающий поток по оси г' (м3).
¡1— момент инерции относительно оси (
X м2).
где п — номер итерации регулирования,
— ошибка на итерации п, К — пропорциональный коэффициент (безразмерный), г.'. — интегральный коэффициент (размерность времени),
— дифференциальный коэффициент (размерность времени), е(к) — ошибка на итерации к,
= ^ ■;: — промежуток времени, через который происходит регулирование
Регулированием в таком случае будет такое изменение скоростей вращения винтов, при котором все углы Крылова стремятся к заданным и поддерживаются в таком состоянии.
Так как в случае квадрокоптера имеется три угла, то также имеется три различных ошибки управления. Для минимизации каждой их этих ошибок потребуется отдельный регулятор с обратной связью. В качестве регулятора с обратной связью в этой работе используется ПИД-регулятор (7).
4 Нейро-нечеткий ПИД-регулятор
Нейро-нечеткая сеть [Cheong, 2007] в своем общем виде устроена так, что имеет одно выходное значение. Поэтому для настройки коэффициентов ПИД-регулятора необходимо иметь три нейро-нечетких сети. Рассмотрим структуру нейро-нечеткой сети для вычисления пропорционального коэффициента. Сети для вычисления интегральной и дифференциальной составляющей формируются аналогичным образом. Различие между сетями, предназначенными для настройки разных коэффициентов, заключается в значениях обучающей выборки.
Структура нейро-нечеткой сети для вычисления пропорционального коэффициента состоит из следующих элементов:
• 2 входных переменных: ошибка е (с) и приращение ошибки по времени de (°);
• выходной параметр, пропорциональный коэффициент Р,
• 7 функций принадлежности треугольного вида для каждой из входных переменных;
• 49 правил нечеткого вывода по алгоритму Суджено [Блюмин, 2002].
Набор из семи треугольных функций принадлежности часто применяется для построения нечетких регуляторов [Cheong, 2007; Денисенко, 2007], поэтому именно этот вид функций принадлежности был выбран для построения нейро-нечеткой сети.
Структура такой нейро-нечеткой сети может быть представлена в виде, как показано на рисунке 3.
Рис. 3. Структура нейро-нечеткой сети
Выход нейронов первого слоя рассчитывается по формуле (8).
,х — а
--,а < х < b
b — a
I, х = b
-г, b < X < с
с - b
О, иначе
где х — четкая входная переменная, ; — настраиваемые параметры.
Правила вывода имеют вид, как показано в выражении (9).
если х е А и у е В, то г = рх + + г (9)
где х,у — входные четкие переменные,
.4 Б — нечеткие множества,
5 — выходное значение правила,
:'■■ — настраиваемые параметры правила.
Для вычисления уровня истинности правила и, соответственно, выхода нейронов второго слоя была выбрана Г-нор ма [Блюмин, 2002], которая вычисляется по формуле (10).
где х,у — входные четкие переменные, ; : — функции принадлежности для нечетких множеств А, В правила вывода (9) соответственно.
Выход узлов третьего слоя нормализует уровень истинности правил и рассчитывается по формуле (11):
О3 =
ут Q2 *Ч= Iй)
где Of — t-й узел второго слоя,
;;; — количество правил.
Выход узлов четвертого слоя рассчитывается по формуле (12).
О* = О*(ъх + Ч# + г0 (12)
где О* — выход 1-го нейрона третьего слоя,
Pi.qi.Ti — параметры следствия ¿-го правила,
... -." — входные переменные.
Выход всей сети рассчитывается единственным узлом пятого слоя по формуле (13).
т
г=1
где О* — выход г-го узла четвертого слоя, :: — количество правил.
В качестве метода обучения сети используется метод обратного распространения ошибки.
В реальных квадрокоптерах выборка должна составляться экспертом в этой предметной области. Однако для тестирования нейро-нечеткого ПИД-регулятора в данной работе выборка генерируется эмпирически подобранными функциями от ошибки и приращения ошибки за промежуток времени регулирования. Эти функции описываются выражениями (14) - (16).
где Р — пропорциональный коэффициент регулятора,
I — интегральный коэффициент регулятора,
Э — дифференциальный коэффициент регулятора, — ошибка,
— максимально возможная ошибка.
5 Результаты проведенных экспериментов
Целью всех проводимых экспериментов является качественное сравнение ПИД-регулятора, настроенного методом Зиглера-Никольса и нейро-нечеткого ПИД-регулятора, а также их количественное сравнение по следующим критериям:
• перерегулирование;
• период установления с заданной погрешностью.
В таблице 1 представлены параметры квадрокоптера и константы, необходимые для моделирования поведения квадрокоптера.
Таблица 1. Параметры моделирования.
Масса летательной платформы (:■::) 0,5
Масса двигателя (:-:г) 0,1
Радиус летательной платформы О') 0,25
Расстояние от двигателя до центра О") 0,20
Ускорение свободного падения 9,81
Безразмерная константа л 0,010
Безразмерная константа 0,001
Начальные и требуемые значения угла, а также начальная ошибка находятся в интервале [-45; 45] (с). Время обучения одной ней-ро-нечеткой сети на выборке, сгенерированной для таких входных данных, в среднем составляет 30 минут для 10 тысяч эпох обучения. Ниже приведены результаты экспериментов для угла крена. Начальные условия эксперимента представлены в таблице 2.
Таблица 2. Начальные условия регулирования _угла крена.
Исходный 45
угол крена (°)
Требуемый 0
угол крена (°)
Погрешность 1
установления
О
График регулирования угла крена представлен на рисунке 4.
о
-Требуемое значение угла крена
*---**■ Метод Зиглера-Никольса -----Нейро-нечеткая сеть
1\
•
1
1 / \
1
1 1 1 *
ю
Рис. 4. Регулирование угла крена
Результаты эксперимента представлены в таблице 3.
Таблица 3. Результаты регулирования угла крена.
Регулятор Критерий Зиглера-Никольса Нейро-нечеткий
Перерегулирование (:) 17,89 0,00
Период установления (:) 2,70 1,90
Введем некоторые случайные воздействия, изменения угла крена в случайные моменты времени на небольшое значение (таблица 4).
Таблица 4. Начальные условия регулирования угла крена в условиях случайных возмущений.
Исходный угол крена (:) 45
Требуемый угол крена (:) 0
Погрешность установления (:) 3
Случайные возмущения (:) 3
График регулирования угла крена в условиях случайных возмущений представлен на рисунке 5.
О
— Требуемое значение угла крена
.......Метод Зигяера-Никольсэ
Нейро-нечеткая сеть
Л
*|\
и
1
I
А У "V
к ■
• \ /
• • V 1
л/
Рис. 5. Регулирование угла крена в условиях случайных возмущений
Результаты эксперимента представлены в таблице 5.
Таблица 5. Результаты регулирования угла кре-_на в условиях случайных возмущений.
Регулятор Критерий Зиглера-Никольса Нейро-нечеткий
Перерегулирование (:) 22,30 1,32
Период установления (э) 2,35 1,50
Рассмотрим ситуацию, когда отклонение от требуемого угла небольшое. Начальные условия эксперимента представлены в таблице 6.
Таблица 6. Начальные условия регулирования _угла крена при малом отклонении.
Исходный угол крена (:) 10
Требуемый угол крена (:) 0
Погрешность установления (:) 1
График регулирования угла крена при малом отклонении представлен на рисунке 6.
Рисунок 6. Регулирование угла крена при малом отклонении
Результаты эксперимента представлены в таблице 7.
Таблица 7. Результаты регулирования угла кре-_на при малом отклонении.
Регулятор Критерий Зиглера-Никольса Нейро-нечеткий
Перерегулирование (:) 0,00 0,00
Период установления (=) 0,45 0,90
Из проведенных экспериментов можно
сделать следующие выводы:
• нейро-нечеткий ПИД-регулятор показывает лучшие результаты при больших отклонениях;
• нейро-нечеткий ПИД-регулятор управляет угловым положением мультиро-торного БПЛА с перерегулированием, близким к нулю;
• случайные возмущения одинаково влияют на результат при использовании обоих методов;
• при малых отклонениях метод Зиглера-Никольса показывает меньший период установления.
6 Заключение
Достоинства разработанного нейро-нечеткого ПИД-регулятора:
• меньший период установления при больших отклонениях в сравнении с классическим ПИД-регулятором;
• близкое к нулю перерегулирование;
• плавный переход из текущего положения в требуемое.
Недостатки разработанного нейро-нечеткого ПИД-регулятора:
• длительное время обучения нейро-нечеткой сети;
• необходимость экспертной оценки для составления выборки.
Список литературы
Андропов С. С., Гирик А. В., Будько М. Ю., Будь-ко М. Б. Стабилизация беспилотного летательного аппарата на основе нейросетевого регулятора // Научно-технический вестник информационных технологий, механики и оптики. -2016. - Т. 16. - № 5. - С. 796-800.
Блюмин С. Л. Нечеткая логика: алгебраические основы и приложения / Блюмин С. Л., Шуйкова И. А., Сараев П. В. - Монография. - Липецк: ЛЭГИ, 2002. - 111 с.
Гурьянов А. Е. Моделирование управления квадрокоптером // Инженерный вестник / МГТУ им. Н.Э. Баумана. - 2014. - №8, август 2014. - С. 522-534.
Денисенко В. В. ПИД-регуляторы: принципы построения и модификации. Часть 2 // Современные технологии автоматизации. - 2007. - №1. -С. 78-88.
Денисенко В. В. Компьютерное управление технологическим процессом, экспериментом, оборудованием. /В. В. Денисенко - М.: Горячая линия - Телеком, 2014. - 608 с., ил.
Cheong F., Lai R. Simplifying the automatic design of a fuzzy logic controller using evolutionary programming // Soft Computing. - 2007. - July 2007, Volume 11, Issue 9. - P. 839-846.