Дрон для любителя: устройство и принципы программирования / Хабр

Дрон для любителя: устройство и принципы программирования / Хабр Самолеты
Содержание
  1. Введение
  2. Полётный контроллер
  3. Конфигурация аппаратуры управления
  4. Калибровка esc
  5. Передатчик
  6. Другие методы
  7. Мотор и несущий винт (пропеллер). направление.
  8. Предполётный контрольный лист пилота
  9. Тестирование
  10. План на случай чрезвычайных ситуаций
  11. Дрон очень далеко, и вы не знаете, в каком направлении он находится.
  12. Дрон внезапно резко отклонился от курса (с или без причины).
  13. Дрон быстро движется к людям.
  14. Дрон быстро движется к вам.
  15. Дрон не реагирует на ввод с аппаратуры управления.
  16. Дрон теряет пропеллер.
  17. Первый полёт
  18. Дополнительные рейсы
  19. Начинания в fpv с гироскопами | радиоуправляемые самолеты и авиамодели
  20. Sdk и комплекты
  21. Дополнительные рейсы
  22. Дрон очень далеко, и вы не знаете, в каком направлении он находится.
  23. Другие методы
  24. Есть два уровня программирования
  25. Есть комплекты для обучения
  26. Железо дрона
  27. Калибровка esc
  28. Конфигурация аппаратуры управления
  29. Мотор и несущий винт (пропеллер). направление.
  30. Первый полёт
  31. Передатчик
  32. План на случай чрезвычайных ситуаций
  33. Предполётный контрольный лист пилота
  34. Тестирование
  35. Чем занимается полетный контроллер
  36. Языки и среды разработки

Введение

На 5 уроке вы должны были закончить сборку дрона (без установки пропеллеров). Не торопитесь, так как даже небольшие ошибки могут привести к сбою. У вас еще есть несколько шагов до первого полёта, так что наберитесь терпения и следуйте приведённым ниже рекомендациям.

Полётный контроллер

  • Не все контроллеры полёта одинаковы, поэтому процедура настройки действительно зависит от выбранной вами модели. Если вы еще этого не сделали, уделите время подробному прочтению руководства пользователя выбранного контроллера полёта от начала до конца. Пропуск мельчайшей детали может предопределить разницу между первым удачным полётом и полным списанием. Хорошо написанное руководство пользователя должно включать всё, что вы найдёте на этой странице, а также многое другое, поэтому рекомендуется использовать этот урок в качестве контрольного перечня, а не в качестве замены/альтернативы основной инструкции от разработчика.
  • Большинство контроллеров полёта предоставляют пошаговую процедуру выбора настроек для конкретной конфигурации БПЛА, включая полный контроль над значениями PID. Значения для каждого (P, I и D) могут быть скорректированы для вашей конкретной рамы и стиля полёта; от чего-то более стабильного для использования платформы в аэрофотосъёмке, до чего-то более похожего на спортивные полёты (исполнение сальто, дрон-рейсинг и т.д.). Обычно всё начинается со значений по умолчанию для каждого поля, и если вам не хватает опыта чтобы их изменять, рекомендуется оставить всё как есть до первого полёта.
  • В руководстве к контроллеру полёта также должно быть указано, как установить минимальные обороты силовой установки, то есть задать скорость, с которой моторы вращаются, когда они заармлены. Первоначально вы можете выставить это значение относительно низким — достаточным, чтобы видеть, что двигатели вращаются, но при этом не так сильно, чтобы сдвинуть БПЛА под воздействием создаваемой ими тягой. Максимальная тяга, если вы можете установить это значение, должна соответствовать максимальному значению, которое может обеспечить стик газа вашей аппаратуры управления.
Смотрите про коптеры:  ТОП-11 препаратов для похудения - рейтинг хороших средств 2023

Дрон для любителя: устройство и принципы программирования / Хабр

  • Одним из аспектов, который может оговариваться в руководстве пользователя контроллера полёта, но при этом не вносить никаких предложений, является режим полёта. Возвращаясь к 4 уроку, «Режим полёта» определяет, какие сенсоры используются для стабилизации дрона, а также его функция/назначение. Наиболее распространенные сенсоры, которые можно обнаружить на контроллере полёта это: гироскоп, акселерометр, барометр, компас и, возможно, GPS.
  • Если это ваш первый дрон, настоятельно рекомендуется максимально стабильный режим полёта, доступный для вашего контроллера полёта, который задействует наибольшее количество сенсоров, доступных для стабилизации дрона. В целом это связано с тем, что настройки ПИД-регулятора могут быть слишком далеки от ваших рамы/настроек, именно поэтому лучше выбирать значения ПИД-регулятора по умолчанию. Если вы летали раньше, ACRO режим (в котором задействуется только гироскоп) может быть лучшим.
  • Большинство контроллеров полёта также позволят вам менять «режим полёта» в полёте посредством резервного канала. Например, если у вашего пульта дистанционного управления есть шесть каналов, вы можете рассмотреть возможность назначения 5 или 6 канала (которые часто связаны с переключателями), чтобы иметь возможность изменять режим полёта в момент пилотирования дроном. Перед тем как летать, убедитесь в том, что знаете, какая позиция переключателя соответствует какому режиму полёта.
  • Настоятельно не рекомендуется использовать полёт по GPS точкам или какие-либо более сложные функции/сенсоры (например, ультразвуковой сенсор расстояния для определения расстояния до земли), до того момента, пока вы не убедитесь, что БПЛА хорошо настроен. Некоторые руководства предлагают использовать только режим ACRO (акробатический), тем не менее, если у вас нет значительного опыта пилотирования, полёт в этом режиме для вас будет физически не возможным, режим является самым сложным для управления, поскольку исключена стабилизация.

Смотрите про коптеры:  Контроллеры для квадрокоптеров | Купить в интернет-магазине RC-TODAY.RU | Страница 2

Конфигурация аппаратуры управления

  • Некоторые пульты имеют разные режимы работы, такие как Самолёт (Airplane), Вертолёт (Helicopter), Автомобиль (Car) и т.д. На 4 уроке (Раздел: Управление) мы обсуждали четыре основных канала управления: Throttle (Газ), Yaw (Рыскание), Pitch (Тангаж) и Roll (Крен), которые обычно являются значениями, связанными с самолётами или вертолётами. Если в руководстве к контроллеру полёта не указан конкретный режим для трансмиттера, рекомендуется использовать режим «Самолёт» (Airplane).
  • Существует два типа дистанционного управления: Режим 1 (Mode 1) и Режим 2 (Mode 2). Mode 2 (наиболее распространённый) при таком типе управления Throttle (Газ) и Yaw (Рыскание) связаны с левым каналом/стиком/джойстиком, Pitch (Тангаж) и Roll (Крен) с правым. Вы также можете перепроверить их назначение, непосредственно перемещением стиков, чтобы убедиться, что значения не инвертированы.

Дрон для любителя: устройство и принципы программирования / Хабр

  • Режимы трансмиттера часто добавляют уровень «смещения» каналов/сигналов, чтобы сделать движение более подходящим для конкретной системы, тем не менее, большинство контроллеров полёта заботится о любом смещении и, как таковые, предпочитают «необработанные» значения. Если ваш трансмиттер не имеет никаких режимов, просто проверьте, какой канал/стик/джойстик за что отвечает.
  • RC-передатчик общего назначения может обеспечивать только ограниченный диапазон сигналов на каждом канале, и поэтому на этом уроке мы советуем вам узнать, какой диапазон значений может предоставить RC-передатчик, и можно ли настроить минимальное и максимальное значения (либо в виде значений, либо в процентах от диапазона по умолчанию). Например, для контроллеров полёта на базе MultiWii необходимы передатчики, которые могут обеспечить полный диапазон импульсов от 500мс до 2500мс, тогда как настройка по умолчанию может составлять только от 1000мс до 2000мс, поскольку это обычная конфигурация для R/C самолёта. Прочтите руководство вашего передатчика, чтобы узнать, как настроить конечные точки/диапазон сигнала (если это возможно).
  • Если у вашего контроллера есть ЖК-дисплей, зачастую вы можете сделать это через интерфейс в разделе «Настройки» («Settings»).
  • «Тест аппаратуры управления на макс. расстояние удаления» легче всего реализовать при помощи друга/помощника, либо подключить к дрону RC зуммер или другую визуальную/звуковую обратную связь. Некоторые модели более высокого класса имеют функцию тестирования радиуса действия. Цель теста — увидеть, насколько далеко передаётся сигнал, прежде чем, приёмник больше не сможет его фиксировать. К тесту на дальность рекомендуется прибегать только после, так называемого «Боевого полёта» (Fight flight — проверяется работоспособность дрона на небольшой дистанции, в пределах прямой видимости пилот-дрон). Порядок действий для тестирования дальности:
  1. Включите аппаратуру управления, затем дрон.
  2. Отойдите на 15 метров и активируйте переключатель, связанный с зуммером; Вы должны услышать его.
  3. Если у вас нет зуммера, включите дрон и убедитесь, что двигатели запущены.
  4. Отключите зуммер/задизармите дрон
  5. Повторяйте эти шаги, отдаляясь все дальше и дальше (по линии обзора), пока дрон не отреагирует на ваш ввод.
  6. Это будет абсолютно максимальное расстояние, на котором вы можете управлять своим дроном.
  7. Вы можете подумать, что не планируете управлять им так далеко, но помните, что дрон движется по трем осям, и что-то может пойти не так.
Смотрите про коптеры:  ARM-микроконтроллеры STM32F. Быстрый старт c STM32-Discovery / Хабр

Калибровка esc

ESC будут работать из коробки, но сигналы (ШИМ/PWM), связанные с минимальным и максимальным газом, могут не соответствовать тому, что обеспечивает ваш передатчик. Поэтому вам необходимо «обучить» каждый ESC, необходимым значениям. Убедитесь, что пропеллеры не установлены на моторах. Обратитесь к руководству пользователя, вашего контроллера полёта. После перепрограммирования, ESC сохраняет заданную конфигурацию, даже когда на него не подается питание. Поэтому каждый ESC программируется всего один раз, во время первоначального тестирования/настройки.

Обычно в руководстве к контроллеру полёта есть раздел, в котором рассказывается о калибровке ESC и объясняется, как это сделать. Если нет, вы можете попробовать один из методов, предложенных ниже. Еще раз, если ваши пропеллеры еще не сняты, самое время это сделать.

Дрон для любителя: устройство и принципы программирования / Хабр

Передатчик

  1. Подключите один ESC к контакту «Throttle» на вашем приёмнике. Если к вашему ESC не подключен BEC, вы можете подключить один ESC с поддержкой BEC к другому контакту на приёмнике (такой как вход батареи) просто для подачи питания на приёмник.
  2. Подключите ESC к соответствующему двигателю (если он еще не подключен).
  3. Установите стик/джойстик, связанный с «Throttle» («Газ»), на максимум (обычно это левый стик/джойстик и полный вперед/вверх), а затем включите передатчик.
  4. Подключите LiPo батарею к плате распределения питания или напрямую к этому ESC (если разъёмы совместимы).
  5. Двигатель должен подать три звуковых сигнала (11.1В LiPo), после чего следует короткая пауза, а затем два коротких звуковых сигнала (что соответствует максимальному сигналу).
  6. Сразу после коротких звуковых сигналов переведите стик/джойстик «Throttle» («Газ») в крайнее нижнее положение (что соответствует минимальному сигналу).
  7. Двигатель должен подать три звуковых сигнала (11.1В LiPo) с последующим длинным звуковым сигналом.
  8. Диапазон газа для этого ESC теперь установлен, переходите к следующему, пока все ESC не будут откалиброваны.

Другие методы

Следуйте инструкциям в руководстве пользователя продукта, чтобы минимальный/максимальный диапазон входного сигнала ESC соответствовал тому, что он получит от передатчика.

  1. USB: Некоторые модели ESC программируются через USB, либо самостоятельно, либо с помощью адаптера.
  2. Плата программирования: Внешняя плата программирования ESC, может использоваться практически с любым ESC и является автономным устройством.
  3. Микроконтроллер: Этот способ широко не используется, но, безусловно, можно перепрограммировать ESC с помощью микроконтроллера, если у вас есть правильный код и вы можете правильно подключиться.
  4. Контроллер полёта: Некоторые контроллеры полёта позволяют вам калибровать или программировать ESC через их программный интерфейс. Прочитайте инструкцию к вашему контроллеру полёта, чтобы узнать, возможно ли это.

Мотор и несущий винт (пропеллер). направление.

Теперь вы готовы установить пропеллеры. Вернёмся к 3 уроку, в котором обсуждается направление несущего винта, чтобы он создавал тягу. Все пропеллеры имеют верхнюю и нижнюю части, а также направление вращения «CW» (по часовой стрелке) и «CCW» (против часовой стрелки). В верхней части пропа обычно есть текст с указанием его высоты и диаметра. Когда пропеллер установлен на валу двигателя, эта верхняя часть направлена в небо, независимо от того, установлен мотор на верхней части луча беспилотника или в нижней его части.

Дрон для любителя: устройство и принципы программирования / Хабр

Предполётный контрольный лист пилота

Несмотря на то, что беспилотник не так сложен или опасен, как настоящий пассажирский самолёт, вы по-прежнему пилот и должны иметь предполётный контрольный лист, позволяющий убедиться в том, что предстоящий полёт не подвергнет опасности людей или имущество. Список ниже, охватывает только самое необходимое и обязателен для исполнения перед каждым вылетом (не только перед первым).

  1. Убедитесь, что у вас есть любой из доступных визуальных способов узнать, какая сторона вашего дрона является передом. Как минимум, добавьте цветную ленту на два передних луча.
  2. Убедитесь, что батарея аппаратуры управления заряжена.
  3. Слегка встряхните БПЛА — ничто не должно ослабнуть, греметь, или упасть на землю. Вы никогда не узнаете, что, возможно, могло сместиться или сломаться в результате жесткой посадки в предыдущем полете.
  4. Убедитесь в том, что пропеллеры по-прежнему надёжно закреплены.
  5. Сначала включите аппаратуру управления, затем питание дрона (держите руки подальше от несущих винтов).
  6. Убедитесь, что вы можете безотказно заармить и задизармить моторы (они должны вращаться на низких оборотах при «Arm» и прекращать вращение при «Disarm»)
  7. Убедитесь, что вы выполнили калибровку или датчики хорошо откалиброваны (вы должны делать это регулярно)
  8. Выполните проверку радиуса действия передатчика.
  9. Убедитесь, что зона для полёта полностью свободна, и если кто-то находится в её пределах, сообщите им, особенно любопытным детям; что вы управляете БПЛА, и что не стоит приближаться до тех пор, пока дрон не осуществит посадку с полной остановкой моторов.

Дрон для любителя: устройство и принципы программирования / Хабр

Тестирование

Пока вы не приобретёте достаточную уверенность в своих способностях пилота и конструктора дронов, следующая процедура предлагается для всех беспилотных летательных аппаратов до их первого полёта.

  1. Включите двигатели и убедитесь, что они вращаются в правильных направлениях, соответствующих описанному в руководстве к контроллеру полёта.
  2. Очень медленно поднимите стик/джойстик газа (Throttle) и убедитесь, что пропеллеры толкают воздух вниз к земле. Использование папиросной бумаги является безопасным вариантом для визуальной проверки.
  3. Перемещайте стик/джойстик отвечающий за Pitch (Тангаж), очень осторожно вперед/назад, чтобы убедиться, что дрон наклоняется вперед/назад корректно.
  4. Очень осторожно переместите стик/джойстик отвечающий за Roll (Крен) в каждую из сторон, чтобы убедиться, что дрон отвечает правильно.

Если дрон не ведет себя должным образом, есть множество возможных причин, среди которых самыми распространёнными являются:

  • Один или несколько моторов вращаются в неправильном направлении.
  • Контроллер полёта не был установлен правильно, и то, что он считает «вперед», отличается от вашего физического БПЛА.
  • Один или несколько контактов между приёмником и контроллером полёта подключены неправильно или даже не в том месте.
  • Возможно, все установлено правильно, просто слишком быстро или резко реагирует на ввод пользователя.

Дрон для любителя: устройство и принципы программирования / Хабр

План на случай чрезвычайных ситуаций

Большинство аварийных ситуаций приводят к падению дрона, а большинство аварий происходит, когда вы только начинаете работать в поле и/или с новым дроном. Приведённый ниже список предназначен для того, чтобы дать вам вещи для размышления и некоторые идеи относительно того, как, и почему, реагировать начинающим пилотам. Решение принимается в каждом конкретном случае, а в некоторых ситуациях может противоречить тому, что предлагается здесь. Так что, познавайте себя, познавайте окружение, и будьте осторожны! Почти во всех случаях будет лучшим потерять беспилотник, чем рисковать столкновением с людьми или имуществом.

Дрон очень далеко, и вы не знаете, в каком направлении он находится.

  • Сбавьте газ и понаблюдайте, отвечает ли дрон (проверяется, есть ли связь).
  • Если дрон реагирует на газ, попробуйте приземлиться прямо там (если можете).
  • Если это место не подходит для приземления, осторожно попробуйте направить беспилотник вперед (ничего радикального), и если беспилотник реагирует, опираясь на вашу позицию, двигаясь влево или вправо в небе, позволит вам определить его ориентацию. Если кажется, что он не движется влево или вправо, он может двигаться к вам или от вас, поэтому отмените то, что вы только что сделали, и попробуйте «рыскать» влево.

Дрон внезапно резко отклонился от курса (с или без причины).

  • Если вы не обладаете навыками пилотирования (чтобы попытаться восстановить его), полностью сбросьте газ и дайте ему упасть: в таком случае раздумывание над радикальными действиями может привести к тому, что вы потеряете дрон из виду или, что еще хуже, дрон начнёт набирать высоту для падения с уже большего расстояния.

Дрон для любителя: устройство и принципы программирования / Хабр

Дрон быстро движется к людям.

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

Дрон быстро движется к вам.

  • Газ в нуль; пусть он протаранит землю, чем прилетит вам в голову.

Дрон не реагирует на ввод с аппаратуры управления.

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

Дрон теряет пропеллер.

  • Потеря пропеллера влияет как на тягу, так и на рыскание (Yaw); попробуйте сначала выправить рыскание (вам, вероятно, нужно удерживать стик/джойстик связанный с Yaw, в крайнем положении), а потом одновременно осторожно переместите стик/джойстик газа вверх, чтобы предотвратить столкновение, затем газ вниз.

Первый полёт

Независимо от вашего предыдущего опыта в пилотировании, ваш первый полёт, особенно с кастомным многомоторным БЛА, должен быть как можно более сдержанным. Цель первого полёта — убедиться, что все настроено правильно; а также выявление каких-либо серьёзных проблем.

  • Расположение: открытая площадка, вдали от зданий, людей и имущества. Например: пустое футбольное поле, бейсбольное поле и так далее, будут  идеальны. Там не должно быть никакого ветра вообще.
  • Пройдитесь по предполётному контрольному листу пилота.
  • Встаньте на расстоянии около 2 метров от дрона так, чтобы передняя часть дрона была направлена от вас.
  • Заармите (Arm) моторы.
  • Осторожно перемещайте стик/джойстик газа (Throttle) вверх. Достигнете точки, когда дрон будет готов взлететь. Могут возникать некоторые эффект влияния земли, которые заставляют дрон слегка подпрыгивать, но волноваться не стоит.
  • Добавьте газ, чтобы поднять дрон над землёй и привыкнуть к элементам управления — постарайтесь удержать его в пределах определенного радиуса и посмотрите, как он реагирует на ваши перемещения стиками/джойстиками.
  • Осуществляйте незначительные, постепенные и плавные движения — ничего слишком внезапного. Опустите стик газа, чтобы предотвратить аварию.
  • Если ваш дрон ведет себя не так, как ожидалось (например, перемещение оси «Pitch» приводит к его тангажу, а также крену влево или вправо), что-то не так, и вам придётся выяснить причины выявленных проблем.
  • Если беспилотник ведет себя так, как ожидалось, ваша задача — стабильно удерживать его позицию на высоте от 1.2-2 метров от земли. Не стоит становиться чересчур бешеным, так быстро.

Дрон для любителя: устройство и принципы программирования / Хабр

Дрон для любителя: устройство и принципы программирования / Хабр

Дополнительные рейсы

Теперь, когда вы отработали глюки и комфортно летаете в контролируемой среде, вы можете приступить к второму полёту.

  • Поскольку дрон все еще не полностью проверен, мы предлагаем пройти полную предполётную процедуру для первого полёта, которая не должна занять много времени.
  • Используя плавные движения, привыкните к тому, как дрон реагирует на ваши перемещения стиками/джойстиками, удерживая его на безопасном расстоянии.
  • Адаптация к пилотированию беспилотником должна осуществляться без помощи FPV и различных сенсоров.

Начинания в fpv с гироскопами | радиоуправляемые самолеты и авиамодели

В этом посте я не буду подробно останавливаться на стандартном оборудовании для FPV, а лишь перечислю его. Некоторые доработки и апгрейды надеюсь описать в следующих постах. Это:

Время полета со всем этим снаряжением не менее 9 минут.

– видеоочки MYVU SOLO PLUS EV

Когда еще не было гироскопов и очков, пробовал летать в поле по 9″ экрану портативного DVD плеера. Толком осознать ничего не удалось. Чаще всего переходил на визуальный контроль. И это при том, что для каждого вылета приходилось дожидаться безветренной погоды. Так как, после установки гироскопов качество полетов в разы улучшилось, считаю этот компонент основным для FPV. Поэтому, о них поподробнее. Во первых, после испытаний гироскопов (естественно без видео-оборудования) я забыл, что такое ветер. По моей субъективной оценке было больше 8м/с. Раньше я даже не думал выходить в поле при скорости ветра более 5м/с. Это когда листва еле колышется. В тот день листва шумела и гнулись верхушки деревьев. Казалось, что самолет лежит на невидимой плоскости. Нос ни задирался, ни наклонялся вниз. Ни малейшего намека на крен. Лишь порывистый ветер создавал воздушные ямы, в которые самолет то проваливался, то выскакивал из них сохраняя прежний крен и тангаж. Т.к. я не мог себе представить назначение гироскопа на руле направления, то ограничился ими только на канале элеронов и руля высоты. В результате, самолет самопроизвольно разворачивает против ветра. Это не сильно усложняет полет, но для полного контроля я заказал еще один гироскоп. Кому тоже надо (со скидкой) выкладываю

buddy-код

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

Во фронтальной плоскости (к передней стенке) крепится гироскоп для стабилизации по крену. Входной кабель – в 1 канал (AIL) приемника. Выходной – к сервам элеронов. На практике установлено, что чувствительность по крену должна быть несколько ниже, чем по тангажу и, поэтому, для возможности отдельной регулировки, желтый кабель этого гироскопа подключается в другой канал. Я его подключил к 6-му каналу (FLP).

Для стабилизации по курсу я не занимаю отдельный канал на регулировку чувствительности третьего гироскопа, а подключаю ее вместе с гироскопом руля высоты к 5 каналу через Y-кабель. Чувствительность у них скорее всего должна быть одинаковой. Входной кабель – в 4 канал (RUD). Выходной – к серве руля направления. А приклеить гироскоп нужно к горизонтальной поверхности внутри фюзеляжа.

Далее, необходимо настроить крутилку на изменение чувствительности гироскопов. Попробовав разные варианты, я пришел к выводу, что выделять на каждый гироскоп по отдельной крутилке слишком жирно. К тому же, пока не испытан хэдтрекер, две из них заняты у меня на сервы поворота камеры. Поэтому, я выбрал одну правую крутилку HOV. THR и присвоил ей в меню передатчика 5 канал (6-й канал, в последующем, будет привязан к 5-му, поэтому крутилку назначать ему не надо):

AUX-CH

CH5           HOV THRO

Так как, гироскоп на элеронах должен быть менее чувствительным, надо его смикшировать с первым гироскопом с некоторым относительным отставанием. Опытным путем я определил это соотношение:

PROG.MIX

MIX1

STATE         ACT

MASTER     GYR

SLAVE        FLP

OFFSET      000

UPRATE      040

DNRATE      040

SW             ON

Теперь, когда каналы заданы, нужно сузить диапазон их конечных точек вдвое, чтобы можно было точнее регулировать чувствительность гироскопов:

E.POINT

GYR           050% 050%

FLP            050% 050%

Чтобы при повороте крутилки в плюс чувствительность увеличивалась, а не уменьшалась, нужно выставить реверс привязанных к ней каналов (GYR и FLP):

REVERSE

GYR           REV

FLP            REV

Теперь, при повороте крутилки к плюсу будет увеличиваться чувствительность всех гироскопов. При работе гироскопов в нормальном режиме, на их корпусе мигает световой индикатор. При выставлении крутилки в ноль, гироскопы отключаются – индикатор перестает мигать. В режиме AVCS крутилка стоит в отрицательном положении, а индикатор постоянно горит. Но AVCS разработана специально для вертолетов, и в самолетах бессмысленна. Я пробовал – только мешает. Чувствительность выставляется в процессе полета максимально возможной, при которой самолет не дергается (т.е. гироскопы не входят в автоколебательный резонанс).

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

Если какой-то из рулей отклоняются не в ту сторону, то для исправления этого несоответствия на гироскопе есть маленький тумблер реверса DR. Нужно переставить его в другое положение. DS – это тумблер для указания характеристики сервопривода. Если гироскоп подключен к цифровой серве, то тумблер должен стоять в положении ON. Если к аналоговой – OFF.

Летать по камере с гироскопами – одно удовольствие, при любом ветре. Одновременно с тестированием гироскопов я впервые пробовал летать в очках. Естесственно, визуальный контроль со стороны при этом практически невозможен. И если без гироскопов и очков мне регулярно приходилось отрываться от экрана, чтобы оценить положение самолета, то сейчас я весь полет полностью контролирую по видеизображению с камеры. В полной мере начал ловить кайф от FPV. Можно даже на длительное время бросить стики, чтобы заняться необходимыми в полете настройками. Однажды, в безветренную погоду задал курс с небольшим креном и отпустил стики, и самолет, как по рельсам, пролетел по воображаемой дуге метров 300. Теперь я говорю противникам гироскопов: “Если Вы хотите чтобы Ваша модель оставалась летающим куском бальсы или потолочки, лишь по очертаниям напоминающим самолет, не имитируя его полет, то тогда не ставьте гироскопы”.

Теги: Цессна 150 | cessna 150 | FPV | гироскоп | gyro

Sdk и комплекты

Понятно, DJI — не единственный пример. SDK есть у Parrot, 3DR, Skydio, Yuneec (правда 3DR, Yuneec и Parrot работают с open-source-платформами, о них мы поговорим далее). 

По сути сейчас мы наблюдаем процесс формирования целого рынка программного обеспечения для таких программируемых дронов. 

Некоторое ПО, в т.ч. на DJI (несмотря на то, что он не open-source) можно найти на GitHub.

Кстати, образовательные решения тут тоже есть. Например, тот же DJI выпускает специальный комплект из нескольких дронов, рассчитанный на обучение целой группы студентов программированию на Scratch, Python и Swift. 

Помимо проприетарных, есть множество DIY-решений, основанных на популярных универсальных полетных контроллерах. Откровенно говоря, DIY-сообщество в свое время и стало родоначальником всего рынка управляемых дронов. Компании с рынка радиоуправляемых моделей взялись за разработку БПЛА лишь тогда, когда идея стала популярна в народе и можно было построить какие-то бизнес-прогнозы.

DIY-решения обычно опираются на какую-то из доступных систем управления (автопилотов), например Ardupilot или Pixhawk. А контроллер подбирается из списка поддерживаемых для выбранного автопилота. Впоследствии его можно даже доукомплектовать оборудованием (если прошивка позволяет это сделать). Под такие решения есть свои универсальные платформы разработки, например MAVSDK (его поддерживают 3DR, Yuneec и Parrot).

По аналогии с 3D-принтерами некоторые производители выпускают кит-комплекты для DIY дронов. К примеру, в упомянутом выше хакатоне ребята работали с дронами «Иволга» отечественного производства. Есть и другие примеры, например, Ardupilot, как производитель, предлагает на рынке собственные наборы, цена на которые варьируется в зависимости от комплектации.

Дрон для любителя: устройство и принципы программирования / Хабр
Пример комплекта с Aliexpress

На базе open source контроллеров встречаются и промышленные решения.

Начиная с самосборных решений под управлением готового автопилота, некоторые энтузиасты переходят к разработкам собственного автопилота. Так мир open source в этой части постоянно расширяется. Однако это задача не для новичка. Поскольку суть заключается не столько в самом программировании, сколько в решении инженерных задач.

Дополнительные рейсы

Теперь, когда вы отработали глюки и комфортно летаете в контролируемой среде, вы можете приступить к второму полёту.

  • Поскольку дрон все еще не полностью проверен, мы предлагаем пройти полную предполётную процедуру для первого полёта, которая не должна занять много времени.
  • Используя плавные движения, привыкните к тому, как дрон реагирует на ваши перемещения стиками/джойстиками, удерживая его на безопасном расстоянии.
  • Адаптация к пилотированию беспилотником должна осуществляться без помощи FPV и различных сенсоров.

Дрон очень далеко, и вы не знаете, в каком направлении он находится.

  • Сбавьте газ и понаблюдайте, отвечает ли дрон (проверяется, есть ли связь).
  • Если дрон реагирует на газ, попробуйте приземлиться прямо там (если можете).
  • Если это место не подходит для приземления, осторожно попробуйте направить беспилотник вперед (ничего радикального), и если беспилотник реагирует, опираясь на вашу позицию, двигаясь влево или вправо в небе, позволит вам определить его ориентацию. Если кажется, что он не движется влево или вправо, он может двигаться к вам или от вас, поэтому отмените то, что вы только что сделали, и попробуйте «рыскать» влево.

Другие методы

Следуйте инструкциям в руководстве пользователя продукта, чтобы минимальный/максимальный диапазон входного сигнала ESC соответствовал тому, что он получит от передатчика.

  1. USB: Некоторые модели ESC программируются через USB, либо самостоятельно, либо с помощью адаптера.
  2. Плата программирования: Внешняя плата программирования ESC, может использоваться практически с любым ESC и является автономным устройством.
  3. Микроконтроллер: Этот способ широко не используется, но, безусловно, можно перепрограммировать ESC с помощью микроконтроллера, если у вас есть правильный код и вы можете правильно подключиться.
  4. Контроллер полёта: Некоторые контроллеры полёта позволяют вам калибровать или программировать ESC через их программный интерфейс. Прочитайте инструкцию к вашему контроллеру полёта, чтобы узнать, возможно ли это.

Есть два уровня программирования

Если рассуждать о глубине погружения в тему программирования беспилотных летательных аппаратов, можно выделить два «уровня»:

  1. Планирование и закладка в аппарат полетного плана для готового решения, а также последующий контроль его исполнения. Этот уровень позволяет решать множество очень интересных задач, хотя и ограничен возможностями используемой платформы;
  2. Создание собственной системы управления — своего рода «системное программирование» в мире БПЛА.

На Хабре любят DIY и тут довольно много рассказов о деталях второго уровня (например

), в то время как первый до сих пор охвачен слабо. В основном обсуждают детали программирования в определенном SDK или сравнивают аппараты, что понятно лишь тем, кто в теме. Так что далее будем говорить именно про первый уровень.

Программирование под готовые платформы выводит летательные аппараты далеко за рамки класса «игрушек». Это полноценная разработка, которая просто использует библиотеки и функции автопилота для серийно выпускаемого дрона (или для open source полетного контроллера), так что создатель программы может сосредоточиться на решении своей задачи, будь то аэрофотосъемка или воздушные световые шоу.

Самое важное: программирование позволяет снять с оператора часть задач по управлению в режиме реального времени, что на самом деле упрощает применение БПЛА. Не у каждого любителя фотосъемки найдется время и желание учиться пилотировать дрон в сложных условиях.

Есть комплекты для обучения

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

Дрон для любителя: устройство и принципы программирования / Хабр
Обучающий набор DJI EDU 

Например, в конце января в Точке кипения Омского технического университета (ОГТУ) проходил хакатон, посвященный программированию дронов. 

Дрон для любителя: устройство и принципы программирования / Хабр
Один из организаторов хакатона — Александр Голунов — помогал нам в подготовке этого поста

Любопытно, что до мероприятия ребята, принимавшие в нем участие, не были знакомых с беспилотниками. Некоторые из них увидели дрон вживую первый раз в жизни. Но после знакомства — блочной сборки, настройки, калибровки БПЛА, а также построения виртуального полетного плана — они смогли предложить новые способы применения дронов в быту. Как бы это о том, что ничего сложного тут, в целом, нет.

Железо дрона

С точки зрения железа дрон состоит из:

  • рамы, на которой крепятся агрегаты и защитный кожух. Последний, кстати, присутствует не всегда, но какая-то защита движущихся частей аппарата, а заодно и окружающих от удара этими движущимися частями, есть почти везде;
  • необходимого количества роторов;
  • аккумулятора;
  • набора датчиков. Самый простой дрон может летать с трехосевым акселерометром, но управлять им будет сложно. Заметно упрощают этот процесс: трехосевой акселерометр, трехосевой датчик угловой скорости (ДУС), барометр и магнитометр. Также в списке датчиков могут присутствовать: компас, гироскоп, GPS или приемник любой другой системы глобального позиционирования;
  • модуля связи. Это может быть радиосвязь с пультом управления (наземной станцией) или 4G-модем для получения команд и отправки телеметрии через интернет;
  • полезной нагрузки, например камеры на подвесе, сонара, дальномера и т.п.;
  • сердца дрона — полетного контроллера, который всем этим управляет.

Дрон для любителя: устройство и принципы программирования / Хабр
Пример состава оборудования программируемого дрона с полетным контроллером pixhawk

Калибровка esc

ESC будут работать из коробки, но сигналы (ШИМ/PWM), связанные с минимальным и максимальным газом, могут не соответствовать тому, что обеспечивает ваш передатчик. Поэтому вам необходимо «обучить» каждый ESC, необходимым значениям. Убедитесь, что пропеллеры не установлены на моторах.

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

Обычно в руководстве к контроллеру полёта есть раздел, в котором рассказывается о калибровке ESC и объясняется, как это сделать. Если нет, вы можете попробовать один из методов, предложенных ниже. Еще раз, если ваши пропеллеры еще не сняты, самое время это сделать.

Конфигурация аппаратуры управления

  • Некоторые пульты имеют разные режимы работы, такие как Самолёт (Airplane), Вертолёт (Helicopter), Автомобиль (Car) и т.д. На 4 уроке (Раздел: Управление) мы обсуждали четыре основных канала управления: Throttle (Газ), Yaw (Рыскание), Pitch (Тангаж) и Roll (Крен), которые обычно являются значениями, связанными с самолётами или вертолётами. Если в руководстве к контроллеру полёта не указан конкретный режим для трансмиттера, рекомендуется использовать режим «Самолёт» (Airplane).
  • Существует два типа дистанционного управления: Режим 1 (Mode 1) и Режим 2 (Mode 2). Mode 2 (наиболее распространённый) при таком типе управления Throttle (Газ) и Yaw (Рыскание) связаны с левым каналом/стиком/джойстиком, Pitch (Тангаж) и Roll (Крен) с правым. Вы также можете перепроверить их назначение, непосредственно перемещением стиков, чтобы убедиться, что значения не инвертированы.
  • Режимы трансмиттера часто добавляют уровень «смещения» каналов/сигналов, чтобы сделать движение более подходящим для конкретной системы, тем не менее, большинство контроллеров полёта заботится о любом смещении и, как таковые, предпочитают «необработанные» значения. Если ваш трансмиттер не имеет никаких режимов, просто проверьте, какой канал/стик/джойстик за что отвечает.
  • RC-передатчик общего назначения может обеспечивать только ограниченный диапазон сигналов на каждом канале, и поэтому на этом уроке мы советуем вам узнать, какой диапазон значений может предоставить RC-передатчик, и можно ли настроить минимальное и максимальное значения (либо в виде значений, либо в процентах от диапазона по умолчанию). Например, для контроллеров полёта на базе MultiWii необходимы передатчики, которые могут обеспечить полный диапазон импульсов от 500мс до 2500мс, тогда как настройка по умолчанию может составлять только от 1000мс до 2000мс, поскольку это обычная конфигурация для R/C самолёта. Прочтите руководство вашего передатчика, чтобы узнать, как настроить конечные точки/диапазон сигнала (если это возможно).
  • Если у вашего контроллера есть ЖК-дисплей, зачастую вы можете сделать это через интерфейс в разделе «Настройки» («Settings»).
  • «Тест аппаратуры управления на макс. расстояние удаления» легче всего реализовать при помощи друга/помощника, либо подключить к дрону RC зуммер или другую визуальную/звуковую обратную связь. Некоторые модели более высокого класса имеют функцию тестирования радиуса действия. Цель теста — увидеть, насколько далеко передаётся сигнал, прежде чем, приёмник больше не сможет его фиксировать. К тесту на дальность рекомендуется прибегать только после, так называемого «Боевого полёта» (Fight flight — проверяется работоспособность дрона на небольшой дистанции, в пределах прямой видимости пилот-дрон). Порядок действий для тестирования дальности:
  1. Включите аппаратуру управления, затем дрон.
  2. Отойдите на 15 метров и активируйте переключатель, связанный с зуммером; Вы должны услышать его.
  3. Если у вас нет зуммера, включите дрон и убедитесь, что двигатели запущены.
  4. Отключите зуммер/задизармите дрон
  5. Повторяйте эти шаги, отдаляясь все дальше и дальше (по линии обзора), пока дрон не отреагирует на ваш ввод.
  6. Это будет абсолютно максимальное расстояние, на котором вы можете управлять своим дроном.
  7. Вы можете подумать, что не планируете управлять им так далеко, но помните, что дрон движется по трем осям, и что-то может пойти не так.

Мотор и несущий винт (пропеллер). направление.

Теперь вы готовы установить пропеллеры. Вернёмся к 3 уроку, в котором обсуждается направление несущего винта, чтобы он создавал тягу. Все пропеллеры имеют верхнюю и нижнюю части, а также направление вращения «CW» (по часовой стрелке) и «CCW» (против часовой стрелки).

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

Первый полёт

Независимо от вашего предыдущего опыта в пилотировании, ваш первый полёт, особенно с кастомным многомоторным БЛА, должен быть как можно более сдержанным. Цель первого полёта — убедиться, что все настроено правильно; а также выявление каких-либо серьёзных проблем.

  • Расположение: открытая площадка, вдали от зданий, людей и имущества. Например: пустое футбольное поле, бейсбольное поле и так далее, будут  идеальны. Там не должно быть никакого ветра вообще.
  • Пройдитесь по предполётному контрольному листу пилота.
  • Встаньте на расстоянии около 2 метров от дрона так, чтобы передняя часть дрона была направлена от вас.
  • Заармите (Arm) моторы.
  • Осторожно перемещайте стик/джойстик газа (Throttle) вверх. Достигнете точки, когда дрон будет готов взлететь. Могут возникать некоторые эффект влияния земли, которые заставляют дрон слегка подпрыгивать, но волноваться не стоит.
  • Добавьте газ, чтобы поднять дрон над землёй и привыкнуть к элементам управления — постарайтесь удержать его в пределах определенного радиуса и посмотрите, как он реагирует на ваши перемещения стиками/джойстиками.
  • Осуществляйте незначительные, постепенные и плавные движения — ничего слишком внезапного. Опустите стик газа, чтобы предотвратить аварию.
  • Если ваш дрон ведет себя не так, как ожидалось (например, перемещение оси «Pitch» приводит к его тангажу, а также крену влево или вправо), что-то не так, и вам придётся выяснить причины выявленных проблем.
  • Если беспилотник ведет себя так, как ожидалось, ваша задача — стабильно удерживать его позицию на высоте от 1.2-2 метров от земли. Не стоит становиться чересчур бешеным, так быстро.

Передатчик

  1. Подключите один ESC к контакту «Throttle» на вашем приёмнике. Если к вашему ESC не подключен BEC, вы можете подключить один ESC с поддержкой BEC к другому контакту на приёмнике (такой как вход батареи) просто для подачи питания на приёмник.
  2. Подключите ESC к соответствующему двигателю (если он еще не подключен).
  3. Установите стик/джойстик, связанный с «Throttle» («Газ»), на максимум (обычно это левый стик/джойстик и полный вперед/вверх), а затем включите передатчик.
  4. Подключите LiPo батарею к плате распределения питания или напрямую к этому ESC (если разъёмы совместимы).
  5. Двигатель должен подать три звуковых сигнала (11.1В LiPo), после чего следует короткая пауза, а затем два коротких звуковых сигнала (что соответствует максимальному сигналу).
  6. Сразу после коротких звуковых сигналов переведите стик/джойстик «Throttle» («Газ») в крайнее нижнее положение (что соответствует минимальному сигналу).
  7. Двигатель должен подать три звуковых сигнала (11.1В LiPo) с последующим длинным звуковым сигналом.
  8. Диапазон газа для этого ESC теперь установлен, переходите к следующему, пока все ESC не будут откалиброваны.

План на случай чрезвычайных ситуаций

Большинство аварийных ситуаций приводят к падению дрона, а большинство аварий происходит, когда вы только начинаете работать в поле и/или с новым дроном. Приведённый ниже список предназначен для того, чтобы дать вам вещи для размышления и некоторые идеи относительно того, как, и почему, реагировать начинающим пилотам.

Решение принимается в каждом конкретном случае, а в некоторых ситуациях может противоречить тому, что предлагается здесь. Так что, познавайте себя, познавайте окружение, и будьте осторожны! Почти во всех случаях будет лучшим потерять беспилотник, чем рисковать столкновением с людьми или имуществом.

Предполётный контрольный лист пилота

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

  1. Убедитесь, что у вас есть любой из доступных визуальных способов узнать, какая сторона вашего дрона является передом. Как минимум, добавьте цветную ленту на два передних луча.
  2. Убедитесь, что батарея аппаратуры управления заряжена.
  3. Слегка встряхните БПЛА — ничто не должно ослабнуть, греметь, или упасть на землю. Вы никогда не узнаете, что, возможно, могло сместиться или сломаться в результате жесткой посадки в предыдущем полете.
  4. Убедитесь в том, что пропеллеры по-прежнему надёжно закреплены.
  5. Сначала включите аппаратуру управления, затем питание дрона (держите руки подальше от несущих винтов).
  6. Убедитесь, что вы можете безотказно заармить и задизармить моторы (они должны вращаться на низких оборотах при «Arm» и прекращать вращение при «Disarm»)
  7. Убедитесь, что вы выполнили калибровку или датчики хорошо откалиброваны (вы должны делать это регулярно)
  8. Выполните проверку радиуса действия передатчика.
  9. Убедитесь, что зона для полёта полностью свободна, и если кто-то находится в её пределах, сообщите им, особенно любопытным детям; что вы управляете БПЛА, и что не стоит приближаться до тех пор, пока дрон не осуществит посадку с полной остановкой моторов.

Тестирование

Пока вы не приобретёте достаточную уверенность в своих способностях пилота и конструктора дронов, следующая процедура предлагается для всех беспилотных летательных аппаратов до их первого полёта.

  1. Включите двигатели и убедитесь, что они вращаются в правильных направлениях, соответствующих описанному в руководстве к контроллеру полёта.
  2. Очень медленно поднимите стик/джойстик газа (Throttle) и убедитесь, что пропеллеры толкают воздух вниз к земле. Использование папиросной бумаги является безопасным вариантом для визуальной проверки.
  3. Перемещайте стик/джойстик отвечающий за Pitch (Тангаж), очень осторожно вперед/назад, чтобы убедиться, что дрон наклоняется вперед/назад корректно.
  4. Очень осторожно переместите стик/джойстик отвечающий за Roll (Крен) в каждую из сторон, чтобы убедиться, что дрон отвечает правильно.

Если дрон не ведет себя должным образом, есть множество возможных причин, среди которых самыми распространёнными являются:

  • Один или несколько моторов вращаются в неправильном направлении.
  • Контроллер полёта не был установлен правильно, и то, что он считает «вперед», отличается от вашего физического БПЛА.
  • Один или несколько контактов между приёмником и контроллером полёта подключены неправильно или даже не в том месте.
  • Возможно, все установлено правильно, просто слишком быстро или резко реагирует на ввод пользователя.

Чем занимается полетный контроллер

Насколько легко или сложно управлять конкретным дроном, в том числе и программировать его, определяет полетный контроллер и его программное обеспечение. Именно на него ложится задача управления физикой полета. Благодаря контроллеру оператору достаточно знать только базовые понятия и определения, и нет необходимости защищать докторскую по аэродинамике, чтобы совершить первый полет.

Контроллер решает классические задачи по:

  • ориентации беспилотника вокруг его центра масс;
  • ориентации центра масс беспилотника в пространстве;
  • движению БПЛА по маршруту;
  • избежанию коллизий с другими беспилотниками, если это групповой полет, или с иными объектами. Например, есть много разработок безопасных дронов, которые не сталкиваются с людьми, — все зависит от конкретной задачи;
  • управлению полезной нагрузкой — камерой, захватами для груза и т.п.;
  • передаче информации, в частности, приему команд с пульта, если управление осуществляется вручную;
  • корректировке полета, в т.ч. в больших формациях.

Дрон для любителя: устройство и принципы программирования / Хабр
Полетный контроллер Arducopter
Дрон для любителя: устройство и принципы программирования / Хабр
Полетный контроллер DJI A3

Полетные контроллеры присутствуют на рынке как самостоятельно, так и в составе готовых дронов.

Среди готовых решений широко известны китайские DJI. Вслед за полетным контроллером, шесть лет назад, китайцы предложили SDK, с которым можно создавать вполне профессиональные решения. Вот лишь небольшой список уже решенных задач:

Языки и среды разработки

В двух словах программирование дрона сводится к контролю координат промежуточных точек и высоты над землей с одновременным управлением полезной нагрузкой в зависимости от поставленной задачи.


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

Но пока на рынке царит настоящий зоопарк подходов и языков.

Часть производителей вообще предлагает собственные среды — как упомянутый выше DJI.

Сообщества, разрабатывающие опенсорсные полетные контроллеры, от них не отстают. Исторически сложилось, что большинство DIY решений основано на среде Arduino. Тот же Ardupilot в свое время разрабатывался для управления дроном с контроллером ATMega 2560, а в качестве среды разработки использовал оболочку Arduino.

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

Среды разработки, соответственно, также дорабатываются и усложняются. Они становятся кроссплатформенными, но пока все еще ориентированы на конкретный автопилот. И хотя на данный момент существуют общепринятые частные стандарты (например, передачи данных или взаимодействия беспилотников с наземными станциями), до выявления лидера среди языков разработки и SDK пока далеко.

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

Оцените статью
Радиокоптер.ру
Добавить комментарий