bclose

Arduino en Protoboard

Montando tu propio circuito con procesador ATMEGA328

Objetivos

 

 
    • Montar un regulador en la protoboard.
    • Montar un circuito completo en la protoboard que pueda correr los programas Arduino
 

 

Material requerido.

Regulador integrado de tension  1 x LM7805 regulador de 5V.
Condensador electrolico  2x Condensadores de 10µF
Concensador ceramico  2x Condensadores de 22pF
Cristal de cuarzo  1x Cristal de 16 Mhz
componente  2xResitencias de 330Ω
componente 2x Diodos LED
boton contactor 1x Pulsador
Atmega 328 THT 1x Atmega328 procesador
conexiones Algunos cables de Protoboard.
Breadboard  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:

Regulador de 5v

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:

Arduino en protoboard 1

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.

 

 
  • Cuando montéis algo con alimentación externa, es buena idea incluir un testigo luminoso, para estar seguro de que hay tensión. Hay mil cosas que pueden fallar y siempre viene bien asegurarse de que el circuito recibe tensión.
  • Por cierto si cuando deis tensión al circuito, el LED no se ilumina, desconectad la tensión inmediatamente y revisar el circuito. No tiene sentido seguir mientras el regulador no este OK.
 

 

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.

Muestra el regulador estandard

Para sacar el ATMEGA328 del zócalo:

 
  • Usad un destornillador plano fino, introduciéndolo poco a poco por un lateral y girad suavemente el ventilador sin levantarlo, y repetid la operación por el otro extremo con suavidad.
  • No intentéis sacarlo por completo levantando solamente un lateral. Si lo hacéis doblareis las patas del otro lado y podéis inutilizar el chip. No es caro, pero es molesto tener que comprar otro por manazas.
  • Repetid la operación con suavidad hasta que el chip salga sin forzarlo, recordad que luego habrá que volverlo a insertar, así que poned empeño en no doblarle las patitas.
 

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:

Arduino en protoboard 2

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.

 
  • Confío en que no haga falta decir que la alimentación de la protoboard, debe estar desconectada. No se os ocurra andar colocando componentes con la tensión conectada.
  • No es probable que os llevéis un calambrazo (Porque 5V ni siquiera se notan) pero podrías perfectamente quemar cualquier componente.
  • No se os ocurra suponer que los pines del chip, siguen la misma pauta o posición que los pines exteriores del Arduino, porque os llevareis un pequeño disgusto.
 

Para ello, vais a necesitar un diagrama del chip y sus equivalencias con los pines de Arduino:

Patillaje ATMEGA328

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):

Arduino en protoboard 3

Vamos ahora con el cristal. Su símbolo es:

Oscilador de cuarzo
Cristal de cuarzo

Vamos ahora con el circuito del cristal y del reset, es muy sencillo (En realidad no existe nada complicado):

Circuito

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:

Arduino en protoboard 4

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.

Arduino en protoboard

Y aquí está la protoboard correspondiente.

Arduino en protoboard 5

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:

USB para protoboard
USB mini FTDI para protoboard

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.

Arduino en protoboard Diagrama de conexion

 

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.

 
  • Para los que prefiráis usar el corazón de un MEGA que no puede extraerse, podéis buscar en internet las breakout borads para ATmega1280 que es el procesador del mega. Encontrareis que existen varias opciones disponibles,
 

 

Resumen de la sesión

 

 
    • Hemos montado nuestro primer circuito regulador de tensión en protoboard, y estoy seguro de que no será el último.
    • Hemos aprovechado, ya que estábamos para montar un Arduino UNO onboard usando un chip ATmega328, que es plenamente funcional
    • Este asunto es más importante de lo que inicialmente podéis pensar, porque os abre las puertas a montar circuitos propios impresos sin necesidad de incluir un Arduino en placa completo.

 

 
 

 

 

Para porder realizar consultas a nuestros expertos, tienes que ser suscriptor. Suscribiendote nos ayudas a mantener este proyecto en marcha.

¡ Quiero Suscribirme !

Si ya eres premium y no puedes comentar haz login. Hacer login

(71) Comments

  • Avatar for Charly
    • Admin

    No creo que haya mucho problema, porque en principio los alimentadores de movil incluyen transformador y rectificador y ademas algun filtro que controle el rizado de la tension de salida y todo eso deberia ser suficiente para garantizar tanto la estabilidad del circuito como su seguridad, pero asegurate de que la salida es de 5V

  • Avatar for Charly

    Hola muy biuen post! Quería consultarle si hay algún tipo de problema de alimentar la protoboard con un cargador de un teléfono móvil, sin conectar el estabilizador de tensión, yo ya tengo el circuito montado en una placa y lo alimentaba con la tension del CP2102 pero quiero independizarme de la computadora y que siga funcionando, conectar el cargador directamente me traera problemas?

  • Avatar for Charly
    • Guillermo

    Fe de erratas.
    En lugar de RTS quice decir RST, mil disculpas

  • Avatar for Charly
    • Guillermo

    Sr. admin.
    Independientemente de la excelencia de este sitio que me ha dado muchas soluciones por la explicaciones muy claras lo cual indica el celo profesional que pone en el sitio, en este caso debo hacerle un comentario respecto a algunos detalles que ha omitido en este caso muy importantes para poder bajar programas al procesador ATMEGA328 (supongo que será el corresp. al arduino uno) estando montado en cualquier placa experimental o diseñada fuera de la placa Arduino propiamente dicha.
    Se trata de los distintos tipos de adaptadores USB.TTL o FTDI, en el caso del procesador del Arduino UNO dicha interfase debe tener NECESARIAMENTE el pin DTR el cual se conecta al pin RTS del procesador con un condensador de 0.1 uF, y del mismo pin (RTS) del procesador una resistencia de 10K al Positivo de la alim. de 5V.
    Si esto no se cumple el programa no se cargará y dará un error (muy típico que en este momento no recuerdo).
    Para cargar programas con los modelos sin el pin DTR se debe presionar el botón reset en un momento preciso durante la carga del prograna lo cual siempre trae problemas ademas de no ser una manera práctica de hacerlo (precisamente la acción del RESET la cumple el pin DTR del FTDI atraves del condensador mencionado. Guillermo

  • Avatar for Charly
    • Admin

    Hola Vladimir, No se muy bien que me preguntas porque no entiendo muy bien tu problema

  • Avatar for Charly
    • Vladimir

    Primero felicitarlo y agradecerle por publicar cosas tan útiles como éstas. Actualmente estoy ocupando mi arduino uno en la CNC que hice de forma casera y ya que también quiero utilizarlo para otros proyectos quisiera saber si con sólo esos componentes ya puedo hacer funcionar correctamente mi cnc. Y por último cual es la diferencia en si uso el adaptador de freír a usb o el cable usb a tti?. De antemano muchísimas gracias

  • Avatar for Charly
    • Admin

    Hola Susana, si. parece igual que el que tenemos en la tienda y da muy buen resultado.

    Espero que pronto podamos abrir la tienda en Mexico

  • Avatar for Charly

    Una consulta: el FTDI puede ser este?

    muchas gracias

  • Avatar for Charly
    • Admin

    Hola Vidal, habría que echar una ojeada a los pines de ese chip y comprobar que es compatible con el ATMEGA328, pero en principio no deberia ser muy diferente, porque si te fijas, lo unico que hacemos es ponerle un cristal, alimentacion y puerta serie lo que es comun a todos los chips de micro

  • Avatar for Charly
    • Vidal

    Hola!.

    Muy buen tutorial y muy claro!!!!!
    Quiero hacer este montaje pero con un ATmega1280, para meter todo mi proyecto en una placa perforada. ¿El montaje es el mismo y lo único que cambia es el MEGA por el UNO o hay que poner más cosas?
    Gracias!!!

  • Avatar for Charly
    • Admin

    Hola David, estas de suerte porque puedes correr cualquier programa del uno en un MEGA sin cambiios e incluso conectando todo a los mismos pines. El MEGA es 100% compatible en soft y hard con el UNO

  • Avatar for Charly
    • DAVID SANDOVAL

    Buenas noches, quiero hacer un cnc casero, y vi uno que se controla con un arduino uno pero tengo un arduino mega, ¿los cambios en la programacion son muy extensos? seria mejor comprarme un arduino uno (evidentemente no tengo conocimientos sobre el tema) agradezco mucho su respuesta. y de antemano muchas gracias

  • Avatar for Charly
    • Admin

    Hola Norberto, Pues parece un programa muy snecillo para hacer cosas tan raras. Haz una prueba de correr el programa sin conectar el relay, y veamos como va. SI va correcto como sospecho, podria ser un problema de falta de potencia

  • Avatar for Charly
    • Norberto

    Hola Gente !!!
    Queria consultarte por un problema que se me presenta con 328p , programo el micro con un loop tipo blink el cual enciende el led 15 seg y apaga 30 minutos ,hasta ahi todo perfecto en la salida 13 tengo colocado un relay que acciona un zumbador. cuando armo todo en el protoboard los primeros dos ciclos los realiza bien y despues empieza a andar en forma erratica prende y apaga en tiempo y secuencias distintas y no encuentro que pede ser…….. en el protoboard armo con su correspondiente regulador y el relay lo acciono con un transistor bc548
    Desde ya muchas gracias por la atencion y toda la info que aportas !!!!

  • Avatar for Charly
    • Admin

    Hola Sebastian,

    No hemos hecho el montaje en PCB, pero no e sdificil de encontrar en Google si buscas «atmega328 pcb layout»
    Hay un monton especialmente en las imagenes (Que te llevan a la pagina de la que salen»

    http://letsmakerobots.com/node/34253

  • Avatar for Charly
    • Sebastian

    Hola, muchas gracias por el post! me ayudaria mucho la imagen del pcb para hacerlo en una placa directamente, lo tienen o me explicarian como diagramarlo? trate de hacerlo pero se me cruzan las pistas y no se que hacer jaja Un saludo!

  • Avatar for Charly
    • Admin

    Hola Alvaro, los divisores de tension son una herramienta estandard en electronica para bajar el nivel de una señal de tension y te funcionara independientemente de la tension que pongas a la entrada

  • Avatar for Charly
    • Alvaro

    Bueos dias, he de decir que es un post muy interesante. Pero yo estoy interesado en el regulador de tension. Digame ¿Podria usarlo para conectar otros circuitos electronicos a una fuente DC cuyo voltaje no se estable (como un vehiculo a motor(en mi caso un tractor))?

    Gracias de antemano

  • Avatar for Charly
    • Admin

    Nada de jamones, aqui preferimos la cerveza se llama el bierware y estamos encantados de que avanes y si podemos ayudarte sera un placer

  • Avatar for Charly
    • Prión

    ¡Hola!
    Muchísimas gracias por responder y hacerlo tan rápido porque es algo que quiero rematar ya.
    Si me dedico a la electrónica profesionalmente te deberé tanto que te enviaré un buen jamón, por lo menos.
    Había leído algo sobre que el atmega 328 podía recibir demasiada corriente si se alimenta así pero veo que no es cierto. Estoy haciendo mi primer circuito con microcontrolador y es bastante complejo para ser el primero.
    ¡Muchas gracias otra vez y feliz Navidad!

Para porder realizar consultas a nuestros expertos, tienes que ser suscriptor. Suscribiendote nos ayudas a mantener este proyecto en marcha.

¡ Quiero Suscribirme !

Si ya eres premium y no puedes comentar haz login. Hacer login