Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК Машинки

Относительно дешевый quadcopter на arduino с управлением от телефона, планшета, пк

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

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

Ноутбук или компьютер с Processing[/b], скачать можно от сюда. Что такое “Processing”? Вот, что пишет об этом википедия :

Processing — открытый язык программирования, основанный на Java. Представляет собой лёгкий и быстрый инструментарий для людей, которые хотят программировать изображения, анимацию и интерфейсы.Используется студентами, художниками, дизайнерами, исследователями и любителями, для изучения, прототипирования и производства. Он создан для изучения основ компьютерного программирования в визуальном контексте и служит альбомным программным обеспечением (имеется в виду то, что каждый *.pde файл визуальной оболочки Processing’а представляет собой отдельное изображение или анимацию, и т. д.) и профессиональным производственным инструментом.


Arduino Software (IDE)[/b]
Андроид-устройство[/b], которое поддерживает режимUSB-хоста[/b](проверено на MotorolaXoom.
А так же паяльник, прямые руки, ножницы.

Смотрите про коптеры:  Система радиоуправления моделями Радиопроп

Что надо для изготовления рамы

Рама квадрокоптер делается из бамбуковых шашлычных палочек

Крепления двигателей к раме делаются из палочек для коктейля.

Изолента- используется для крепления платы приемника, электродвигателей к раме. Нитки нужны для скрепления деталей перед склейкой. Цианакриловый клей. Резинка для крепления аккумулятора к раме.

Список электроники для квадрокоптера.

Все эти детали могут быть повреждены во время пробных запусков или во время полетов, поэтому заказывайте с запасом. Ссылки даны для примера. Есть много поставщиков.
Лопасти для вертолета
Двигатели. Я не нашел двигатели с размерами 4х7 мм на Алиэкспресс нашел вот такие. Моторы должны быть без щеточные.

Плата приемника эта плата содержит все компоненты- гироскоп, акселометр, ESC (система курсовой устойчивости), CPU который все эти компоненты объединяет. Литий полимерный аккумулятор:1 x 240mah 1S ‘LiPo. Можно использовать разные аккумуляторы с меньшей или большей емкости. Если вы решите построить октакоптер, то вам понадобиться более емкая батарея.

Список аппаратного контроля квадрокоптера.

Это те части вашего будущего вертолета, которые позволят ему принимать ваши команды.
Приемопередатчик Учтите что в комплекте должны быть два модуля. И это не тоже самое что NRF24L01, что бы ни утверждал продаван.

Arduino DUE[/b]или аналогичный, он будет использоваться для связи вашего Андроид-устройства и A7105. Автор использовал именно эту плату Arduino потому, что она имеет USB подключенный к последовательному порту и может работать с 3.3в логикой, хотя можно применить преобразователь уровней 5-3.3в.

Макетная плата-на ней вы будете монтировать радио модуль и подключать его к Arduino. Резистор 22кОм- значение его не особо критично. Провода для соединения радио модуля. OTG переходник для вашего андроид устройства.


OTG
Hubsan-пульт дистанционного управления-это не обязательно, но удобно.

Создание каркаса.

Каркас изготавливается из бамбуковых палочек, скрепленных крест на крест с трубочками от коктейлей. Все это склеивается вместе супер клеем.
1: Распечатайте шаблон SVG в прикрепленном файле. Он сложнее, чем должен быть, но также используется для строительства октокоптера. Шаблон нужен, чтобы сделать правильный квадрат.

2. Отрежьте нитку по длине вашего предплечья.

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


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

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


6. Положите шаблон на ровную поверхность, лучше использовать стекло.

7. Разместите ваши связанные вместе палочки, как показано на фото.

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

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

9. Повторите все тоже самое для второго кронштейна.

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

11. Обрежьте палочки примерно на длину 2 см с обеих сторон.


12. Отрежьте 4 палочки по 1.5 см , склейте их вместе квадратом, особо прочная склейка не нужна, это будет кронштейн для платы и батареи питания.

Следующий этап состоит из пайки ваших 4 моторов к плате 4Х приемника. Первое, что надо – это припаять провода питания на нижнюю часть платы. Далее мы будем ссылаться на эту ориентацию (плата лежит на “спине”)

Как подключать моторы.

На Hubsan х 4 платах есть контактные площадки для подключения светодиодов и моторов. Те, что для светодиодов имеют обозначение LED, туда НЕНАДО подключать моторы. Контакты для моторов помечены ve[/b]и–ve.[/b]

Возьмите один из ваших 4 моторов с черным и белым проводами и припаяйте их кЛЕВЫМ НИЖНИМ[/b]контактам платы, белым проводом к левому контакту пары. Возьмите мотор с красным и синим проводами и припаяйте его кЛЕВЫМ ВЕРХНИМ[/b]контактам, красным проводом к левому контакту пары.. Возьмите мотор с черными и белыми проводами и припаяйте их кПРАВЫМ ВЕРХНИМ[/b]контактам, черным проводом к левому контакту. Возьмите мотор с красным и синим проводами и припаяйте его кПРАВЫМ НИЖНИМ[/b]контактам, красным проводом к левому контакту пары.


В схеме подключения белый провод это черная пунктирная линия. Провода надо закрепить каплей горячего клея. Закрепите моторы двумя полосками изоленты шириной 5мм. Не стоит особо волноваться по поводу одинакового расположения моторов по высоте. После того,как моторы закреплены, надо надеть на оси пропеллеры. Используйте белый пропеллер для “переда”с противоположной стороны от проводов батареи) и чёрный пропеллер для”зада”. Это не так просто, как кажется, так. как одни лопасти сделаны для вращения по часовой стрелке, а другие , для вращения против часовой стрелки. На лопастях есть обозначения. Используйте лопасти с буквой “А[/b]” для левого верхнего и правого нижнего моторов. С буквой “В[/b]“, соответственно, для правого верхнего и левого нижнего моторов. Теперь вы можете прикрепить батарею к нижней части платы, автор использует для этой части резинку. Если у вас есть оригинальный hubsan контроллер, вы сможете поднять квадро в воздух. Если вертолёт трясёт в воздухе, значит, моторы стоят не строго вертикально. Подкладывая кусочки свернутой бумаги, можно выравнять моторы.

Сборка радиоуправления на arduino.

Этот пункт проекта расскажет как управлять вертолетом с помощью Андроид устройства,через последовательный порт Arduino.

Вам нужны 6 контактов на плате А7105. Слева GND. Справа-SDIO, SCK, SCS, GND, VCC.


Припаяйте жесткий одножильный провод, длиной 2 см, к каждому указанному выводу. Вставьте А7105 в макетную плату, так как показано на фото. Соедините выводы GND на плате arduino и два на А7105. Соедините вывод 3.3V на Arduino c выводом VCC на плате А7105. На разъеме SPI Arduino, соедините вывод MOSI с одним из выводов резистора , другой конец резистора соедините с пином SIDO на А7501.

По этой ссылке можно посмотреть где находится вывод MOSI
Вывод SCK Arduino c выводом SCK А7105 , SCS с платы А7105 на пин 10 Arduino . Синий резистор на фото не является частью проекта.

Arduino софт

Нижеследующий скетч использует хакнутую версию PhracturedBlue’s hubsan X4 и A7105 оригинал кода можно посмотреть здесь.

Подключить Ваш DUO к компьютеру через ‘Programming Port’. Скачайте зип фаил, загрузите скетч в Arduino и выгрузите его в DUO. Этот скетч обрабатывает команды с последовательного порта и преобразует их в команды платы управления вашего квадрокоптера. Этот скетч связывается с платой Hubsan по радио без последовательного порта, так что, если включите ваш коптер, а затем Arduino, и огни на коптере перестанут моргать, значит все в порядке.

Программное обеспечение для Андроид

Это программноеобеспечениедает вам простой контролер полета на базе андроид устройства. Для управления используется акселерометр и сенсорный экран вашего устройства. Планшет или телефон будет обмениваться данными с Arduino через порт USB.

Установка софта:
1 Надо разрешить отладку по USB и разрешить установку приложений не google play. Скачать приложение можно здесь
2Подключитесвое устройство через переходник OTG к Arduino, он будетзапитыватьсяот вашего телефона или планшета, поэтому проверьте, чтобы аккумулятор был полностью заряжен.
3 Подключите аккумулятор к коптеру и положите его на плоскую поверхность. Если огни перестали моргать, значит все в порядке.
4 Большой палец левой руки медленно сдвиньте по экрану, пропеллеры должны начать вращаться. Уберите палец и пропеллеры остановятся.
5 Проделайте все тоже самое, только разместите большой палец правой руки тоже на экране. Это позволит вам управлять вертолетом с помощью акселерометра, наклоняя ваше устройство вперед/назад, влево/вправо. Перемещая большой палец правой руки влево или вправо, вы будете закручивать вертолет влево или вправо вокруг оси. Если убрать правую руку с экрана, вертолет должен выровняться, не зависимо от положения акселерометра. Попробуйте. Перемещайте палец левой руки до тех пор, пока вертолет не взлетит. Помните – если убрать оба пальца- моторы остановятся.

Программное обеспечение для ПК
В архиве программа, которая управляет коптером через последовательный порт. Управляется коптер с помощью курсорных кнопок, и кнопок “A”/”Z”- дроссель. Автор сделал попытку заставить следовать коптер за объектом определенного цвета, но это пока не работает. Обещал выкладывать обновления.

Связь

Радиоуправление (RC)

Управление посредством радиосвязи обычно включает в себя RC передатчик/RC transmitter (в беспилотном хобби — радиоаппаратура управления/пульт) и RC приёмник (RC receiver). Для взаимодействия с БПЛА пользователю потребуется как минимум четырёх (и более) канальный RC передатчик. По умолчанию первые четыре канала связаны с:

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Все остальные имеющиеся каналы могут быть задействованы для таких действий как:

  • Арминг (Arming или Arm)/Дизарминг (Disarming или Disarm) — постановка/снятие с охраны моторов.
  • Управление подвесом (панорамирование вверх/вниз, вращение по часовой стрелке/против часовой стрелки, зуммирование)
  • Смена режимов полёта (ACRO/ANGLE и т.д.)
  • Активировать/Задействовать полезную нагрузку (парашют, зуммер или другое устройство)
  • Любое другое применение

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

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

  • Не все RC передатчики могут обеспечить полный диапазон RC сигналов от 500мс до 2500мс; некоторые искусственно ограничивают этот диапазон, так как большинство используемых RC предназначены для радиоуправляемых автомобилей, самолётов и вертолётов.
  • Дальность/Макс. воздушный радиус действия (измеряется в футах или метрах) RC-системы практически никогда не предоставляются производителями, поскольку на этот параметр влияют множество факторов, таких как помехи, температура, влажность, заряд батареи и другие.
  • Некоторые RC-системы имеют приёмник, который также имеет встроенный передатчик для передачи данных от датчика (например, GPS-координат), которые в последствии будут отображаться на ЖК-дисплее RC передатчика.

Bluetooth

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

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Wi-Fi

Управление по Wi-Fi обычно достигается посредством Wi-Fi роутера, компьютера (в том числе ноутбук, десктоп, планшет) или смартфон. Wi-Fi в состоянии справится как с передачей данных, так и с передачей видеопотока, но одновременно с этим эту технологию сложнее настроить/реализовать. Как и для всех Wi-Fi устройств, расстояние удаления ограничено Wi-Fi передатчиком.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Радиочастота (RF или РЧ)

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

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Смартфон

Хоть это и не тип связи, самого вопроса, как управлять дроном используя смартфон, достаточно, чтобы уделить ему отдельный раздел. Современные смартфоны это по сути мощные компьютеры, которые по случайному совпадению могут также совершать телефонные звонки. Почти все смартфоны имеют встроенный модуль Bluetooth, а также модуль WiFi, каждый из которых используется для управления дроном и/или получения данных и/или видео.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Инфракрасное излучение (Infrared (IR))

Инфракрасная связь (то что можно найти в каждом телевизионном пульте дистанционного управления) редко используется для управления дронами, так как даже в обычных комнатах (не говоря уже об открытом пространстве) присутствует так много инфракрасных помех, что они не очень надёжны. Несмотря на то, что технологию можно использовать для управления БПЛА, не может быть предложена как основной вариант.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Эволюция систем управления беспилотных летательных аппаратов: от появления до наших дней

Аннотация: в данной статье приведена ТРИЗ-эволюция систем управления беспилотными летательными аппаратами, начиная с первых и заканчивая современными, с их описанием, техническими противоречиями и возможным дальнейшим развитием.

Ключевые слова: система управления, беспилотный летательный аппарат, БПЛА. 

Annotation: In this article we present TRIZ-evolution of control systems of unmanned aerial vehicles, that is starting with the original and ending with the modern, with their description, technical contradictions and possible further development. 

Keywords: control system, unmanned aerial vehicle, UAV. 

В настоящее время беспилотные летательные аппараты (БПЛА) достаточно сильно развиты и имеют широкий круг применений. За век своего существования БПЛА как увеличились в своих размера до десятков метров, так и уменьшились до нескольких миллиметров; их диапазон скорости, грузоподъёмности тоже  существенно расширился.

Однако системы управления БПЛА неизменно развивались и продолжают развиваться. Рассмотрим эволюцию систем управления БПЛА, начиная от систем управления первых беспилотных «воздушных торпед» до систем управления современных беспилотников. Для современных БПЛА ограничимся мини и микро классами аппаратов (вес до 30 кг).

Как всегда бывает, первыми БПЛА разрабатывали военные, и только в XXI веке началось активное развитие БПЛА гражданского назначения. 

1.      Исторически первый БПЛА. 

Исторически первым БПЛА считается «Жук» Кеттеринга (см. рис. 1). Это один из первых успешных проектов беспилотного летательного средства. По заказу армии США в 1917 году изобретатель Чарльз Кеттеринг разработал свою экспериментальную беспилотную «воздушную торпеду», которая стала предшественником крылатых ракет. Целью было создать дешёвый и простой беспилотный самолёт-снаряд для армейского авиационного корпуса.

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 1 – Жук Кеттеринга. 

Аппарат получился достаточно компактный, в отличие от «крылатой бомбы» Сперри, разрабатываемой и испытываемой в тоже время. «Жук» имел цилиндрический корпус из дерева, к которому крепилась бипланная V-образная коробка. 

Беспилотное средство было оснащено дешёвым четырёхцилиндровым двигателем и инерциальной автоматической системой управления. После старта, питающийся электричеством от двигателя, гироскоп обеспечивал стабилизацию «Жука» по направлению [1]. Гироскоп был соединён с вакуум-пневматическим автопилотом (рис. 2), который осуществлял управление рулём направления. Блок-схема системы управления «Жука» представлена на рисунке 3.

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 2 – Вакуум-пневматический автопилот (пример)

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

Перед стартом на беспилотном аппарате задавали значение высоты и максимальное количество оборотов пропеллера, что соответствовало пройденному расстоянию; раскручивали гироскоп. Запуск происходил с рельсовой катапульты, «Жук» выходил на заданную высоту и летел по прямой в сторону цели. Специальное устройство отсчитывало обороты пропеллера и по достижении нужного расстояния (количества оборотов пропеллера сравнялось с заданным), высвобождался пружинный механизм, который отключал двигатель и выбивал болты, держащие крылья. Корпус аппарата падал вниз и достигал цели. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 3 – Блок-схема системы управления  

«Жук» Кеттеринга предназначался для обстрела городов, крупных промышленных центров и мест сосредоточения войск противника на дистанции до 120 км. Он успешно прошёл испытания, в отличие от «воздушной торпеды» Сперри, и был прият на вооружение. Система показала себя лучше, успешней и дешевле предыдущих, но Первая мировая война закончилась, и заказ так и не был выполнен [1]. Всего было изготовлено 45 машин.  

У «Жука» Кеттеринга были реализованы простейшие функции автопилота: управление рулём высоты и рулём направления, отсчитывание пройдённого расстояния, отключение двигателя и сброс крыльев. Неудачи в испытаниях были связаны с проблемами удержания аппарата на курсе. Аппарат мог отклониться от курса как при запуске с рельсовой катапульты, так и во время полёта. Кроме того, «воздушная торпеда» под действием ветра могла завалиться на крыло и упасть. Примитивный автопилот хоть и пытался придерживаться курса, но с сильными порывами ветра или ошибкой при запуске справиться не мог.  

Представим алгоритм управления «Жука» Кеттеринга:

1) Перед стартом задавались максимальная высота и число оборов пропеллера.

2) Происходил запуск с рельсовой катапульты.

3) Аппарат выходил на заданную высоту (контроль высоты осуществлялся с помощью барометрического альтиметра).

4) Автопилот поддерживал неизменный курс благодаря воздействию гироскопа (полёт представлял собой движение по прямой).

5) При достижении заданного числа оборотов (нужного расстояния), происходило отключение двигателя и сброс крыльев. Корпус аппарата падал вертикально вниз в цель.  

Аппарат имел малую дальность и мог двигаться только по прямой из пункта «А» в пункт «Б». Маршрут с большим количеством точек был невыполнимой задачей, как и  возвращение аппарата на место старта.

Выявим технические противоречия (ТП), имеющиеся в описываемой системе, для единообразия в формулировках противоречий все рассматриваемы системы будем называть БПЛА:

ТП1. При повышении степени стабилизации БПЛА по крену, путём введения стабилизирующих элементов на крыльях, недопустимо повышается вес аппарата.

ТП2. При повышении степени стабилизации БПЛА по крену, путём введения стабилизирующих элементов на крыльях, недопустимо повышается сложность конструкции.

ТП3. При повышении степени стабилизации по курсу недопустимо уменьшается расстояние до цели.

ТП4. При повышении сложности маршрута недопустимо повышается сложность конструкции.

Противоречие ТП4 было разрешено использованием приёмов вынесения, непрерывности полезного действия, «посредника», путём замены инерциального автопилота на систему радиоуправления. Этап ТРИЗ-эволюции представлен на рисунке 4.

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 4 – Первый этап эволюции. 

2.       Новая веха: появление радиоуправляемых летательных аппаратов. 

В 1930-х годах армия США получила предложения поставлять радиоуправляемые беспилотные самолёты для различных нужд. Среди компаний, сделавших предложение, была Radioplane Company. Основана она Дени Реджинальдом, бывшим пилотом британской королевской авиации, который эмигрировал в США и стал актёром, а позже основал магазин и компанию по производству радио моделей самолётов [2].  

Radioplane Company предложила армии США линейку радиоуправляемых моделей самолётов, среди которых присутствовала модель Radioplane OQ-2 (рис. 5). Это первый дистанционно-пилотируемый летательный аппарат (ДПЛА), поступивший в массовое производство. В общем было произведено 15000 моделей. Эксплуатация проводилась вплоть до 1948 года [2].  

Radioplane OQ-2 представлял собой самолёт-мишень для обучения зенитных расчётов. Длина – 2,65 м. Размах – 3,73 м. Взлётный вес – 47 кг. Максимальная скорость – 137 км/ч. Максимальное время полёта – 1 час.

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 5 – Внешний вид Radioplane OQ-2 

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

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 6 – Блок-схема радиоуправления  

Радиоуправление позволило беспилотникам следовать по сложным маршрутам и выполнять сложные манёвры в воздухе, превосходя в этом «Жука» Кеттеринга и «Крылатую торпеду» Сперри. Аппараты получили возможность возвращаться на стартовую позицию, что увеличило количество их использования. Малогабаритная конструкция Radioplane OQ-2 и простота позволили развивать ему большие скорости и покрывать большее расстояние. Однако появилась проблема с малым потолком использования в 2438 м.

Аппаратура того времени позволяла эффективно использовать Radioplane OQ-2 только в поле видимости оператора. Именно так оператор с земли мог производить управление беспилотником. Если аппарат вылетал из радиуса видимости, то его можно было контролировать только радаром, что не обеспечивало эффективного наблюдения и снижало точность позиционирования.

При рассмотрении Radioplane OQ-2 можно выявить следующие противоречия:

ТП5. При увеличении дальности, путём увеличения пунктов управления по маршруту движения радиоуправляемого аппарата, недопустимо увеличивается объём наземной аппаратуры управления.

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

ТП7. При увеличении дальности, путём увеличения объёма топливного бака, недопустимо увеличивается вес.

Второй этап эволюции показан на рисунке 7.

Противоречие ТП7 было разрешено использованием приёмов вынесения, непрерывности полезного действия, «посредника».

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 7 – Второй этап эволюции  

3. Разработки второй мировой войны.

Фау-1 – самолёт-снаряд, прообраз современных крылатый ракет, состоял на вооружении армии Германии в середине Второй мировой войны (рис. 8). Эта ракета создана в рамках проекта «Оружие возмездия». Проект беспилотного аппарата разработан немецкими конструкторами Робертом Луссером и Фритцем Госслау. Разработка производилась в период 1942-1944 гг [3].

Фау-1 была построена по самолётной схеме, в задней части корпуса над рулём курса крепился реактивный двигатель. В процессе разработки проекта появилась необходимость ввести стабилизаторы и гироскоп для стабилизации аппарата во время полёта.

На земле перед запуском беспилотному аппарату задавали значения высоты и курса, а так же дальность полёта. Наведение выполнялось по магнитному компасу. После пуска аппарата (производился с катапульты, либо с самолёта-носителя – модифицированного бомбардировщика Heinkel He 111 H-22) он летел с помощью автопилота по заданному курсу и на заранее определённой высоте. Стабилизация по курсу и тангажу осуществлялась на базе показаний 3-степенного гироскопа: по тангажу суммировались с показаниями барометрического датчика высоты; по курсу – со значениями угловых скоростей от двух 2-степенных гироскопов, используемых для уменьшения колебаний снаряда. Управление по крену отсутствовало, так как Фау-1 была достаточно устойчива вокруг продольной оси [3]. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 8 – Внешний вид Фау-1  

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

Длина – 7.75 м. Размах крыльев – 5,3 (5,7) м. Максимальная скорость – 656 км/ч (по мере расходования топлива скорость доходила до 800 км/ч). Дальность доходила до 280 км.

Фау-1 могла летать только по прямой (как «Жук» Кеттеринга), однако покрывала большее расстояние и развивала гораздо большую скорость. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 9 – Блок-схема системы управления. 

После рассмотрения Фау-1 были выделены следующие технические противоречия:

ТП8. При упрощении процесса старта, путём отказа от катапульты, недопустимо увеличивается сложность конструкции.

ТП9. При увеличении сложности маршрута недопустимо увеличивается сложность оборудования.

ТП10. При увеличении сложности маршрута недопустимо увеличивается вес аппарата.

На основе вышеописанных противоречий выделен второй этап ТРИЗ-эволюции беспилотных летательных аппаратов (рис. 10).

Противоречия ТП8 и ТП9 были разрешены с помощью приёмов вынесения, непрерывности полезного действия, «посредника», путём замены самолётной схемы на вертолётную. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 10 – Третий этап эволюции.

4. Противолодочный вертолёт.

Проект американского беспилотного летательного аппарата, а если точнее бдеспилотного вертолёта. Gyrodyne QH-50 DASH – первый в мире беспилотный вертолёт принятый на вооружение (рис. 11). Первый его полёт состоялся в 1959 году, и вплоть до 1969, когда ВМС США отказались от проекта, было произведено 700 аппаратов различных модификация. Изначально проектировались как штатное противолодочное вооружение ракетных крейсеров [4]. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 11 – Внешний вид Gyrodyne QH-50 DASH 

Вертолёт был в длину 3,9 м, в высоту 3 м.. Вес неснаряжённого и снаряжённого соответственно 537 кг. и 991кг. Максимальный взлётный вес 1046 кг. Максимальная скорость 148 км/ч. и дальность 132 км. Практический потолок 4939 м. На борту нёс 33,6 галлонов топлива [4].

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

Беспилотный вертолёт разрабатывался для старта с палубы корабля. Перед запуском к нему подвешивали торпеды.

Контроль управления вёлся с пульта оператора (блок-схема системы управления представлена на рис. 12). На пульт также приходили данные о состоянии аппарата, сигналы оружейной системы. В дальнейшем было предложено ввести два пульта управления. По требованию, один пульт должен был находиться на палубе, а другой в командном пункте.

Так как торпеды весили много, пришлось отказаться от телеаппаратуры. Поэтому запускали сразу два вертолёта: один с аппаратом обнаружения и целеуказания; второй с вооружением.

Проект Gyrodyne QH-50 DASH был отменён из-за несовершенства системы управления и конструктивных дефектов, почти половина аппаратов разбились. Во время полёта у беспилотного вертолёта могло произойти самопроизвольное отключение аппаратуры управления. Также сказалось начало войны во Вьетнаме. Но использование беспилотного вертолёта вплоть до 2006 года как учебное пособие, объект экспериментов и т.д. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 12 – Блок-схема системы управления. 

Выделим противоречия беспилотного вертолёта Gyrodyne QH-50 DASH:

ТП11. При уменьшении габаритов беспилотного аппарата недопустимо уменьшается показатель полезной нагрузки.

ТП12. При уменьшении габаритов беспилотного аппарата недопустимо уменьшается дальность полёта.

Противоречия ТП10 и ТП11 были разрешены с помощью приёмов вынесения, объединения, универсальности, замены механической схемы, путём создания доступных контроллеров полёта для авиамоделистов.

По этим противоречиям составим этап ТРИЗ-эволюции (рис. 13).

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 13 – Четвёртый этап эволюции. 

5. «Беспилотники» в массы. Полётные контроллеры для моделирования.

В наше время беспилотные летательные аппараты перестали быть военными «игрушками». В начале XXI века всё больше и больше различных БПЛА находят применение в гражданских сферах: аэросъёмка, доставка грузов, отдых и досуг, образование и др. Появилось множество схем конструкций (мультикоптеры, самолётного типа и др.). Теперь их можно спокойно купить в магазинах или даже сделать самому при покупке определённых комплектующих. О них и пойдёт речь далее.

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

Одним из первых популярных полётных контроллеров XXI века был MultiWii (рис. 14). Это открытый проект полётного контроллера на основе Arduino (аппаратной вычислительной платформе, основными компонентами которой являются простая плата ввода/вывода и среда разработки на языке Processing/Wirin (Си подобный)). Используется как элемент системы управления самодельных беспилотных аппаратов (в частности для мультикоптеров). Название MultiWii исторически сложилось потому, что в первых версиях были задействованы гироскопы из контроллера к игровой консоли Nintendo Wii. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу  

Рисунок 14 – Внешний вид платы MultiWii

В данный момент платформа поддерживает большое количество сенсоров. Изначально нужно было докупать гироскопы из контроллера Wii Motion Plus и акселерометр из контроллера Wii Nunchuk, однако сейчас этого делать не нужно.

Так как основой проекта служит Arduino, то подключаемые модули (GPS, радио передатчик и т.д.) совместимо с проектом полётного контроллера ArduPilot (подробнее о нём поговорим ниже). По своей сути это плата с контактами, а не готовая система управления, к которой радиолюбитель может присоединять различные модули (в соответствии с нужными целями). Есть возможность настроить управление по радио пульту (с помощью приемника/передатчика радиосвязи) либо простые функции автопилота, такие как движение по точкам (необходим модуль GPS) и удержание курса (магнитометр). Естественно всё это возможно только при правильной настройке контроллера.

Изначально на плате был 8-битный микроконтроллер ATMega328 (тактовая частота до 20MHz, FLASH-память 32кб, SRAM-память 2кб), либо ATMega2560 (тактовая частота 16MHz, FLASH-память 256кб, SRAM-память 8кб). Но, т. к. проект является открытым, появились любительские версии с 32-битным STM32. Так же присутствуют встроенные датчики MPU6050 (3-осевой гироскоп и 3-осевой акселерометр), BMP085 (барометр) и HMC5883L (электронный магнитный компас). Информация представлена в общем виде и может отличаться для различных версий плат.

На рисунке 15 показана блок-схема системы управления.

Предполагаемый алгоритм управления:

1) Необходимо подключить все необходимые для задачи пользователя модули, предварительно записав программу в микроконтроллер (официальную или самодельную).

2) Далее следует подключить полётный контроллер к питанию и включить.

3) В зависимости от конструкции беспилотного аппарата, следует произвести запуск.

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

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 15 – Блок-схема системы управления. 

В системе выявлены следующие противоречия:

ТП13. При повышении гибкости настройки управления контроллера недопустимо повышается сложность кода.

ТП14. При повышении гибкости настройки управления контроллера недопустимо повышается количество часов, требуемых на это.

Противоречия ТП13 и ТП14 были разрешены с помощью приёмов вынесения, объединения, универсальности, замены механической схемы.

Этап эволюции показан на рисунке 16. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 16 – Пятый этап эволюции.

6. Новые аналоги.

Контроллер CopterControl3D (CC3D) создан в рамках открытого проекта Open Pilot,начатого в 2009 году (рис. 17). Как и MultiWii является небольшой и относительно дешевой программируемой платой, но в отличие от неё разрабатывался специально для квадрокоптеров. Так же получил своё программное обеспечение OpenPilot GCS для настройки. Примерно 90% квадрокоптеров используемых для управления First Person Viev (FPV, вид от первого лица – управление осуществляется не только по радио каналу, но и по дополнительному каналу принимается на экран видео в реальном времени) собираются любителями именно на этом контроллере. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 17 – Внешний вид платы CC3D

На плате присутствует 32-битный микроконтроллер STM32F103 72MHz с FLASH-памятью 128кб и чип MPU6000 (совмещает 3-осевой гироскоп и 3-осевой акселерометр).

Информация представлена в общем виде и может отличаться для различных версий плат.

Блок-схема системы управления показана на рисунке 18 (отличия только в интерфейсах подключения устройств).

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 18 – Блок-схема системы управления 

В системе выявлены следующие противоречия:

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

ТП16. При повышении универсальности использования контроллера недопустимо повышается сложность кода.

Противоречия ТП15 и ТП16 были разрешены с помощью приёмов вынесения, универсальности, самообслуживания, «посредника».

Этап эволюции представлен на рисунке 19. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 19 – Шестой этап эволюции 

7. Решение от Arduino.

Полётный контроллер ArduPilot Mega (рис. 20), разработанный компанией Arduino. Главным отличием от предыдущих является поддержка не только летающих беспилотных аппаратов, но наземных и лодочных систем. Так же помимо радиоуправляемого дистанционного пилотирования – автоматическое управление по заранее созданному маршруту, т.е. полет по точкам, а так же обладает возможностью двухсторонней передачей телеметрических данных с борта на наземную станцию (телефон, планшет, ноутбук и т.д.) и ведение журнала во встроенную память. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 20 – Внешний вид платы 

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

Контроллер поддерживает авиасимулятор через ПО Mission Planner, который позволят настроить управление, проложить маршрут и т.д.

На плате установлен микроконтроллеры ATMega2560 и ATMega32U2 (8-битный, тактовая частота 16 MHz, FLASH-память 32кб, SRAM-память 1 кб), датчики MPU6000 и MS5611 (барометр).

Блок-схема системы управления показана на рисунке 21.

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 21 – Блок-схема системы управления. 

В рассмотренной системе были выявлены следующее противоречие:

ТП17. При повышении гибкости управления контроллера недопустимо уменьшается универсальность использования контроллера.

ТП18. При повышении качества платы недопустимо повышается цена.

ТП19. При повышении гибкости управления контроллера недопустимо повышается сложность схемы подключения периферии.  

Противоречия ТП17 и ТП18 были разрешены с помощью приёмов объединения, дешёвой замены, универсальности, путём создания универсального полётного контроллера.

На рисунке 22 показан этап эволюции. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 22 – Седьмой этап эволюции. 

8. Новое поколение.

Pixhawk – полетный контроллер нового поколения (рис. 23), дальнейшая разработка проекта PX4 и программного кода Ardupilot от 3DRobotics. В контроллере присутствует операционная система реального времени NuttX.

Контроллер поддерживает большое количество систем:

наземные, воздушные, наводные. Поддерживает различные модули и стандарты для их связи. Из-за своей универсальности и стал популярным. Поддерживает использование ПО Mission Planner как ArduPilot.  

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 23 – Внешний вид контроллера Pixhawk 

На плате установлен 32-битный микропроцессор STM32F427 Cortex M4 (168MHz, FLASH-память 2 Мб, RAM- память 256кб) и 32-битный сопроцессор STM32F103. Так же присутствуют датчики: ST Micro L3GD 20 – 3-осевой гироскоп, ST Micro LSM303D – 3-осевой акселерометр/магнитометр, MPU6000 – 3-осевой акселерометр/гироскоп, MEAS MS5611 – барометр.

Блок-схема системы управления показана на рисунке 24. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 24 – Блок-схема системы управления.  

Выявим противоречия описанной системы:

ТП20. При повышении гибкости управления аппарата недопустимо повышается сложность аппаратуры управления.

Противоречия ТП20 были разрешены с помощью приёмов объединения, универсальности, путём создания многофункционального БПЛА с открытым кодом для любительских разработок.

Этап эволюции представлен на рисунке 25. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу  

Рисунок 25 – Восьмой этап эволюции.

9. Готовое решение.

В 2020 году французская фирма Parrot выпустила на рынок свой беспилотный летательный аппарат AR.Drone. Через пару лет была выпущена обновлённая версия Parrot AR.Drone 2.0 (рис. 29). Проект квадрокоптера был полностью открыт для идей пользователей, что помогло ему стать хитом.

У Parrot AR.Drone 2.0 имеются четыре мотора мощностью 14,5 Вт. Максимальная скорость – 18 км/ч. Масса дополнительной полезной нагрузки – 150 г. Процессор ARM Cortex A8 с частотой 1 ГГц. с 800 Гц. DSP TMS320DMC64x для обработки видео сигналов. RAM DDR2 1Гбит. Две камеры: основная для съёмки и режима FPV с разрешением 720p; дополнительная камера с разрешением 240p для измерения горизонтальной скорости, расположена снизу.Wi-Fi точка для подключения устройства управления (смартфон или планшет с ОС Android или iOS) [9]. 

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу  

Рисунок 29 – Внешний вид Parrot AR.Drone 2.0

Открытость проекта позволяет к готовому аппарату подключать дополнительные компоненты. Это была одна из привлекательных черт описываемого квадрокоптера. Также пользователи могли программировать его полётный контроллер, либо создавать различные приложения для управления на языках C, Java и Objectiv-C.

Примерная блок-схема управления представлена на рисунке 30.

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

Полетный контроллер на Ардуино? На STM32F104! Руководство по сборке. | Пикабу

Рисунок 30 – Блок-схема системы управления. 

Выявленные противоречия:

ТП21. При добавлении дополнительной аппаратуры, повышающей функционал автопилота, недопустимо повышается вес аппарата.

10. Дальнейшее развитие.

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

Но возникает техническое противоречие ТП21. Это противоречие разрешается принципами объединения, универсальности, непрерывности полезного действия, «посредника».  

Интеллектуальную систему управления можно реализовать на микропроцессорном компьютере (например, Raspberry Pi) с несколькими датчиками (2 видео камеры и лидар). Такая система при движении по заданному маршруту сможет определить появившееся препятствие, которым может быть человек, другой БПЛА или дерево, стена, которые не заметил оператор при составлении маршрута. Данная система будет распознавать объекты методом компьютерного зрения и определять вектор движения этих объектов. После определения вектора движения, система сравнит его с вектором БПЛА и построит маршрут уклонения с минимальным уходом с маршрута. Такая схема несильно повлияет свои весом на характеристики беспилотного летательного аппарата, но значительно повысит степень его «выживаемости».  

Литература и примечания 

[1] Куда полетит беспилотник без пилота – День за днем [электронный ресурс] // LIVEJOURNAL.COM : Живой журнал. – Электрон. данные. URL:
http://novser.livejournal.com/9293

99.html (дата обращения 14.11.2020 г.). – Заглавие с экрана. [2] OQ-2 [электронный ресурс] // AVIA.PRO : Новости авиации. – Электрон. данные. URL:
http://avia.pro/blog/oq-2

(дата обращения 14.11.2020 г.). – Заглавие с экрана.

[3] Фау-1 [электронный ресурс] // ANAGA.RU : Информационный портал «Столичный комитет». 2008 г. – Электрон. данные. URL:
http://anaga.ru/v-1.htm (дата обращения

17.12.2020 г.). – Заглавие с экрана. [4] Gyrodyne Helicopter Co. Mfg of QH-50 series of VTOL

UAVs. [электронный ресурс] // GYRODYNEHELICOPT ERS.COM : Информационный сайт. – Электрон. данные. URL:
http://www.gyrodynehelicopters.com/dash_weapon_system.htm

(дата обращения 14.11.2020 г.). – Заглавие с экрана.

[5] AR.Drone 2.0: обзор возможностей и дополнений [электронный ресурс] // XAKER.RU : Электронный журнал. – Электрон. данные. URL:
https://xakep.ru/2020/11/11/ar-drone-2-0/

(дата обращения 24.12.2020 г.). – Заглавие с экрана.

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