Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

Как понять что ваш дрон попал под глушилку?

Прежде всего по исчезновению спутников. В случае подмены — сначала исчезают настоящие и появляются поддельные. Также в случае подавления GPS. Спутники могут исчезнуть на определенной высоте. 

Как только почувствовали неладное — не нужно ждать, что все станет хорошо. Скорее всего не станет. Начинайте снижение. Поскольку значительная часть глушилок работает начиная с высоты 30 метров (а верхняя граница неизвестна), не стоит пытаться взлететь выше и ближе к спутникам.

Если приземлиться получилось, не стоит взлетать снова. Второй раз может не получиться. 

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

Стоит внимательнее выбирать место, откуда взлетает дрон и куда придется садиться. Если Вы поднимаетесь через небольшое окно между деревьями — посадить дрон туда же в случае нештатной ситуации будет под силу далеко не всем. 

Полеты в центре Москвы (да и других крупных городов) тоже так себе затея. В последнее время стоит также остерегаться и больших парков типа Поклонной горы, Царицыно и пр. 

Изучите местность. Проверьте наличие различных государственных ведомств, заводов и прочих “нехороших” объектов. За основу стоит взять народные карты типа
wikimapia.org — там больше данных, чем на “причесанных” Яндекс картах. 

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

Если дрон еще на земле не видит больше 6-и спутников (в наше время с Глонасс и GPS их должно быть намного больше), не стоит взлетать вообще в надежде, что они появятся. 

Тренируйте навыки полета без GPS. Купите игрушку или соберите недорогой FPV дрон для оттачивания навыков ручного управления и реакции без электронных помощников. 


При возможности купите GPS трекер с сим-картой и установите на дрон. Он может помочь найти коптер, если он все таки улетит в неизвестном направлении. 

Наше видео советы как бороться с глушилками?

Fullspeed lucky box 90db

FullSpeed — это самый маленький и легкий поисковый зуммер для квадрокоптеров и самолетов, который поможет найти улетевшую авиа модель. Вес составляет всего 2,3 грамма. Хоть это и не самая громкая пищалка (уровень звука около 90 дБ), но самая маленькая точно — размер 15,5 × 13,5 мм.

Jhe42b 110dbi finder buzzer

Один из самых больших и дешевых поисковых пищалок. На самом деле, это копия Vifly Finder V1.

Jhe42b_s 110dbi finder buzzer

Это уменьшенная версия пищалки Finder JHE42B 110 дБ. Этот поисковый зуммер просто немного меньше, но функции все те же самые. Альтернатива первым 2 пищалкам из этого списка.

Lantian hxz01 110dbi finder buzzer

На этот раз пищалка с монтажной квадратной формой, то есть, его нужно установить в стек с полетным контроллером (у некоторых там еще и регуляторы оборотов), размеры монтажных отверстий: 30×30 мм и 20×20 мм.

Vifly finder 2 super loud, 100db

Vifly Finder 2 — многофункциональная поисковая пищалка с встроенным аккумулятором. Она может работать как стандартный зуммер/пищалка при подключении к BUZ-порту полетного контроллера, так и через выход PWM. А еще можно использовать в моделях, у которых вообще нет полетных контроллеров, но это так, к слову.

Бортовая электроника

Основной компонент, который мы разрабатывали самостоятельно, — плата стабилизации. Изначально она была основана на платформе Arduino Uno, потом заменили на более мощную Due, что позволило увеличить частоту ПИД-регуляторов с 40Гц до 66.(6)Гц.

Пропеллеры коптера приводятся в движение компактными бесколлекторными двигателями в связке со стандартными контроллерами оборотов — ESC. Мы используем ESC с изменённой прошивкой.

Смотрите про коптеры:  Квадрокоптер Hubsan H501S PRO Professional черного цвета 5.8G FPV brushless 1080p с HD камерой и трансляцией видео на пульт — H501SPro-B

Для питания всей системы используется литий-полимерный аккумулятор (3S). Из соображений безопасности мы решили сделать систему мониторинга напряжения на аккумуляторе. В штатном режиме использования аккумуляторов система ведёт себя достаточно стабильно. Однако на начальных этапах работы мы наблюдали эффекты, вызванные неоптимальным использованием батарей:

  • Вздувшиеся аккумуляторы. Причина в перезаряде и длительном хранении разряженных аккумуляторов. Производители рекомендуют не разряжать силовые аккумуляторы ниже значения 3,3В на каждую банку батареи, что в нашем случае даёт минимальное допустимое напряжение в 9,9В.
  • Выключение моторов при низком напряжении. Это особенность реакции большинства прошивок ESC на низкое напряжение, которая может привести к серьёзной аварии — в первый момент выключается только один мотор, остальные продолжают работать.

Для наших целей ESC было решено перепрограммировать. Благодаря использованию прошивки tgy (от SimonK) мы добились уменьшения задержки системы на пути от центрального контроллера до двигателей. В результате компоненты ПИД и угловая скорость стали более синусоидальными, а поведение всей системы приблизилось к поведению математической модели.

Для измерения динамических параметров используются следующие датчики:

  • 6-осевой акселерометр-гироскоп InvenSense MPU-6050
  • 3-осевой компас Honeywell HMC5883L

Воспроизводимость результатов


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

Грабли

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

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

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр
Другая опасность — влияние побочных вибраций от моторов на Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / ХабрАвтономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

Калибровка пид

Для углов Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / ХабрАвтономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / ХабрАвтономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

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

Квадрокоптеры с режимом следования за пилотом



§



§



Квадрокоптеры с функцией облета по точкам gps

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

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

§



§



Матчасть


Определим невязку — разницу между требуемым и реальным значением некоторой величины:

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

 — требуемое значение величины (угол с джойстика),

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

 — текущее значение величины (угол с датчика).

Зададим момент сил для угла Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

где

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

 — пропорциональная,

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

 — интегральная,

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

 — дифференциальная составляющие.


Знак минус говорит о том, что при положительных

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

воздействие направлено против отклонения.

В чём смысл этой формулы? Напишем уравнение динамики, положив Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / ХабрАвтономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

 — момент инерции.

Для простоты уберём интегральную составляющую (Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / ХабрАвтономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / ХабрАвтономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

где

Т. е. чем больше пропорциональная составляющая, тем более «резкой» будет реакция на воздействие (больше амплитуда). Чем больше дифференциальная составляющая, тем быстрее будет происходить затухание (больше декремент).

Из модели затухающих колебаний получаем выражение для коэффициента затухания:

Из возможных решений уравнения нам подходит режим, близкий к критическому (граница апериодичности,

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

) — нет отрицательного «перелёта» графика, переходный процесс короткий. Как видно, критический режим задается всего одним соотношением на коэффициенты ПИД-регулятора.

Интегральная составляющая устраняет статическую ошибку. Пусть невязка Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / ХабрАвтономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / ХабрАвтономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

Более подробный анализ уравнения ПИД-регулятора можно найти в других статьях: раз, два.

Смотрите про коптеры:  Радиоуправляемые модели, катеров, лодок, катамаранов, катеров для рыбалки и прикормки, военных кораблей купить, цена, доставка радиоуправляемых судомоделей по России

Направления для развития

  • Процесс тестирования системы стабилизации можно упростить, используя более совершенный стенд. Верёвочный вариант — скорее одноразовое решение, более подходящим был бы жёсткий карданов подвес с тремя степенями свободы.
  • Существуют методики автоматизации подбора коэффициентов ПИД-регулятора. Например, основанные на двоичном поиске (метод ветвей и границ). В нашем проекте коэффициенты подбирались вручную.
  • Приложение для ПК, используемое для мониторинга и управления, было бы удобнее использовать на планшетном компьютере. В планах портировать приложение на Android или IOS.

О нас

Мы — студенты МФТИ (в своём большинстве), которые в свободное время занимаются проектом на мастерской TechnoWorks. Кроме коптера у нас живут и другие проекты: железные и программные. О них мы расскажем как-нибудь потом. А еще у нас можно придумать и реализовать свою идею (а мы поможем найти людей).

Если есть желание присоединиться к нашей команде, свяжитесь с нами! Мастерская активно расширяется, для новых участников у нас полно творческой и технической работы. И печенек.

Обзор квадрокоптера mavic 2 как мы попали под глушилку

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

Первая авария


Слишком большая дифференциальная составляющая на практике приводит к автоколебаниям, чего не должно быть в теории. Почему? Уберём все составляющие, кроме дифференциальной, и решим уравнение:

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / ХабрАвтономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

т. е. величина

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

превращается в линейную комбинацию

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

и её производной. То же самое происходит с моментом сил, который также является гармонической функцией в этом примере. При определенных

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

коэффициенты линейной комбинации могут быть такими, что возникнут незатухающие автоколебания.

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр
Также результат работы составляющих ПИД приходится ограничивать по модулю. Иначе значение Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

Компромиссом является установка не слишком маленьких коэффициентов в совокупности с введением ограничения сверху на все три составляющие: пропорциональную, интегральную и дифференциальную.

Стоит сказать, что реальная коррекция в почти горизонтальном положении — около 1–2 попугаев процентов мощности моторов (полётная мощность около 60%).

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр
Рассмотрим решение уравнения второго порядка (1), которое в одном из случаев является затухающей синусоидой.

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

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр
Поскольку Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

Передатчик для quadcopter на алиэкспресс — купить онлайн по выгодной цене

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

Закажите передатчик для quadcopter онлайн с доставкой по России: товары с пометкой Plus доступны с ускоренной доставкой и улучшенными условиями возврата.

На Алиэкспресс передатчик для quadcopter всегда в наличии в большом ассортименте: на площадке представлены как надежные мировые бренды, так и перспективные молодые.

Полёт коптера с нашей системой стабилизации

лето 2021.
зима 2021.
весна 2021

Принцип работы

Пищалка Vifly Finder 2 умеет определять, есть ли питание от основного аккумулятора и принимает ли сигнал приемник дрона. Если ни первого, ни второго нет — активируется наша пищалка, которая может работать до 30 часов в активном режиме!

https://www.youtube.com/watch?v=lg7PXaCgQUs

Кроме того, на плате есть датчик освещенности и Vifly Finder 2 умеет подстраивать яркость светодиода в соответствии с общей освещенностью. Еще эта пищалка умеет определять ночь и если она наступила, то переходит в спящий режим для экономии заряда.

Программное обеспечение

Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр

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

В качестве динамического датчика мы использовали MPU-6050 из-за его вычислительных возможностей. Встроенный процессор (DMP) способен частично обрабатывать данные с датчиков, что позволяет разгрузить центральный контроллер. Но оказалось, что надёжных библиотек для работы с этим устройством под Arduino не существует.

Решение jrowberg’а привело к проблемам при использовании на сильно загруженном микроконтроллере. Код в примере опирается на синхронность считывания данных. FIFO-буфер датчика, в который записываются посчитанные величины, переполняется в случае несвоевременного считывания.

Смотрите про коптеры:  Как выбрать квадрокоптер с камерой в 2019? Недорогие и хорошие модели дронов (цены и обзор).

Поскольку всегда считывается первый элемент из FIFO, то при частичной заполненности появляется задержка между помещением новых данных в FIFO и их обработкой на Arduino. В свою очередь, эта задержка приводит к возникновению автоколебаний. При переполнении буфер приходится очищать:

его размер 1024, что не делится на 42 — размер пакета. Поэтому, когда буфер переполняется, в начале FIFO находится часть какого-то постороннего пакета. Иными словами, начиная с определенного момента структура нарушается: начало FIFO не совпадает с началом пакета, и считать корректные данные невозможно.

Телеметрия

Дистанционное управление реализовано в двух режимах (для обеспечения более гибкого процесса разработки):

  1. С помощью модулей xBee Pro в конфигурации «коптер  ПК».
  2. С помощью выделенной радиочастоты (2.4ГГц) в конфигурации «пульт ДУ ↦ коптер».

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

Данные, пересылаемые между коптером и ПК:

  • ПК ↦ Коптер: канал управления (ПК/пульт ДУ), мощность моторов, настройка для включения/выключения стабилизации, коэффициенты ПИД и ограничения;
  • Коптер ↦ ПК: углы, угловая скорость, компоненты Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр, Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр, Автономный квадрокоптер с нуля: PID и грабли / Блог компании TechnoWorks / Хабр, данные с джойстика (мощность 3 угла), мощности моторов, напряжение на аккумуляторе.

Благодаря датчику от InvenSense, начальная обработка данных с датчиков происходит на встроенном процессоре (DMP). Мы разгружаем плату стабилизации, которая может использовать в качестве вычислителя даже маломощный AVR-микроконтроллер.

Технические характеристики

Надеемся, вы нашли ответ на вопрос — как найти квадрокоптер? Ведь что может быть хуже, чем улетевший дрон после первого запуска?

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

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

Функции

  • Vifly Finder 2 будет пищать, даже если отключен основной источник питания (аккумулятор квадрокоптера);
  • Встроенный датчик освещенности для светодиодного маячка;
  • Автоматический спящий режим в ночное время для экономии заряда аккумулятора;
  • Очень громкий звук в сравнении с обычными пищалками. Такая громкость звука нужна в случаях, когда квадрокоптер улетел далеко.

Есть 2 варианта отключения пищалки: 

  • Выключить встроенной кнопкой — удерживайте ее в течение 3-5 секунд.
  • Выключение с помощью основного аккумулятора дрона — подсоедините аккумулятор на 3-6 секунд, затем снова отключите.

Эта пищалка совместима со всеми квадрокоптерами и самолетами. Никаких дополнительных настроек делать не надо, она сама определит подключение к питанию, полетному контроллеру, определит сигнал приемника и будет работать как положено.

Итоги

Главное достижение — отличная команда энтузиастов, способных работать над сложными робототехническими проектами. Мы верим, что всё дело в творческом подходе, возможности для самореализации, а также бесценном практическом опыте, которого всегда не хватает.

Мы создали новый проект системы стабилизации для мультикоптеров. Сейчас мы можем пилотировать квадрокоптер на открытом пространстве. Такие внешние факторы, как ветер, дождь и снег компенсируются автоматически благодаря ПИД-регулятору.

В настоящий момент мы усовершенствуем то, что сделали, и разрабатываем новые функции автоматизации.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector