cyber-gorizont / drone

Autonomous drone controlled by Raspberry Pi and OpenCV
MIT License
0 stars 0 forks source link

Автономный дрон #1

Open HassiyYT opened 3 weeks ago

HassiyYT commented 3 weeks ago

Необходимо разработать автономный дрон

  1. На напечатанной раме диаметра 550 мм собрать дрон: взять моторы, винты из 7-ки
  2. Соединить дрон на Pixhawk Radiolink по UART к Raspberry Pi 5 (8GB) в корпусе
  3. Собрать образ Ardupilot (latest, stable) для Pixhawk Radiolink
  4. Сконфигурировать и откалибровать дрон в QGroundControl
  5. Написать программу распознавания низкого заряда АКБ, полёта дрона по GPS к ближайшей свободной станции замены АКБ, распознавание QR кодов и их декодирование с помощью библиотеки компьютерного зрения OpenCV 4.x и ZBar (Python, либо C++, либо Rust), проверка на готовность к посадке, поворот дрона в нужную сторону и удержание центра QR кода в течение 3-5 секунд, осуществление посадки. После подачи питания от станции быть готовым к отключению АКБ. После замены АКБ быть готовым к взлёту и начинать взлёт через 5-15 секунд после отключения подачи питания от ИБП. Для управления дроном использовать библиотеку Mavlink
HassiyYT commented 2 weeks ago
  1. Определились с конфигурацией и тех. стеком автономного дрона:
    • Крестообразная рама 550 мм, напечатанная на 3D принтере с помощью ESUN ePLA-ST на Creality K1 MAX, армированная металлическими трубками;
    • Полётный контроллер: Radiolink PIXHAWK;
    • Raspberry Pi 5 (8 GB);
    • Моторы: 4 x EMAX ECOII Series 2807 1300KV;
    • АКБ: Специально разработанный кейс для CNHL LiPo 6S 22.2V (1100mAh и 1500mAh) 100C XT-60. Необходимо определиться с винтами (пропеллерами), камерой и приёмником, антенной, фюзеляжем и корпусом для полётного контроллера и одноплатного компьютера, наличием GPS/ГЛОНАСС модуля и модуля оптического потока. ПО:
    • Ardupilot copter latest;
    • Raspberry Pi OS GNU/Linux (или Ubuntu LTS server GNU/Linux);
    • Python, OpenCV, ZBar, Mavlink.
  2. Собрали прошивку для полётного контроллера
  3. Создали репозиторий для исходного кода проекта https://github.com/cyber-gorizont/drone
  4. Реализовали простой алгоритм распознавания QR-кодов с бортовой камеры дрона с помощью библиотек OpenCV, ZBar на ЯП Python 3
HassiyYT commented 2 weeks ago
  1. Установили конфигуратор QGroundControl v4.4.2 (Linux, AppImage)
  2. Подключили полётный контроллер Radiolink PIXHAWK
  3. Установили прошивку ArduPilot stable v4.5.7 (ChibiOS)
  4. Откалибровали акселлерометр, барометр, компас и гироскоп
HassiyYT commented 1 week ago

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