РАЗРАБОТКА КОНЦЕПЦИИ АВТОМАТИЧЕСКОЙ СИСТЕМЫ УПРАВЛЕНИЯ БЕСПИЛОТНЫМ АЭРОФОТОСЪЕМОЧНЫМ КОМПЛЕКСОМ
Вячеслав Николаевич Никитин
Сибирская государственная геодезическая академия, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, кандидат технических наук, доцент кафедры фотограмметрии и дистанционного зондирования СГГА, тел. +7-913-712-37-50, e-mail: vslav.nikitin@gmail.com
Дмитрий Николаевич Раков
Сибирская государственная геодезическая академия, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, аспирант кафедры фотограмметрии и дистанционного зондирования СГГА, тел. +7-952-907-21-08, e-mail: dir142@211.ru
В данной статье представлена концепция системы управления беспилотным аэрофотосъемочным комплексом. Система управления основана на микрокомпьютере Raspberry Pi, работающим под управлением операционной системы семейства Linux. Программная часть построена по модульному принципу с использованием кроссплатформенной среды программирования. Взаимодействие с датчиками и исполнительными механизмами осуществляется через порты GPIO или через USB-интерфейс. Программная архитектура позволяет выполнять имитационное моделирование процесса аэрофотосъёмки.
Ключевые слова: автопилот, беспилотный аэрофотосъемочный комплекс,
Raspberry Pi, система управления беспилотным летательным аппаратом, беспилотный летательный аппарат.
DEVELOPING CONCEPT OF AUTOMATIC CONTROL SYSTEMS FOR UNMANNED AEROPHOTOGRAPHY COMPLEX
Vyacheslav N. Nikitin
Siberian State Academy of Geodesy, 630108, Russia, Novosibirsk, 10 Plakhotny St., Ph.D., Assoc. Prof. of department of photogrammetry and remote sensing SSGA, tel. +7-913-712-37-50, e-mail: vslav.nikitin@gmail.com
Dmitry N. Rakov
Siberian State Academy of Geodesy, 630108, Russia, Novosibirsk, 10 Plakhotny St., a postgraduate student of department of photogrammetry and remote sensing SSGA, tel. +7-952-907-21-08, e-mail: dir142@211.ru
The article introduces the concept of unmanned aerial systems complex management. The control system is based on a microcomputer Raspberry Pi operating by Linux. The software is built in a modular fashion using a cross-platform programming environment. The interaction with sensors and actuators implemented via GPIO ports or via USB-interface. The software architecture allows simulation of the aerial photography process.
Key words: autopilot, unmanned aerophotography complex, Raspberry Pi, control system of unmanned aerial vehicle, unmanned aerial vehicle.
Аэрофотосъёмка малых территорий специализированным самолётом, укомплектованным экипажем и стандартным аэрофотосъёмочным оборудованием, экономически не эффективна. В этом случае целесообразно использовать компактный беспилотный аэрофотосъёмочный комплекс, позволяющий выполнить оперативную аэрофотосъемку заданного участка территории. Обычно такой комплекс состоит из наземной станции управления и непосредственно беспилотного летательного аппарата (БПЛА).
Неотъемлемой частью БПЛА является система управления. Для БПЛА классов мини- и микро-, где к габаритно-весовым характеристикам полезной нагрузки предъявляются жёсткие требования, система управления летательным аппаратом должна быть компактной, но в тоже время удовлетворять следующим требованиям:
1 Обеспечивать движение летательного аппарата по заданному маршруту;
2 Стабилизировать положение носителя в пространстве;
3 Осуществлять управление фотоаппаратом;
4 При потере сигнала с наземной станции управления возвращать летательный аппарат в зону посадки;
5 Обеспечивать возможность переключения между ручным и автоматическим режимами управления.
Можно выделить два основных подхода к разработке системы управления. Первый заключается в использовании микроконтроллеров для обработки получаемой от датчиков информации и выработки управляющих сигналов. При этом необходимо иметь хороший опыт работы с микроконтроллерами, уметь проектировать электронные системы и программировать на языках низкого уровня. Существуют затруднения с разработкой и отладкой программного обеспечения для микроконтроллеров, к тому же у них достаточно низкая производительность и имеются ограничения на использования вычислений с плавающей точкой. Несколько упростить процесс разработки может использование популярных аппаратных вычислительных платформ на базе микроконтроллеров (например, ДМшпо) путём выбора подходящей версии микропроцессорного модуля и плат расширения. Как правило, интегрированные среды разработки таких платформ позволяют разрабатывать программное обеспечение, используя С-подобные языки высокого уровня.
Второй подход к разработке системы управления заключается в использовании микрокомпьютеров (встраиваемых систем), по производительности сравнимых с персональными компьютерами, и обладающих развитой периферией: от последовательных портов ввода/вывода до видеовыходов, ШВ-хостов и сетевых интерфейсов. Как правило, микрокомпьютеры работают под адаптированными версиями распространённых операционных систем, от Linux до Windows. Это позволяет вести разработку программного обеспечения с использованием различных языков высокого уровня. Разработку и отладку на первоначальном этапе можно производить на обычном персональном компьютере. В отличие от подхода с
использованием микроконтроллеров, здесь объём работ по проектированию электронных устройств значительно снижен, так как необходимо разработать только сравнительно простые аппаратные модули для работы с датчиками и исполнительными механизмами. Существенным недостатком
микрокомпьютеров является их высокая стоимость.
Однако в 2011 году английский разработчик игр Дэвид Брабен представил сверхминиатюрный микрокомпьютер Raspberry Pi размером с кредитную карту (85,6 х 53,98 мм). Стоимость Raspberry Pi сравнительно невелика, порядка $30, в отличии от аналогов, разработанных другими компаниями. Raspberry Pi работает под управлением операционной системы семейства Linux, поддерживает USB 2.0 и порты ввода/вывода общего назначения. Характеристики этого микрокомпьютера соответствуют всем требованиям, предъявляемым к аппаратному обеспечению системы управления, что позволяет разработать многопоточное программное ядро системы с использованием языка программирования высокого уровня, а с помощью портов ввода/вывода подключить датчики и органы управления.
Любая система управления беспилотным летательным аппаратом для обеспечения безопасности полётов, а также для осуществления аварийной посадки, должна предусматривать возможность вмешательства оператора в процесс управления полётом, таким образом, система управления должна иметь как минимум два режима работы: автоматический и ручной. Автоматический -это режим, в котором летательный аппарат управляется автопилотом, обрабатывающим получаемые от датчиков (акселерометра, гироскопа, магнитного компаса, приёмника данных ГНСС систем, барометрического высотомера и т. д.) данные. Ручной режим позволяет оператору БПЛА предотвратить нештатную ситуацию при отказе или неправильной работе автопилота, а также осуществлять взлет и посадку летательного аппарата.
Для повышения фотограмметрического качества получаемых фотоматериалов система управления должна точно выдерживать заданные маршрут и высоту движения, уменьшать продольные и поперечные углы наклона, а также компенсировать угол сноса носителя.
В системе управления можно выделить аппаратную и программную составляющие (рис. 1, 2).
Как видно из рис. 1, аппаратная часть системы управления состоит из:
- Микрокомпьютера;
- Коммутатора - устройства для переключения между ручным и автоматическим вариантами управления;
- Блока датчиков;
- Бортового радиомодема для взаимодействия с наземной станцией управления;
- Приёмника радиоуправления;
- Устройства управления фотоаппаратом;
- Исполнительных механизмов органов управления летательным аппаратом.
Рис. 1. Блок-схема аппаратной части системы управления БПЛА
Функциональным ядром аппаратной части автопилота является микрокомпьютер, который обрабатывает данные, получаемые от навигационных датчиков, и передаёт команды на исполнительные механизмы органов управления.
Коммутатор — устройство, при помощи которого осуществляется выбор одного из нескольких вариантов управления, например, автоматическое управление с использованием автопилота или ручное при помощи пульта радиоуправления. Данное устройство позволит оператору в любой момент переключить управление летательным аппаратом в ручной режим, что позволит избежать возможных нештатных ситуаций или осуществить аварийную посадку.
В качестве навигационных датчиков предусмотрено совместное использование магнитного компаса, барометрического высотомера, твердотельного трёхосного гироскопа и трёхосного акселерометра, приёмника данных ГНСС систем.
Также микрокомпьютер задаёт режим аэрофотосъемки посредством специализированного устройства для управления фотоаппаратом.
Бортовой радиомодем предназначен для приёма и передачи различной информации, например, команд на изменение маршрута движения летательного аппарата, и отправки данных телеметрии, показывающих положение и скорость летательного аппарата, уровень заряда батареи, выбранный режим полёта, состояние бортового оборудования и др.
Приёмник радиоуправления получает управляющие сигналы от пульта радиоуправления и через коммутатор передает их на исполнительные механизмы.
Для взаимодействия всех узлов системы управления на микрокомпьютер устанавливается специализированное программное обеспечение, разработанное с использованием языков высокого уровня. Как видно из рис. 2, программное обеспечение построено по модульному принципу, где каждый модуль несет определённую функциональную нагрузку. Четыре модуля
сопряжения осуществляют непосредственное взаимодействие с оборудованием: радиомодемом, навигационными датчиками,
исполнительными механизмами и фотоаппаратом.
Рис. 2. Блок-схема программной части системы управления БПЛА
Модуль, осуществляющий связь с датчиками, передает информацию в навигационный модуль. Навигационный модуль, в свою очередь, производит обработку полученных данных, что позволяет определить положение носителя и его ориентацию в пространстве. Получив данные от навигационного модуля, маршрутный модуль просчитывает дальнейшее направление полёта в зависимости от заданного маршрута и текущего положения, после чего формирует команды для автомата программных манёвров. Также маршрутный модуль управляет процессом аэрофотосъемки. Автомат программных манёвров предназначен для выработки команд общего вида для модуля формирования управляющих сигналов, который корректирует команды с учётом схемы управления летательного аппарата. Также в автопилоте имеется функция записи всех параметров, передаваемых между модулями. Данная информация используется в качестве дополнительных геометрических условий при фотограмметрической обработке результатов аэрофотосъемки.
Архитектура системы управления предусматривает использование имитационного моделирования полетов БПЛА для анализа алгоритмов работы автопилота в камеральных условиях и отладки системы управления, что позволит избежать многих нештатных ситуаций в ходе эксплуатации БПЛА (рис. 3).
Рис. 3. Блок-схема имитационного моделирования полётов БПЛА
Таким образом, создание системы управления для БПЛА на базе микрокомпьютера Raspberry Pi позволит снизить стоимость аппаратной части системы и эффективно разработать и отладить её программную часть. Применение операционной системы семейства Linux позволяет использовать все преимущества кросс-платформенного программирования с использованием языков Qt или Java и выполнить значительную часть работ на персональном компьютере, а возможности имитационного моделирования помогут изучить в камеральных условиях все особенности использования системы управления.
© В.Н. Никитин, Д.Н. Раков, 2012