Construye tu volante para videojuegos (DIY) | |||||
Si te has sentido un hombre frustrado al entender que un buen videojuego de carreras de coches se juega con un volante de manejo en vez de con las flechitas del teclado, este es el artículo que estabas esperando. Gracias a la maravilla de un acelerómetro de tres ejes MMA7260Q vas a poder construir tu propio volante de juego o experimentar más allá en el desarrollo de esta plataforma que hoy te traemos. Quizás mañana nos cuentes que has transformado este proyecto en un verdadero Wiimote para ordenador hecho completamente con tus manos o quién sabe que otra clase de maravilla. Hoy, seguramente disfrutarás como nunca antes tus juegos de carreras con este volante que tanto necesitabas. Si creías que los volantes de manejo eran para unos pocos afortunados que podían pagar muchos billetes por ellos, llegó la hora de demostrarte que tú también puedes tener uno. |
|
||||
Por supuesto, fabricado por ti mismo, que es lo más importante.En artículos anteriores, hemos conocido los acelerómetros y hemos podido aprender, entre otras cosas, que son dispositivos de reducidas dimensiones y que poseen la propiedad de detectar movimientos según el modo de trabajo al que se los someta. En el modo dinámico, este componente es capaz de entregarnos una información proporcional a las aceleraciones que es sometido junto al elemento que lo lleve consigo durante los ensayos.Es decir, en el ejemplo ya analizado, se lo instala en un automóvil y se puede medir de esa aplicación las aceleraciones y desaceleraciones a las que los ocupantes del vehículo |
|||||
son sometidos y que son provocadas por el manejo demostrativo del conductor del coche. Además de este modo dinámico, existe una forma estática de utilización y el resultado es expresado a la salida de un acelerómetro con variaciones de señal, generadas dentro del propio dispositivo, al interactuar éste con la gravedad de la tierra. |
|||||
|
|
||||
|
Los habrás visto hacer de las suyas en el Wiimote o en los teléfonos de alta gama rotando las imágenes según la posición en que el usuario decida manejar su equipo. Con el continuo abaratamiento de costos, los acelerómetros se están haciendo presentes cada día con más fuerza en la electrónica de consumo y de alcance masivo. Desde un indicador de nivel utilizado en albañilería, pasando por tobilleras que pueden monitorear cada paso al caminar, hasta el volante que hoy te vamos a mostrar, las aplicaciones se encuentran en los lugares más inesperados, casuales y creativos, llevando soluciones sencillas a grandes problemas que los usuarios deben enfrentar a diario. Vale recordar, además, que son capaces de detectar pequeños movimientos en los tres ejes dimensionales (X, Y, Z) siendo muy requeridos en la actualidad por la mecatrónica y la robótica para resolver los informes de movimientos y posición hacia los sistemas de control. |
||||
|
El acelerómetro de la firma D-TEC utilizado en los ensayos |
||||
Por último, antes de
entrar de lleno en la construcción del volante y considerando la amplia
variedad de estos dispositivos que existe en el mercado, podemos decirte
que utilizaremos un acelerómetro con salida analógica para cada eje, de
los que sólo utilizaremos dos (X e Y). Hacemos esta salvedad ya que
actualmente se están difundiendo mucho las prácticas con la última
generación de acelerómetros que poseen salida I2C y SPI, modelos que
esperamos próximamente ensayar y traerte algún montaje atractivo con
ellos. La ventaja que poseen por sobre los dispositivos de salida lineal
es que poseen mayor inmunidad al ruido, mayor sensibilidad y precisión y
no requieren de ajustes de escalas ni arreglos matemáticos dentro del
programa del microcontrolador para poder obtener los valores correctos
en la salida. Una trama de datos con el valor exacto nunca permite
márgenes de error o dudas en la conversión. |
|||||
|
|||||
|
Seguramente, ya te has dado cuenta de lo sencillo que es acceder a una aplicación que nos permitirá aglutinar un conjunto de elementos que sabíamos que existían y que ahora comprendemos, poco a poco, cómo se comienza a cristalizar el bosquejo de nuestro volante. Habrás observado en el video que el display alfanumérico indicaba dos variables que fluctuaban conforme al movimiento que se ejercía sobre el protoboard. A una de ellas la llamamos DOBLAR y a la otra ACELERAR. En el listado del programa verás otro nombre para la segunda variable, pero es un sinónimo con el que no podrás confundirte. Además de las variables, al inicio del listado de programa, puedes ver las rutinas de definición de parámetros para el display LCD y para el conversor analógico-digital. Luego, los TRIS que determinan la función de entrada y/o salida de los puertos utilizados y el correcto ajuste del registro ADCON1 dentro del microcontrolador, para poder realizar una correcta adquisición de señales desde cada salida del acelerómetro. |
||||
|
Encabezado del programa donde vemos las definiciones de las variables y el resto de las declaraciones |
||||
Los valores obtenidos en
los conversores ADC del PIC no requieren ningún arreglo matemático para
ser expuestos en el display debido a que éste será retirado en operación
normal del volante. Sólo está previsto su uso para observar la variación
numérica que muestra al mover el conjunto hacia atrás o adelante
(avanzar/frenar) y hacia los costados (doblar) durante los ensayos. Por
lo tanto, tal como el ADC recupera datos desde un mínimo (que no es cero
y ya veremos por qué) hasta 1023, así los verás en el display y los
utilizarás dentro del programa del microcontrolador comparando los
resultados obtenidos con valores preestablecidos. Estas comparaciones
ejecutarán acciones según la lectura que el acelerómetro entregue. Es
decir, menos de un valor, indicará una cosa; más de otro valor,
significará otra, y así adecuarás tu programa y tus valores
predeterminados según el ejemplo que te dejamos. Esto es así debido a
que nunca dos construcciones son idénticas y los resultados siempre
están expuestos a ajustes, por pequeños que estos sean. |
|||||
Rutina de comparación de los valores obtenidos en una de las entradas del ADC |
|||||
|
En las partes del código
donde encontramos las instrucciones HIGH o LOW y a continuación el
nombre del puerto C seguido del pin involucrado, estarás activando o
apagando los LED indicadores de cada acción que ejecute el sistema. Esta
misma conexión será la encargada de habilitar las llaves internas del
CD4066B que se conectarán en paralelo con cada botón correspondiente a
las flechas de movimiento del cursor, ubicadas en un teclado
convencional. De esta forma, ayudado por un elemento que ya no utilizas
(el viejo teclado), te podrás valer para realizar con comodidad el
trabajo. Es muy importante en este punto de la construcción que seas
altamente prolijo y cuidadoso ya que deberás soldar los cablecillos que
salen del CD4066B y llegan a la placa del teclado para su conexión. |
||||
|
Mucha atención y cuidado al trabajar dentro del teclado |
||||
Controla bien con el
multímetro la continuidad de las vías antes de soldar los cables y
asegúrate que lo harás en los lugares correctos y de la forma correcta.
Luego, al otro extremo, conecta los cables (sin errores) al CD4066B.
Podrás notar que algunos botones comparten la misma vía y eso ayuda a
que sea menor la cantidad de cables a soldar en la placa del teclado.
Por lo general, con cinco cables se resuelven las ocho conexiones
necesarias de las cuatro llaves electrónicas. Con mucho cuidado, alineas
bien el teclado de membrana con la placa y tapas el conjunto sin
olvidarte ningún tornillo. Muchas anotaciones, cables de diversos
colores y un ambiente tranquilo te ayudarán a no cometer errores.
Controlar la ansiedad que provoca saber lo que estás construyendo es
algo complejo, pero en NeoTeo estamos seguros que tú podrás lograrlo. |
|||||
sencilla matriz de LEDs |
Circuito propuesto para tu nuevo volante |
||||
Para obtener los 3.3 Volts a partir de los 5 Volts utilizados por el resto del circuito, empleamos un regulador serie llamado AZ1117 3.3. Gracias a que el módulo acelerómetro que hemos seleccionado (o el que tú decidas utilizar) es un sistema que consume muy poca energía (medio miliamper) en condiciones normales de uso, no será necesario que el regulador cuente con disipador de calor y podrás utilizar cualquier encapsulado sin inconvenientes. También puedes alimentar el módulo con una resistencia limitadora y un zener de 3.3 Volts, pero siempre será conveniente el empleo de reguladores fijos y evitar las sorpresas que puede depararnos un error en el cálculo de la resistencia limitadora. |
|||||
on el monitor cardíaco que te presentamos puedes controlar, escuchar y ver tu ritmo cardíaco. |
Distribución y montaje de nuestro prototipo |
||||
Una aplicación con un contador ascendente descendente que puedes utilizar en cualquier proyecto. |
Como puedes apreciar, el montaje no reviste mayor complejidad a la que ya estamos acostumbrados y, con paciencia y con los materiales necesarios, en una tarde ya tienes que tener listo tu prototipo de pruebas para ensayar su funcionamiento. En la imagen puedes ver que hemos colocado un interruptor en la parte superior izquierda para activar o desactivar el sistema. Hemos colocado varios capacitores de desacoplo en la línea de alimentación para evitar ruidos eléctricos que puedan perturbar el funcionamiento del sistema y, por último, la recomendación de siempre: prolijidad, paciencia y confianza en ti mismo, un conjunto de elementos que te llevarán siempre hacia buenos resultados. Si todo está correctamente conectado, controlado y ensayado por partes, como vimos en los videos anteriores, al conectar podrás tener un funcionamiento muy similar al siguiente: |
||||
¡Convierte tu MP3 en un poderoso 5.1ch! |
|||||
Conclusiones
|
|||||
Indice de montajes | |||||