@Arhimed96

Как определить положение куба?

Доброго времени суток!
Есть куб внутри которого микроконтроллер с датчиками.
Стороны куба пронумерованы от 1 до 6. При броске куба программа должна определить, какая цифра выпала.
Есть гироскоп и акселерометр. Этих датчиков достаточно для этой задачи или нужны какие-то еще? И как я могу вывести формулы (условия) для каждой стороны, используя их значения?
  • Вопрос задан
  • 392 просмотра
Решения вопроса 1
x67
@x67
трехосный акселерометр. Гироскоп не нужен. Смотрим по какой оси у нас ускорение свободного падения. 401911900f957f3db7cd68acab3e7fae.jpg
Предположим, по оси x, тогда если ускорение со знаком +, то снизу сторона заштрихованная, если -, то обратная ей. Акселерометр, естественно будет шуметь и не всегда падать ровно, поэтому фильтруете помехи совсем слегка и не заморачиваясь и ставите уставку в районе 8-9.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
NeiroNx
@NeiroNx
Программист
3 координаты акселерометра каждая принимает значение равное "g" или "-g" если поверхность на которой куб идеальна. Результирующее значение будет в диапазоне "g/2< val < g" или "-g < val < -g/2" для противоположной стороны. val это одна из координат x,y,z данных по ускорениям с акселерометра. даже можно взять не 1/2 а 2/3 от максимума чтобы более четко разделить значения.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы