Уменьшение вариаций высоты тона / крена - PullRequest
1 голос
/ 16 февраля 2011

Я хочу использовать wiimote для управления курсором БЕЗ инфракрасной сенсорной панели. Я использую значения высоты тона и крена для этого. Проблема в том, что когда шаг близок к 0 градусов, крен очень нестабилен, а когда шаг близок к 90 градусам, он сам по себе очень нестабилен, но крен в порядке. Я опрашиваю wiimote очень часто, так что я усредняю ​​последние 20 значений как для высоты, так и для высоты тона, и я могу заставить курсор идти туда, куда я хочу. Единственная проблема заключается в том, что все еще существует много неконтролируемого тряски. Любые идеи о том, как я могу уменьшить это? (Или даже получить более точное положение без ИК сенсорной панели?)

Спасибо!

Dave

Ответы [ 2 ]

5 голосов
/ 16 февраля 2011

Это общая проблема с тангажом и креном. Вы можете уменьшить этот раздражающий эффект, но вы не можете избавиться от него, если вы используете тангаж и крен ( Углы Эйлера ). Посмотрите на 38:25

http://www.youtube.com/watch?v=C7JQ7Rpwn2k

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

Направление косинусной матрицы ИДУ: Теория

Кватернионы также очень популярны и считаются наиболее стабильными.

0 голосов
/ 16 февраля 2011

Простое (иногда простое - лучшее) решение будет усреднять ваши показания.

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

...