Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Десктопное ПО и мк прошивки

Программный комплекс для БПЛА

Добавлено 15 сен 2022 в 20:59
Программный комплекс включает прошивку для микроконтроллера STM32 и два десктоп-приложения QCopterController и QCopterSim.
Прошивка для STM32 написана на языке С++ и решает следующие задачи:
  • работа с интерфейсами GPIO, USART/UART, I2C, SPI, а также со встроенными таймерами и PWM;
  • настройка и общение с сенсорами: акселерометр, гироскоп, магнитометр, GPS, ультразвуковой сенсор расстояния;
  • калибровка и управление ESC (контроллерами двигателей);
  • сохранение и загрузка данных с SD карты;
  • фильтрация данных сенсоров: температурная и магнитная компенсации, поправка на магнитное склонение;
  • вычисление ориентации и положения летательного аппарата;
  • связь с QCopterController через WiFi посредством модуля ESP8266: настройка и передача данных телеметрии, передача и прием данных настроек и калибровок, прием данных управления, прием
    плана полета;
  • контролирование ориентации и положения летательного аппарата в пространстве в нескольких режимах: ручное управление (контроль углов наклона, тангажа и рыскания вместе со средней
    мощностью двигателей), удержание высоты, удержание позиции, выполнение плана полета.
QCopterController написана с использованием Qt5/С++ и решает следующие задачи:
  • работа с картами Google и OpenStreetMap: загрузка и отображение, кэширование (на жестком диске и оперативной памяти) с ограничениями по максимальной используемой памяти, построение тайлов (фрагментов) карты, используя тайлы с нижних и верхних слоев приближения);
  • связь и обмен данными с БПЛА через TCP/IP;
  • настройка программы, загрузка и сохранение настроек на жесткий диск;
  • настройка БПЛА: настройка управляющих контуров БПЛА, калибровка сенсоров, магнитная и температурная компенсации сенсоров, загрузка данных сетки магнитного склонения для выбранной местности;
  • настройка и отображение телеметрии, ее сохранение и загрузка с жесткого диска;
  • создание, редактирование, сохранение, загрузка и передача БПЛА плана полета;
  • управление БПЛА, отображение его состояния и журнала событий.
QCopterSim написана с использованием Qt5/С++ и является посредником между QCopterController и программой CoppeliaSim (ранее V-REP) для симуляции полета БПЛА в виртуальной среде.

882141ad50 057a56d066 D17e49945e B852a7f907