ArduCopter или «ух ты, он сам летает!»

Потихоньку изучаю ArduCopter.

Я уже рассказывал о своей гексе оснащенной контроллером AIOP. Конечно, ничего плохого про полетный контроллер AIOP сказать не могу http://www.parkflyer.ru/38737/blogs/view_entry/3263/ . Все работает без нареканий, но есть один существенный минус и заключается он в обновлении прошивки. И даже не сам процесс обновления, к нему я уже привык, либо через среду разработки http://www.parkflyer.ru/38737/blogs/view_entry/2815/ , либо через утилиту http://www.parkflyer.ru/38737/blogs/view_entry/4669/ все замечательно программируется, а вот сильное отставание обновлений вырабатывает только терпение. На данный момент для пользователей AIOP доступна стабильная версия 3.0.1 R4, в то время, когда для APM доступна новая прошивка 3.1.4. Понятно, что со временем стабильная версия будет портирована, остается только ждать.


Контроллер AIOP идеально настроить мне так и не удалось. В целом летал достаточно хорошо, но при порывах ветра аппарат нервозно реагировал. Поэтому в ветреную погоду я старался не летать.
В итоге, взвесив все за и против, я решил рискнуть и заказал уже в третий раз напрямую с HK контроллер 2.5.2, не может же постоянно не везти. Первый раз я заказал с HK и получил бракованный контроллер. Служба поддержки HK отмалчивалась, ничего не добившись от нее открыл претензию на paypal-e, в итоге мне вернули деньги. Вторая посылка уже с паркфлаера была утеряна в период проблем с доставкой. В третий раз, после длительного ожидания, присущего для отправлений из Китая, получил посылку с HKPolot-ом. К моему счастью, контроллер оказался живым и занял место AIOP. Наверно китайцы не захотели еще раз со мной связываться и отправили проверенную, много кратно протестированную плату. Ну что же будем пробовать.
Коробочка под плату у меня уже имелась, поэтому оставалось только установить и настроить полетный контроллер. Существенным недостатком данного корпуса является отсутствие возможности подключать GPS, телеметрию, внешний компас, датчик тока без его разборки, для этого требуется снимать верхнюю крышку. Я сразу вывел все необходимые провода.

  

Кусочек поролона прикрывает бародатчик. Внимательные заметят зеленую перемычку, ей я переключил тип входного сигнала, замкнув 2 и 3 ножки. Зачем я это сделал? Мне не удалось добиться, чтобы плата увидела футабовский приемник. Не видит и все тут.
Прошивка PPM энкодера не помогла. С помощью удобной утилиты Atmel Flip прошил микросхему согласно инструкции.


Пришлось купить конвертер сигнала FrSky SBus-CPPM.

Подключив, таким образом, в окне калибровки аппаратуры радиоуправления индикаторы ожили. Как говорится, счастью не было предела.
Теперь приемник к контроллеру подключен одним проводом, есть в этом свои плюсы. Снижение уровня вибраций, так как по проводам может передаваться вибрация на датчики. Кстати в комплекте идут дубовые провода, поэтому советую заменить их на мягкие. Второй плюс заключается в возможности использования свободных каналов приемника для подключения к нему напрямую дополнительного оборудования.
Прошивку ArduСopter-a загрузил версии 3.1.3.
Калибровка компаса в версии 3.1 и выше отличается, теперь не достаточно танца с коптером, как это было раньше. Новая процедура предусматривает закрашивание шара, в результате приходится крутить коптер во всех плоскостях, чтобы добиться равномерного распределения точек. Иначе калибровку придется повторить.


Compassmot выполнил, но результатом остался не доволен, измерения показали аж 74%.


Связано это, по всей видимости, с особенностями рамы. Контроллер установлен на нижнюю пластину, которая является распределителем питания. Пытался вынести всю электронику на верхнюю пластину, но такое размещение не понравилось. Электроника ничем не защищена, да и аккумулятор не удается внутри рамы надежно закрепить. Из-за этого думал, будет все печально, но полетел вполне прилично.
Первый полет
Коптер замечательным образом полетел на стоковых пид-ах. Но при порывах ветра аппарат начинало болтать, постоянно приходилось корректировать положение. В полный штиль гекса висела практически неподвижно, я мог отпустить стики в режиме стабилизации.
 

 
Продолжительность полета составила почти 14 минут.
Автоматическая настройка пид-ов
Раз уж контроллер может автоматически настроить свои параметры, чего же этим не воспользоваться.

В итоге вот такие вот значения у меня получились. Настройка выполнялась при небольшом ветре.


 

 

На следующий день мне показалось поведение коптера несколько дерганным, и я повторил процедуру настройки. Повторная настройка выполняется по времени гораздо быстрее. Вот какие получились новые значения параметров.


Проверка новых пид-ов
С новыми пид-ами поведение гексакоптера мне понравилось больше, поэтому я оставил их.
 

 

 

Далее предстояло попробовать различные полетные режимы. Как я уже рассказывал раньше, для управления коптером носил с собой ноутбук, но с появлением планшета необходимость в ноутбуке осталась только для выполнения настроек http://www.parkflyer.ru/38737/blogs/view_entry/4366/ .
Кстати совсем недавно в ассортименте HobbyKing-а появился вот такой держатель для мобильных устройств Система крепления для смартфона, мобильного телефона или портативного компьютера . Я сделал держатель для планшета сам еще задолго до появления, видимо китайцы подглядели http://www.parkflyer.ru/38737/blogs/view_entry/4676/ . Мне были сделаны замечания в комментариях, которые я учел. Для удобства транспортировки переделал кронштейн упирающийся в ручку пульта, теперь он складной. А также сделал более надежную фиксацию на ручке.

Расскажу свой самый первый опыт управления коптером с компьютера. Выбравшись в поле, стал пробовать. И каково было мое удивление, когда коптер после попытки взлететь в ручном режиме сорвался с места, резко набрал высоту около 50 метров и приземлился в нескольких метрах от точки взлета. Я был готов к взлету, но ощущение, что коптер не управляемо взмывает вверх безусловно меня напугало. На тот момент я не понимал что происходит. Анализируя свои действия, теперь делаю все аккуратно и не спеша, чтобы избежать подобной ситуации.
Не так давно появилась новая программа для мобильных устройств на Android-е – DroidPlanner 2.0. На данный момент актуальная версия 2.2.5. Разработчик тот же, что и у первой версии. В описании ПО отмечено, что это следующее поколение. Посмотрим, что скрывается за надписью «next generation».

Скачать приложение можно тут https://play.google.com/store/apps/details?id=org.droidplanner .

Интерфейс программы немного изменился. На экране какой-то минимализм.

Главный экран не загроможден информацией. Окно карты открывается практически на весь экран. Перед глазами четыре кнопки, для быстрого доступа. Их первым делом и попробую.

Составление полетного задания в DP2 сделано максимально простым. Рисуем траекторию полета на экране, а программа сама расставляет точки по маршруту. Остается только назначить точку взлета и приземления.


Из отличительных особенностей следует выделить возможность калибровки аппаратуры с мобильного устройства.


И режимы можно назначить

Чеклист

Списком все параметры

Посадка в автоматическом режиме (Land)

За посадку в автоматическом режиме отвечает кнопка Land. В той точке, где была нажата кнопка, происходит посадка. В первый момент не сразу и поймешь, что коптер выполняет команду. Все происходит медленно, размеренно. После получения команды, аппарат постепенно начинает опускаться, коснувшись земли, коптер подпрыгивает, как бы пытаясь поточнее приземлиться.
Если стик газа не в нуле, то пропеллеры продолжают вращаться. Опускаем ручку газа аппарат дизармится сам и больше не реагирует на команды с пульта.

По логу отчетливо видно, что от места взлета гексокоптер немного сместился, после чего приземлился.

Лог полета можно визуально оценить в трехмерном виде на сервисе Google Earth


Цветами выделены разные полетные режимы. Оранжевый цвет соответствует режиму Stabilize, желтый – Althold, зеленый – Loiter, синий – Land.

 

Возврат домой и автоматическая посадка (RTL)
Следующий тест заключался в том, что взлетаем, немного смещаемся от точки взлета и жмем Номе. Коптер поднимается на заданную высоту 20 метров, летит к точке взлета и осуществляет посадку.


 

 

Абсолютно аналогично работает команда RTL, аппарат возвращается на точку взлета и зависает над ней. Выбрать его можно в списке режимов, нажав на надпись Stabilize.

Полет в автоматическом режиме (Auto)

В первый раз, когда пробовал, самым не понятным был режим Auto. Жму авто и ничего не происходит. Арм и ничего. Оказалось все очень просто, когда разберешься. Выбираем Auto – Арм –далее стик газа в центральное положение и коптер полетел по маршруту.


На снимке экрана можно увидеть траекторию полета коптера по маршруту. Мною было задано пять точек для авто миссии. Первая точка взлет (Take of), она обозначена как бы стрелкой вверх. Следующие точки путевые. При движении по ним коптер спрямляет траекторию. Место посадки отмечено на карте стрелкой вниз.
 

 

Взлетает на полном газу на заданную высоту (20 метров). Далее поворачивается носом к следующей точке и начинает движение последовательно от точки к точке. Дойдя до последней точки, приземляется.


Напряжение питания бортовой электроники находится в допустимом пределе от 5,0 до 5,1 вольта, которое рекомендует производитель. Кстати колебания значительно ниже, чем с регулятором напряжения, который установлен на Tarot 680, были отмечены колебания до 5,3 вольта.
Лог полета в автоматическом режиме в трехмерном виде


Некоторым образом расстроили радиомодемы на 433 МГц. Радиус их действия оказался достаточно маленьким. Возникали проблемы с передачей миссии, модель находилась в нескольких метрах. Похоже, что антенны, которыми укомплектовал модемы RCtimer, не соответствую рабочей частоте.
Выводы
 

При подаче команд на выполнение, нужно быть предельно внимательным.
Обязательно убедиться, что спутники пойманы и их количество достаточное. У меня нашлось около 11 спутников.
В момент включения координаты базы постепенно уточняются, поэтому точка взлета постепенно может уплыть в сторону.
Еще для меня осталось не понятным, почему не отображается текущий полетный режим. В первой версии DroidPlanner в окне Hud-a меняется значение полетного режима при переключении или при выборе его из меню. Но после очередного обновления вроде бы все встало на свои места, буду проверять.
При загрузке миссии в коптер, сообщение о успешном выполнении передачи данных появляется и исчезает, этого можно и не заметить. Иногда для уверенности приходится процедуру повторять.
Хочу отметить, что в каждой программе есть свои приятные фишки, но так чтобы это было реализовано в одном приложении, к сожалению нет. В DroidPlanner2 появилась возможность настраивать радиоуправление. Честно сказать, DroidPlanner2 создал впечатление более простой программы. Скорее всего разработчики этого и добивались.