Activity

Наш дрон с защитой винтов

Попытались сделать “крутую” защиту винтов.

Наши хорошие друзья из компании Pioneer Motor Yachts, к коптеростроению в общем-то непричастные, но причастные к композитам, сделали нам карбоновую раму с защитой винтов.

Результат вот на Ютубе

Все кроме рамы - от Mikrokopter’а.

В принципе очень хорошо, но первый вариант рамы получился тяжеловат - мы перестарались с толщиной рамок вокруг винтов, и из-за этого у него еще и повышенная парусность.

Сделать второй вариант к конкурсу не успеваем похоже, поэтому сделали вот такую смешную штуку

Она уже много раз спасла наши винты и дрон от катастроф…

Техкарта КРОКовского квадрокоптера к КТ3 конкурса летающих роботов

Новая версия техкарты по состоянию на середину мая.

Техкарта робота КРОК КТ3.zip

Принципиальных изменений в самом аппарате нет, в последних двух разделах техкарты указали то, что фактически сделано.

Оно само взлетает, садиться, висит в помещении (причем “как влитой”) и перемещается на заданный вектор.

На следующей неделе постараемся снять с этим всем ролик.

Доделываем распознавалку посадочных площадок.

Текущее состояние КРОКовского дрона

На данный момент соответствует ранее опубликованной техкарте.

Общий вид:

Вид сбоку:

Снизу:

Пока не установлена камера, остался отдельный аккумулятор и регулятор для питания Intel NUC - будут убраны (спасибо askoog’у за наводку), сонар скорее всего будет заменен на Maxbotix, куча лишних проводов и т.п. В общем, промежуточный вариант.

Программная архитектура КРОКовского дрона

На картинке схема программной архитектуры нашего робота.

Как уже упомянул ранее, она основана на ROS.

Все, что есть на схеме, это node’ы в терминах ROS и сообщения между ними - кроме ПО наземной станции.

Что такое ROS и node’ы - лучше читать тут - www.ros.org/wiki/.

GCS - ground control station - наземная станция. Задачи: команда на запуск беспилотника, телеметрия. Возможно список задач расширится.

Navi Node - узел ROS для навигации беспилотника на поле. На входе получает позицию робота в пространстве, имеет доступ к представлению карты в пространстве, координаты посадочной площадки, данные со сканирующего лазерного дальномера. На выходе – последовательность положений беспилотника в пространстве, чтобы достичь целевой позиции. State – текущее состояние алгоритма – взлет, поиск точки для посадки и т.д.

Controller Node – узел ROS, реализующий ПИД регулятор для поддержания беспилотника в заданном состоянии. На входе- текущая позиция беспилотника в пространстве, целевая позиция, состояние алгоритма. На выходе формируются команды управления для “родного” аппаратно-программного обеспечения дрона.

Serial_Copter IMU & Control - узел ROS, преобразующий команды управления от Controller Node в вид, согласно протоколу обмена информации с “родным” аппаратно-программным обеспечением дрона. Также этот узел считывает информацию с IMU беспилотника.

Hokuyo Node- узел ROS, считывающий информацию с LIDAR’а, и выдающего его в виде массива расстояний.

Laser Scan Matcher Node - узел ROS, реализующий локализацию позицию дрона на плоскости (вертикальная проекция на поле). На входе получает информацию с инерциального измерительного устройства, массив расстояний. Показания IMU нужны для корректировки массива расстояний, так как LIDAR может измерить их не в горизонтальной плоскости, в которой он будет локализовываться.

Laser Height Node или Sonar Node – узел ROS, определяющий высоту, на которой находится дрон. В нем реализованы алгоритмы формирования наиболее вероятной высоты, так как сонар работает с меньшей частотой, чем замыкается контур обратной связи по высоте. На выходе получаем высоту беспилотника.

3D-Position Node - узел ROS, собирающий информацию с инерциального измерительного устройства, высоту и положение дрона на плоскости и формирующий кадр с положением робота в пространстве.

OpenCV Node – узел ROS, реализующий алгоритм распознавания площадки для посадки и расчета координат этой площадки. На входе получает картинку с камеры, положение робота в пространстве. На выходе рассчитывает координаты точки для посадки.

Аппаратная архитектура КРОКовского дрона, версия 3

В приложенной картинке нарисована аппаратная архитектура нашего дрона, соответствующая ранее опубликованной техкарте.

Из особенностей и приколов

  1. Установленный на данный момент сонар подключили к Intel NUC через “переходник” Arduino UNO. Причина тривиальна - у сонара HY_SRF05 нет встроенного контроллера с интерфейсом, позволяющим его подключить напрямую к Intel NUC. Пока сделали как проще.

  2. Этого нет на картинке, но из-за прожорливости Intel NUC сделали простейшую схему, позволяющую на земле питать его от сетевого блока питания, переключаясь без отключения вычислителя на аккумулятор.

Техкарта КРОКовского квадрокоптера к КТ2 конкурса летающих роботов

Вот актуализированная техкарта КРОКовского дрона.

Техкарта робота КРОК КТ2.zip

Основные изменения

  1. Нас постигла неприятность с выбранным ранее бортовым вычислителем (VOIPAC i.MX53 SODIMM Module).

Мы слишком поторопились с его заказом (потому что все из-за рубежа идет крайне медленно).

Программную архитектуру (основанную на ROS) мы выбрали, к сожалению, позднее.

Рекомендованная операционка для ROS - Ubuntu, а Ubuntu на Voipac нам поставить не удалось. Экспериментировать с ROS на другом линуксе времени нет, поэтому в данный момент используется другой бортовой вычислитель - Intel NUC, выпотрошенный из корпуса.

Параллельно наш товарищ пытается запустить Ubuntu на Voipac’ах, если получиться - может вернемся к первоначальному варианту.

  1. Ранее мы собирались использовать лидар не только для поиска препятствий и стабилизации по горизонтали, но и для определения высоты - с помощью отклоняющих зеркал (идею позаимствовали у дронов MIT).

Вот пробное крепление, сделанное из фольгированного стеклотекстолита и других подручных материалов.

К сожалению, с нашим лидаром (Hokuyo UTM-30LX) и нашим креплением нам не удалось получить устойчивого определения высоты начиная с 2м. Может дело в софте Hokuyo, который пытается сглаживать результаты измерений (такая фича в нем есть), или в плохих зеркалах, или в слишком узких зеркалах, или в наших генах 😛.

В общем, с учетом того, что мы еще летом реализовали удержание высоты по сонару, решили с лидаром пока не мудрить.

  1. Мы окончательно (на 90% 😛) отказались от использования GPS.

Изначально у нас была идея встроиться “между” Navi Controller’ом и GPS-платой микрокоптера, и с помощью лидара уточнять координаты, получаемые с GPS. Даже в случае, если бы у нас отсутствовал прием сигналов с спутников, мы могли бы считать, что коптер взлетает на северном полюсе 😃, и далее действовать в локальной системе координат игрового поля. Также была мысль, что мы сможем просто указывать микрокоптеру координаты следующей путевой точки (эта возможность есть через UART), таким образом мы полностью смогли бы абстрагироваться от управления коптером как летательным аппаратом, так как вся необходима логика есть в его родных FC + Navi.

Нам удалось добиться, что компьютер, подключенный к Navi Controller’у вместо платы GPS, почти успешно мимикрировал под GPS. Проблема оказалась в “почти” - из-за проблем, судя по всему, из-за не учета каких-то тонкостей с тайм-аутами и т.п., Navi Controller иногда переставал воспринимать передаваемые компьютером координаты.

Так как к этому моменту товарищи, которые изучали как реализовать навигацию и управление коптером без шаманства с GPS, объявили что они понимают как это сделать, решили эксперименты с GPS свернуть.

  1. Уточнили план (в нем отмаркировали что уже сделано), и уточнили проектную команду.
Microdrones MD4-200 снаружи и внутри

Для интересующихся фото рассказ о квадрокоптере Microdrones MD4-200, младшей модели производителя.

Я не буду перечислять характеристики MD4-200 – все есть тут. И не буду пытаться подробно описать как он летает. Можно посмотреть ролик например тут, или еще десяток таких же в Ютубе. (или «на Ютубе»?).

Хотя пару слов про управление маленьким микродроном все таки скажу. По ощущениям его хочется назвать «табуреткой» (после TRex 450 и даже после Mikrokopter’а). Управление в стиле движения мышкой по экрану – все очень плавно и прогнозируемо. Если что-то не так – бросаешь ручки и он висит в одной точке (если видит спутники, конечно). Никакого кайфа. Но для спасателя-пожарного-полицейского в самый раз.

Есть еще модель MD4-1000, которая значительно больше физически и превосходит MD4-200 по всем параметрам (кроме компактности и стоимости).

Также в этом году будет доступна MD4-3000, она уже анонсирована, но не производиться.

По возможности, в обозримом будущем расскажу про MD4-1000, и про MD4-3000 (когда он попадет в руки, надеюсь в июне).

Ну собственно, снаружи и внутри.

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

Открываем – видим микродрон без винтов.

Вынимаем упаковку за ручки, обнаруживаем «тайное отделение» со всем, что нужно для полета.

Под самим беспилотником предусмотрены места для транспортировки аккумуляторов, всего под 8 штук, то есть суммарно для ~4 часов полетов.

Вот извлечено все из транспортного контейнеры, слева направо: зарядное устройство для пульта; шнурок для подключения дрона к компьютеру (для заливки в него полетного задания и считывания данных черного ящика); комплект винтов; пульт производства фирмы Multiplex; и сам беспилотник.
(Зарядного устройства для аккумуляторов микродрона на снимке нет – мы заряжаем их от базовой станции, которой будет посвящена отдельная статья, но можно приобрести и отдельное ЗУ).

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

Винты сделаны из карбона, очень легкие, тонкие, и «хитрой» формы с широкими лопастями и загнутыми вверх кончиками. Немцы (разработчики) говорят что они потратили неимоверное количество времени на подбор параметров винто-моторной группы аппарата, и в этом основной секрет их долголетности.

Винты кажутся настолько тонкими и хрупкими, что их было страшно держать в руках. До сегодняшнего дня – из-за глупой ошибки я «подстриг» винтами тонкие ветки на дереве. Лопасти устояли, то есть все таки они достаточно прочные.
Вот место для установки винтов. Метод крепления самый примитивный – двумя резиновыми колечками.

Мы сначала долго язвили по поводу данного хай-тека, но никто не смог предложить более легкого и надежного быстроразъемного крепления. Нужно только безжалостно выкидывать и заменять резинки при малейшем подозрении. Покупаются в любом сантехническом 😛 магазине.

Установленный винт.

Ну и весь аппарат с 4-мя винтами.

Полезли внутрь.

Для этого смотрим на красные треугольнички на крышке аппарата и корпусе

Чуть поворачиваем крышку против часовой стрелки

Снимаем

Вот тут нужно быть осторожным, есть мелкая подлянка. GPS-модуль соединен с остальной частью системы коротким кабелем, и если крышку попытаться слишком энергично отложить в сторону, то это заканчивается выдранным или сломанным разъемом.

Вот собственно GPS-модуль под крышкой

Что видно под крышкой:
1 – разъем питания. Аккумулятор (фото еще будет) ставить удобно, он просто защелкивается на место.
2 – радиоприемник с функцией передачи телеметрии. На пульте видны все основные параметры аппарата, начиная от количества видимых спутников GPS и точности определения координат, до скорости и курса. Используется модифицированный приемник фирмы Multiplex.
3 – плата полетного и навигационного контроллеров (flight & navigation controller), в просторечии просто автопилот. Знатоки узреют микроконтроллер, а также твердотельные гироскопы и акселерометры.
4, 5 – разъемы для подключения GPS-модуля (который на крышке) и шнурка к компьютеру соответственно.
6 – очень примечательный разъем, называется SI2 – System Integrator Interface (microdrones.com/…/System_Integrator_Interface). То есть это разъем для КРОК 😃. Он позволяет в полете считывать все данные, которыми оперирует автопилот, управлять коптером в воздухе, и отправлять какие-то данные на землю. Прежде всего интерфейс предназначен для интеграции с дроном нестандартной полезной нагрузки, например радиолокационного высотомера. С его помощью можно не только измерять профиль местности, но и реализовать, например, автоматическое огибание поверхности и препятствий. Для этого на борт ставиться дополнительный микроконтроллер, который, с одной стороны, общается с автопилотом микродрона, а с другой стороны обслуживает датчик.
7 – плата магнитометра (компаса 😁).
8 – защелка крепления аккумулятора.

На фотографии не видно, но в глубине корпуса спрятана еще одна плата – силовые цепи + регуляторы двигателей.

В общем и целом, никакой космической фантастики тут нет. Летающая табуретка 😛.

Двигатели – это отдельная песня. Они низкооборотистые и очень плоские. Двигательные отсеки на концах «лучей» заполнены вовсе не двигателями. Они на глазок толщиной миллиметров 8. Все остальное место предназначено для установки светодиодных светильников для полетов в темноте (на фотографии они не установлены).

Теперь переворачиваем аппарат.

Зрим крепление подвесов камер с защелкой, шнурок для управления камерой (цветной слева), шнурок для подключения видеопередатчика (бело-черный справа), и группу 4 разъемов снизу. Два из них предназначены для управления рулевыми машинками подвеса, и позволяют стабилизировать подвес по крену и углу атаки. Два других разъема могут быть сопоставлены с любым каналом пульта дистанционного управления и по умолчанию деактивированы. Также они могут управляться через интерфейс SI2.

Теперь аккумулятор. За исключением карбонового же жесткого корпуса и отсутствия торчащих из него силового и балансировочного разъемов (как на хоббийных аккумуляторах) более ничего шибко примечательного. Никакой опять же космической технологии в этих аккумуляторах нет – LiPo элементы делают только в Китае, для микродронов они просто тщательно отбираются по параметрам. Все параметры аккумулятора видны на этикетке. На корпусе видны зацепы для «вщелкивания» в микродрон.

Вот для сравнения микродроновский (справа) и хоббийный (слева) аккумуляторы. То, что микродроновский меньше, ничего не говорит – у него меньше емкость. Просто аккуратно «упакован» и нет торчащих проводов.

Последний хрюк про аккумулятор – вот он на своем законном месте.

Ну и напоследок – сфотографированы рядом Microdrone MD4-200 и широко известный в узких кругах аппарат Microkopter Quadro XL.

И тот и другой – вполне достойные конструкции немецкого инженерного гения. Но слева профессиональный беспилотник, справа любительской хай-энд. И у того и другого есть место под солнцем.

Кстати, если мы до августа следующего года не разобъем в хлам аппарат справа (который Mikrokopter), то именно на его основе будет собран аппарат команды КРОКа для выступления на конкурсе летающих роботов. А Microdrone слева (опять же, если доживет, несмотря на интенсивные полеты), летом отправится на северный полюс на ледоколе для испытания в тамошних условиях. Но это уже совсем другие истории 😒.