Microcontrolador: Arduino
Visitando la web de Arduino, podemos leer:
"Arduino es una plataforma de desarrollo basada en una placa electrónica de hardware libre que incorpora un microcontrolador re-programable y una serie de pines hembra. Estos permiten establecer conexiones entre el microcontrolador y los diferentes sensores y actuadores de una manera muy sencilla "
Todos los proyectos que se van a desarrollar en este curso, lo harán sobre la placa de Arduino UNO, por tanto, esta placa va a contener el cerebro de nuestros proyectos y hará de interfaz de entrada/salida de nuestros sensores y actuadores.
A lo largo de los siguientes ítems, abordaremos qué es y cómo podemos utilizar esta placa para adentrarnos en el mundo de la robótica.
Un poco de historia
Hoy en día existen numerosas plataformas, con microprocesadores similares al de Arduino que pueden ser utilizadas en el aula. Todas ellas son compatibles con el IDE de Arduino, y esto no es casual, sino más bien obligatorio. El IDE es el entorno de desarrollo integrado que ofrece dicha plataforma y en este caso, la de Arduino es la más completa y compatible con otros lenguajes de programación.
Esto es así porque Arduino fue la primera plataforma que se creó en el año 2005 el Instituto de Diseño Interativo de Ivrea (Italia). Arduino apareció por la necesidad de contar con un dispositivo para utilizar en aulas que fuera de bajo coste. La idea original fue, fabricar una placa para uso interno de la escuela.
Por último, es obligatorio mencionar en este apartado a David Cuartielles, uno de los cofundadores de Arduino, por ser el único español en el equipo, en concreto, Zaragozano.
Arduino desde la mirada del alumno
Una definición simple de robótica podría ser combinar sensores y actuadores para que en su conjunto hagan determinadas acciones. En este sentido, para que una alarma se dispare cuando detecta una intrusión, un robot de limpieza gire al detectar un obstáculo, o un limpiaparabrisas se active al caer las primeras gotas de lluvia, requieren además de los sensores y actuadores que componen estos sistemas, una unidad central capaz de procesar el algoritmo lógico que va desencadenando las acciones.
Arduino reúne todas estas característica. Cuenta con una serie de pines que serán configurados como entradas, en el caso de querer leer información procedente de los sensores, o serán configuradas como salidas en el caso de querer accionar un actuador. Más adelante explicaremos en profundidad los sensores y actuadores.
Además, cuenta con un microprocesador re programable sobre el cual vamos a poder subir o cargar nuestro programa y se encargará de leer la información de los sensores conectados en los pines de entrada, y activar (poner en estado ALTO o 5 voltios) o desactivar (poner en estado BAJO o 0 voltios) los pines de salida.
Dicho de otro modo, y tomando uno de los ejemplos anteriormente mencionados, podríamos configurar nuestro Arduino para crear un sistema de seguridad simple del siguiente modo:
El programa que subimos a nuestra placa estará leyendo continuamente el valor del PIN2 definido como entrada. El sensor de presencia, que esta conectado a este pin, siempre esta a 0 voltios, salvo cuando se detecta movimiento en cuyo caso su valor será de 5 voltios. AL estar leyendo continuamente el valor de entrada de dicho pin, si detectamos que pasa de 0 voltios a 5 voltios, activaremos un relé (interruptor) conectado a otro pin que definamos como salida y esto hará sonar una alarma.
Como puedes ver, el mayor peso va a estar siempre en nuestra programación. Debemos tener mucho cuidado con la secuenciación y contemplar toda la lógica que va a definir el comportamiento, y por tanto buen funcionamiento de nuestros proyectos. También, va a ser de suma importancia como definimos en cada uno de ellos, los pines de nuestro Arduino, para lo cual tendremos que tener siempre claro cuales vamos a utilizar, y si van a ser de entrada o de salida. En el último punto, trabajaremos unos ejercicios sencillos que comenzarán a abrir tu imaginación y creatividad que junto a la de los alumnos serán los únicos limites de vuestros proyectos, pero antes de llegar ahí, veamos en profundidad los sensores y actuadores y como programar nuestro Arduino desde un entorno grafico.