Спасибо, за то что делитесь своим опытом. Пытаюсь перейти с Arduino на VScode + ESP IDF, но так как VSC универсальный инструмент, переход дается с трудом. Если не сложно поделитесь источниками по которым Вы осваивали VScode + ESP IDF.
помню одни чуваки делали квадрокоптерные и самолетные мозги на самодельных (фабрично изготовленных) платах на ARM процах на OS QNX. Где-то 2013-2014 год с ними пересекался, был весьма впечатлен, все датчики по RS485. А сам из ардуино и mpu6050 колхозил квадрик на MultiWii. Они тогда на мозги от DJI как на говно смотрели. Есть ли мысли переезда на RaspberryPi и им подобное железо? там при кажущейся избыточности весьма обширные возможности. Ты очень крут, спасибо за информацию, за открытый код и уделенное нам время!
RaspberryPi выглядит вполне привлекательно для подобных целей, учитывая что объем и сложность задач, которые возлагаются на разные беспилотники постоянно возрастает (и видеоаналитика по уйме каналов, и крипта по всем направлениям и т.д. и т.п.), но Raspberry это уже скорее Линукс, не FreeRTOS, то есть это будет не переезд, я переосмысление с нуля. Я вряд ли найду на это время, хотя тема безусловно интересная. Если бы погружался в это с нуля сейчас пожалуй очень плотно бы рассмотрел этот вариант.
все вместе (и управление полетом, и обработку/передачу видео) в одном чипе ужать будет сложно, тем более что задачи управления полетом имеют жесткие тайминги. Если интересует передача видео - посмотрите ESP32-CAM, "профильная" плата для этих нужд. Самому интересно было бы с ней поработать, особенно по части видеоаналитики, но все руки не доходят
а я всех блоггеров пытаю другим интересным вопросом: Покупаем плату для разработки проектрв на stm32f405, 411, 446 с поддержкой dfu и т. д. для чипов которых есть прошивки betaflight 4.4 или 4.5. Прошиваем нужной прошивкой и собираем квадрокоптер на этой основе, докупив гироскоп за копейки и приемник для нужной аппаратуры управления. Остается выбрать регуляторы для моторов.. Я это попробовал, залил в режиме dfu прошивку, а после переключения в обычный usb режим в бф и в моëм компьютере не появляется сом порт с нужным номером. Как это работает, не можете подсказать? Если по usb в режиме dfu плату программатор Betaflight видит, видит еë и кубик для stm32, то почему в обычном режиме по usb не работает?
Скиньте где-нибудь пожалуйста фотографии дрона изнутри) Очень интересно как именно внутри всё подсоединено И ещё вопрос, вы плату сами спроектировали и заказали? например с Китая Я новичок в радиодеталях, в основном являюсь веб разработчиком, но жизнь туда тянет, чтоб я ещё и там разобрался))
проектировал сам, производил в Китае. Видео есть на канале с разбором принципиальной схемы. Из внешних подключений - контроллеры двигателей, UART от платы связи с пультом управления, лидар по UART, GPS по UART, ну и токовый датчик для INA219. Все можно сказать стандартно. Вот тут как это в сборе выглядит, красоту особо не наводил, для полетов при хорошей погоде ) cloud.mail.ru/public/urFU/NKAAQ5Fu5
так как это был самообразовательный проект, я старался обходиться минимально необходимым "набором функционала", чтобы эта штука летала. Betaflight, ardu, pix, crazyflie и тд они в десятки раз функциональнее, и да, безусловно там есть чему учиться и что черпать. Но как следствие своей универсальности и продвинутости тот код сложноват (для меня) для целостного восприятия, подкачаю скилы и подумаю что можно оттуда выцепить полезного, не сильно усложнив концепт )
Благодарю за то что Вы делаете и делитесь этим. Очень полезный опыт для всех электронщиков. Сейчас в нашем колледже развиваем тему БАС, внедряем в учебную программу. Занимаюсь этим только Я один и нужны Ваши советы. Как с Вами можно связаться для общения?
я начинал этим проектом заниматься в 2022, как раз когда волна санкций пошла и STM коснулась в том числе. Понятно что достать не проблема, но можно сказать пошел на принцип )
а нужна ли производительность для учебного проекта? чтобы коптер летел даже атмеги хватит. А esp сейчас - самый оптимальный вариант по доступности и удобству
@@Drova326 о каком ограничении речь? у есп ресурсов более чем достаточно плюс многоядерность, вайфай, меньшая цена. по цене девборды stm пожно пяток esp плат взять
по производительности - есть в проекте опция USING_PERFORMANCE_MESUREMENT. Если эта штука определена - создается задача performace_monitor, которая раз в 5 секунд выводит статистику загруженности контроллера при помощи vTaskGetRunTimeStats. При полной загрузке (подключен GPS, лидар, магнетометр, пишем логи на флеш) загрузка каждого из ядер не превышает 35-40%. То есть формально под текущие задачи мощи хватает, ну и запас приличный есть. Из самого "тяжелого" - это конечно Маджвик, один цикл которого занимает порядка 100мкс без магнетометра и около 300мкс магнетометром, а так же перевод из кватерниона в углы (функция Convert_Q_to_degrees) - около 150 мкс. Это относительно много, плавающая запятая не сильная сторона ESP32, но жить можно. Ну и вариантов оптимизации много, например использовать IMU который не просто сырые данные выдает, а сразу кватернион положения (как, например, реализовано у @chriswonyeobpark на BNO080), тогда сложные Маджвики не нужны и высвобождается много ресурсов.
ссылка на github github.com/well-techn/Aquila
Титаническая работа! Спасибо за видео
Надеюсь, будут еще видеоролики, очень хочется ознакомиться со всей той информацией, что вы так долго собирали
Очень интересно, вы молодец ❤🎉😊
Надо будет разобраться на досуге, самому стало интересно, хоть не являюсь программистом)
Желаю успехов проекту)
Спасибо, за то что делитесь своим опытом.
Пытаюсь перейти с Arduino на VScode + ESP IDF, но так как VSC универсальный инструмент, переход дается с трудом.
Если не сложно поделитесь источниками по которым Вы осваивали VScode + ESP IDF.
Очень интересный проект. Спасибо за то что поделились им. Можно было бы посмотреть, пожалуйста, на электрическую схему дрона?
вот тут я схему разбирал ruclips.net/video/D1TzcSRNAOY/видео.html
помню одни чуваки делали квадрокоптерные и самолетные мозги на самодельных (фабрично изготовленных) платах на ARM процах на OS QNX. Где-то 2013-2014 год с ними пересекался, был весьма впечатлен, все датчики по RS485. А сам из ардуино и mpu6050 колхозил квадрик на MultiWii. Они тогда на мозги от DJI как на говно смотрели. Есть ли мысли переезда на RaspberryPi и им подобное железо? там при кажущейся избыточности весьма обширные возможности.
Ты очень крут, спасибо за информацию, за открытый код и уделенное нам время!
RaspberryPi выглядит вполне привлекательно для подобных целей, учитывая что объем и сложность задач, которые возлагаются на разные беспилотники постоянно возрастает (и видеоаналитика по уйме каналов, и крипта по всем направлениям и т.д. и т.п.), но Raspberry это уже скорее Линукс, не FreeRTOS, то есть это будет не переезд, я переосмысление с нуля. Я вряд ли найду на это время, хотя тема безусловно интересная. Если бы погружался в это с нуля сейчас пожалуй очень плотно бы рассмотрел этот вариант.
@@well_techn я про Малинку заикнулся именно потому как там есть FreeRTOS. Не линуксами едины микрокомпы )
на 11:25 вы говорите, что не задействована беспроводка вайфай - а ведь цифровую передачу видеоданных можно замутить? или там чип слабенький для этого?
все вместе (и управление полетом, и обработку/передачу видео) в одном чипе ужать будет сложно, тем более что задачи управления полетом имеют жесткие тайминги. Если интересует передача видео - посмотрите ESP32-CAM, "профильная" плата для этих нужд. Самому интересно было бы с ней поработать, особенно по части видеоаналитики, но все руки не доходят
а я всех блоггеров пытаю другим интересным вопросом:
Покупаем плату для разработки проектрв на stm32f405, 411, 446 с поддержкой dfu и т. д. для чипов которых есть прошивки betaflight 4.4 или 4.5.
Прошиваем нужной прошивкой и собираем квадрокоптер на этой основе, докупив гироскоп за копейки и приемник для нужной аппаратуры управления.
Остается выбрать регуляторы для моторов..
Я это попробовал, залил в режиме dfu прошивку, а после переключения в обычный usb режим в бф и в моëм компьютере не появляется сом порт с нужным номером.
Как это работает, не можете подсказать? Если по usb в режиме dfu плату программатор Betaflight видит, видит еë и кубик для stm32, то почему в обычном режиме по usb не работает?
Очень полезным и нужным делом занимаетесь! Как можно выйти с вами на связь?
пишите на well_techn@inbox.ru
Нужно было хотя бы по этим секциям на файлы разбить, а то 3000 строк это ужас
Скиньте где-нибудь пожалуйста фотографии дрона изнутри)
Очень интересно как именно внутри всё подсоединено
И ещё вопрос, вы плату сами спроектировали и заказали? например с Китая
Я новичок в радиодеталях, в основном являюсь веб разработчиком, но жизнь туда тянет, чтоб я ещё и там разобрался))
проектировал сам, производил в Китае. Видео есть на канале с разбором принципиальной схемы. Из внешних подключений - контроллеры двигателей, UART от платы связи с пультом управления, лидар по UART, GPS по UART, ну и токовый датчик для INA219. Все можно сказать стандартно. Вот тут как это в сборе выглядит, красоту особо не наводил, для полетов при хорошей погоде ) cloud.mail.ru/public/urFU/NKAAQ5Fu5
почему не препарировать Betaflight и не черпнуть идеи оттуда? там фильтры на гироскоп на сколько я знаю просто наилучший среди опенсорс прошивок
так как это был самообразовательный проект, я старался обходиться минимально необходимым "набором функционала", чтобы эта штука летала. Betaflight, ardu, pix, crazyflie и тд они в десятки раз функциональнее, и да, безусловно там есть чему учиться и что черпать. Но как следствие своей универсальности и продвинутости тот код сложноват (для меня) для целостного восприятия, подкачаю скилы и подумаю что можно оттуда выцепить полезного, не сильно усложнив концепт )
@well_techn тогда понятно. В целом это очень круто, если сделано с 0 своими руками весь комплекс
Благодарю за то что Вы делаете и делитесь этим. Очень полезный опыт для всех электронщиков.
Сейчас в нашем колледже развиваем тему БАС, внедряем в учебную программу. Занимаюсь этим только Я один и нужны Ваши советы. Как с Вами можно связаться для общения?
пишите на well_techn@inbox.ru , не могу обещать что смогу помочь ввиду высокой загруженности, но постараюсь )
Крутой проект! В целях изучения стека программирование+железа+математика классно. А почему не stm32? Там вроде с производительностью лучше ведь
я начинал этим проектом заниматься в 2022, как раз когда волна санкций пошла и STM коснулась в том числе. Понятно что достать не проблема, но можно сказать пошел на принцип )
а нужна ли производительность для учебного проекта? чтобы коптер летел даже атмеги хватит. А esp сейчас - самый оптимальный вариант по доступности и удобству
@@mikenomatter если нет проблемы достать как esp так и stm, то какой смысл ограничиваться изначально? Пускай это даже учебный проект?
@@Drova326 о каком ограничении речь? у есп ресурсов более чем достаточно плюс многоядерность, вайфай, меньшая цена. по цене девборды stm пожно пяток esp плат взять
по производительности - есть в проекте опция USING_PERFORMANCE_MESUREMENT. Если эта штука определена - создается задача performace_monitor, которая раз в 5 секунд выводит статистику загруженности контроллера при помощи vTaskGetRunTimeStats. При полной загрузке (подключен GPS, лидар, магнетометр, пишем логи на флеш) загрузка каждого из ядер не превышает 35-40%. То есть формально под текущие задачи мощи хватает, ну и запас приличный есть. Из самого "тяжелого" - это конечно Маджвик, один цикл которого занимает порядка 100мкс без магнетометра и около 300мкс магнетометром, а так же перевод из кватерниона в углы (функция Convert_Q_to_degrees) - около 150 мкс. Это относительно много, плавающая запятая не сильная сторона ESP32, но жить можно. Ну и вариантов оптимизации много, например использовать IMU который не просто сырые данные выдает, а сразу кватернион положения (как, например, реализовано у @chriswonyeobpark на BNO080), тогда сложные Маджвики не нужны и высвобождается много ресурсов.
сылку на гитхаб можно ?
в закрепленном комментарии