Создание собственной системы стабилизации
Еще тест оказания ускорений на ориентацию.
Как реализована компенсация линейных ускорений ? (в общих словах, сама идея, так сказать) или просто коэффициент влияния акселя сильно мал ?
norm = __sqrtf(accX*accX + accY*accY + accZ*accZ);
noise = UKF_ACC_N + fabsf(9.81 - norm) * UKF_DIST_N;
Увеличиваю дисперсию шума в модели датчика, и UKF меньше доверяет акселю.
Ориентация ведь из GPS корректируется в том числе, но на самом деле по видео сложно сказать о качестве ориентации. Искажения линзы и подобранные коэффициенты перемщения картинки от угла все портят.
Как реализована компенсация линейных ускорений ? (в общих словах, сама идея, так сказать) или просто коэффициент влияния акселя сильно мал ?
Олег, вообще не правильная формулировка для полной ИНС. Полная ИНС должна учитывать линейные ускорения и экстраполировать свое положение, после чего сравнивать с корректирующей ГНСС и по результатам сравнения вносить коррекцию в ориентацию и местоположение. То есть лин. ускорения это вполне полезное явление.
вносить коррекцию в ориентацию
Под “ориентацией” что подразумевается (?), (я конкретно - крен и тангаж имел ввиду), вот, судя по видео от Ильи, смотрю что при затяжных виражах по кругу, после отпускания стиков, его аппарат сразу “находит” правильный горизонт, хотя по идее должен лететь вбок, так как вектор гравитации акселя уплывает при центробежном ускорении. у меня к сожалению пока так… Еще не испытывал, но сделал, полное отключение акселя, при превышении некоторого порога лин.ускорений (а у Ильи динамичекое регулирование по факту). Видимо надо тоже так сделать, иначе от вибраций кульбит может произойти)))
тут, как бы, ГНСС не помощник(?) или я че туплю…
я конкретно - крен и тангаж имел ввиду
Я тоже это имел ввиду
при превышении некоторого порога лин.ускорений (а у Ильи динамичекое регулирование по факту).
да
тут, как бы, ГНСС не помощник(?)
Как не помощник ? По нему видны итоги перемещения которые можно сравнить с интгралом акселя и выполнить корректировку.
По нему видны итоги перемещения которые можно сравнить с интгралом акселя
А ведь да, - факт…, надо пробовать, спасибо (!). Хотя, помню, давно еще пробовал интегрировать линейные ускорения, это ж сразу интеграл “в небо” улетает, их как то надо корректировать тем же ЖПС чтоль (?)
(сразу скажу что Калмана так и не осилил, - слабО…))
Хотя, помню, давно еще пробовал интегрировать линейные ускорения, это ж сразу интеграл “в небо” улетает, их как то надо корректировать тем же ЖПС чтоль (?)
В каждой итерации надо корректировать, кроме того, сам понимаешь, что важно верное направление на север, оно тоже должно корректироваться по акселю.
Видели что нить подобное? По-моему крутое применение алгоритмов и всей математики помимо коптеров
По-моему крутое применение алгоритмов и всей математики помимо коптеров
Первое не понятно зачем, а второе вроде как даже в настройках арду коптера было.
На ракету был план сделать автовозврат, чтоб прилетала в место старта, но что-то все некогда.
Видели что нить подобное? По-моему крутое применение алгоритмов и всей математики помимо коптеров
На втором ролике классный хренолет! Аж захотелось себе собрать такой! 😃
Распросил немного хозяина видео. Там впринципе ничего хитрого нет, т.е. все теже алгоритмы, единственное конечные миксы другие чутка…
Создание собственной системы стабилизации - это имхо в первую очередь программный код. Для тех, кто хочет попробовать свой программный код (и не хочет проектировать-изготавливать печатные платы, подбирать и паять компоненты), может быть интересная такая платка. Подключив внешние датчики (IMU) - можно сконфигурировать и залить для начала Pixhawk, ну а дальше что-нибудь своё.
stm32f407vet6
Создание собственной системы стабилизации - это имхо в первую очередь программный код.
Совершенно верно.
Для тех, кто хочет попробовать свой программный код (и не хочет проектировать-изготавливать печатные платы, подбирать и паять компоненты), может быть интересная такая платка. Подключив внешние датчики (IMU) - можно сконфигурировать и залить для начала Pixhawk, ну а дальше что-нибудь своё.
Плата неплохая, но сейчас не актуальна, ибо за 20-30уё доступны очень неплохие и самодостаточные с теми же вычислительными мощностями.
А в те далекие времена 😒, когда начиналась эта ветка, вопрос о доступности достойной платформы (вычислитель+датчики) был архиважен.
Вы наверное на какой-то своей волне общаетесь ������
Один выкладывает фотки платы, но не приводит ни ее производителя, ни ссылку где купить.
Второй говорит, все хорошо, но дорого и неактуально, и есть дешевле с теми же характеристиками. Но также ничерта не приводит.
Зы. Плата из сообщения выше стоит 600 руб, это дешевле, 20 уе.
Один выкладывает фотки платы, но не приводит ни ее производителя, ни ссылку где купить.
На фото достаточно инфы. Покупать не планирую. Кому интересно - спросят.
Второй говорит, все хорошо, но дорого и неактуально, и есть дешевле с теми же характеристиками. Но также ничерта не приводит.
А что хотели узнать? Макс частота, МИПСы и пр. характеристики есть в документации на STM32F4xx. А за рекламу не аффилиированных ресурсов здесь бьють.
Зы. Плата из сообщения выше стоит 600 руб, это дешевле, 20 уе.
Добавьте датчики и сравните. + масса и рукоделие.
Подключив внешние датчики (IMU) - можно сконфигурировать и залить для начала Pixhawk, ну а дальше что-нибудь своё.
идея интересная.
разработчику на стадии проб и ошибок важно иметь комплект который можно было бы опреативно переподключить иначе, выбрать другой сенсор или наоборот выбрать другой проц т.е. дискавери плату.
в этом ключе Серега Липницкий нарисовал дизайн платы сенсоров. на этой плате размещены все основные компоненты необходимые для полетника (фрам, сдкарта, регуляторы питания ) и несколько типов сенсоров являющихся перспективными для новых версий полетных контроллеров
на плату можно поставить перспективные барометры от боша и новые сенсоры от инвенсенс а также собрать эквивалент pixhawk2 или иного контроллера.
у нас пока все заняты и нет времени даже для того чтобы запаять и проверить плату на предмет ошибок, т.е. есть интерес предоставить кому бы то нибыло печатную плату “под отчет”, в смысле получить взамен отчет о выявленных недостатках
сенсоры
icm20608
icm20689
mpu9250
hm5983 /spi
bmp380
ms5611
прочее
microsd
fram
4 отдельных регулятора питания
сигналы всех шин предусматривают установку шунтирующих резисторов
все шины заведены на колодки под пайку модных ныне JST GH (с защелками и надежным контактом)
схемка тут
если говорить о перспективных дискавери платах то имхо целиться сейчас нужно на STM32 F7 и иметь в перспективе STM32 H7
Есть код, могу скинуть, кому надо.
програмулька класс.
жаль такой нет чтоб автоматом загрузить лог ардукоптера и проанализировать.
безусловно гораздо проще записать видео с осд горизонтом на бортовой регистратор чтобы выявить уход горизонта,
но! это возможно только в случае если позаботился заранее.
а такая програмулька могла бы помочь разобраться в случаях когда бортовое видео с осд не писалось, но есть видео с курсовой камеры и логи
Один выкладывает фотки платы, но не приводит ни ее производителя, ни ссылку где купить.
stm32f407vet6 - вполне достаточно, чтоб загуглить. А цену - какую цену Вы хотите? Она на китайских сайтах отличается в зависимости от доставки и продавца.
Для меня до сих пор остается загадкой почему все новые и новые полетные контроллеры делают на STM32, в то время как платы типа Raspberry Pi и подобные - сравнялись по цене и размеру с платами на stm32, но более производительны, работают с удобным Linux, и уже летают ???
Мне кажется stm32 хорош там где нужно сверзнизкое потребление в режимах сна, батарейное питание, или экономия 1-2 доллара на каждом устройстве. Например stm32 esc.
Но зачем stm32 в полетнике квадрокоптера?
Но зачем stm32 в полетнике квадрокоптера?
Удобная периферия и достаточная “мощность” для полётника, для тех же малин нужна всякая хрень-периферия - стоимость сразу в разы…
тут Макс показывал нашу новую “Мелкую” например, полётник размером с SD карточку, который при некотором умении можно собрать самому, его можно запихнуть практически в любой мини/микро аппарат - куда никакая малина не поместится…
.
Вот например, лежит у меня (мёртвый ныне) блек-свифт - чесно, даже не включал, а вот на F7 дискавери “гонял” бетафлайт собранный за пару минут на коленке)))
Процы гораздо мощнее stm32 тоже есть размером с монету. А то, что мощность stm32 сегодня достаточна - так это лишь для самых простых функций.
Если в полетник добавить:
- работу с радио (например подключить чип Lora по SPI)
- общение с другими коптерами в полетном поле (например чтобы сделать Follow me нескольких коптеров за одним ведущим, по траектории его полета)
- RTK для GNSS с поправками
- код esc тоже здорово бы иметь в том же чипе - тогда можно управлять пропеллерами с точностью до долей фазы (а не выдумывать всякие костыли типа one-shot)
Тогда stm32 не хватит. Вообще насколько перспективно пытаться создать полетник на этом камне, или на 2017-2018 год лучше сразу смотреть другие процы?
Спорить не вижу смысла, тут каждый думает в меру своей распущенности, каждая идея имеет своё право на жизнь, но по моему, в этой ветке мы обсудили, для чего какой “мозг” нужен и чуть выше Илья даже показал - кто чем должен заниматься… Любимый линукс даже с реалтайм костылём не угонится даже за тем же бетафлайтом (Ф4 загрузка несколько процентов - Ф7 - 1 процент!!!)
Тогда stm32 не хватит. Вообще насколько перспективно пытаться создать полетник на этом камне, или на 2017-2018 год лучше сразу смотреть другие процы?
Ответ на этот вопрос зависит от желаемого функционала (очевидно)…
Мне видится на данный момент следующее:
для “классической” стабилизации/полета по точкам со всеми наворотами, включая “ужасные алгоритмы” типа калмана, stm32 - за глаза (например у меня он еще и OSD успевает обсчитывать), а если замахиваться на экзотику (пока еще) типа стабилизации на основе видеокартинки или еще чего в этом направлении, то конечно надо более мощный проц…
Кстати, для вменяемой обработки видеосигнала процессоры линейки “малинки” или ее даже более мощных аналогов, все равно не годятся, слабоваты, не говоря уже о значительных проблемах с разработкой собственного ПО по них ввиду закрытости средств разработки и документации…
Отсюда делаю вывод: пока что stm32 - оптимальное решение…
Если в полетник добавить:
Все эти задачи, по моему, stm обсчитает без проблем…