Оглавление:

Автономный дрон: 7 шагов
Автономный дрон: 7 шагов

Видео: Автономный дрон: 7 шагов

Видео: Автономный дрон: 7 шагов
Видео: Военный дрон за 40 000$ весом 32 грамма #shorts 2024, Ноябрь
Anonim
Автономный дрон
Автономный дрон
Автономный дрон
Автономный дрон

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

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

Шаг 1: Список деталей

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

Купленные запчасти

Рама: DJI F450 Flame Wheel

www.buildyourowndrone.co.uk/dji-f450-flam…

PDB: Matek PDB-XT60

www.unmannedtechshop.co.uk/matek-pdb-xt60…

Моторы x4: Emax 2205s 2300кв

www.unmannedtechshop.co.uk/rs2205-s-races…

Пропеллеры x4: Gemfan Carbon / Nylon 5030

hobbyking.com/en_us/gemfan-propeller-5x3-…

Регуляторы скорости x4: Little Bee 20A 2-4S

hobbyking.com/en_us/favourite-little-bee-…

Контроллер полета: Navio 2 (с антенной GPS / GNSS и модулем питания)

Малина Pi 3B

thepihut.com/collections/raspberry-pi/pro…

Передатчик: FRSKY TARANIS X9D +

www.unmannedtechshop.co.uk/frsky-taranis-…

Приемник: FrSky XSR 2.4 Ghz ACCST

hobbyking.com/en_us/xsr-eu-lbt.html?_st…

Батареи: TATTU 1800mAh 14.8V 45C 4S1P Lipo Battery Pack

www.unmannedtechshop.co.uk/tattu-1800mah-…

Зарядное устройство: Turnigy Accucell-6 50W 6A Balancer / Charger

hobbyking.com/en_us/turnigy-accucell-6-50…

Блок питания для зарядного устройства: блок питания RS 12 В постоянного тока

uk.rs-online.com/web/p/plug-in-power-supp…

Сумки для аккумуляторов: литий-полимерный зарядный блок Hobby King

hobbyking.com/en_us/lithium-polymer-charg…

Соединители типа "банан"

www.amazon.co.uk/gp/product/B013ZPUXZS/re…

WiFi-роутер: TP-LINK TL-WR802N

www.amazon.co.uk/TP-LINK-TL-WR802N-Wirele…

Карта Micro SD: SanDisk 32 ГБ

www.amazon.co.uk/SanDisk-microSDHC-Memory…

Стойки / распорки: нейлон с резьбой M2,5

thepihut.com/products/adafruit-black-nylon…

Ноутбук

Кабельные стяжки

Ремешок на липучке

Термоусадка

Детали, напечатанные на 3D-принтере

Корпус Raspberry Pi / Navio 2 (сверху и снизу)

Батарейный отсек (коробка и крышка)

Лазерная резка деталей

Слои электроники x2

Шаг 2: Оборудование

Аппаратное обеспечение
Аппаратное обеспечение
Аппаратное обеспечение
Аппаратное обеспечение
Аппаратное обеспечение
Аппаратное обеспечение

Фаза оборудования и строительства:

  1. Соберите раму квадрокоптера F450 и напечатанный кожух аккумулятора посередине (не забудьте добавить проставки M2,5 * 5 мм).
  2. Присоедините моторы к раме.
  3. Припаяйте банановые разъемы к проводам регуляторов скорости и мотора.
  4. Припаяйте ESC и силовой модуль к PDB. Примечание. Убедитесь, что не используете выход 5 В PDB (он не обеспечивает достаточной мощности).
  5. Добавьте первый слой, вырезанный лазером, на верхнюю часть рамы F450, используя проставки M2,5 * 10 мм «папа-мама»; и прикрепите к этому слою PDB и силовой модуль. Примечание: убедитесь, что компоненты размещены таким образом, чтобы провода были достаточно длинными, чтобы доходить до всех двигателей.
  6. Подключите ESC к двигателям и используйте стяжки, чтобы закрепить провода на раме.
  7. Присоедините Navio2 к Raspberry Pi и поместите его в печатный корпус.
  8. Добавьте второй слой, вырезанный лазером, поверх первого слоя и прикрепите оболочку Raspberry-Navio с помощью двусторонних липких подушечек.
  9. GPS можно наклеить на верхнюю часть корпуса, однако здесь он был размещен на третьем слое, который идет поверх корпуса Raspberry-Navio, как показано на рисунках, но это полностью зависит от человека, который его строит. Затем просто подключите GPS к Navio.
  10. Закрепите ресивер поверх второго слоя с помощью двусторонних липких подушечек. Подключите ESC и провода приемника к контактам Navio. Приемник занимает первый столбец контактов, а затем двигатели занимают следующие четыре столбца. Примечание: передняя часть дрона зависит от того, какой двигатель будет установлен первым. Какое бы направление спереди вы ни выбрали, убедитесь, что двигатели подключены, как показано на рисунке в начале этого шага.
  11. Добавьте пропеллеры. Рекомендуется оставить пропеллеры до самого конца, то есть после завершения раздела программного обеспечения, и всегда принимать меры предосторожности, когда пропеллеры включены, на случай, если что-то пойдет не так.

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

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

Программная фаза: (Справочная документация Navio2)

  1. Загрузите последний образ Emlid Raspbian из документации Navio2.
  2. Скачайте, распакуйте и запустите Etcher с правами администратора.
  3. Выберите файл архива с изображением и буквой диска SD-карты.
  4. Щелкните «Flash!». Процесс может занять несколько минут. (Пример видео)
  5. Теперь, чтобы настроить доступ к Wi-Fi, нам нужно отредактировать файл wpa_supplicant.conf, расположенный на SD-карте. Отредактируйте его, чтобы он выглядел как первое изображение в верхней части этого шага. Примечание: ssid - это имя TP-Link, которое отображается на вашем компьютере. Лучший способ найти точный ssid для TP-Link - подключить ноутбук к TP-Link, а затем запустить команду ниже в окне терминала:

Для windows: netsh wlan показать профили

Для Mac: значения по умолчанию: /Library/Preferences/SystemConfiguration/com.apple.airport.preferences | grep SSIDString

psk - это пароль, указанный на карте, поставляемой с TP-Link.

  1. Извлеките SD-карту, вставьте ее в Raspberry Pi и включите.
  2. Чтобы проверить, подключен ли Raspberry Pi к TP-Link, вы можете использовать любое из доступных приложений, которые показывают все устройства, подключенные к вашей сети.
  3. Необходимо установить фиксированные IP-адреса для устройств, подключенных к вашему TP-Link, чтобы вам не приходилось каждый раз менять IP-адреса в кодах, которые вы пишете. Вы можете просто сделать это, открыв tplinkwifi.net (конечно, пока вы подключены к TP-Link). Введите имя пользователя: admin и пароль: admin. Перейдите к «DHCP» в меню в левой части экрана, затем выберите «Резервирование адреса» в раскрывающемся меню. Добавьте MAC-адреса устройств, которым вы хотите назначить IP-адреса. Здесь наземной станции (ноутбуку) назначен IP-адрес 192.168.0.110, а Raspberry Pi 192.168.0.111.
  4. Теперь нам нужно скачать MAVProxy по следующей ссылке.
  5. Теперь создайте файл.bat, который выглядит как второе изображение в верхней части этого шага, и убедитесь, что вы используете путь к файлу, в котором ваш mavproxy.exe сохранен на вашем ноутбуке. Вам нужно будет запускать этот файл (дважды щелкнув по нему) каждый раз, когда вы захотите подключиться к дрону.
  6. Чтобы Raspberry Pi мог взаимодействовать с MAVProxy, файл необходимо отредактировать на Pi.
  7. Введите sudo nano / etc / default / arducopter в терминал Linux Raspberry Pi, на котором установлен автопилот Navio2.
  8. В верхней строке открывающегося файла должно быть написано TELEM1 =”- A udp: 127.0.0.1: 14550”. Его необходимо изменить, чтобы он указывал на IP-адрес вашего ПК.
  9. Установите Планировщик миссий и перейдите в раздел «Первоначальная настройка».

Шаг 4. Первоначальная настройка

Чтобы подключиться к вашему БПЛА, выполните следующую процедуру:

  1. Запустите как файл MAVProxy.bat, так и программу Mission Planner.
  2. Подключите аккумулятор к вашему БПЛА и подождите примерно 30-60 секунд. Это даст ему время подключиться к беспроводной сети.
  3. Нажмите кнопку подключения в правом верхнем углу Планировщика миссий. В первом появившемся диалоговом окне введите 127.0.0.1 и нажмите OK. В следующем поле введите номер порта 14551 и нажмите OK. Через несколько секунд Mission Planner должен подключиться к вашему MAV и начать отображать данные телеметрии на левой панели.

Когда вы впервые настраиваете свой БПЛА, необходимо настроить и откалибровать определенные аппаратные компоненты. В документации ArduCopter есть подробное руководство по настройке типа рамы, калибровки компаса, калибровки радиоуправления, калибровки акселерометра, настройки режима передатчика RC, калибровки ESC и конфигурации диапазона двигателя.

В зависимости от того, как вы установили Raspberry Pi на дрон, может потребоваться изменить ориентацию платы в планировщике миссий. Это можно сделать, настроив параметр Board Orientation (AHRS_ORIENTATION) в списке дополнительных параметров на вкладке Config / Tuning в Планировщике миссий.

Шаг 5: Первый полет

Первый полет
Первый полет
Первый полет
Первый полет

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

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

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

Активация двигателей происходит, когда автопилот подает питание на двигатели, чтобы они могли вращаться. Перед включением двигателей важно, чтобы дрон находился на открытой открытой местности, вдали от людей и препятствий или на безопасной летной арене. Также очень важно, чтобы рядом с гребными винтами ничего не было, особенно части тела и другие предметы, которые они могут повредить. Как только все станет ясно и пилот убедится, что запуск безопасен, моторы можно активировать. На этой странице приведены подробные инструкции по вооружению самолета. Единственная разница между этим руководством и Navio2 заключается в шаге 7 постановки на охрану и шаге 2 снятия с охраны. Чтобы включить Navio2, оба стика необходимо удерживать в центре в течение нескольких секунд (см. Рисунок). Для снятия с охраны обе палки необходимо удерживать в течение нескольких секунд вниз и в стороны (см. Рисунок).

Чтобы совершить свой первый полет, следуйте этому руководству.

После первого полета может потребоваться внести некоторые изменения. Пока оборудование полностью функционирует и правильно настроено, эти изменения будут в основном в форме настройки ПИД-регулятора. В этом руководстве есть несколько полезных советов по настройке квадрокоптера, однако в нашем случае простого небольшого уменьшения коэффициента усиления P было достаточно, чтобы сделать самолет устойчивым. После того, как самолет готов к полету, можно использовать функцию автонастройки ArduCopter. Это автоматически настраивает PID, чтобы обеспечить самый быстрый отклик, оставаясь при этом стабильным. Документация ArduCopter предоставляет подробное руководство по выполнению автонастройки.

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

Шаг 6: автономный полет

Image
Image

Планировщик миссий

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

Самый простой способ перейти в автономный полет - использовать Планировщик миссий, поскольку он содержит множество вещей, которые вы можете делать со своим самолетом. Автономный полет в Mission Planner делится на две основные категории; заранее запланированные миссии (автоматический режим) и живые миссии (управляемый режим). Экран планировщика полета в планировщике миссий можно использовать для планирования полета, состоящего из путевых точек, которые необходимо посетить, и действий, которые необходимо выполнить, например, фотографирования. Путевые точки могут быть выбраны вручную, или инструмент автоматической путевой точки может использоваться для создания миссий по обследованию местности. После того, как миссия была спланирована и отправлена на дрон, можно использовать автоматический режим полета, чтобы самолет автономно выполнял заранее запланированную миссию. Вот удобное руководство по планированию миссий.

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

Отказоустойчивые устройства - важная вещь, которую следует учитывать во время автономного полета, чтобы гарантировать, что если что-то пойдет не так, самолет не будет поврежден, а люди не получат травм. Планировщик миссий имеет встроенную функцию Geo-Fence, которую можно использовать, чтобы ограничить место, где может летать БПЛА, и не дать ему уйти слишком далеко или слишком высоко. Возможно, стоит подумать о привязке БПЛА к земле для ваших первых нескольких полетов в качестве еще одной резервной копии. Наконец, важно, чтобы у вас был включен радиопередатчик и был подключен к дрону, чтобы при необходимости вы могли переключиться из автономного режима полета в ручной режим полета, такой как стабилизация или удержание высоты, чтобы можно было безопасно пилотировать БПЛА. приземляться.

MATLAB

Автономное управление с использованием MATLAB намного менее просто и требует некоторых предварительных знаний в области программирования.

Сценарии MATLAB real_search_polygon и real_search позволяют вам генерировать заранее запланированные миссии для поиска определяемого пользователем многоугольника. Сценарий real_search_polygon планирует путь по определенному пользователем многоугольнику, тогда как сценарий real_search планирует путь по минимальному прямоугольнику, охватывающему многоугольник. Для этого необходимо выполнить следующие действия:

  1. Откройте Планировщик миссий и перейдите в окно Плана полета.
  2. Нарисуйте многоугольник над желаемой областью поиска с помощью инструмента многоугольник.
  3. Сохраните многоугольник как «search_area.poly» в той же папке, что и сценарий MATLAB.
  4. Перейдите в MATLAB и запустите real_search_polygon или real_search. Обязательно выберите желаемую ширину пути и измените file_path в строке 7 на правильный каталог, в котором вы работаете.
  5. После того, как сценарий будет запущен и вы останетесь довольны созданным путем, вернитесь в Планировщик миссий.
  6. Нажмите «Загрузить файл WP» справа и выберите файл путевой точки «search_waypoints.txt», который вы только что создали.
  7. Нажмите «Записать WP» справа, чтобы отправить путевые точки на дрон.
  8. Включите дрон и взлетите вручную или щелкнув карту правой кнопкой мыши и выбрав взлет.
  9. Как только вы достигнете разумной высоты, измените режим на автоматический, и дрон начнет миссию.
  10. После завершения миссии нажмите RTL на вкладке действий, чтобы вернуть дрон на место запуска.

Видео в начале этого шага представляет собой симуляцию в программе Mission Planner обыскивающего территорию БПЛА.

Шаг 7: видение

Зрение
Зрение

Задача дрона - пролететь над горами или дикой природой и обнаружить людей или необычные объекты, а затем обработать это, чтобы увидеть, нужна ли этому человеку помощь. В идеале это можно сделать с помощью дорогой инфракрасной камеры. Однако из-за высокой стоимости инфракрасных камер вместо этого инфракрасное обнаружение напоминает обнаружение всех незеленых объектов с помощью обычной камеры Pi.

  1. ssh в Raspberry Pi
  2. Прежде всего нам нужно установить OpenCV на Raspberry Pi. Следующее руководство, предоставленное pyimagesearch, является одним из лучших, доступных в Интернете.
  3. Загрузите код в Raspberry Pi с GitHub по следующей ссылке. Чтобы загрузить код на Raspberry Pi, вы можете загрузить файл на свой компьютер, а затем передать его на Raspberry Pi.
  4. Чтобы запустить код, перейдите в каталог, в котором находится код в Raspberry Pi, а затем выполните команду:

python colour_target_detection.py --conf conf.json

НЕПРЕРЫВНОЕ ИСПОЛЬЗОВАНИЕ Каждый раз, когда вы перезапускаете raspberry pi, вам необходимо запускать следующие команды:

sudo ssh [email protected] -X

источник ~ /.profile

workon cv

Затем перейдите к шагу 4 выше.

Важное примечание: НЕ все терминалы могут показывать видео. На Mac используйте терминал XQuartz.

Рекомендуемые: