Para el ejemplo de hoy utilizaremos 2 servomotores. En este caso son de la marca Futaba, el modelo S3003.




A continuación teneis el video de la aplicación terminada. Es muy sencilla y básica, pero nos permite ver las posibilidades de este lenguaje.



Ya explicada la parte teórica, continuaremos con el desarrollo de una aplicación gráfica en Processing para ver visualmente los datos del Nunchuk.



Introducción

Vamos a utilizar Serial para comunicar la placa Arduino con la computadora. En Processing tenemos que importar la librería Serial que viene incluida en el IDE.

Antes de comenzar, modificaremos la función  void imprimir_Serial () en nuestro código de Arduino. Transmitimos en forma de Bytes, eliminamos la transmisión de Strings innecesarios y añadimos la impresión de '\n' al comienzo para evitar los datos erróneos que se transmiten al principio. Esto último lo explicaremos posteriormente. La función quedaría de la siguiente forma:





En realidad, lo único que necesitaremos, además de todo lo relacionado con Arduino y el Nunchuk es el IDE de Processing. Pero antes de todo eso, ¿qué es Processing?




Llegados a este punto, leer y interpretar los datos del Nunchuk ya no debe de suponer ningún reto. Los hemos recogido y transmitido a la computadora vía Serial. Pero claro, de nada sirve enviar datos sin que existiera una forma de poder jugar con ellos.

Por lo tanto en los siguientes posts trataremos de crear una aplicación en Processing que nos muestre de forma gráfica los datos de los sensores del Nunchuk. ¿Utilidad? Ninguna más que para satisfacer curiosidades, pero una vez sepamos hacer esto se nos abrirán muchas más puertas. Libre es cada uno de investigar y amoldar estos conocimientos a sus propios proyectos.



Os muestro un video en el que aparece como ha quedado nuestra aplicación y su funcionamiento:



Modificaciones previas

Una vez ya tenemos claro el funcionamiento del bus de transmisión de datos I²C trasladaremos esa información al Nunchuk.




Una vez que ya tenemos claro la teoría, hay que juntar todos esos conocimientos y crear un pequeño programa. A continuación os muestro un código funcional, el cual no me ha dado ningún problema.

He añadido un apartado al comienzo del código de personalización por si se tubiera que modificar algo.



En un principio, esto no debería suponer ningun reto para nadie. Es un montaje más que sencillo. Solamente consiste en conectar los cuatro cables del Nunchuk a Arduino.

Claro está que si quieres más funcionalidades necesitas conectar más elementos, pero este no es el caso.





El Nunchuk utiliza el bus de trasmisión de datos I²C. I²C es un bus de comunicaciones en serie. Su principal característica es que utiliza dos lineas de transmisión de información. Una de ellas es la señal de reloj(SCL) y la otra para los datos(SDA). Aunque también es necesaria una tercera línea de tierra(GND).



Existen algunos proyectos ajenos a este con la misma finalidad. Que menos que citarlos y enlazarlos para ampliar información.

Junto con toda esa información y la que mostraremos aquí, podremos llevar a cabo nuestro pequeño proyecto.



En este post se explicará la forma de conseguir los materiales, así también de una breve explicación de sus posibilidades y características. 

Se necesitará un Nunchuk de Nintendo o compatible, una placa Arduino (en nuestro caso modelo UNO) y un saco de paciencia.



Todo surge con la idea de poder utilizar el Nunchuck de Nintendo (sí, ese mando con forma de pera) con nuestra placa Arduino. 
No se si pensaréis que esto es innecesario ya que existen drivers para diferentes SO para conectar dicho mando a la computadora, pero la idea es de poder utilizarlo independientemente de dicha máquina. Solo nuestra placa y él.

Mi idea es la de dejar plasmado en la red el proceso explicado en español y que sirva de ayuda para futuros proyectos de otras personas.

Ahora se nos abre un abanico de posibilidades. Lo ponemos utilizar como manejador de cualquier aplicación, robot , animatronic o cualquier cosa que se nos ocurra.