9/12/2012

Primeros experimentos con Arduino

Con el pedido de DealExtreme recibido he podido empezar a realizar experimentos con Arduino. Para empezar, una serie de ejemplos sencillos e incluidos en la propia aplicación de Arduino IDE. Encender un led, hacer que se encienda y apague progresivamente, y algún otro más por el estilo. Posteriormente le ha tocado el turno al display LCD con el controlador HD44780 y las librerías LiquidCrystal, que realmente hacen que programar el display sea cosa de niños. Todas las opciones de mover el cursor, desplazar el display... están incluidas en la librería. Podéis encontrar un esquema de montaje e información al respecto aquí
Arduino controlando un display LCD

Como también recibí un sensor de distancias por ultrasonidos HC-SR04, he decidido combinar ambos elementos basándome en un experimento que podéis encontrar aquí. El proceso de montaje es bastante sencillo y todo ha funcionado a la perfección a la primera. Podéis ver mi montaje en funcionamiento en la siguiente imagen.
Medida de distancia con Arduino, sensor y display LCD

Como todo esto lo he podido hacer sin programar (aunque he tratado de entender todos los programas que he utilizado), he decidido hacer una modificación, consistente en cambiar el display LCD por uno de 7 segmentos que obtuve de un aparato TDT estropeado. Para ello he tenido, en primer lugar, que buscar la hoja de características de dicho display, que resulta ser un 3942AX/BX-XX. Este display tiene 16 pines, si bien para este experimento solo he conectado los correspondientes a dos dígitos (la medida máxima del sensor de ultrasonido es inferior a 100 centímetros). Podéis ver un vídeo del montaje en funcionamiento a continuación

La programación es básica. Leemos la distancia que nos proporciona el sensor de ultrasonidos en centímetros y comprobamos si es menor que 10, en cuyo caso se puede enviar la medida directamente al primer dígito. Si es mayor que nueve, entonces debemos configurar los dos dígitos. Para ello, con el valor obtenido, el valor a mandar al dígito más significativo es el cociente de división de enteros por 10, mientras que al dígito menos significativo se manda el resto de dicha división. Dependiendo del número a enviar se encienden un determinado conjunto de leds. Podéis descargar el código completo aquí. Si queréis más información de displays 7 segmentos clicad aquí.
Comentar también otro experimento que me ha gustado, muy simple, que consiste en una especie de sensor de aparcamiento. Lo podéis encontrar aquí.