Перейти к содержимому
Korean Random

Рекомендуемые сообщения

 

 

еще бы физ. движок подключить с мультиплАером, классно бы было.

Вопрос скорее всего в том, что игр с прямым управлением персонажа даже для VR нет и вряд ли в ближайшее время появятся. Разве что в какие-то игры для Kinect попробовать подключить.

 

Тут выявилось несколько других проблем.

  1. После подключение магнитометра непосредственно в вычисления DMP - точность кватерниона повысилась, но дрифт по оси Z никуда не делся. После активных вращений и возвращение датчика в первоначальное положение, кватернионы уже не будут как первоначальные. Хотя примерно после 10 секунд после активации, данные стабилизируются и в неподвижном положении очень точны. Этот же датчик с таким же кодом но без подключенного в DMP магнитометра имеет постоянный дрифт.
  2. Конфигурация DMP сразу имеет в своем арсенале матрицу корректировки данных от магнитометра, никак не могу пока понять каким образом этот "некий функционал" работает - документации маловато.
        0x02,   0x40,   0x04,   0x00, 0x00, 0x00, 0x00,   // CPASS_MTX_00 inv_set_compass_calibration
        0x02,   0x44,   0x04,   0x40, 0x00, 0x00, 0x00,   // CPASS_MTX_01
        0x02,   0x48,   0x04,   0x00, 0x00, 0x00, 0x00,   // CPASS_MTX_02
        0x02,   0x4C,   0x04,   0x40, 0x00, 0x00, 0x00,   // CPASS_MTX_10
        0x02,   0x50,   0x04,   0x00, 0x00, 0x00, 0x00,   // CPASS_MTX_11
        0x02,   0x54,   0x04,   0x00, 0x00, 0x00, 0x00,   // CPASS_MTX_12
        0x02,   0x58,   0x04,   0x00, 0x00, 0x00, 0x00,   // CPASS_MTX_20
        0x02,   0x5C,   0x04,   0x00, 0x00, 0x00, 0x00,   // CPASS_MTX_21
        0x02,   0xBC,   0x04,   0xC0, 0x00, 0x00, 0x00,   // CPASS_MTX_22
    
  3. Моя реализация корректировки по компасу пока не до конца продуманна - я пробую получать из кватерниона вычисленного в DMP вектор гравитации, затем получаю вектор нормали к плоскости образованной векторами компаса и гравитации, потом вычисляю из того- же кватерниона вектор, который должен быть коллинеарным вектору нормали, вычисляю угол между ними и доворачиваю объект.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@kharlashkin, желаю удачи в этом трудном деле.


 

Вопрос скорее всего в том, что игр с прямым управлением персонажа даже для VR нет и вряд ли в ближайшее время появятся. Разве что в какие-то игры для Kinect попробовать подключить.

можно слепить на Unity. только хз как этот двиг к ардуинке подключить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно сказать на финишной прямой ;)

Учитывая, что датчик в коробке находиться на столе рядом с клавой, мышей, usb-хабом и 2-мя мониторами (менее 20 см) и под столом ПК (менее 30 см) в помещении результаты думаю неплохие.

И самое главное, если взять коробок и неистово начать его вертеть, а затем положить его на место - данные о положении меняются очень незначительно (в пределах пары градусов). Пока нужно ставить эксперименты и проверять - всё ли так как мне кажется сейчас ;)

Прошу прощения огромная фатальная ошибка.

Изменено пользователем kharlashkin

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Прошу прощения огромная фатальная ошибка.

 

Так получилось, что в скетче я перепутал переменные - таким образом мой кватернион коррекции по компасу с помощью низкочастотного фильтра просто тупо стремился к нулевому вида (1, 0, 0, 0) и умножая полученный из DMP датчика на него у меня и получался вот тот супер стабильный ;)

Смутило что когда я коробок двигал - кубик вращался, но это только за счет того что фильтр не отрабатывает моментально.

В общем не спал пол ночи, результатом является вот это:

Особенно интересным выглядит вращение беспорядочное в конце - это я за шнурок кручу-верчу коробку с датчиком и возвращая коробок в первоначальное положение - получаю практически те же значения, что и в положении покоя. Так же видно, что есть некоторая задержка корректировки - пока не придумал что с ней делать, ну и немного трясет кубик по оси Z.

post-19155-0-64110400-1505886467_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пока ничего лучше не смог придумать, кроме как корректировать получаемый кватернион в момент прохождения датчика горизонта...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×