fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Avisos
Vaciar todo

Proyecto entrenadora multi-micro economica

66 Respuestas
8 Usuarios
0 Reactions
34.5 K Visitas
dragonet80
Respuestas: 1328
Topic starter
(@dragonet80)
Ardero
Registrado: hace 18 años

Buenas, UCfort y yo hace tiempo que trabajamos en un proyecto que queremos compartir con todos vosotros.

Se trata de un sistema de placa entrenadora y adaptadores de diferentes micros para poder probar esos microcontroladores de diferentes fabricantes, a diferentes voltajes (5V y 3,3V de momento). Adjunto los originales de la última versión de la placa, además de con los adaptadores de algunos micros y unas fotos de uno de los prototipos (el último que hicimos) ya funcionando perfectamente.

¿A quien no le gustaría tener una o varias placas entrenadoras tan completas como las de mikroElectronica? Pero por tamaño y precio no era lo que queríamos. Además suelen ser específicas de un fabricante (y/o modelos). Con todo eso en mente, os expongo las ideas básicas que nos llevaron a hacer esta placa:
1) Necesitabamos una placa para probar diferentes microcontroladores. Muchos de ellos son de Microchip, pero no siempre. Algunos necesitan una alimentación a 5V y otros a 3,3V.
2) Nos fijamos como límite de tamaño una placa comercial de 10x15 cm, positiva, a una sola cara. Solemos trabajar con ese tamaño, ya que es fácil encontrarlo en cualquier tienda de electrónica. No queríamos que fuera de doble cara para que resulte más senzillo de fabricar a la gente no muy experta.
3) Limitamos el número máximo de pines del micro a 64 pines.
4) La placa tenía que tener los componentes mínimos necesarios para probar las funciones básicas de un micro y que nosotros (hobistas de la robótica) utilizamos, pero sin elementos opcionales que encarezcan o compliquen la placa.
5) Constaría de dos partes: la entrenadora y el módulo adaptador del microcontrolador. De esta forma el micro es independiente de la entrenadora y se puede usar cualquiera siempre que cumpla las especificaciones de la entrenadora y a través de un módulo adaptador.
6) Los pines de programación/debuger irían siempre en el zócalo adaptador, nunca en la entrenadora.
7) Debía ser una placa de fácil construcción y económica. Se utilizarían componentes thru-hole o smd fáciles de obtener y soldar.

Con estas premisas, y después de numerosos rediseños y modificaciones, hemos llegado a algo así:

* Vista superior con un módulo de dspic30F4011 pinchado:
Prototip superior 01

* Misma vista superior sin flash (sale algo borrosa):
Prototip superior 02

* Vista inferior sin ningún módulo. Se observan los reguladores de voltage, el interrutor on/off y el potenciómetro para regular el brillo del display:
Prototip inferior

Características del sistema entrenadora multi-microcontrolador:

  • * Zócalo para conexión de micros de hasta 64 pines. Se trata de un conector hembra de 2x30 más otro de 2x2 para la alimentación (5V+GND y 3,3V+GND). Ningún micro de 64 pines necesita más de 60 de entradas/salidas ya que varios son siempre de alimentación.
    * Zona de prototipado con dos mini-breadboard pegadas a la placa. Disponibles connectores hembra de Tensión de alimentación, 5V, 3,3V y GND. Está pensada para utilizarse con cablecillos macho-macho.
    * Connector alimentación tipo Jack y espadin normal (para conectar directamente una LiPo pequeña, por ejemplo).
    * Interruptor de encendido/apagado.
    * Display lcd de 8x2. Como el que monta el robot 3pi de pololu, también disponible por ebay. Por falta de tiempo es el único componente que no hemos comprobado que funcione correctamente, espero que lo haga!!
    * 9 pulsadores. La alimentación se puede elegir por medio del conector hembra.
    * Zócalo para driver tipo MCP19E4 o similar. Este dirver mosfet (se puede pedir gratuitamente como sample a Microchip) se puede usar directamente para controlar motores como los pololu HP utilizados en los robots velocistas o para atacar cargas que necesiten más potencia (relés, mosfets, por ejemplo).
    * Dip-Switch de 4 pines. La alimentación se puede elegir por medio del conector hembra.
    * Dos potenciómetros, para simular entradas analógicas. La alimentación se puede elegir por medio del conector hembra.
    * Un zumbador piezoeléctrico. Funciona directamente conectandole la salida de un pin del micro.
    * Ocho leds de 3mm.
    * Un led RGB.
    * Un zócalo hembra de 2x2 pines con un led para probar directamente los sensores cny70. Con una plaquita adaptadora se podría utilizar para probar otros sensores similares pero en encapsulado smd.
  • Funcionamiento de la placa:

  • 1) Se pincha el zócalo del micro a utilizar en la entrenadora.
    2) En el zócalo se elige, con un jumper, el voltage que utilizará el micro (5V o 3,3V).
    3) Se conecta la alimentación a la entrenadora.
    4) Se enciendo con el interruptor.
    5) Se conectan los cablecillos macho-macho a los diferentes elementos de prueba (protoboard, interruptores, leds, etc).
    Nota) La placa no necesita el módulo del micro para funcionar. Se puede usar para probar componentes, sensores, etc sin necesidad de tener ningún micro insertado.
  • Justificación del formato del conector del zócalo adaptador: 2x30 pines en un solo lado.

  • Elegimos este formato ya que permite usar micros de hasta 64 pines fácilmente y cabía en la placa de 10x15 cm. Tiene la fexibilidad de que es independiente del tamaño y formato del micro, se puede usar tanto en micros dip, como smd, grandes y pequeños, y ocupa un espacio bastante reducido. Los formatos a cuatro lados (tipo microchip o mikroelectronica), si bien facilitan el ruteo de pistas y soldadura, limitan mucho el modelo de micros y aumentan el espacio perdido por el conector.
  • Y aquí dejo los ficheros comprimidos en rar para quien los quiera revisar/probar, todos en formato Eagle (placa+esquemático. No se si se abren con la versión sin registrar...):
    Entrenadora: https://dl.dropbox.com/u/14855888/Entrenadora/entrenadora.rar
    Adaptador dspic30-smd-44 pines: https://dl.dropbox.com/u/14855888/Entrenadora/adaptador44_dspic30F.rar
    Adaptador pic16F877-th-40 pines: https://dl.dropbox.com/u/14855888/Entrenadora/adaptador40_16F877.rar
    Adaptador dspic30F4013-th-40 pines: https://dl.dropbox.com/u/14855888/Entrenadora/adaptador40_30F4013.rar
    Adaptador propeller-40 pines: https://dl.dropbox.com/u/14855888/Entrenadora/adaptador40_Propeller.rar
    Adaptador dspic33ep256mu806-64 pines: https://dl.dropbox.com/u/14855888/Entrenadora/adaptador28_33EP64MC502.rar
    Adaptador atmel-at90-8515-40 pines: https://dl.dropbox.com/u/14855888/Entrenadora/adaptador40_AT90-8515.rar
    Adaptador atmel-at90-8535-40 pines: https://dl.dropbox.com/u/14855888/Entrenadora/adaptador40_AT90-8535.rar

    Cambios/mejoras/actualizaciones previstas a corto plazo:
    1) Esta versión está específicamente pensada para hacerse la placa uno mismo en casa y a una sola cara. Tenemos previsto hacer un modelo para enviar a producir profesionalmente, tanto de entrenadora como de adaptadores, ya sea en iteadstudio o en cualquier otro fabricante económico de placas. Hay que cambiar todo el ruteado de pistas y vías, cambiar algunos componentes thru-hole por smd, puede que resituar alguno, preparar la serigrafía, etc.
    2) En la parte central queda espacio vacío (aunque está bien que donde irá "la maraña" de cables esté despejada) que quizá se podría aprovechar para poner algún componente más. Zócalo X-bee quizás? Display 7 segmentos (con driver? sin driver? cuantos dígitos?)
    3) Otra idea es añadir un conector usb (normal?, mini?, micro?) para alimentar la placa por si se usa con un ordenador y no se tiene fuente de alimentación a mano.
    4) Hacer adaptadores para otros micros. Hay muchos pendientes, en diversos tamaños, encapsulados y fabricantes. Incluso se podrían hacer adaptadores para pinchar directamente arduino nano, mbed, microstick, etc, etc.
    5) Donde va el conector de 2x30 de los pines del micro hacia la zona de componentes (no el de la izquierda donde se pincha el zócalo adaptador, sinó el que está al lado, pero un poco más a la derecha) hay espacio para poner una plantilla de papel con los nombres de cada pin que usa ese micro con ese zócalo en concreto. No se si esto queda muy claro, cuando tenga tiempo de hacer una, le hago una foto y la subo también.
    6) Quizá añadir otro/s regulador/es de voltage para abarcar a micros de bajo voltaje?

    Nos gustaría recibir vuestros comentarios, críticas, sugerencias, etc. El ánimo de este proyecto es que sea open source hardware (cc-by-sa). Que cualquiera pueda fabricarse las placas en casa o pedirlas a un fabricante. Que se pueda usar en casa o en colegios/institutos para hacer prácticas.

    Como véis aun quedan muchas cosas por pulir, mejorar y hacer. Si alguno se anima a participar/ayudar, nosotros estaríamos encantados.

    Responder
    65 respuestas
    dragonet80
    Respuestas: 1328
    Topic starter
    (@dragonet80)
    Ardero
    Registrado: hace 18 años

    Ya tengo lista la siguiente versión. Bueno, realmente voy a esperar a si alguien la quiere revisar por si se me ha escapado/colado algún error. Quedaría algo así:

    * Cara superior:
    Captura%20de%20pantalla%202015 01 09%2012.04.15

    * Cara inferior:
    Captura%20de%20pantalla%202015 01 09%2012.04.36

    He dejado todos los pines que usa el Arduino. En la cara de arriba he rotulado las funciones "normales" y en la cara de abajo las "alternativas". He dejado la posibilidad de usar dos displays diferentes de 0,96" (uno más económico y otro con un micro dedicado que hace de controlador) incluso cabría uno serie de 1,3" (Digole). He puesto también cuatro pequeños pulsadores dedicados al control de las funciones del Arduino/Multímetro/Generador/LoQueSea.

    Además he añadido un pequeño módulo Bluetooth-Serie de Microchip, muy útil para telemetría/control remoto. Aquí ya tengo la duda de si sería posible usarlo para programar el ATMega32U4 a través del Bluetooth. Mi idea es usarlo para comunicar con los "otros" micros (los que use con la entrenadora) para hacer "debug", pero si pudiese usarse también para programar el Arduino de forma inalámbrica y no se requiriesen muchos cambios, lo podría implementar. Si alguien sabe del tema me lo puede comentar.

    En principio iba a seguir el esquema del Leonardo original, pero finalmente usé la versión más simplificada de JMN, así me ahorro algún componente.

    Si alguien tiene un poco de tiempo y quiere revisarlo antes de que le dé el visto bueno, se lo agradecería. Que lo diga y le mando los ficheros Eagle. Evidentemente cuando esté acabado, fabricado y comprobado, los publicaré como los anteriores.

    Responder
    sistemasorp
    Respuestas: 478
    (@sistemasorp)
    Ardero
    Registrado: hace 15 años

    Se puede programar a través de bluetooth cualquier Arduino. Con avrdude puedes configurar una conexión a un puerto serie que sería el del bluetooth emparejado a tu módulo, aunque puedes seguir estos pasos para hacerlo con el IDE de Arduino:

    http://www.instructables.com/id/Wireless-upload-program-to-Arduino-without-USB-cab/?lang=es " onclick="window.open(this.href);return false;

    Lo único es que o bien pulsas el botón de reset manualmente para que entre en acción el bootloader, o pones un cable desde cualquier pin al de reset para hacer el reset por software.

    Responder
    jmn
    Respuestas: 376
     JMN
    (@jmn)
    Ardero
    Registrado: hace 13 años

    No conozco mucho Arduino, pero las miro a ver si veo algo o se me ocurre alguna idea, si me dejan lo miro este fin de semana.

    Saludos.

    Responder
    dragonet80
    Respuestas: 1328
    Topic starter
    (@dragonet80)
    Ardero
    Registrado: hace 18 años

    Ok, gracias. No hace falta saber de Arduino, más que nada es por las conexiones del Atmel que estén bien hechas. Y por la entrenadora en general, si ves algo.

    Responder
    jmn
    Respuestas: 376
     JMN
    (@jmn)
    Ardero
    Registrado: hace 13 años

    Este fin de semana lo miro con detalle, a primera vista puedes filtrar la alimentación de la parte analógica (AVCC), en la adaptadora que hice primera creo que no lo estaba (debería haberlo puesto, no recuerdo el por qué), como se puede ver en el esquema de vinciduino: http://vinciduino.com/esp/wp-content/uploads/2012/02/vinciDuino_RevC.pdf " onclick="window.open(this.href);return false; . Si añades la inductancia más los dos condensadores tendrás menos ruido en la parte analógica, algún usuario lo puede apreciar si necesita medir algo con mucha resolución.

    Otro cambio que puedes hacer si rediseñas el pcb es añadir una resistencia en lo pulsadores entre el condensador y el pulsador, cuando cierras el pulsador el condensador se cortocircuita, teniendo un pico de corriente que te puede generar ruido en pistas cercanas, los interruptores del display están en el pcb?

    Añadiría en serie una resistencia con la puerta del mosfet, en función de la capacitancia parásita de ésta puede haber picos de corriente que no le gusten al microcontrolador.

    Cerca del módulo BT en las alimentaciones añadiría un condensador del orden de nF entre los pines de alimentación, si no lo lleva en el propio módulo.

    En la entrada del regulador disipativo puede ser adecuado dejar la huella para poner un condensador, ya que aunque el integrado que necesitas no lo lleve quizás si cambias a otro fabricante si te pide el uso de este condensador.

    Con estos reguladores hay que tener cuidado, ya que algunos son muy sensibles a los condensadores, ejemplo la captura de un regulador disipativo de 3.3V donde por no poner un condensador adecuado, no en valor, si no en su ESR, se ponía la salida a oscilar con un ruido bastante molesto.

    En la salida del potenciómetro puede estar bien añadir un condensador de 100 nF, ya que es una referencia de tensión analógica, aprovechas para meter un filtro.

    Con el interruptor de continua es conveniente añadir un snubber o algo que lo proteja cuando se abre para evitar el arco, más si pude haber carga inductiva, os dejo un vídeo que lo ilustra:

    Zez2r1RPpWY

    Adjunto un .pdf:

    Luego miro este tema del interruptor y ver si puede afectar según lo tienes, que no lo tengo fesco en la cabeza, y tengo que salir ahora.

    Mañana o el domingo lo miro más despacio mirando las conexiones del AVR.

    Responder
    Página 10 / 14
    Compartir: