Identifique qué cara de un cubo está arriba

2

Tengo un dispositivo cuya forma es un cubo y necesito identificar en tiempo real qué cara está arriba.

Mi solución actual es (aún no implementada) es usar un giro para obtener una variación angular, pero puedo ver 2 problemas:

  • ¿Qué cara está arriba cuando el cubo está "encendido"?
  • No podemos asumir que cada variación de 90 ° cambiará la cara de pie. Si hay una variación en el eje Z del "mundo", la cara permanece igual. Pero el eje Z del "mundo" no es igual al eje Z gypo.

¿Hay alguna manera de lograr esto?

    
pregunta borges

1 respuesta

4

Un giro no le dirá nada útil, al menos no el tipo de giro electrónico que puede pagar. Parece que lo que quieres es un acelerómetro. Una para cada eje le permite encontrar el vector de aceleración completo, que será la gravedad cuando el cubo esté quieto. Hay unidades con tres acelerómetros, cada uno ortogonal, integrado en un dispositivo. Busque "acelerómetro de 3 ejes" .

Si se está empujando el cubo, el vector de aceleración no apuntará exactamente hacia arriba, pero sobre todo lo hará. A menos que alguien esté golpeando deliberadamente esta cosa o lanzándola, el vector de aceleración apuntará hacia arriba lo suficientemente bien. Incluso puede detectar el caso en vuelo, ya que el vector de aceleración será cero en ese momento.

    
respondido por el Olin Lathrop

Lea otras preguntas en las etiquetas