Numerical Method for Controlling the Dynamics of Rotation Motion of a Multirotor Unmanned Aerial Vehicle


Cite item

Full Text

Abstract

There is a numerical method presented that makes it possible to ensure the smoothness of the forming function defining the rotational motion of a multirotor unmanned aerial vehicle. Behavior of the generating function at the final integration step is investigated. The proposed method provides the formation of a rotational motion limited by the value of angular velocity with specified angular acceleration parameters. The numerical method was simulated when forming a virtual control signal for back-stepping control. The results of simulating the response to a step signal showed a decrease in consumed energy, an effective limitation of angular velocity and a significant decrease in the peak power consumption compared to the original back-stepping method with a slight increase in the transition process time. The values of virtual control parameters which ensure the formation of specified dynamic characteristics of the rotational motion of multirotor unmanned aerial vehicle were selected.

Full Text

Мультироторные беспилотные летательные аппараты (БЛА) благодаря простоте конструкции широко применяются в различных отраслях хозяйства для проведения мониторинга протяженных и сосредоточенных объектов, фото- и видеосъемки, картографирования, доставки небольших грузов, что предъявляет высокие требования к точности управления полетом в условиях воздействия возмущающих факторов. С точки зрения моделирования мультироторный БЛА является нелинейным объектом с перекрестными связями, управляемость которого зависит от полетной массы, характера движения и ряда других факторов. Для построения системы управления желательно, чтобы объект управления имел неизменные динамические характеристики, что в реальных условиях практически реализовать не представляется возможным. Данная статья направлена на разработку численного метода управления вращательным движением, обеспечивающим формирование заданных динамических характеристик по крену φ, тангажу θ, курсу ψ и реализацию движения мультироторного БЛА по траектории с ошибкой, не более заданной. Состояние вопроса Контроль мультироторного БЛА рассматривается как сочетание задач управления ориентацией и движением по заданной траектории. Ориентация описывается кинематическими уравнениями, которые являются автономными, что дает возможность рассматривать процесс управления ориентацией отдельно от задачи полета по траектории [1]. Для построения управления ориентацией мультироторных БЛА используются различные виды регуляторов. Наиболее распространены пропорционально-интегрально-дифференциальные (далее ПИД) регуляторы, простые в реализации, но требующие подстройки коэффициентов при изменении характеристик БЛА [2-4]. В случае применения линейно-квадратичных регуляторов (LQR) успешно решаются задачи стабилизации в режиме зависания БЛА, однако качество управления снижается при внешних возмущениях, перекрестных связях и существенных нелинейностях объекта управления [5]. При использовании ПИД- и линейно-квадратичных регуляторов необходимо реализовать точную модель объекта управления, что в большинстве случаев является непреодолимым препятствием. Одним из способов управления мультироторными БЛА в условиях воздействия внешних возмущающих факторов является применение скользящего режима SMC [6]. Его применение позволяет обеспечить качественное управление БЛА при отсутствии точной математической модели в условиях внешних возмущений. Основным недостатком метода SMC является использование релейных сигналов управления, которые в идеальном случае должны обеспечивать переключение регуляторов с бесконечной частотой, а для практической реализации управляющих воздействий необходимо обеспечить адаптацию частоты переключения к режимам полета БЛА [7; 8]. Кроме того, управление в скользящем режиме предполагает точное знание динамики БЛА. Широкое применение в практической реализации методов стабилизации нелинейных объектов нашел алгоритм обратного обхода интегратора - бэкстеппинг [9]. Возможность обеспечения приемлемого качества стабилизации движения мультироторного БЛА при неполном знании динамики объекта в условиях воздействия возмущающих факторов вызвало широкое применение бэкстеп-пинга при управлении мультироторными БЛА [10-18]. Данный метод позволяет формировать требуемую динамику движения объекта управления [9]. Алгоритм обеспечивает слежение выхода объекта за входным сигналом с заданной точностью за конечное время. Измерению доступны только скалярные вход и выход объекта, но не их производные. Синтез алгоритма управления условно разбивается на r шагов, где r - верхняя оценка относительной степени модели объек-та управления. На каждом шаге синтезируется управление, которое стабилизирует каждую подсистему в модели объекта в окрестности нуля. На последнем шаге синтезируется основной закон управления, который обеспечивает слежение выходного сигнала объекта управления за входным сигналом. В общем случае бэкстеппинг требует использования виртуальных управляющих сигналов, включающих производные от управляющих воздействий. Для подсистемы управления ориентацией мультироторного БЛА источником входного сигнала в виде углов ,φ,q ψ служит подсистема траекторного управления. Скорости изменения данных углов могут быть недоступны для отработки физической системой, и для качественного управления необходимо обеспечить их гладкость. Наиболее часто подобная задача решается различными методами фильтрации [19], которые не позволяют получать качественные сигналы виртуального управления и в конечном случае обеспечивать точность управления ориентацией мультироторного БЛА. Постановка и решение задачи Будем считать, что известны входные сигналы подсистемы траекторного управления в виде углов крена, тангажа и курса (,,).oo odd dφqψ Управление пространственной ориентацией реализу-ется методом бэкстеппинга. Формирование вир-туального управления производится в опорной системе координат, для чего требуется следующее. 1. Разработать численный метод управления динамикой вращательного движения мультироторного БЛА по каналам крена, тангажа и курса ( , , ), dd d ϕqψ обеспечивающего гладкость траектории при ограничениях: max pp tt ≤ min max min max , , d d ϕ ≤ ϕ ≤ϕ q ≤ q ≤q max max max , , , dx dy dz ϕ ≤ω q ≤ω ψ ≤ω    max max max , , . dx dy dz ϕ ≤ε q ≤ε ψ ≤ε    где max p t - ограничение времени переходного процесса; min , ϕ max , ϕ min , q max q - предельные значения соответственно углов крена и тангажа; max , ϕ  max , q  max ψ  - максимальные программные значения скорости изменения углов крена, тангажа и курса соответственно; max , ϕ ε max , q ε max ψ ε - максимальные значения угловых ускорений программных значений углов крена, тангажа и курса соответственно. ( , , ), dd d ϕqψ обеспечивающего гладкость траектории при ограничениях: max pp tt ≤ min max min max , , d d ϕ ≤ ϕ ≤ϕ q ≤ q ≤q max max max , , , dx dy dz ϕ ≤ω q ≤ω ψ ≤ω    max max max , , . dx dy dz ϕ ≤ε q ≤ε ψ ≤ε    где max p t - ограничение времени переходного процесса; min , ϕ max , ϕ min , q max q - предельные значения соответственно углов крена и тангажа; max , ϕ  max , q  max ψ  - максимальные программные значения скорости изменения углов крена, тангажа и курса соответственно; max , ϕ ε max , q ε max ψ ε - максимальные значения угловых ускорений программных значений углов крена, тангажа и курса соответственно. Рисунок 1. Результаты моделирования при: а - b = 0.3; б - 0.5; в - 0.7 Рисунок 2. Результаты моделирования при b = 0.8, 1.0, 1.2 Затем вычисляется управляющее значение угловой скорости: ( ) 10 10 ω= ϕ× = ϕ≥   ×ϕ  =- ϕ<   () () () () () ; , ïðè ïðè cont n err n b err n err n err n k sgn sgn sgn (2) при ограничении ( ) max , cont n ω ≤ω (3) где max ω - максимальное значение угловой скорости. После этого определяется значение угла виртуального управления: 2 1 () () . t cont n cont n t dt ϕ=ω ∫ (4) Вычисление (1)-(4) происходит циклически, результаты вычислений на предыдущем шаге становятся исходными для следующего шага. Проведем исследование поведения функции (4) с целью определения приемлемых для практики значений b при 1. k = Определим диапазон изменения 03 ., b = 0.5, 0.7, 0.8, 1.0, 1.2 при шаге интегрирования 0.01 сек. Исследуем изменение угловой скорости и углового ускорения в зависимости от . err ϕ Результаты моделирования изменений программного угла, угла виртуального управления, угловой скорости и ускорения представлены на рисунке 1 и 2. При 03 = . b происходит рост значения углового ускорения по мере уменьшения, err ϕ при 05 . b = значение углового ускорения является практически постоянным, но вблизи заданного значения угла o d ϕ оно увеличивается, а при времени моделирования более 1.5 с наблюдается колебательный процесс (на рисунке 1, б колебательный процесс не показан). При значении 07 = . b в окрестности заданного значения ϕo d возникают колебания величины углового ускорения, амплитуда которых уменьшается с ростом частоты дискретизации. Значение 08 1 . b ≤< позволяет получить приемлемый переходной процесс с плавным уменьшением значения углового ускорения по мере приближения к заданному значению угла. o d ϕ При значениях 10 . b = и 12 . b = наблюдается плавное уменьшение величины углового ускорения, но при этом происходит существенное увеличение времени переходного процесса (см. рисунок 2, б и в). Проведем моделирование виртуального управления (1)-(4) по каналу крена в случае ступенчатого изменения заданного угла . o d ϕ Зададим следующие параметры виртуального управления: 2 max ω= /, ðàä ñ 08 ., b = 4. k = Результаты моделирования виртуального управления при ступенчатом изменении управляющего сигнала представлены на рисунке 3. Недостатком данного вида управления является скачкообразное изменение угловой скорости до максимального значения и, как следствие, пикового значения углового ускорения. Для ограничения углового ускорения введем релейный режим управления с ограниченным значением углового ускорения: 11 11 () () () () () () () ïðè ; ïðè , cont n n d n dn n d n dn cont cont cont cont dt dt -- -- ω= ω -ε ω >ω   =  ω +ε ω <ω   (5) где d ω - программная угловая скорость; d ε - программное значение углового ускорения. Результаты моделирования виртуального управления, при значениях 2 max ω= /, ðàä ñ 10 d ε= 2 / ðàä ñ и шаге интегрирования 0.01 сек в релейном режиме приведены на рисунке 4. Недостатком рассмотренного способа является «дрожание» виртуального управления угловой скоростью (см. рисунок 4, б), которое уменьшается с увеличением частоты дискретизации. Данный эффект приводит к появлению вибраций конструкции БЛА, излишнему нагреву бесколлекторных двигателей и повышенному расходу энергии аккумуляторной батареи. Для устранения указанных недостатков изменим функции контроллера таким образом, чтобы виртуальное управление имело минимальное число переключений при сохранении ограничения времени переходного процесса max . pp tt ≤ Для этого введем переменную - ошибку формирования угловой скорости: () () () , err n cont n d n ω =ω -ω (6) условием переключения которой является ( ) max , err n dt ω <ε (7) где dt - время дискретизации. При выполнении данного условия принимается () , cont n d ω=ω (8) что обеспечивает плавность уменьшения углового ускорения при подходе к целевому значению угла. Результаты работы контроллера виртуального управления приведены на рисунке 5. Результаты моделирования показывают, что число переключений существенно сократилось, обеспечивается формирование ограниченной по значению угловой скорости вращательного движения с заданными параметрами углового ускорения. Изменяя величины , d ε max , ω k, b при заданном времени дискретизации , dt можно изменять вид переходного процесса, обеспечивая при этом заданное качество виртуального сигнала управления пространственной ориентацией. Канал управления по тангажу () d q и курсу () ψ строится аналогично, при формировании управления по углу курса необходимо ограничить значение . d -π ≤ ψ ≤ π Таким образом, разработанный численный метод позволяет задать ограничения на значение угловой скорости вращения, время переходного процесса. Кроме этого, для метода управления пространственной ориентацией БЛА в качестве первой производной сигнала управления может использоваться , cont ω а вторая производная гарантированно ограничена значением max . ε Рисунок 3. Результаты моделирования виртуального управления при ступенчатом изменении управляющего сигнала: а - изменение заданного (программного угла) и значения угла на выходе контроллера; б - изменение угловой скорости; в - изменение углового ускорения при формировании виртуального управления Рисунок 4. Результаты моделирования виртуального управления при ступенчатом изменении управляющего сигнала: а - изменение заданного (программного угла) и значения угла на выходе контроллера; б - изменение угловой скорости; в - изменение углового ускорения при формировании виртуального управления Рисунок 5. Результаты моделирования виртуального управления с переключением в режим плавного уменьшения величины углового ускорения: а - отслеживание заданного угла; б - изменения угловой скорости; в - изменения углового ускорения Рисунок 6. Результаты моделирования бэкстеппинг-контроллера управления ориентацией по крену: а - отслеживание заданного угла; б - потребляемой мощности; в - угловой скорости Пример Для исследования характеристик предложенного метода формирования динамики вращательного движения мультироторного БЛА проведем моделирование работы бэкстеппинг-контроллера[17]. Моделирование мультироторного БЛА типа квадрокоптер полетной массой 5 кг осуществляется с использованием программно-аппаратного комплекса [21]. Время переходного процесса max p t не должно превышать 0.8 с. Требуется сравнить характеристики бэкстеппинг-контроллера с использованием разработанного метода формирования динамики квадрокоптера и без такового. Рассмотрим вычисление управления по оси x: 2 1 11 1 2 2 1 1 11 1 2 1 1 ( )( ) , x dr U c e c ce b c aa = - +a + + - - aχ +ϕ -qψ -q Ω    (9) где 1, c 2 , c 1 a - положительные константы. Ошибки отслеживания заданных значений угла крена и угловой скорости определяются выражениями: 1 , d e =ϕ -ϕ (10) 2 . xd x e =ω -ω (11) Заданное значение угловой скорости вычисляется следующим образом: 11 1 1 11 , . xd d ce e ω = +ϕ +aχ χ=   (12) Результаты моделирования бэкстеппинг-контроллера (10), в котором в качестве входного сигнала используется ступенчатое воздействие при значениях 1 10 = , c 2 10, c = 1 05 . a= [18], представлены на рисунке 6. Применим к управлению (10) разработанный численный метод (1)-(4) с условиями (5)-(8), заменяя в (11) d ϕ  на () cont n ω и d ϕ  на () cont n ω  из (2). Проведем моделирование работы бэкстеппинг контроллера при изменении параметров max , ε max , ω k, b. Исследуем пиковое, суммарное энергопотребление и время переходного процесса. Результаты моделирования реакции управления (9) на ступенчатое воздействие приведены на рисунках 7-11. Значения израсходованной на маневр энергии, пиковое значение мощности и время переходного процесса обозначены в таблице. Таблица. Сводная таблица результатов моделирования бэкстеппинг-контроллера № Параметры виртуального управления Пиковая мощность max , P Вт Израсходованная энергия , s P Вт/ч Время переходного процесса , p t с 1 Без использования виртуального управления [18] 1370 1.025 0.6 2 10 max ε= 2 ðàä ñ , 4, k = 2 max ω= , ðàä ñ 08 . b = 1032 0.9815 0.8 3 10 max ε= 2 ðàä ñ , 4, k = 2 max ω= , ðàä ñ 0 95 . b = 1025 0.9744 1.2 4 15 max ε= 2 ðàä ñ , 7, k = 2 max ω= , ðàä ñ 08 . b = 1047 0.9869 0.53 5 15 max ε= 2 ðàä ñ , 7, k = 3 max ω= , ðàä ñ 08 . b = 1049 0.9938 0.5 6 12 max ε= 2 ðàä ñ , 5, k = 2 max ω= , ðàä ñ 0 85 . b = 1039 0.9844 0.7 Рисунок 7. Результаты моделирования бэкстеппинг-контроллера управления ориентацией по крену с применением численного метода при 10maxε=2,ðàä ñ2maxω=,ðàä ñ4,k=08.:b=а - отслеживание заданного угла; б - потребляемой мощности; в - угловой скорости Рисунок 8. Результаты моделирования бэкстеппинг-контроллера управления ориентацией по крену с применением численного метода при 10maxε=2,ðàä ñ2maxω=,ðàä ñ4,k=0 95.:b=а - отслеживание заданного угла; б - потребляемой мощности; в - угловой скорости Рисунок 9. Результаты моделирования бэкстеппинг-контроллера управления ориентацией по крену с применением численного метода при 15maxε=2,ðàä ñ2maxω=,ðàä ñ7,k=08.:b=а - отслеживание заданного угла; б - потребляемой мощности; в - угловой скорости Рисунок 10. Результаты моделирования бэкстеппинг-контроллера управления ориентацией по крену с применением численного метода при 15maxε=2,ðàä ñ3maxω=,ðàä ñ7,k=08.:b=а - отслеживание заданного угла; б - потребляемой мощности; в - угловой скорости Рисунок 11. Результаты моделирования бэкстеппинг-контроллера управления ориентацией по крену с применением численного метода при 12maxε=2,ðàä ñ2maxω=,ðàä ñ5,k=0 85.:b=а - отслеживание заданного угла; б - потребляемой мощности; в - угловой скорости Выводы 1. Разработан численный метод управления динамикой вращательного движения мультироторного БЛА (1)-(8), позволяющий, в отличие от известных методов, обеспечить гладкость формирующей функции вращательного движения, заданную угловую скорость и ограниченную величину второй производной управляющего сигнала. 2. Проведено сравнение формы и времени переходного процесса, израсходованной энергии и пиковой мощности при использовании подхода реализации бэкстеппинга, изложенного в [18], и бэкстеппинга с использованием численного метода управления динамикой вращательного движения мультироторного БЛА. Анализ показал, что при использовании предлагаемого численного метода наблюдается снижение пикового значения потребляемой мощности бортовой батареи примерно на 25 %, суммарное энергопотребление при тестовом маневре БЛА снижено на 5% при увеличении времени переходного процесса менее 0.2 с. 3. В отличие от метода, изложенного в [18], бэкстеппинг, использующий разработанный численный метод, позволяет исключить колебания переходного процесса при подходе к целевому значению угла и сформировать переходный процесс требуемой продолжительности. 4. Исследования показали, что основными факторами, влияющими на время переходного процесса, являются: величины,dεmax,ωk, b.Диапазоны их изменений для применения на практике представлены ниже:24608 0910 1223maxmax;..;(/);(/ ).ðàä ñðàä ñkb= ÷= ÷ε=÷ω=÷ Проведена проверка корректности разработанного численного метода с использованием полунатурного моделирования. В качестве объекта управления использован мультироторный БЛА типа квадрокоптер массой 5.0 кг. Расхождение результатов имитационного и полунатурного моделирования составили от 3 до 5%, что для инженерной практики является приемлемым результатом. Таким образом, разработанный численный метод управления динамикой вращательного движения мультироторного БЛА позволяет формировать требуемую динамику вращательного движения мультироторного БЛА, а совместное использование разработанного численного метода и бэкстеппинг-контроллера позволяет: ограничивать угловую скорость, задавать необходимое время переходного процесса, снижать энергопотребление и пиковое значение потребляемой мощности аккумуляторной батареи.
×

About the authors

A. M Isaev

North-Caucasus Federal University

Email: quaternion77@gmail.com
Stavropol, Russian Federation

G. I Linets

North-Caucasus Federal University

Email: quaternion77@gmail.com
Stavropol, Russian Federation

M. A Isaev

North-Caucasus Federal University

Email: quaternion77@gmail.com
Stavropol, Russian Federation

References

  1. Бранец В.Н. Шмыглевский И.П. Введение в теорию бесплатформенных инерциальных навигационных систем. М.: Наука, 1992. 280 с.
  2. Luukonen T. Modelling and Control of Quadcopter. Espoo: School of Science, 2011. 23 p. URL: http://sal.aalto.f/publications/pdf-files/eluu11public.pdf (дата обращения: 29.05.2020).
  3. Naidoo Y., Stopforth R., Bright G. Quad-rotor unmanned aerial vehicle helicopter modelling and control // International Journal of Advanced Robotic Systems. 2011. Vol. 8. No 4. P. 139-149. DOI: https://doi.org/10.5772/45710.
  4. Schmidt M.D. Simulation and Control of a Quadrotor Unmanned Aerial Vehicle: Master’s Theses. University of Kentucky, 2011. 93 p. URL: http://uknowledge.uky.edu/gradschool_theses/93 (дата обращения: 29.05.2020).
  5. Real-time stabilization of a quadrotor UAV: nonlinear optimal and suboptimal control / O. Santos [et al.] // Journal of Intelligent and Robotic Systems. 2013. Vol. 70. No 1-4. P. 79-91. DOI: https://10.1007/s10846-012-9711-8.
  6. Li T., Zhang Y., Gordon B.W. Passive and active nonlinear fault tolerant control of a quadrotor unmanned aerial vehicle based on the sliding mode control technique // Journal of Systems and Control Engineering. 2013. Vol. 227. P. 12-23. DOI: https://doi.org/10.1177/0959651812455293.
  7. Spurgeon S.K. Sliding mode control: a tutorial // European control сonf.: ECC 2014. Strasbourg, France, June 25-27. 2014. URL: https://kar.kent.ac.uk/41730/1/sliding_mode.pdf (дата обращения: 17.05.2020).
  8. Ющенко А.С., Лебедев К.Р., Забихафар С.Х. Система управления квадрокоптером на основе адаптивной нейронной сети // Наука и образование. 2017. No 7. С. 262-277. DOI: https://doi.org/10.7463/0717.0001282.
  9. Krstiс M., Kanellakopoulos I., Kokotovic P.V. Nonlinear and adaptive control design. N.-Y.: Wiley, 1995. 563 p.
  10. Bouabdallah S., Siegwart R. Backstepping and sliding-mode techniques applied to an indoor micro quadrotor // Proc. of IEEE Internat. Conf. on Robotics and Automation. Spain, 18-22 April. 2005. Vol. 2005. P. 2247-2252.
  11. Trajectory tracking control of a quadrotor UAV based on command filtered backstepping / X. Gong [et al.] // 2012 Third International Conference on Intelligent Control and Information Processing (ICICIP). 2012. P. 179-184. DOI: https://doi.org/10.1109/ICICIP.2012.6391413.
  12. Глазков Т.В., Голубев А.Е. Отслеживание программного изменения углового положения квадрокоптера // Математика и математическое моделирование. 2017. No 5. С. 15-28. DOI: https://doi.org/10.24108/mathm.0517.0000083.
  13. Backstepping sliding mode controller improved with fuzzy logic: Application to the quadrotor helicopter / S. Zeghlache [et al.] // Archives of Control Sciences. 2012. Vol. 22. No 3. P. 315-342.
  14. Huo X., Huo M., Karimi H.R. Attitude stabilization control of a quadrotor UAV by using backstepping approach // Mathematical Problems in Engineering. 2014. Vol. 2014. P. 749803. DOI: https://doi.org/10.1155/2014/749803.
  15. Liu Y., Ma J., Tu H. Robust command filtered adaptive backstepping control for a quadrotor aircraft // Journal of Control Science and Engineering. 2018. Vol. 2018. P. 1854648. DOI: https://doi.org/10.1155/2018/1854648.
  16. Гэн К., Чулин Н.А. Алгоритм наведения движения для квадрокоптера с возможностью облета препятствий и отслеживания запланированного маршрута на основе управления нормальным ускорением // Проблемы современной науки и образования. 2016. No 31 (73). С. 6-28.
  17. Backstepping-based inverse optimal attitude control of quadrotor / A. Honglei [et al.] // International Journal of Advanced Robotic Systems. 2013. Vol. 10. P. 223.
  18. Bouabdallah S. Design and control of quadrotors with application to autonomous flying: PhD Thesis. Lausanne, Switzerland: École Polytechnique Federale de Lausanne, 2007. 155 p.
  19. Command filtered backstepping / J.A. Farrell [et al.] // IEEE Transactions on Automatic Control. 2009. Vol. 54. No 6. P. 1391-1395. DOI: https://doi.org/10.1109/TAC.2009.2015562.
  20. Бесекерский В.А., Попов Е.П. Теория систем автоматического регулирования. М.: Наука, 1975. 768 с.
  21. Программно-аппаратный комплекс имитационного моделирования полета мультироторного БЛА / А.М. Исаев [и др.] // Инфокоммуникационные технологии. 2020. Т. 19. No 2. С. 177-187. DOI: https://doi.org/10.18469/ikt.2020.18.2.08.

Supplementary files

Supplementary Files
Action
1. JATS XML

Copyright (c) 2020 Isaev A.M., Linets G.I., Isaev M.A.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies