Создание собственной системы стабилизации

SergDoc

по датчикам, так 9250 выглядит лучше, по процу внутри - какой-то кот в мешке?

oleg70
SergDoc:

какой-то кот в мешке?

Ну как же, - внутри сенсора ядро АРМ, которое на выходе выдает (по желанию) готовые углы эйлера или кватернионы…
Правда делает это с частотой 100 Гц максимум, короче аппаратный IMU…
Насколько это в реале работает надо проверять, по опыту работы с изделиями от BOSH могут возникнуть проблемы, связанные с “секретными” регистрами, не освещенными в даташите… Ды и нужно ли это в принципе - вопрос… Тогда что будет основной микроконтроллер делать непонятно, концепция полетника меняется в принципе…

SergDoc

ну как же, дать вторую жизнь атмегам)))

alexmos

Это ж аналог “ветерана” MPU-6050, где был DMP который неплохо работал для определенных задач. BOSCH опоздал на пару-тройку лет, но все равно спрос на такие устройства есть - там где нет риальтам систем для обсчета сенсоров в жестком реальном времени, например смартфоны.

ИльяПРо

Всем привет.
В общем первый раз пользовался GitHub и вообще всеми этими непонятными терминами (коммиты, бранчи и тд)
Залил прошивку на гитхаб
github.com/Ilyaprok/QUAD_UKF
в данном случае порт под F4BY. Но так как работает под мой конкретный сетап, врялди кому то пригодится в целом виде.
Сейчас начинаю работу над новым проектом - визуально-инерциальная навигация. С коптером пока заканчиаваю.
Надеюсь хоть кому то прошивка будет полезна.

oleg70
ИльяПРо:

визуально-инерциальная навигация

Суть в чем ? (если не секрет конечно)

ИльяПРо

Суть в навигации без GPS, внутри помещений и снаружи. С помощью видеокамеры.
Есть много таких проектов, как коммерческих например:
www.stereolabs.com
bridge.occipital.com
Так и открытых:
github.com/ethz-asl/rovio
github.com/HKUST-Aerial-Robotics/VINS-Mobile
Опять же почти ничего нового я не сделаю. Просто кое-какие моменты сделаю иначе, должно быть получше. Пока для себя, в качестве магистерской.

alexeykozin
ИльяПРо:

в данном случае порт под F4BY. Но так как работает под мой конкретный сетап, врялди кому то пригодится в целом виде.
Сейчас начинаю работу над новым проектом - визуально-инерциальная навигация. С коптером пока заканчиаваю.
Надеюсь хоть кому то прошивка будет полезна.

Большое спасибо, можно попросить хотябы вкратце юзермануал, хоть фотки что куда включать, какая наземная станция для настройки,
у нас есть отдельная темка с альтернативными прошивками под этот контроллер, было бы здорово там разместить в комплекте с инфой для быстрого начала

ИльяПРо

Если есть спрос, могу написать небольшую прогу на labview для настройки базовых параметров, их передачи через uart-usb и сохранения в fram. Но если делать по уму, то надо сделать порт mavlink, что мне лень. да и собственно кому нужна эта прошивка, если у нее особых фич нет.
Есть ли люди готовые прошиться и попробовать? если есть, то я могу еще пару дней подготовить юзер мануал и прогу для настройки.
конкретно у этой прошивки есть ограничения:
4 ВМГ
вход приемника PPM SUM
вопрос с калибровкой компаса и акселерометра, так как мой способ довольно геморный
это мне переделывать лень

oleg70
ИльяПРо:

С помощью видеокамеры.

Да, это правильное направление … за этим, считаю, будущее систем позиционирования в пространстве (наконец то можно принципиально отказаться от корявого акселерометра и еще более корявого магнитометра), боюсь только что железо под такую систему не самое дешевое, да и софт нетривиальный, на хоббийном уровне такое потянуть сложно…

alexmos
oleg70:

Да, это правильное направление … за этим, считаю, будущее систем позиционирования в пространстве (наконец то можно принципиально отказаться от корявого акселерометра и еще более корявого магнитометра)

Ну не то чтобы будущее, но однозначно эта тема нужна и будет развиваться. Железо сейчас становится мощнее и дешевле, так что особых проблем не вижу почему бы не сделать доступным такие датчики для уровня хобби в ближайшие пару лет.

arb

С помощью видеокамеры.

Оптическое зрение для коптеров конечно интересно.
Только сразу бы хотелось знать ограничения по применению, скорости, аппаратные.
Ну про зал, лес и т.п. понятно. Может что-то еще уже ясно.

oleg70
arb:

Может что-то еще уже ясно.

Судя по рекламному видеоролику (верхняя ссылка от Ильи) быстродействие не очень… и непонятно к тому же на каком железе это крутится, на сайте пишут что желательна видеокарта от Nvidia, но будет работать и без нее. В принципе и так понятно, что для вменяемого результата нужна топовая “обвязка”, видео-есть-видео однако… тут на гнилом железе ничего не выйдет…

arb

Ну мощность для обработки видео зависит от количества пикселей. Если не гнаться за высоким разрешением, то можно и минимумом обойтись, конечно не до безобразия.
Вот только не понял Илья все на Ф4 сделал или еще есть сопроцессор.

ИльяПРо

да я еще ничего не сделал, хотел заняться если время позволит) на ф4 не потянет, то что я хочу и ф7 не потянет. Тут либо тот же i7 либо систему на кристалле типа zynq 7000. Но пока рано говорить, пока даже алгоритма нет.

zealot01
oleg70:

Правда делает это с частотой 100 Гц максимум, короче аппаратный IMU…

В даташите на 9250 вскользь упоминается 200Гц. И возможность подключения внешнего магнитометра по i2c прямо к чипу. В принципе хорошее решение. Не забивается шина, освобождаются вычислитльные ресурсы.

SergDoc
zealot01:

В даташите на 9250 вскользь упоминается 200Гц. И возможность подключения внешнего магнитометра по i2c прямо к чипу.

он там внутри - раз, читать какой-то другой компас через i2c, когда датчик подключен по SPI, а тем паче использовать DMP с другим компасом - далеко не тривиальная задача (проверено на собственном опыте)…
ну и использование DMP без обратной связи (корректировка значений внешними датчиками GPS, optical flow и т.д.) смысла в жизнь не принесёт т.к. нарастающую ошибку DMP исправить не чем…

zealot01
SergDoc:

ну и использование DMP без обратной связи (корректировка значений внешними датчиками GPS, optical flow и т.д.) смысла в жизнь не принесёт т.к. нарастающую ошибку DMP исправить не чем…

Так всегда можно подкоректировать DMP внешним контроллером со своими датчиками, никто не спорит, просто делать это можно не часто в случае DMP. А так только по шине данные
гиро качать и считать кватернионы на ЦП.

oleg70
zealot01:

В даташите на 9250 вскользь упоминается 200Гц.

Тут ситуация такая: гира и аксель читаются как и у других датчиков с частотой 2000 и 1000 Гц соответсятвенно… т.е. при желании цикл можно смело и килогерц сделать… (у меня работает на 500 гц), а вот с внутренним магнитометром, как всегда маленькая “засада” его чтение организовано очень “оригинально” через мост SPI-I2c,
т.е. физически внутри чипа магнитометр подключен по i2c а обращение к нему идет по SPI через подачу команд (скорость опроса соответственно 20 гц) …
Нафига такие костыли мне не понятно, наверно у производителей есть весские аргументы на этот счет…

zealot01
oleg70:

т.е. физически внутри чипа магнитометр подключен по i2c а обращение к нему идет по SPI через подачу команд (скорость опроса соответственно 20 гц) …
Нафига такие костыли мне не понятно, наверно у производителей есть весские аргументы на этот счет…

Это ,наверное, чтобы можно было внешний магнитометр подключить по i2c не меняя логики построения, посмотри 4.4 Block Diagram датащита MPU-9250

Кстати нашёл, действительно DMP обновление 200Гц
#define MAX_DMP_SAMPLE_RATE 200 // Maximum sample rate for the DMP FIFO (200Hz)

oleg70
zealot01:

не меняя логики построения

Да видимо так, к тому же, магнитометр вообще довольно низкоскоростное устройство, наверно из-за чисто физических свойств сенсора или его ацп, поэтому подключать его по SPI смысла мало…