PDA

Ver la versión completa : [DIY Oculus Rift] Ayuda para headtracking con Arduino



Standark
28/10/2013, 21:09
Bueno, pues resulta que ya tengo prácticamente acabado mi visor de realidad virtual casero (al más puro estilo Oculus Rift). Tras conseguir un "prototipo" completamente funcional me he estado dedicando a hacer pequeños arreglos que lo hagan más cómodo y demás, y es con motivo de la comodidad con lo que me he puesto a buscar una manera alternativa para conseguir el seguimiento de la cabeza.

Hasta ahora he estado utilizando un smartphone sujeto a la correa superior. Mediante FreePIE (un programa que emula interfaces de entrada) he conseguido utilizar los sensores del smartphone para mover el ratón con el movimiento de mi cabeza. Esto tiene varios inconvenientes: el primero, que es bastante incomodo tener que estar poniendo y quitando el telefono de la correa del visor (amén del coñazo de sumar más peso a la cabeza) y el segundo, y más importante, que con mi teléfono no funciona todo lo fino que debería. Las otras opciones que hay por ahí, para utilizar via FreePIE, son sensores bastante caros, que rondan los 100€...

El caso es que googleando he dado con una combinación que, además de barata, parece funcionar bastante bien: una arduino nano con una MPU 6050. Aquí un video:


http://www.youtube.com/watch?v=3nOlq02scRc

El caso es que mis conocimientos de programación son totalmente nulos, y necesitaría ayuda para poner a andar algo tan simple como eso. Por aquí he visto más de una vez salir a flote el tema arduino en diversos hilos, por lo que he pensado que quizás me podáis orientar un poco.

El caso es que en la vida he tocado nada parecido a una arduino, y no tengo ni idea de lo dificil/fácil que podría resultar pillar la placa y la imu (por un coste total de unos 15€ en ebay) y hacer funcionar el combo como ratón. El inconveniente de esto con respecto a usar un smartphone es que perdería la posibilidad de inclinar la cabeza hacia los lados, pero creo que compensa.

Así que eso, si alguien puede guiarme un poco lo agradecería un montonazo, que estoy deseando terminar las gafas (y poder presentaroslas oficialmente xD). Un saludo!

chewevaca
28/10/2013, 22:35
Yo he tocado algo de arduino y en principio no es dificil tomar las lecturas de los sensores y leerlos en el pc con una simple aplicacion en C++.
Ahora de hay a conectarlo con el FreePIE ni idea, googleando seguro que hay algo.

eToiAqui
28/10/2013, 23:04
http://www.arduteka.com/arduino/

Esto te ayudará a empezar. tiene tutoriales para enseñar lo básico y así te familiarizas.

Standark
29/10/2013, 21:19
Yo he tocado algo de arduino y en principio no es dificil tomar las lecturas de los sensores y leerlos en el pc con una simple aplicacion en C++.
Ahora de hay a conectarlo con el FreePIE ni idea, googleando seguro que hay algo.

Conectarlo con FreePIE queda descartado, para eso tendrían que darle soporte los creadores del programa, y después que alguien se currase un script y etc...


http://www.arduteka.com/arduino/

Esto te ayudará a empezar. tiene tutoriales para enseñar lo básico y así te familiarizas.

Gracias por la info, le echaré un vistazo, aunque en principio necesito algo bastante más específico... Es decir, no tengo conocimientos de programación, ni a nivel básico, por lo que lo primero que necesito saber es como de factible es mi idea, y como de complicado sería llevarla a cabo. Osease, que necesito a alguien que controle bastante del tema que me diga si lo que pretendo hacer es accesible sin un nivel básico de programación y demás. En caso de ser viable ya si me pondría a empaparme un poco en todo lo relacionado a arduino.

juanvvc
29/10/2013, 21:44
Otra idea por si te sirve es lo que se utiliza en los simuladores aéreos de combate: busca head tracking webcam.

La idea es tener una cámara web en el ordenador que sigue el movimiento de tres leds que te pones en la cabeza. La gente se los pone en la visera de una gorra pero tú podrás usar el propio "oculus". Así que apenas añades peso a la cabeza, solo tres leds y una pequeña pila, y no tienes que aprender nada de programación. A cambio, tienes que usar una cámara web y perder un poquito de potencia en tu ordenador para analizar la imagen. Si tienes un multicore, al final el juego ocupa 1 ó 2 cores y la webcam uno de los cores libres así que ni lo notarás.

Como webcam incluso puedes usar algo que tengas ya por casa, como la barra de la wii o el kinect.

Se puede incluso analizar el movimiento de la cabeza si necesidad de ponerte leds ni nada, aunque en mi experiencia usarlo sin leds solo una curiosidad porque "te pierde" a menudo.

Aquí un tutorial: http://www.foroaviones.com/foro/simulacion/22354-tutorial-haz-tu-propio-track-casero-freetrack.html (mira fotos de gorras en página 2)

Standark
30/10/2013, 15:17
Ya estuve mirando la opción de usar headtracking por webcam (o con un sensor de Wii), pero acabe por descartarlo porque los angulos en los que mueves la cabeza con las gafas son mucho mayores que los que utilizarias con un simulador de vuelo. Es decir, con las gafas miras completamente al techo, o hacia atras, o completamente a los lados, mientras que en los simuladores solo te inclinas alrededor de la pantalla.

De todas formas gracias por la idea y la información.