Placa de control seleccionada.

Después de mucho pensar si hacer o comprar la electrónica principal y que micro usar.. la decisión ha sido comprar una Axon 2 de www.societyofrobots.com.

Axon 2.


Está basada en un microcontrolador de 8 bits (ATmega 640) y se va a utilizar para controlar todo el hardware del hexápodo, es decir los 19 servomotores, sensores de distancia, pwm de los leds, lcd, interruptores, etc.. La placa es más o menos lo mismo que un Arduino Mega, con la versión inferior del microcontrolador (ATmega640 en lugar del ATmega1280) que tiene la mitad de memoria flash. Lleva conexión USB al pc mediante un conversor usb-uart y además nos viene con un bootloader cargado, lo que nos evitará tener que usar un programador externo, podemos descargar directamente el .hex que generemos en el pc a la placa a través del usb.

La principal ventaja frente al Arduino Mega es la colocación de los pines, cada pin de salida va acompañado de dos pines más, uno de tierra y uno de alimentación (regulada y sin regular a la batería), lo que nos permite conectar directamente servomotores a la placa, o los sensores de distancia y ultrasonido que tanto se usan en los robots. Mientras que el Arduino está pensando para un uso general, esta placa está diseñada para proyectos de robótica y de ahí la colocación de los pines.

La desventaja el precio, $118 es muy caro. Comparando con un Arduino Mega que es prácticamente lo mismo que ésto, y está en $56 y si lo pedimos a las páginas chinas en la mitad, $28. También podemos encontrar la versión anterior de esta placa, Axon, por unos $94 y es prácticamente lo mismo e incluso la distribucción de pines me parece mejor en la antigua, ya que los pines de servomotor, aquellos con un conector de pin de micro y dos conectores directos a la batería se encuentran a los lados, lo que simplifica la conexión para un robot simétrico como el hexápodo. Mientras que en la Axon 2 los pines para conectar los servos están en dos lados juntos, y los pines para conectar sensores, aquellos que llevan señal de pin y alimentación y masa regulada a 5 V están en otro lado y no en medio.

La elección de está placa dado su precio ha sido porque se ajusta al 100% a las necesidades del robot hexápodo (además de llevar un AVR), con un Arduino Mega se habría necesitado una placa adicional que pinchar encima para hacer el conector de los servomotores, y ésta ya lo trae todo y en menos espacio ya que está pensada para este tipo de robots, bípedos, hexápodos, etc..

Si nos vamos a la página podemos leer las siguientes características:
Link a los pines y características de la placa.
Resumiendo una placa perfecta para montarse un robot dada la facilidad de conectar sensores y servomotores pero con un precio muy elevado comparado con un Arduino Mega, que es exactamente  lo mismo. El micro podrían haber puesto una versión superior para tener el doble de memoria de programa, pero supongo que tendrán unos cuantos 640..

Mirando otras alternativas a esta placa encontramos la p.Brain-u24, que por el mismo precio más o menos (un poco más en la versión con firmware) es bastante más potente ya que lleva un 33F de microchip de 16 bits y 40 MIPS, y más importante, 24 canales de pwm.. Pero parece menos versátil ya que está totalmente orientada a un robot hexápodo comercial y el firmware no es abierto. En el AVR contamos con la ventaja del compilador totalmente gratuito mientras que en los pics de 16 bits desconozco si hay algún compilador que no sea comercial. Pero en cuanto a micro gana de lejos el de Microchip.

La documentación de la placa es bastante extensa, podemos encontrar ejemplos, videos y soporte en el foro. También nos indican todos los pasos necesarios para tener el hardware y software funcionando, además apunta a Webbotlib, una libreria para los AVR ( ATMega168, ATMega32, ATMega328P, ATMega640, ATMega1280, ATMega2560 y ATMega2561) que nos proporciona funciones para controlar el distinto hardware que podemos encontrar en nuestros proyectos roboticos, sensores, drivers, etc.. Lista de hardware. No lo he probado pero suena bastante bien, tener funciones para controlar directamente los sensores de ultrasonidos, infrarrojos, etc..

Después de pagar aproximandamente unos $145 por la placa y gastos de envio, en una semana nos llega a casa:

La placa, el cable usb para conectar al pc y un interruptor para conectar la batería a la placa.

El tamaño de la placa es pequeño y a ella conectaremos todo la electrónica del hexápodo directamente.


Con esta placa se pretende controlar todo el hardware, el primer objetivo es conseguir que ande, una vez conseguido esto quizás se pueda añadir otro microcontrolador más potente con un s.o., para controlar el robot desde el pc y que tenga al AVR para control de hardware y lectura de sensores. Pero de momento suficiente trabajo tiene hacer que este robot camine.

Para cualquier idea, duda, comentario: Foro.