Activity

Стабилизация и Управление

Долго следил за тем, как народ борется с подвесами камер заставляя сервоприводы двигаться как можно быстрее, точнее, плавнее …, решая одновременно две задачи - стабилизация камеры и управление ею.
В моем пытливом мозгу, после долгой борьбы с ленью делать дорогой и сложный “классический” подвес, возникла идея, как говорится, отделить мух от котлет. Котлеты должны стабильно лежать, а мухи - четко летать .
Сначала - добиваемся стабильности, потом - управляем ею.
Про хорошо настроенный коптер говорят “висит как прибитый!”.
Если жестко прикрутить к нему камеру, то и она будет также красиво висеть и держать картинку.
Получается, что основная задача стабилизации камеры уже решена сложными алгоритмами управления в мозгу коптера, скоростными регуляторами, мощными моторами и легкими пропеллерами. Тут и делать уже ничего не надо. Нужно лишь заставить эту “прибитую” систему двигаться куда надо и направлять камеру на кого надо.
Что нужно, чтобы управлять камерой? Нужна независимая и плавная механика поворота по двум осям. Все это реализуется с помощью несложного подвеса с двумя маломощными сервами и отдельным каналом управления. Тоже - легко.
Осталось решить задачу управления полетом коптера. Что требуется от пилота во время съемки? - Вести коптер точно и плавно. Никаких рывков и больших ускорений! Стало быть - здесь тоже не требуется мощных и скоростных механизмов.
В общем, возникла идея - управлять коптером наклоняя только раму с моторами в нужную сторону с помощью двух сервоприводов, напрямую связанных с ручкой пульта управления, минуя мозг коптера. Мозг будет стоять отдельно от рамы, по крену и тангажу управляться не будет. Основная его задача стабилизация самого себя в пространстве по горизонту, высоте и курсу. Плавный наклон рамы с моторами на небольшой угол относительно себя не должен ему особо мешать.
Фактически, сервы управления будут пытаются наклонить мозг тоже, но система стабилизации сработает гораздо быстрее и выровнит его, изменяя обороты моторов и наклоняя всю конструкцию.

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

Вот такая вышла этажерка:

Сверху вниз:

  1. Рама с 4-мя моторами, регуляторами и отдельным приемником 2-х каналов управления.
  2. Блок сервоприводов для наклона рамы по двум осям.
  3. Основной мозг коптера.
  4. Аккумулятор.
  5. Двухосевой, полностью независимый подвес с камерой.

Вся эта конструкция таки полетела!
И неплохо управляется и стабилизирует!
Конечно, проблемы удержания горизонта немецким мозгом при боковых ускорениях остались, но они, думаю, решаемы добавлением компенсации от каналов управления (в обратную сторону). Есть вторая проблема - ветер с порывами, но с ним мы еще поборемся…
Третья проблема - автопилот. Что нужно для съемки? Удержание позиции? Решаемо отдельным внешним модулем, встроенным в канал управления.

P.S. На радостях не заметили вОвремя разрядку батареи в полете и при жесткой посадке сломали серву в блоке наклона рамы. Вот теперь думаю, чинить серву или делать новую раму, аля эцилоп, с более легкими сервами и шестернями (или ремнями)…

Видео с камеры GoPro одного из первых испытательных полетов. Без монтажа и программной стабилизации картинки -

Октокоптер 4+4x . Первый полет.

Накануне провел первые испытания “в поле” опытного образца октокоптера, состоящего из двух независимых квадрокоптеров, расположенных друг над другом и соединенных между собой карданным шарниром.
Конструкция предназначена для аппарата, несущего видеокамеру, и позволяет очень, на мой взгляд, эффективно решить две проблемы - стабилизация подвеса камеры и повышение надежности всего аппарата.
Как видно на фото, квадрокоптеры одинаковые по конструкции, размерам и системе электронной стабилизации. Разница лишь в настройках системы управления.
Задача нижнего квадрокоптера - нести часть веса камеры (и остальной полезной нагрузки) и стабилизировать горизонт. По крену и тангажу он не управляется, а лишь триммируется двумя отдельными каналами.
Верхний квадрокоптер берет на себя вторую половину веса полезной нагрузки, а также перемещает весь аппарат в горизонтальной плоскости за счет изменения крена и тангажа.
По рудеру и газу оба они управляются синхронно от одного стика пульта.
Поскольку коптеры совершенно независимы, то в случае полного отказа одного из них, второй будет должен спасти ситуацию с минимальными потерями для себя, камеры, людей и их собственности.

Полетные контроллеры обоих коптеров - FC V2.0, регуляторы - BlCtrl v1.3.
Пульт управления Spekrum DX7, расширенный до 12-ти каналов.
Камера - GoPro.

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

Не забудьте выключить передатчик!

Мой передатчик Spektrum DX7 подвел меня в очередной раз.
Выехал я за город плетать на коптерах, а он мертвый совсем - не выключен был и высадил аккумулятор в ноль. Пищал об этом, наверное, ночью в чемодане, но кто его слышал!? Благо зарядку с собой взял - не пропал день даром.
Это случилось не впервой и как я ни старался следить за его выключением - не получается, нету у него внятного индикатора питания (ЖК-дисплей без подсветки не в счет).
В новой модели DX8 все продумано на этот случай - и тебе звук, и тебе вибра. Мне б и звука достаточно было.
Поэтому решил сделать передатчику небольшой апгрейд - маленький девайс-напоминалочку, чтобы сигналил в случае, если ручки или тумблеры не двигаются в течение продолжительного времени.
Основное, в таком деле, не навредить. Поэтому пойдем по пути минимального вмешательства. Использовать будем всего три точки подключения: “земля”, питание 3.3V и сигнал PPM.
Самое простое, на мой взгляд, использовать микроконтроллер младшего семейства AVR, чтобы он декодировал сигнал PPM, анализировал его изменение и отсчитывал время “простоя”.
Еще неплохо иметь какой-нибудь индикатор, который бы показывал работоспособность - помигивал при движении стиков или переключателей передатчика.

Вот такая схемка нарисовалась:

микроконтроллер ATtiny2313 фирмы Atmel,
звуковой излучатель со встроенным генератором KPX-G1205B,
светодиод - почти любой.

Теперь мой передатчик противным звуком требует выключения через 4 минуты, если им никто не пользуется. А если пользуется - мигает зеленым светодиодом говоря, что все под контролем.

“Куда подключить”, файл прошивки и биты управления - прилагаются.

OFF_remember.zip

XBee телеметрия

Летая на коптере с FPV, не раз испытал неприятное ощущение, когда на несколько секунд пропадает видеосигнал. На частоте 5,8 Ghz это происходит довольно часто даже при небольшом удалении и остается только молиться, чтобы связь быстрее восстановилась. Вместе в видеокартинкой пропадает и телеметрия, так как OSD установлен на борту.
Чтобы снизить стресс от таких ситуаций, решил перенести OSD в комплект наземной аппаратуры, а телеметрию передавать с борта в цифровом виде с помощью модулей XBee. Тогда при пропадании видео можно будет какое-то время лететь “по приборам” и вернуть коптер в зону уверенного приема, с учетом того, что дальность связи телеметрии должна быть значительно больше.

Для этого выбрал модули XBee-Pro 2,4GHz с увеличенной дальностью связи (до 3200м).

При соответствующей предварительной настройке (привязке) эти два модуля могут обеспечить двухстороннюю связь друг с другом сразу после подачи питания (прозрачный режим).
Основная задача - “вписать” модули в комплект уже имеющегося оборудования проекта mikrocopter.de: гексакоптер с платой управленния Flight_Control_v2.0(FC), плата EPI-OSD и адаптер связи с компьютером MK-USB.
Один модуль на борту подключается к плате FC, второй - на земле - к MK-USB для отладки и записи, или к ОSD для наблюдения на мониторе во время полета. Возможно и одновременное подключение наземного модуля к MK-USB и ОSD.
Модулям не требуется практически никакой внешней “обвязки”, кроме стабилизатора напряжения питания 3,3 вольта. В далнейшем, если захочется, можно навесить индикаторы уровня радиосигнала, подключить сигналы управления обменом и т.п…
Для начала, к каждому модулю нужно подключить всего 4 провода: прием, передача, питание и общий(земля), а также привести в норму входные напряжения.

Оба модуля одинаковые, различия наземного и бортового только в “распайке” внешнего кабеля.
Бортовой подключается к плате FC прямым кабелем (пин в пин), а наземный - с платой MK-USB или ОSD - перекрестным, где контакт N1 соединен с N9, а N9 - с N1.
Все навесные элементы смонтированы на маленькой макетной плате, приклеенной к модулю с помощью двухстороннеей клейкой ленты, а конструкция затянута в термоусадку.

Для проверки работоспособности того, что получилось, нужно подключить один из модулей к MK-USB, запустить какую нибудь терминальную программку (да хоть тот же Hyper Terminal, встроенный в Windows), выбрать СОМ-порт от MK-USB и установить скорость 9600. Затем, для перевода в режим управления, набрать на клавиатуре три символа +++, через секунду модуль должен ответить “OK”. Дальше можно поиграться с модулем, подавая на него различные AT-команды, описание которых есть в даташите, имея ввиду, что после небольшой паузы модуль выходит из режима управления. Например, ATSL, ATSH, ATBD… Однако, связать модули таким образом вряд ли удастся 😦.
Нужно скачать специальную программу настройки модулей с сайта производителя.
Удобно подключить сразу оба модуля и запустить программу в двух окнах, но можно настроить и по одному.
Сначала нужно выбрать СОМ-порт от MK-USB (у меня их два) и установить скорость 9600.

Затем перейти на вкладку “Modem Configuration”, в выпадающем списке установить режим работы первого модуля как COORDINATOR, а второго - как ROUTER и обновить программное обеспечение модулей кликнув “Download new versions”. После загрузки обновлений установить птичку “Always Update Firmware” и нажать “Write”. Затем птичку можно снять.

Ввести любой, одинаковый на обоих модулях, идентификатор сети - PAN ID (см. картинку выше).
Установить адреса получателей “Destination Adress High” и “Destination Adress Low”, для первого модуля - адрес второго и наоборот. Эти адреса написаны на этикетках модулей или считываются из них командами ATSL и ATSH.

Сохранить настройки нажав “Write”.

Изменить скорость обмена на 57600, с которой работает телеметрия коптера.

Сохранить настройки нажав “Write”.

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

Теперь они при включении будут работать только на скорости 57600.
Чтобы проверить связь, нужно на вкладке “PC Settings” изменить Baud на 57600,
перейти на вкладку “Terminal” и произвести обмен сообщениями между модулями.

Всё.
Теперь можно проверить дальность, совместимость с аппаратурой управления и передачиком видеосигнала и т.д. …