2016-07-27 7 views
0

То, что я пытаюсь сделать, это обнаружить .... «заголовок» пользователя с Android-смартфона в кармане. Например, допустим, он идет по прямой улице. Когда он/она принимает степень x, поворачивается на другую улицу, я хочу иметь возможность обнаруживать эти x градусов. В принципе, для пользователя есть нормальный вектор, мне нужно получить поворот этого вектора вокруг его источника, пользователя.Как определить изменение направления (в градусах) с помощью Android-телефона Andoid

Я буду более конкретным. У меня есть устройство, состоящее из модуля акселерометра и гироскопа (MPU6050), модуля Bluetooth и 2 ультразвуковых датчиков, подключенных к Arduino Nano, который находится на верхней части руки пользователя и отправляет данные (ускорение, вращение руки и расстояние до объектов) до Android-устройство. У пользователя есть рука, протянутая перед ним и перемещающая ее форму слева направо (например, слепой человек использует белую трость). Первоначально при запуске устройство arduino откалибрует и учитывает, что направление, с которым пользователь сталкивается с рукой прямо перед собой, составляет 0 градусов. По мере того, как пользователь перемещает его вправо, устройство сообщает угол руки. Скажем, пользователь перемещает руку на 30 градусов вправо от начального, прямо переднего положения, устройство Arduino отправит на смартфон +30 градусов. Важная часть - это то, что меня интересует только в положении руки. Если пользователь поворачивается на 40 градусов вправо, угол, отправленный на смартфон, составит 30 + 40 = 70 градусов. Мне нужно смягчить это, обнаружить изменение на 40 градусов на Android-смартфоне и использовать его для коррекции угла отправки устройством Arduino, чтобы, если у пользователя есть рука на 30 градусов относительно направления, с которым он смотрит, нет материя его положение в реальном мире приложение Android сообщит после коррекции 30 градусов, положение руки.

Я попытался использовать это: http://www.codingforandroid.com/2011/01/using-orientation-sensors-simple.html, но он не дает точных и надежных результатов.

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

ответ

0

Из вашего описания вы можете получить чтение с телефона Android, и это просто, что показания вращения недостаточно точны с телефона. Как насчет добавления 3-го устройства arduino на теле (скажем, на сундук) в качестве контрольной точки? Таким образом, вам просто нужно прочитать относительную степень между рукой и точкой рецензента.

+0

Я думал об этом, но я не хочу, и у меня также нет другого акселерометра и модуля гироскопа, поэтому я хочу воспользоваться преимуществами встроенных на смартфоне – Sami0806

 Смежные вопросы

  • Нет связанных вопросов^_^