Objetivos
Material requerido.
1 x LM7805 regulador de 5V. | |
2x Condensadores de 10µF | |
2x Condensadores de 22pF | |
1x Cristal de 16 Mhz | |
2xResitencias de 330Ω | |
2x Diodos LED | |
1x Pulsador | |
1x Atmega328 procesador | |
Algunos cables de Protoboard. | |
Una Protoboard . |
Los voltajes estabilizados
En la última sesión vimos los conceptos básicas para entender las ideas que hay detrás de las fuentes de alimentación sencillas, incluyendo los reguladores de tensión de la familia 78XX y como el movimiento se demuestra andando, ha llegado el momento de montar algo con ellos.
Y qué mejor que montar un circuito que replique nuestro estimado Arduino UNO en una protoboard. ¡Que no se asuste nadie!
Pensadlo, es más simple de lo que parece a primera vista. Montamos un regulador de tensión para alimentar nuestro Arduino onboard, y después usando un chip ATmega 328, que podemos hasta sacarlo de un Arduino UNO, montamos el resto de los circuitos necesarios. Que en realidad solo requiere un cristal con sus condensadores y poco más.
El circuito de reset con el botón es opcional (Ya que el apagado siempre ha sido el reset que a mí me gusta). Y en cuanto al USB para programarlo, también es opcional ya que podemos programar el chip ATMEGA 328 en un soporte de Arduino normal, para luego sacarlos y ponerlo en la protoboard ya programado.
O bien para los más aventureros, podemos usar un interface FTDI a USB (Luego hablamos) para poder programar el chip “on situ”. En la sesión intentaremos montar todo para que tengáis un ejemplo completo.
Tened en cuenta que a medida que vuestros circuitos y proyectos vayan creciendo, llegara un momento en que os gustará poder diseñar una placa de circuito impresa que conlleve todo vuestro montaje y seguro que entonces os vendrá bien poder diseñar el circuito de control integrado con uno de estos chips.
Así pues, vamos a empezar viendo como montar un completo circuito de control tipo Arduino que montaremos en la protoboard y que podríamos incluir en un diseño propio de circuito impreso para comercializar un producto cualquiera.
Nada de miedos, que ya veréis, que como todo, es más fácil de lo que parece.
El regulador de tensión
En esta ocasión no alimentaremos nuestra protoboard desde el Arduino, ni desde el USB (Porque no tenemos donde enchufarlo) si no que usaremos un alimentador externo de digamos 9V, del tipo de los que se usan para alimentar discos duros viejos o algo así.
Seguro que tenéis varios rodando por casa, de modo que podamos meter 9v a nuestra protoboard y luego ya lo rebajaremos con el regulador de tensión a 5V. Si no tenéis uno de estos alimentadores, otro modo rápido por ahora sería usar una pila de 9V.
En cuanto al regulador, no hay grandes sorpresas en esto. Es similar al que vimos en la última sesión:
Pondremos a la entrada los 9V de ese alimentador externo y utilizando un par de condensadores de 0,1µF para filtra un poco la tensión, es más que suficiente para que el 7805 trabaje cómodamente.
Para hacer el cableado del montaje podéis usar los típicos conectores DuPont macho/macho que tendréis por ahí, o mejor aún, podéis comprar en las tiendas de electrónica cable de protoboard que te lo venden por metros y poco dinero, y son ideales para irlo cortando al tamaño adecuado para la protoboard.
Veamos un ejemplo de cómo montar el circuito del regulador en la protoboard:
La idea es que usemos los raíles superiores para la tensión de entrada de 9V y mediante el regulador sacamos los 5V en el rail inferior. Además hemos incluido u piloto LED para indicar que hay tensión.
Insertando el controlador y el cristal
Antes de nada, volcad a vuestro Arduino el programa de ejemplo blink, para que lo podamos probar después. Recordad que está en Archivo\Ejemplos\Basic\Blink.
El controlador ATmega 328 es el corazón de vuestros Arduinos y es un chip que debe ser manejado con una cierta precaución. Si disponéis de un chip independiente, saltaros esta parte.
Para quienes no tengáis el chip suelto, podemos usar el de vuestro Arduino si es de los de zócalo, sin más que sacarle con cuidado.
Para sacar el ATMEGA328 del zócalo:
Aquí os dejo un pequeño video de la operación de sacar el chip, por si a alguno os da un ataque de pánico, veréis que no es nada complicado, ni peligroso para vuestro Arduino si tenéis una mínima precaución.
Y para dejar el trabajo hecho, aquí os dejo un mini video mostrando como se vuelva a insertar cuando acabemos con el:
Inserta ahora el chip en la protoboard. Fíjate en la marca del chip, e insértalo con la marca hacia la izquierda:
De nuevo, recordad que hay que insertar con cuidado los pines del chip en la protoboard. Cualquier intento de forzarlos acabará mal. Aseguraros de que los pines están correctamente embocados antes de presionar y luego hacedlo con suavidad.
Ahora vamos a colocar GND y Vcc del chip y después colocaremos el oscilador de cuarzo que fija la base de tiempos del chip.
Para ello, vais a necesitar un diagrama del chip y sus equivalencias con los pines de Arduino:
Fijaros en la relación de los pines en negro, con sus equivalentes en Arduino que nos son familiares. Vamos a colocar primero la alimentación del chip (Pines 7 y 20 a Vcc y Pines 8 y 22 a GND):
Vamos ahora con el cristal. Su símbolo es:
Vamos ahora con el circuito del cristal y del reset, es muy sencillo (En realidad no existe nada complicado):
Ni los condensadores de 21 pF, ni el cristal, tiene polaridad, por lo que no debéis preocuparos por el tema. El resultado puede ser parecido a esto:
El circuito de reset es tan sencillo que da asco. Basta con usar un pulsador para conectar el pin 1 del chip a GND. Cuando el chip 328 siente GND en este pin, sencillamente se resetea.
Con esto, ya tenemos completo el modelo de Arduino en protoboard, con la excepción de que no tenemos interface para programarlo, ya que no tenemos USB.
En realidad no sería necesario, ya que al principio de la sesión cargamos el Blinking LED en el Arduino, y por supuesto se ha venido con el chip. Vamos a añadirle un LED en el pin 13 para poder emular el bilnking LED.
Y aquí está la protoboard correspondiente.
Como al principio de la sesión cargamos el programa de blinking LED en vuestro Arduino, si ahora dais tensión a la protoboard, el LED de la derecha debería empezar a parpadear, exactamente como si tuvierais la placa normal de Arduino.
Tenéis que entender que esto es una duplicación completa del circuito que hay en la placa de Arduino con la excepción del USB, pero correrá cualquier programa que hayáis cargado en un UNO.
Para los corazones esforzados que quieran poder programar sus Arduinos onboard, tengo buenas noticias. No hay problema. Podéis comprar un adaptador con el extravagante nombre de FTDI a USB que nos permite hacer exactamente esto por poco dinero.
Los tenéis disponibles tanto en USB normal como mini:
Lo que te hacen, es simplemente convertir la señal de USB a puerto serie, listo para conectarlo a los pines D0 y D1 de Arduino que corresponden a los pines 2 y 3 del chip. Podéis ignorar los pines CTS (Clear To Send) y DSR (Data Set Ready), Arduino no los usa.
Un último comentario
Con esta última adición, hemos duplicado en protoboard un Arduino UNO funcional, que puede ejecutar cualquier programa que pueda ejecutar una placa normal.
La ventaja es que si sois aficionados a la electrónica podéis crear vuestras propias placas de circuito impreso que contengan lo que habéis montado en la protoboard y además el resto de componentes que pueda necesitar vuestro circuito.
Todo esto al final resulta en que disponéis de la capacidad de crear vuestros propios prototipos electrónicos en circuito impreso.
Resumen de la sesión