УПРАВЛЕНИЕ ВРЕМЕНЕМ СРАБАТЫВАНИЯ ЗАТВОРА ФОТОКАМЕРЫ БЕСПИЛОТНОГО ЛЕТАТЕЛЬНОГО
АППАРАТА
Ж. Ж. Айнакулов, А. Г. Кузьмин, А. Ф. Мухамедгалиев, М.Г. Разакова, В. В. Смирнов
Национальный центр космических исследований и технологий, 050010, Алма-Ата, Казахстан
УДК 629
Статья посвящена разработке механизма управления затвором фотоаппарата SONY NEX 5N, предназначенного для выполнения картографической аэрофотосъемки с беспилотного летательного аппарата, оснащенного полетным контроллером АРМ 2.6.
Ключевые слова: беспилотный летательный аппарат (БПЛА), картографическая аэрофотосъемка, микроконтроллеры, авиация, мультикоптер, автопилотирование.
The article is devoted to the finalization of the mechanism of gate control SONY NEX 5N camera designed to perform mapping with aerial drone aircraft with the flight controller АРМ 2.6.
Key words: unmanned aerial vehicles (UAVs), aerial mapping, microcontrollers, aviation, multicopter, autopilot.
В настоящее время получило развитие выполнение картографической аэрофотосъемки с беспилотных летательных аппаратов. Для этого используются цифровые фотоаппараты с разрешением не менее 10 Ми. Желательно, чтобы фотоаппараты были откалиброваны, т. е. чтобы были известны фокусное расстояние, размер пикселя, дисторсия и положение оптического центра кадра. Вопрос калибровки в данной статье не рассматривается.
Выполняя картографическую аэрофотосъемку, необходимо обеспечить выполнение нескольких условий:
1) По возможности выдержать неизменным в пределах 5-10 % масштаб аэросъемки, т. е. необходимо выполнять съемку с одной высоты.
2) Каждый снимок должен иметь перекрытие с соседними снимками не менее 60 %,
3) Фотоаппарат должен обеспечивать выдержку, исключающую смаз (размытие) изображения.
Исходя из этих условий, определяются требования к полету беспнлотннка, вернее, к его электронной начинке и программному обеспечению.
Управление беспилотным аппаратом осуществляется полетным контроллером, снабженным микропроцессором и множеством различных датчиков. Полетный контроллер работает под управлением заложенной в него программы, называемой прошивкой.
Для целей аэросъемки необходимо, чтобы беспилотник обладал функцией автопилота, позволяя ему летать по заранее спланированному маршруту, определяемому путевыми точками с заданными координатами.
В настоящее время на рынке представлено несколько полетных контроллеров от разных производителей, содержащих функцию автопилотирования [1].
Рис. 1. Результат планирования полота в программе Mission Planner
Наиболее функциональным и недорогим является контроллер АРМ на базе микропроцессора ATMEGA, разрабатываемый компанией DIY Drones,
Эта плата позволяет управлять БПЛА как в ручном режиме (с пульта оператора), так и в режиме автопилота, обеспечивая движение контора но заранее загруженным координатам.
Настройка автонилотирования производится с помощью программы Mission Planner, Данная программа позволяет выполнить планирование маршрута полота (рис, 1), определить точки срабатывания затвора фотоаппарата и осуществить загрузку этих данных в полетный контроллер летательного аппарата.
Расчеты показывают, что дня выбранной территории необходимо сделать более 7000 снимков, .петая но 94 маршрутным линиям, расположенным на расстоянии 58,5 м друг от друга. Общий путь, который должен пролететь беенилотник, составляет 139,66 км.
Следует учитывать, что .нотные возможности гражданских бесни.нотников но безграничны, Одной заправки электропитания (один или несколько заряженных аккумуляторов LiPo) полностью экипированного дня аэрофотосъемки мультиконгера хватает на 10-15 минут полота. За это время мультиконгер гарантированно может пролететь расстояние но двум линиям — туда и обратно — общей длиной порядка 2 км.
Дня предварительной оценки значений параметров аэросъемки в табл. 1 приведены расчетные значения режимов съемки дня цифрового фотоаппарата SOXY ХЕХ 5Х,
Управление фотоаппаратом SOXY ХЕХ 5Х осуществляется либо кнопкой срабатывания затвора, либо но сигналу встроенного инфракрасного датчика.
Дня осуществления срабатывания затвора фотоаппарата в полото можно: а) нажать на кнопку с помощью сервопривода; б) подать ИК сигнал на датчик; в) замкнуть выведенные провода от контактов кнопки.
Автоматизация процесса аэрофотосъемки с помощью управления затвором фотоаппарата контроллером полетов АРМ не всегда приводит к желаемому результату вследствие его ограниченных возможностей, не позволяющих проводить картографическую фотосъемку, Одним из них является малое количество (166) точек съемки, которое военри-
Таблица 1
Расчетные значения режимов съемки для цифрового фотоаппарата SONY NEX 5N
Марка фотоаппарата Фокусное расстояние (мм) Размер пикселя (мкр) Размер матрицы X (пикс/мм) Размер матрицы Y (пикс/мм) Скорость полета (м/с) Выдержка (с) Величина смаза (мм)
SONY NEX 5N F=18 4,7 3264/15,3408 4912/23,0864 5 1/2500 0,4
Расчетные значения параметров снимка
Высота полета (м)
Размер кадра X (м)
Размер кадра ¥(м)
Разрешение на земле (см)
Расстояние между центрами кадров вдоль полета (м)
Интервал съемки
(с)
Расстояние между центрами кадров вдоль полета (м)
Интервал съемки
(с)
20 17,045
25,651
0,522
40 34,090
51,303
1,044
60 51,136
76,954
1,566
80 68,181
102,606
2,088
100 85,226
128,257
2,611
Перекрытие вдоль линии полета = 60 %
6,818
1,363
3,409
0,681
13,636
2,727
20,454
4,090
27,272
5,454
Перекрытие вдоль полета = 80 %
6,818
1,363
10,227
2,045
13,636
2,727
34,090
6,818
17,045
3,409
150 127,840
192,380
3,916
51,136 10,227
25,568 5,113
нимает контроллер полета. Еще одним ограничением является то, что при загрузке в полетный контроллер более 255 точек данные об остальных точках попадают в область прошивки контроллера, его программное обеспечение нарушается, он перестает правильно функционировать и требуется его повторная прошивка.
Таким образом, возникла задача проанализировать состояние вопроса управления затвором фотоаппарата и найти альтернативные способы его решения.
Анализ вопроса. На одном из форумов [2] обсуждалась тема управления затвором. Как выяснилось, готовых решений нет, и высказывались предложения использовать либо USB, либо СОМ порт компьютера. Однако на БПЛА компьютер не поставишь. Роль компьютера в данном случае выполняет полетный контроллер.
Процесс аэрофотосъемки с БПЛА рассматривался во многих работах [3-5], Но механизм управления срабатыванием затвора нигде не описывался. По-видимому, как и в работе [6], для аэросъемки камера подключалась к автопилоту через USB кабель, и срабатывание затвора производилось по команде от автопилота.
Действительно, управление затвором фотоаппарата в процессе автопилотирования можно осуществить в программе Mission Planer с помощью команд для программирования полетного контроллера АРМ:
Команда Do-Set-Relay - задается для каждого момента фотографирования. Это удваивает количество записываемых в контроллер команд — нужно дать команду на подлет к точке фотографирования и затем команду на само фотографирование Do-Set-Relay (очень быстро достигается ограничение на количество событий — 255 — в плане полета).
Команда Do-Repeat-Relay — требуется заранее знать количество переключений; при каждом запуске, т, е, до сброса, фотоаппарат непрерывно щелкает.
Требуется разработать промежуточный между фотоаппаратом и полетным контроллером АРМ блок для срабатывания затвора.
Аналогичные недостатки имеются и для команд Do-Set-Servo, Do-Repeat-Servo (сигнал PWM) и Do-Digicam-Control,
В работе [7] приводится перечень команд, предназначенных для управления затвором фотоаппарата. Эти команды обладают ограниченной функциональностью,
С целью преодоления этих ограничений была произведена доработка механизма срабатывания затвора фотоаппарата, которую можно реализовать практически на любом микроконтроллере.
Новизна работы заключается в том, что после включения оператором на земле режима автопилотирования срабатывает схема посылки сигнала включения затвора фотоаппарата через заранее установленный интервал времени. По этому сигналу производится либо замыкание контактов кнопки срабатывания затвора, выведенных из фотоаппарата, либо посылка пакета импульсов навесного инфракрасного светодиода, обеспечивающих срабатывание затвора. Для формирования этого сигнала использовался микроконтроллер (МК) ATmega328 на плате Arduino Mini Pro [8]. В зависимости от варианта срабатывания затвора (замыкание или ПК) используется своя версия прошивки микроконтроллера,
В режиме автопилота, если на плату АРМ приходит сигнал на включение затвора фотоаппарата, то во flash память АРМ записываются следующие данные момента срабатывания:
— географические координаты;
— время UTC;
— углы ориентации коптера в пространстве и др.
Эти данные нужны для последующей фотограмметрической обработки снимков. Поэтому микроконтроллер доработки формирует одновременно два сигнала:
— PWM-сигнал — подается на полетный контроллер АРМ для записи параметров ориентации;
— одиночный импульс с заданной продолжительностью — подается на реле включения затвора.
При выполнении доработки должны были быть выполнены следующие условия:
— не должна нарушаться система сигналов, применяемая в полетном контроллере;
— необходимо иметь возможность получить сигнал включения затвора замыканием контактов.
Подключение Arduino Mini Pro в систему управления показано на рис, 2, Для корректной работы таймера была разработана блок-схема алгоритма его работы (рис, 3),
Функции, участвующие в основном цикле программы, показаны на рис, 4, а, б.
к б каналу приемника-
СИГНЗЛДВТОГМПОТ
гаор фотоаппарата
с-'.:
смгчал РУ (5 )
Рис. 2. Схема подключения таймера к АРМ
А в табл. 2 приведены параметры функций, участвующих в основном цикле програм-
Описание работы таймера. В обычном режиме но команде с пульта управления на приемник поступают сигналы PWM (Pulse-Width Modulation). Эти сигналы передаются на плату АРМ и формируют следующие команды:
— автопилот (AT) — команда на движение аппарата по заданной траектории;
— РУ — команда на ручное включение-выключение затвора;
— другие сигналы.
После доработки сигналы „Автопилот" и „РУ" несут дополнительную нагрузку. Причем сигнал „Автопилот" поступает параллельно на АРМ 2,6 и на микроконтроллер, а РУ только па микроконтроллер.
Работа платы Arduino в режиме РУ. В этом режиме PWM-сигпал AT соответ-
"
При приходе PWM-еишала на включение затвора плата Arduino вырабатывает такой же сигнал дня платы АРМ. Таким образом, алгоритм работы контроллера контора остается прежним.
Работа платы Arduino в режиме автопилота. При приходе на плату Arduino сигнала автопилота, входной сигнал РУ с приемника блокируется. Плата Arduino начинает непрерывно вырабатывать PWM-cHrua.ii на включение затвора с заданным интервалом
времени. Так будет продолжаться, пока сигнал автопилота не перейдет в состояние „вы"
Начальные установки
int ru_zatvor = 0 int AT = 1
volatile int Nach_ru_zat = 0 volatile int Kon_ru_zat = 0 int pin9 = 9
volatile boolean AUTOPILOT = volatile boolean RUZATVOR = volatile int Nach_AT = 0 volatile int Kon_AT = 0 int Pauza = 5000 int Zatvor = 500 int pin6 = 6 long T_tecuch = 0
false
SETUP
ru_zatvor=INPUT AT=INPUT Pin9=OUTPUT Pin7 =OUTPUT attachInterrupt(ru_zatv or, Nachalo, RISING) attachInterrupt(AT, Nachalo_AT, RISING)
НЕТ ДА
AUTOPILOT
Работа в ручном режиме
НЕТ ДА
RUZATVOR
PWM_NO() digitalWrite(pin6,HIGH)
PWM_YES() digitalWrite(pin6,LOW)
Работа в режиме АВТОПИЛОТА
T_tecuch = millis() digitalWrite(pin7,HIGH)
while ((T_tecuch + Zatvor) > millis ())
ДА
I
T_tecuch = millis() dig italWrite(pin6,LOW)
, . .....г '
while ((T_tecuch + Pauza) > millis ())
/
PWM_YES()
ДА
PWM_NO()
Рис. 3. Блок-схема алгоритма работы таймера
В результате этой доработки стало возможным загружать в полетную программу только конечные точки линии маршрута (количество которых значительно меньше точек срабатывания затвора). При движении между этими конечными точками затвор фотоаппарата срабатывает через заранее заданный интервал времени, обеспечивая необходимое перекрытие кадров.
Данная доработка позволяет планировать и выполнять аэрофотосъемку практически с любым перекрытием кадров.
Опыт эксплуатации контора с существующей доработкой показал неудобство процесса изменения режима работы фотоаппарата. Чтобы поменять время срабатывания затвора фотоаппарата, необходимо заменять прошивку платы с новым временным интервалом, подключая микроконтроллер к компьютеру. Это не всегда удобно, особенно в половых условиях. Поэтому на базе микроконтроллера АТМЕСА 16 был разработан внешний блок программирования платы управления затвором фотоаппарата (программатор). Программатор позволяет:
— считывать информацию (интервал срабатывания затвора) с платы управления затвором;
— изменять интервал времени срабатывания затвора фотоаппарата;
— записывать обновленную информацию в микроконтроллер платы управления затво-
Формирование Р^И-еигнала "PWM_YES" Формирование Р^И-еигнала "PWM_NO"
Рис. 4. Используемые функции и прерывания
Связь блока программирования с платой управления затвором осуществляется с помощью интерфейса 12С по четырехжилыюму проводу. Два провода обеспечивают питание и два — обмен данными с платой управления затвором, находящейся па конторе.
Программатор оснащен двумя кнопками: ,, + " (прочитать) и ,, —" (записать), выполняющими двойные функции:
— при коротком нажатии кнопок происходит дискретное увеличение или уменьшение интервала времени срабатывания затвора, отображаемого па семи сегментных ипдикато-
— при длительном нажатии происходит чтение или запись интервала времени. При этом работа ведется с энергонезависимой памятью платы управления затвором, и значение времени сохраняется в пей после выключения питания.
Преимущества разработанного варианта механизма срабатывания затвора фотоаппарата заключаются в возможности получения неограниченного количества снимков с максимальным перекрытием кадров вдоль .пинии полота и в возможности использования любого цифрового фотоаппарата. Наличие созданного программатора обеспечивает легкость перепрограммирования таймера в половых условиях. В результате выполненной доработки можно загружать только конечные точки .пинии полота (количество которых значительно меньше точек срабатывания затвора).
Выводы. В результате проделанной работы разработан и создан программируемый таймер задания интервалов времени срабатывания затвора дня любого цифрового
Таблица, 2
Параметры функций, участвующих в основном цикле программы
Имя функции
Выполняет
Характеристики
PWM YES
PWM NO
Nachalo
(функция прерывания)
Копес
(функция прерывания)
Nachalo _ AT (функция прерывания)
Копес _ AT
(функция прерывания)
Формирование PWM_YES сигнала
Формирование PWM_NO сигнала
Отметка прихода импульса
Отметка окончания импульса
Отметка прихода импульса
Отметка окончания импульса
Период ^20 мсек Длительность импульса 2 мсек
Период ^20 мсек Длительность импульса 1 мсек
Засекает момент прихода переднего фронта сигнала РУ
Засекает момент прихода заднего фронта сигнала РУ и анализирует длительность импульса
Засекает момент прихода переднего фронта сигнала AT
Засекает момент прихода заднего фронта сигнала АТ и анализирует длительность импульса
фотоаппарата, не зависящий от используемого полетного контроллера и программатора таймера, работа которых была испытана на практике. Полученные результаты позволяют планировать и выполнять аэрофотосъемку практически с любым перекрытием кадров.
Список литературы
1. ArduPilot Mega (АРМ) 2.6 на квадрокоптер. Полетный контроллер ArduPilot Mega (АРМ) 2.6. [Электронный ресурс]: http://ardupilot-mega.ru
2. KAZUS.RU — Электронный портал. Управление затвором фотоаппарата через СОМ порт компьютера (вознаграждение). [Электронный ресурс]: http://kazus.ru/forums/showthread.php?t=101370
3. Аэрофотосъемка и ортофотоплан с БПЛА беспилотного аппарата от производителя. Аэрофотосъемка с БПЛА — ортофотоплан. [Электронный ресурс]: http: / / unmanned.ru / service/aerophoto.htm
4. Международный конкурс инновационных проектов, ориентированных на партнерство государств и цивилизаций. Типоразмерный ряд беспилотных летательных аппаратов. [Электронный ресурс]: http://do.gendocs.ru/docs/index-57567.html?page=15
5. Startbase — система активизации и повышения результативности инновационного процесса — Продукция/Обзор продукта/Картографический аэрофотосъемочный комплекс на базе БПЛА. [Электронный ресурс]: http://www.startbase.ru/products/36455/
6. ГЕОСалют. БПЛА на службе геодезистов. [Электронный ресурс]: http://geosalut.pulscen.ru/news/246836
7. ArduPilot Mega (АРМ) 2.6 на квадрокоптер. Полетный контроллер ArduPilot Mega (АРМ) 2.6. [Электронный ресурс]: http://ardupilot-mega.ru/wiki/arducopter/mission-command-list.html
8. Arduino Cookbook. 2nd Edition / Michael Margolis. 2-е изд. O'Reilly Media, 2011 г.
Айнакулов Жарас Жетыбаевич — науч. сотр. Национального центра космических
исследований и технологий; e-mail: [email protected]
Кузьмин Александр Геннадиевич, — ведущ. науч. сотр. Национального центра космических
исследований и технологий; e-mail: [email protected]
Мухамедгалиев Арстан Фазулович — д-р технич. наук, профессор, ведущ. науч. сотр.
Национального центра космических исследований и технологий; e-mail: [email protected]
Разакова Майра Габбасовна — зав. лабораторией Национального центра космических
исследований и технологий; e-mail: [email protected]
Смирнов Владимир Викторович — канд. физ.-мат. наук, ведущ. науч. сотр. Национального центра космических исследований и технологий; e-mail: [email protected]
Дата поступления — 29.10.2015