MM_Tracker

еще одна вариация на тему слежения за поворотами и наклонами головы пользователя.

 

 

Аппаратная часть

Сенсор GY-521 (микрочип MPU-6050)

post-59452-0-85635900-1405583640_thumb.p

 

Контроллер на базе микропроцессора ATMEL ATmega32u4 (совместимые готовые платы):

- Sparkfun promicro

- Arduino Leonardo R3

- Arduino Leonardo Micro

- Teensy 2.0

- DFRobot Beetle

 

Программная часть

мостовой софт "MM_Tracker", считывает данные сенсора от контроллера по USB и передает "FaceTrackNoIR".

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

 

 

Функционал

Аппаратно из MPU-6050 захватываются оси:

- поворота головы (рыскание, yaw)

- наклона вперед и назад (тангаж, pitch)

- наклона влево и вправо (крен, roll)

Программно по нажатиям кнопок рассчитываются виртуальные оси смещений X и Y.

 

Плюсы

небольшая цена компонентов, бесплатный софт;

нет фризов и задержек сигнала;

нет ограничений на расстояние до экрана монитора, или следящей камеры;

низкая нагрузка на ЦП (порядка 1-2%);

обновление микропрограммы контроллера без внешнего оборудования;

 

 

Минусы

самостоятельная сборка, необходимо умение паять;

присутствует паразитный дрейф сенсора, но применены программные методики возврата в центр;

проводное решение, необходимо тянуть провод к наушникам или кепке;

позиционирование сенсора, лучше соблюдать положение в пространстве

 

Внешний вид программы MM_Tracker

 

post-59452-0-86206400-1405582700_thumb.p

главное меню программы

 

post-59452-0-29231200-1405582712_thumb.p

меню калибровки и чистых данных акселерометра/гироскопа

 

post-59452-0-10575500-1405582722_thumb.p

меню обновления микропрограммы контроллера (прошивки)

 

Фотографии собранных девайсов

post-59452-0-08609700-1405585510_thumb.j

post-59452-0-62687200-1405585531_thumb.j

Economist, платка "beetle"

 

post-59452-0-36701400-1405585562_thumb.j

post-59452-0-09503800-1405585588_thumb.j

AcidReptile, платка "promicro". очень интересно решение разместить в корпусе от ВКБ/Gametrix Vtrack.

 

post-59452-0-02748400-1405585896_thumb.j

post-59452-0-97057000-1405585913_thumb.j

Alex, платка "promicro".

 

Видео




(от пользователя Economist)

 

Рассылки и обновления

постоянная ссылка на обновления

подписка на рассылку уведомлений

medal

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


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

Последняя прошивка как-то "не взлетела": не калибруется, постоянно куда-то съезжает. Предполагаю, что это из-за положения сенсора в пространстве. У меня конструктивно платка с гироскопом цепляется сверху к дужке наушников (с помощью канцелярского зажима). Так вот, сама дужка в пространстве не располагается точно, она "ездит" по голове, а с ней и сенсор. И соответственно, из центра "черепушка" постоянно уезжает. ИМХО, неудобно - откатился на версию от 15.07 (.png

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


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

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

Присмотрелся (как и писАл прошивка от 16.07 upd1):

  1. взгляд действительно едет по оси X  в сторону минуса.
  2. по хоткеям: на другой машине подтвердилось - жмакаю кнопку "Хоткей", сразу назначается какая-то 223-я кнопка. Мапперов нет, клавиатуру игнорит...

Вечером попробую прошивку постарше.

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


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

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

Присмотрелся (как и писАл прошивка от 16.07 upd1):

  1. взгляд действительно едет по оси X  в сторону минуса.
  2. по хоткеям: на другой машине подтвердилось - жмакаю кнопку "Хоткей", сразу назначается какая-то 223-я кнопка. Мапперов нет, клавиатуру игнорит...

Вечером попробую прошивку постарше.

У меня на хоткей какая-то левая кнопка джойстика назначалась  :crazy:

Оказывается, это виртуальный джойстик VJoy, удалил его - все нормально стало.

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


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

 

Оказывается, это виртуальный джойстик VJoy, удалил его - все нормально стало.

Удалил... но мне не помогло.

 

Мои данные калибровки.. присутствует весомое смещение, приходится каждый 20сек центрировать даже с сведением в центр 0,02

Подскажите возможно ли в перспективе прикрутить магнитометр к этой системе? Полагаю, есть разброс по качеству гироскопов.

dede0d7431d08a1eee8b33279aac201f.jpg

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

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


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

Оказывается, это виртуальный джойстик VJoy, удалил его - все нормально стало.

Тестил на ноуте, где по поводу самолетов была установлена аэропортмания для любимой))

Понятно дело, что виртуальными приборами там и не благоухало...

Одно под подозрением - встроенная клавиатура. На стационарнике во время теста на HID клавиатуре - все чик-пик.

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


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

ребята, что-то я в смятении честно!!!

 

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

 

по второму пункту, постараюсь сегодня набросать пошаговую инструкцию что куда и как. после этого будем все вместе курить дальше.

 

CrankSer_Bryansk, есть возможность воткнуть трекер через активный USB хаб? (хочу отбросить все предпосылки мусора по питанию).

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

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


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

MM_Track_[v2014.07.16_update2].rar - "223" кнопку поправил, обработчик захватывал мультимедийные клавиши на некоторых компах.

medal

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


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

CrankSer_Bryansk, есть возможность воткнуть трекер через активный USB хаб? (хочу отбросить все предпосылки мусора по питанию).

 С питание нет проблем, использовал разные USB, на разных компах - результат одинаков!

 

 

 

MM_Track_[v2014.07.16_update2].rar - "223" кнопку поправил, обработчик захватывал мультимедийные клавиши на некоторых компах.

Еще 25 осталась ;)s

daeb85d46fa91294d183c9e46e6a0409.jpg

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

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


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

Клавиши работают (относительно, в FSX нет).
Но остался вопрос центровки. Как я понял, сколько бы ты ни нажимал клавишу "в центр", черепушка все равно займет то положение, которое в данный момент занимает сенсор, а это не есть гуд (.png  Если плату с сенсором закрепить на столе неподвижно строго горизонтально - все четко, в центре, никуда не "плывет".

НО, как я уже писал выше, в данной конструкции (сенсор на наушниках) невозможно выдерживать точное положение гироскопа. Т. е. он (сенсор) постоянно будет смещен от "идеального"   положения в ту или иную сторону, а следовательно "центр" на экране будет хз где (чем больше "Множитель", тем больше хз lol.png  )

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


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

__Mularik__, это не есть беда. так и задумано, пару секунд после включения или перекалибровки занимает расчет этого положения.

далее просто в "FaceTrackNoIR" кликаем хоткей "center" и всё дальше идет нормально. "FaceTrackNoIR" текущее положение считает нулевым и наклоны/повороты выполняет с поправкой на него.

 

"перекалибровку" стоит нажимать, если ты сильно поменял позицию в кресле, откинулся на спинку/наоборот, если снимал наушники ходил курить, т.е. когда ты сильно сменил удобную свою позицию.

 

добавил инструкцию MM_Track_[v2014.07.18].rtf, кому есть что добавить - всегда пожалуйста.

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

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


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

Опа! А куда в новой версии (18.07) делись окошки "Множитель"? Без них неудобно dntknw.gif

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


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

Опа! А куда в новой версии (18.07) делись окошки "Множитель"? Без них неудобно dntknw.gif

только инверсия, всё остальное кривыми в "FaceTrackNoIR".

...а следовательно "центр" на экране будет хз где (чем больше "Множитель", тем больше хз lol.png  )

medal

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


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

только инверсия, всё остальное кривыми в "FaceTrackNoIR".

Не хватает тех кривых, да и работают они (простите за каламбур lol.png  ) криво.

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


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

Не хватает тех кривых, да и работают они (простите за каламбур lol.png  ) криво.

Да вроде нормально, тоже сокрушался сначала, потом отстроил тонко и понеслась душа на дуэльник :)

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


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

Работу "кривых" кривых подтверждаю. И добавлю:

  • редактирование кривых в noir- е порой приводит к каким-то глюкам во встроееном плагине vjoy (когда одна ось становится составной из кусков двух осей). Это к тому, что множитель, походу, полезен.
  • снова столкнулся с фантомными нажатиями (ну, да овощ с ними! побеждается при желании). Очень хорошо бы сделать назначение сочетаний клавиш. Возможно?

З.Ы. От vjoy отказаться не могу в силу того, что dcs и плагин фритрек-а что-то не дружат, как положено. подозрительно смотрю на руки О_о

 

В остальном - тест успешен. Балдею... даже с выкрученным на 16 секундный возврат в центр нулем)

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


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

З.Ы. От vjoy отказаться не могу в силу того, что dcs и плагин фритрек-а что-то не дружат, как положено. подозрительно смотрю на руки О_о

Там в настройках плагина FreeTrack'а включить "Use TrckIR, hide FreeTrck", а выше поставить галку "Start dummy TrckIR.exe". НО! TrckIR.exe (есть в папке FaceTrackNoIR) не стартует! Его вручную нужно запускать ;) У меня так ЕЗДОК в FSX с ММ_Трекиром не работал, пока не запустил TrckIR.exe

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


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

Погляжу обязательно. А в ЛокОн-е пашет фритрек сейчас или, как с NewView, прикрыли?

Черт, столько возни с этим фритреком. Но центровка встроенная в него (фритрек) того стоит. И еще мотивация мне - уйти от плагина Vjoy.

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


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

Там в настройках плагина FreeTrack'а включить "Use TrckIR, hide FreeTrck", а выше поставить галку "Start dummy TrckIR.exe". НО! TrckIR.exe (есть в папке FaceTrackNoIR) не стартует! Его вручную нужно запускать ;) У меня так ЕЗДОК в FSX с ММ_Трекиром не работал, пока не запустил TrckIR.exe

эм зайди в Settings в FTNOIR и галочкой отметь start dummy TrackIR.exe

medal

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


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

эм зайди в Settings в FTNOIR и галочкой отметь start dummy TrackIR.exe

в том-то и дело, что галочка стоит, а ехе'шник не запускается (я выше писал)

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


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

в том-то и дело, что галочка стоит, а ехе'шник не запускается (я выше писал)

Проверил: exe-шник не запускается с галочкой и без (версия full 1.7). Переустанавливал, продолжаю смотреть на руки 8/s

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


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

Дык, вручную запусти, после/до запуска FaceTrackNoIR. Нужно, что бы в памяти процесс висел TrackIR.exe, и все. :good:

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


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

в общем дела обстоят так, CrankSer_Bryansk как в воду глядел, есть косяк разного качества плат гироскопов/акселей.

 

из всех чипов MPU6050 что у меня есть на руках(4 штуки), вчера ночью прогнал тестирование.

все подключались к promicro, всем давалось время на прогрев, все жестко фиксировалось в одном положении, при выключенном сведении в центр (чистый дрейф).

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

 

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

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

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


Ссылка на сообщение
Поделиться на других сайтах
самый неудачный ехал по оси рыскания на 20-30 градусов за полминуты...

 

Мозг, тестил тоже (имел правда только один экземпляр mpu6050).

Из наблюдений: взгляд уводит в большей степени равномерно.

Логика же возврата в центр построена на логарифмической зависимости (от края быстро, ближе к центру - медленный возврат).

Экспериментировал уже с линейным?

Если да, то можно ли нелинейность возврата в центр вынести в какой-нибудь регулятор/цифиру/кривую.

А то у мну получается так:

1.калибрую с пятого раза, взгляд более менее стоит на месте,

2. как только параметры чипа поплыли, начал скольжение и замерз в сторонке, где скорость возврата в центр совпала со скоростью ухода.

Если ставлю скорость возврата сильнее, центр прилипает к нулям, но по сторонам крутить головой противопоказано.

З.Ы. калибровка, описанная мной, реально такова, что только с раза пятого получается влепить центр в ноль. понимаю, что по идее считается интерполяцией дискретных значений. Может будет уместно дать юзерам инструмент (кнопку "Старт/стоп" калибровки) дабы юзер точно знал, когда "вдохнуть... не дышать", а когда "отомри!"

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


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

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

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