Проект Мегапират на самик!
Засадил в икса фильтр Калмана, который ЕКФ, на 9 осей. Пипец, думал, ежа рожу. Ненавижу матан!!11111
Эта подлая Ф4-ка так быстро его щелкает, что даже увеличения гиро-цикла 300мкс не заметно 😃 Подвох или нет, завтра буду трястить, болтать и проч. сбивать ему настройку.
Теперь я понял, что Снег имел в виду под бодифреймами. Это вовсе не каркас из проволочек 😉
Засадил в икса фильтр Калмана, который ЕКФ, на 9 осей
Поздравляю, видишь, ничего страшного! 😉
Подвох или нет
Неа, один цикл у меня 25мкс примерно занимает.
завтра буду трястить, болтать и проч. сбивать ему настройку
Я на вибромассожере проверял. Скотчем прикручиваешь и вперед. Очень советую. Руками так не получится.
Неа, один цикл
предиктор или корректор или все сразу?
или все сразу?
Все сразу. Я каждый раз обе операции проделываю.
Хм… а то что сейчас у тебя реализовано не достаточно, уплывает на каких то режимах? Или чисто из спортивного интереса 😃?
Да, марг не нравится, что очень критичен к калибровке компаса. Чуть где железка - горизонт уплыл, на тангаже в осд это особо хорошо видно.
ДСМ на центробежке еще хуже, но у него хотя бы компас тангаж не сбивает.
Новый режим ТСС - то же, что ДСМ, но на кватернионах.
Вот донастрою калмана и сравню.
Нуач0, проц мощный, пить - так пить, е*ать - так королев… ОСД есть, звук есть, пусть теперь будет калман за компанию.
Гы, что верно то верно, эт из цикла: “… зачем? Потому что могу!” 😃
Я отрубил в твоем МАРГе компас, работает на много адекватней и держит лучше чем ДЦМ, правда в полете пока не тестил, не как не выберусь… 😃
Набор датчиков ограничивается только AllinOne и Vortex или можно пользовать более новый 6050 и высотомер MS561101BA?
Кто-нибудь пользует систему для мультироторных аппаратов?
Леонид. Чтобы совсем не лишаться компаса, вот тебе фрагмент кода для IMU.c - это недавно внедренный мной ТСС для МАРГ.
short TCC(float bx, float by, float bz, float phi, float theta)
{ float variation, Xh, Yh, angle;
Xh = bx * cosf(theta) + by * sinf(phi) * sinf(theta) + bz * cosf(phi) * sinf(theta);
Yh = by * cosf(phi) - bz * sinf(phi);
angle = 572.9578f*(atan2f(-Yh, Xh) /*+ declination*/);
return angle;
}
usage:
TCC(mx,-my,-mz,roll,pitch);
выход - курс *10 (число 15 = 1.5 град), приравнивай к нему yaw_sensor в марг.с в самом конце процедуры
mx my mz roll pitch это переменные из МАРГ.с
declination - склонение *10, по идее глобальная переменная где-то есть.
компас должен быть запрещен в дефайне: compass_enabled 0
ограничивается
На данный момент только вышеуказанные. МПУ-датчики не будут поддерживаться вообще. МС-ка у меня в планах есть, но отсутствует физически, поэтому отложена.
===
апдейт 2.0.1524
- Замена алгоритма ориентации с MARG на EKF. Алгоритм устойчив, сингулярности устранены, на движение с ускорением (по полу катал) почти не реагирует. Остается облетать. Прогноз положительный.
- устранены вопросы по высоте таргетов
- галка TCC больше смысла не несет в связи с устранением самого алгоритма
Уточнение по калибровке датчиков. Плату датчиков надо выставлять в LEVEL на ровной горизонтальной поверхности! Потом уже крепить на пепелац и, подкладывая что-то под края, добиваться желаемого угла атаки и т.п.
Создатели различных ардупилотов заигрывают с пользователем, пытаясь устанавливать LEVEL при произвольном положении платы. Это в корне неправильно. Не считая удобства настройки, это полностью испоганит алгоритм ориентации из-за паразитных составляющих по сдвинутым осям гироскопа.
На данный момент только вышеуказанные. МПУ-датчики не будут поддерживаться вообще
В принципе, сейчас набор датчиков взять не проблема, они практически копеечные. Но просто интересно узнать откуда такая нелюбовь к МПУ-хам?
И еще вопрос: есть ли смысл брать вортекс только ради датчиков?
Ради датчиков - нет, слишком дорого. разве что алинон, и то дорого.
Сейчас силами энтуазистов и потреотов делается “наша” родная плата икса, с бл-дж и шл. Жду вот…
про мпу я свое мнение писал на предыдущей странице.
Ура. У меня ЗАРАБОТАЛО.
Плата Дискавери + Шилда (компас, баро, гиро, аксель, мапять).
Есть проблема с ОСД. Кокое то эхо прёт. Хотя сделан полный КЛОн с кЕтайской.
Олег - куда подать бортовое напряжение - шоб видеть напряжение на ОСД ???
Ради датчиков - нет, слишком дорого. разве что алинон, и то дорого. Сейчас силами энтуазистов и потреотов делается “наша” родная плата икса, с бл-дж и шл. Жду вот…
Можно подробней? Или к кому обратиться?
Я так понял, датчики дешевле, чем у кетайцев не найдутся:
aliexpress.com/…/562055389-100-New-10DOF-ITG3200-I…
ха, алинон склонили! рассыпухой и то дороже… надо сравнить расположение датчиков.
Виктор, скриншот давай, что там у тебя фонит и глючит…
www.rcgroups.com/forums/showthread.php?t=1473207 По поводу ОСД думаю почти тоже самое (Если учесть, что в дневничке у Сибериана написано можно сгоревшее. Имеется ввиду схема получения кадра\строки), но судить конечно ему. Просто может кому поможет, что бы не заказывать спец Е-ОСД… Если подойдет схема, там же есть схема с LM1881 на ней имхо еще проще, стоит около 15руб…
Попозжа, немножко отдыхаю под автомобилем. У нас несколько жарковато 30-33 в тени. А климат в машиГе шалит. Трахаюсь с блЯдскими клипсами иППонскими. Какая гнида их придумала, снять не реально - тока ломать. а они стоят по 3 (ТРи) доллара за штучку. БЛЕАТЬ. уже баксов на 60 попал. Пол машины собрано на клипсах и защелках. ПИНДЕЦ.
А вообще нужно бвло продуть и промыть радиаторы. Но для этого, пришлось демонтировать кучу деталей. Уже пол мотора видно снаружи и вся морда лежит поДетально во дворе.
Поздравляю, видишь, ничего страшного!
Действительно - контрол ц, контрол в.
меня 25мкс
тыж хвалился 85 мкс.
25 мкс цикл настоящего фильтра калмана на ф4 быть не может. И у содранного вами роботиксного простейшего алгоритма тоже не может.
На днях ветку создам в теме фпв. Гарантирую - ты офигеешь.
ну-ка кыш троллить в свою НЕсозданную тему!
Уже месяц прошел, а он все “создает”…
Как проверить “настоящесть” фильтра калмана? Очень просто - в серьёзном фильтре, в состоянии покоя показания по всем углам колеблются в пределах 0.001 градуса на обычных гирах и акселях.
ну-ка кыш троллить в свою НЕсозданную тему!
Ждешь с нетерпением? Потерпи чуток. До моего отпуска. Офигеть должен вообщето не ты.
Syberian, AlexSneg, если не сложно, опишите в двух словах механизм вывода из массива пикселов на ногу проца.
Как зарядить дма и всяческие прерывания - это понятно. Как массив байт вы разворачиваете в биты 0-1 на ноге? В меге я делаю руками сдвиги и выводы в порт, а вы на арме как это делаете? Дма ж минимум по 1 байту дает на порт, меньше не может, или я что-то пропустил? Неужели на каждый пиксел по байту отдаете?
Почему не сделали выше разрешение на экране? Проц же формально позволяет, ногой можно дергать на 60МГц и выше, не то что мои 5.5 МГц (3 клока на бит на 16 МГц).
В исходники не отправляйте, пожалуйста 😃 Чужих исходников уже года 3 не смотрел, да и на словах понятнее будет.