Научная статья на тему 'Управление движением квадрокоптера по заранее заданной траектории'

Управление движением квадрокоптера по заранее заданной траектории Текст научной статьи по специальности «Математика»

CC BY
12125
1426
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КВАДРОКОПТЕР / QUADROCOPTER / ТРАЕКТОРНОЕ УПРАВЛЕНИЕ / TRAJECTORY CONTROL / БПЛА / UAV / ПОЛЕТ ПО ТРАЕКТОРИИ / FLIGHT ALONG THE TRAJECTORY

Аннотация научной статьи по математике, автор научной работы — Гриценко Полина Андреевна, Кремлев Артем Сергеевич, Шмигельский Григорий Михайлович

Разработан программный продукт, включающий в себя визуализатор и программу управления квадрокоптером, способную решать задачу формирования и отслеживания траектории полета. Приложение предназначено для системы управления квадрокоптером в автоматическом режиме в местах, где невозможно использовать сигнал от спутника (GPS) или сторонних датчиков, но известен подробный план местности или здания, а также при решении задач, где возникает необходимость вмешательства человека. Реализация разработанного алгоритма на квадрокоптере позволяет избежать постоянных обменов сигналами со станцией; как следствие, снижается потребление электроэнергии приемника и повышается время полета. Апробация программного приложения была выполнена на квадрокоптере Ar Drone компании Parrot. В результате работы программы квадрокоптер повторил заданную траекторию с погрешностью не более 5%.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Гриценко Полина Андреевна, Кремлев Артем Сергеевич, Шмигельский Григорий Михайлович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

SOFTWARE APPLICATION FOR QUADROCOPTER FLIGHT ALONG PREDETERMINED TRAJECTORY

Software product including visualizer and quadrocopter control program for solving the problem of the flight path formation and tracking is developed. Application is designed to control quadrocopter automatically in places where it is impossible to capture the signal from a satellite (GPS) or to use extra sensors, and a detailed plan of a site or a building is given. It can also be used in various technical systems to solve problems in situations when a human intervention is necessary. Algorithm implementation in respect to the quadrocopter makes it possible to avoid the constant communication of quadrocopter with the station and consequently reduces power consumption and has the advantage of protection from interception. Testing of this software application has been made ​​on Ar Drone quadrocopter manufactured by Parrot Company. As a result of the program testing, quadrocopter repeated the desired trajectory with an error of no more than 5%.

Текст научной работы на тему «Управление движением квадрокоптера по заранее заданной траектории»

УДК 681.51

УПРАВЛЕНИЕ ДВИЖЕНИЕМ КВАДРОКОПТЕРА ПО ЗАРАНЕЕ ЗАДАННОЙ ТРАЕКТОРИИ П.А. Гриценко, А.С. Кремлев, Г.М. Шмигельский

Разработан программный продукт, включающий в себя визуализатор и программу управления квадрокоптером, способную решать задачу формирования и отслеживания траектории полета. Приложение предназначено для системы управления квадрокоптером в автоматическом режиме в местах, где невозможно использовать сигнал от спутника (GPS) или сторонних датчиков, но известен подробный план местности или здания, а также при решении задач, где возникает необходимость вмешательства человека. Реализация разработанного алгоритма на квадрокоптере позволяет избежать постоянных обменов сигналами со станцией; как следствие, снижается потребление электроэнергии приемника и повышается время полета. Апробация программного приложения была выполнена на квадрокоптере Ar Drone компании Parrot. В результате работы программы квадрокоптер повторил заданную траекторию с погрешностью не более 5%.

Ключевые слова: квадрокоптер, траекторное управление, БПЛА, полет по траектории.

Введение

Все большую популярность получают беспилотные летательные аппараты (БПЛА) в виде многовинтовых устройств, а чаще - квадрокоптеров, представляющих из себя платформу с четырьмя роторами, одна пара которых вращается по часовой стрелке, другая - против. По сравнению с БПЛА вертолетного типа с несущим и рулевым винтами квадрокоптеры обладают рядом преимуществ - надежность и простота конструкции, большая стабильность, компактность и маневренность, малая взлетная масса при существенной массе полезной нагрузки. Область применения квадрокоптеров достаточно широка. Например, они могут быть использованы как недорогое и эффективное средство для получения фото- и видеоизображений с воздуха, в том числе при плохих погодных условиях. Так как квадрокоптер - дистанционно управляемый летательный аппарат, он хорошо подходит для наблюдения и контроля объектов, территорий и зон, доступ к которым затруднен (в случае естественных или техногенных катастроф), или в условиях, непригодных для человека, таких как повышенный уровень радиации или сильное загрязнение воздуха [1-3].

Большинство работ, посвященных решению задач мониторинга местности при помощи БПЛА, связано с движением летательного аппарата по известной траектории. В частности, в работе [4] авторами предлагается система управления, реализующая движение квадрокоптера по прямой линии, соединяющей начальную и конечную точки траектории, с заданной скоростью на заданной высоте над поверхностью земли с учетом рельефа местности. В [5] рассмотрен алгоритм передвижения квадрокоптера вдоль любой траектории в пространстве, при котором квадрокоптер способен следовать за движущимся объектом с известными координатами и скоростью.

В настоящей работе предлагается алгоритм полета квадрокоптера по заранее заданной траектории в автономном режиме, реализованный в программном приложении. Актуальность задачи состоит в том, что полет происходит в закрытом помещении с неизвестными объектами [6-8]. В такой постановке задачи, когда автоматическая система не может однозначно идентифицировать препятствие либо происходит сбой в выполнении задания, либо возникает необходимость дополнительного вмешательства человека при формировании и контроле выполнения пролета по заданной траектории БПЛА [9, 10].

Способ задания траектории

Для формирования траектории создана область рисования компьютерной мышью в окне программы, итоговая траектория представляет собой множество точек на декартовой плоскости с координатами (х, у). Полученные данные имеют числовое представление в форме массива точек. Этот массив разбивается на небольшие части - отрезки кривой, аппроксимирующие первоначальную траекторию (рис. 1).

Рис. 1. Окно приложения: траектория, заданная мышью (а); аппроксимированная первоначальная траектория (б)

П.А. Гриценко, А.С. Кремлев, Г.М. Шмигельский

Аналитический расчет траектории

Перемещение квадрокоптера по траектории складывается из движений следующих типов:

- движение по прямой, соединяющей точки начала и конца элемента-отрезка;

- вращение вокруг вертикальной оси, проходящей через центр квадрокоптера.

Длина продольного перемещения вычисляется как расстояние между двумя точками (в пикселях), умноженное на коэффициент соответствия. Коэффициент соответствия рассчитывается в зависимости от размеров площадки для полета и области рисования на дисплее.

Расчет угла поворота происходит в несколько этапов (рис. 2).

1. Угол а определяется следующим выражением:

( \

а = агссоБ

Уо - У

- У 2 )2 +(*2 - *1 )2

180 л

2. Второй и последующие углы р,- рассчитываются по формуле

Р,. = атссоБ

(х,. - х,.-1) • (+1 - х,.-1) + (у, - у,--1) • (у,+1 - у,-)

.-1 )2 + (у, - у,-1 )2) • ((+1 - х,. )2 + (у,+1 - у, )2)

где ,= 1, ..., N-1; N - количество отрезков.

180 л

Е(х4,у4)

А(хо,уо)

Рис. 2. Расчет угла поворота Для определения направления поворота квадрокоптера используются несколько условий:

- если у1 > у,.-! и

- если у1 < у,-1 и

+ х,.-1 > х.+1, то поворот направо, иначе - налево;

(х,.- х,-1 Му<+1 - У,.-1)

(у< - у,-1)

(-,-1 М (+1 У'-1 М + х/-1 < х.+1, то поворот направо, иначе - н;

(у,- у,-1)

Используемый инструментарий (программные средства)

Инструментом для создания оконного приложения был выбран язык программирования С++, реализованный в среде разработки 4.8, что позволило создать исполняемые файлы для различных операционных систем [11]. Вся программа реализована на следующих стандартных классах в

- QThread - класс, обеспечивающий платформонезависимые потоки;

- QWidget - базовый класс для всех объектов пользовательского интерфейса;

- QUdpSocket - класс, предоставляющий возможность использования ИБР (ИБР - это протокол пользовательских датаграмм (блоков информации));

- QMouseEvent - класс, содержащий параметры событий мыши;

- QGraphicsView - класс, предоставляющий виджет для отображения содержимого QGraphicsScene;

- QGraphicsScene - класс, предоставляющий поверхность для управления большим числом графических двумерных элементов.

х

Программа обеспечивает выполнение следующих функций:

- ручное управление летательным аппаратом при помощи клавиатуры или мыши;

- полет по заданной траектории;

- обмен данными между компьютером и летательным аппаратом по каналу беспроводной связи Wi-Fi;

- возможность отслеживать данные с датчиков летательного аппарата.

Использовано программное обеспечение, распространяемое по свободным лицензиям. Программа может работать под управлением операционных систем Windows XP/Vista/7/8, а также Linux. Рекомендуемые системные требования к компьютеру для запуска и работы программы: 50 МБ свободного места на диске; 512 МБ оперативной памяти; процессор с частотой 1 ГГц.

Выбор исполнительного устройства, апробация программного приложения на реальном объекте

В качестве исполнительного устройства при реализации программы движения по траектории был выбран квадрокоптер Ar Drone (рис. 3). К его преимуществам перед аналогами можно отнести наличие беспроводной связи, простое формирование команд управления, встроенные датчики, такие как гироскоп и акселерометр, штатная автоматическая система стабилизации, взлета и посадки.

Рис. 3. Квадрокоптер Ar Drone

Связь компьютера с квадрокоптером осуществляется посредством Wi-Fi, а управление организовано в виде UDP-датаграмм. Общий вид команд управления Ar Drone задается следующим образом:

AT*PCMD=%d,%d,%d,%d,%d,%d<LF>, где аргумент 1 - порядковый номер команды; аргумент 2 - флаг, разрешающий комбинированные команды; аргументы 3-6 определяют движение влево-вправо, вперед-назад, вверх-вниз и вращение вокруг вертикальной оси соответственно. Все значения находятся в интервале [-1; 1].

При нажатии кнопки «Полет» в главном окне приложения (рис. 1) квадрокоптеру отправляется команда на взлет, после получения которой он автоматически поднимается на заданную высоту. Рассчитанные углы и расстояния между точками формируют управляющее воздействие для Ar Drone, отправляемое в режиме реального времени с использованием данных с датчиков для более точного следования по траектории. Движение осуществляется в горизонтальной плоскости без учета изменения высоты летательного аппарата относительно земли. При достижении конечной точки траектории приложение отправляет квадрокоптеру команду посадки.

В экспериментах квадрокоптер под управлением разработанной программы повторил заданную траекторию с погрешностью не более 5%.

Заключение

Предложен способ управления летательным аппаратом c компьютера по беспроводной связи, который позволяет задавать и отслеживать траекторию полета БПЛА. Сформированная в результате реализации программы траектория предназначена для системы управления квадрокоптером в автоматическом режиме в местах, где невозможно использовать сигнал от спутника (GPS) или сторонних датчиков, но известен подробный план местности или здания. Реализация разработанного алгоритма на квадрокоптере позволяет избежать постоянных обменов сигналами со станцией; как следствие, снижается потребление электроэнергии приемника и повышается время полета, что дает возможность летательному аппарату преодолевать большее расстояние по сравнению с ручным управлением. При проведении экспериментов на квадрокоптере Ar Drone компании Parrot по прохождению заранее заданной траектории в автоматическом режиме летательный аппарат ни разу не потерял связь с наземной станцией, выполняя траекторию с погрешностью не более 5%.

Исследование выполнено при поддержке министерства образования и науки Российской Федерации, соглашение № 14.В37.21.0421 и гос. контракт № 16.740.11.0553.

Т.А. Акунов, Н.А. Дударенко, Н.А. Полинова, А.В. Ушаков

Литература

1. Ситников Д.В., Бурьян Ю.А., Русских Г.С. Автопилот мультикоптера // Известия Тульского государственного университета. Технические науки. - 2012. - № 7. - С. 213-221.

2. Рубин Д.Т., Конев В.Н., Стариковский А.В., Шептунов А.А., Смирнов А. С., Толстая А.М. Разработка квадрокоптеров со специальными свойствами для проведения разведывательных операций // Спецтехника и связь. - 2012. - № 1.- С. 28-30.

3. Эпов М.И., Злыгостев И.Н. Применение беспилотных летательных аппаратов в аэрогеофизической разведке // Интерэкспо Гео-Сибирь. - 2012. - Т. 2. -№ 3.- С. 22-27.

4. Белоконь С.А., Золотухин Ю.Н., Нестеров А.А., М.Н. Филиппов. Управление квадрокоптером на основе организации движения по желаемой траектории в пространстве состояний // Труды XIII Международной конференции «Проблемы управления и моделирования в сложных системах». - Самара: Самарский научный центр РАН, 2011. - С. 217-222.

5. Puls T., Hein A. 3D trajectory control for quadrocopter // Intelligent Robots and System (IROS), IEEE/RSJ International Conference on, 2010. - P. 640-645.

6. Бобцов А.А., Шаветов С.В. Управление по выходу линейным параметрически неопределенным объектом в условиях возмущающих воздействий и неучтенной динамики // Научно-технический вестник СПбГУ ИТМО. - 2011. - № 1 (71). - С. 33-39.

7. Чеботарев С.Г., Кремлев А.С. Анализ линейных систем с переменными параметрами для синтеза интервальных наблюдателей // Научно-технический вестник информационных технологий, механики и оптики. - 2012. - № 6. - С. 50-53.

8. Бобцов А.А., Пыркин А.А. К задаче управления параметрически не определенным линейным объектом с запаздыванием в канале управления // Научно-технический вестник СПбГУ ИТМО. - 2011. -№ 3 (73). - С. 138.

9. Андреев В.Л., Иванов Р.В., Козлов Е.Б., Потупчик С.Г., Соколов П.В. Системы управления малоразмерными дистанционно пилотируемыми самолетами // Изв. вузов. Приборостроение. - 2011. - Т. 54. - № 8. - С. 48-57.

10. Литвинов Ю.В., Бушуев А.Б., Гриценко П.А., Шмигельский Г.М. Полет квадрокоптера по произвольно задаваемой траектории // Материалы IX международной научно-практической конференции «Современные научные достижения-2013». - Технические науки: Прага. Издательский дом «Образование и наука» ООО. - 2013. - Часть 77. - 96 с.

11. Бланшет Ж., Саммерфилд М. QT4 программирование GUI на С++. - 2-е изд. - ООО КУДИЦ-Образ, 2008. - 738 с.

Гриценко Полина Андреевна - Санкт-Петербургский национальный исследовательский университет

информационных технологий, механики и оптики, студент, Polina.gritsenko@gmail.com

Кремлев Артем Сергеевич - Санкт-Петербургский национальный исследовательский университет

информационных технологий, механики и оптики, кандидат технических наук, доцент, kremlev_artem@mail.ru

Шмигельский Григорий Михайлович - Санкт-Петербургский национальный исследовательский университет

информационных технологий, механики и оптики, студент, Gri6ka16@gmail.com

УДК 62.50: 681.50.1

ИССЛЕДОВАНИЕ ПРОЦЕССОВ В НЕПРЕРЫВНЫХ СИСТЕМАХ С КРАТНЫМИ КОМПЛЕКСНО-СОПРЯЖЕННЫМИ СОБСТВЕННЫМИ ЧИСЛАМИ ИХ МАТРИЦ СОСТОЯНИЯ Т.А. Акунов, Н.А. Дударенко, Н.А. Полинова, А.В. Ушаков

Рассматривается устойчивая непрерывная система, матрица состояния которой обладает спектром кратных комплексно-сопряженных собственных чисел, кратность которых равна размерности ее вектора состояния. Особое внимание обращается на ситуацию, когда модуль вещественной части собственного числа меньше единицы. Устанавливается, что в этой ситуации уже при малой колебательности собственных чисел появляется заметный выброс в процессах по норме свободного движения по вектору состояния и величина выброса тем больше, чем меньше по модулю вещественная составляющая собственного числа и чем больше его кратность и мнимая часть. Ключевые слова: комплексно-сопряженные собственные числа, кратность, свободное движение, норма, выброс.

Введение. Постановка задачи

Ставится задача исследования свободного движения устойчивой линейной непрерывной многомерной динамической системы по норме вектора состояния с целью изучения влияния на это поведение кратности собственных чисел ее матрицы состояния и значения их модуля. В работе поставленная задача

i Надоели баннеры? Вы всегда можете отключить рекламу.