Características generales.
Antes de pasar a la acción y describir una a una las placas de Arduino y sus compatibles correspondientes, me gustaría escribir sobre una serie de datos importantes que condicionan la elección de la placa Arduino según el uso que le vayamos a dar.
Lo principal que debemos saber es que tipo de proyectos vamos a implementar. Con esto nos da una idea de la cantidad de pines analógicos y digitales (normales y de tipo PWM o modulados por ancho de pulso para simular una salida analógica) que necesitamos para nuestro trabajo. Este primer escrutinio nos permite descartar algunas placas más simples que no tengan suficientes pines o, al contrario, descartar las de mayor número de ellos para reducir los costes puesto que con menos pines nos conformamos.
También podemos deducir el tamaño de código que vamos a generar para nuestros sketchs. Un programa muy largo, con muchas constantes y variables demandará una cantidad mayor de memoria flash para su almacenamiento, por lo que se debe elegir una placa adecuada para no quedarnos cortos.
La RAM será la encargada de cargar los datos para su inmediato procesamiento, pero no es uno de los mayores escollos, puesto que esto solo afectaría a la velocidad de procesamiento. La RAM va ligada al microcontrolador, puesto que ambos afectan a la agilidad de procesamiento de Arduino.
En los Arduino’s oficiales podemos diferenciar entre dos tipos fundamentales demicrocontroladores, los de 8 y 32 bits basados en ATmega AVR y los SMART basados en ARM de 32 bits y con un rendimiento superior, ambos creados por la compañía Atmel. En principio no debes guiarte por tu deseo de tener un chip de 32 bits, puesto que para la mayoría de proyectos que implementamos uno de 8 bits basta.
Por último, en cuanto al voltaje, no importan demasiado a nivel electrónico, excepto en algunos casos, para tener en cuenta la cantidad de tensión que la placa puede manejar para montar nuestros circuitos. Esto no supone mayor problema, puesto que una placa de Arduino podría trabajar incluso con tensiones de 220v en alterna con el uso por ejemplo de relés. Pero cuando queremos prescindir de una fuente de alimentación externa, hay que tener en cuenta que este es el voltaje que se puede manejar. Y entre otras cosas marcar el límite para no destruir la placa con sobretensiones no soportadas. Pero no confundas el voltaje al que trabaja el microcontrolador y al que funcionan los periféricos de la placa.
De todas formas, la placa más vendida y que es la más aconsejable para la mayoría de proyectos, sobre todo si estás empezando, es la Arduino UNO. Es suficiente para la mayoría de proyectos, tiene un buen precio y dispone de unos parámetros equilibrados.
Placas oficiales
De entre las placas oficiales puedes encontrar multitud de modelos. Todos especialmente pensados para un fin, compatibles con los shields y módulos oficiales, así como con Arduino IDE. Vamos a intentar detallar sus principales características para poder diferenciarlos entre sí:
- Arduino UNO (comprarla en nuestra tienda): es la plataforma más extendida y la primera que salió al mercado, por ello nos podemos basar en esta para hacer la comparativa con el resto de placas. Todas las características de esta placa estarán implementadas en casi todas las placas restantes, a excepción de algunas que ya veremos. Se basa en un microcontrolador Atmel ATmega320 de 8 bits a 16Mhz que funciona a 5v. 32KB son correspondientes a la memoria flash (0,5KB reservados para el bootloader), 2KB de SRAM y 1KB de EEPROM. En cuanto a memoria es una de las placas más limitadas, pero no por ello resulta insuficiente para casi todos los proyectos que rondan la red. Las salidas pueden trabajar a voltajes superiores, de entre 6 y 20v pero se recomienda una tensión de trabajo de entre 7 y 12v. Contiene 14 pines digitales, 6 de ellos se pueden emplear como PWM. En cuanto a pines analógicos se cuenta con hasta 6. Estos pines pueden trabajar con intensidades de corriente de hasta 40mA.
- Arduino Zero (comprarla en eBay): en aspecto es similar a Arduino UNO, pero esta placa esconde sorpresas con respecto a la plataforma UNO. En vez del microcontrolador Atmel ATmega basado en arquitectura AVR de 8 bits, el Zero contiene un potente Atmel SAMD21 MCU de 48Mhz con un core ARM Cortex M0 de 32 bits. Con 256 KB de memoria flash, 32 KB de SRAM y una EEPROM de más de 16KB por emulación. El voltaje en el que opera es de 3v3/5v (7mA) y contiene 14 pines E/S digitales, de los cuales 12 son PWM y UART. En el terreno analógico se dispone de 6 entradas para un canal ADC de 12 bits y una salida analógica para DAC de 10 bits. En definitiva, esta placa va destinada para los que Arduino UNO se les quede corto y necesitan algo más de potencia de procesamiento.
- Arduino Yun (comprarla en Amazon): se basa en el microcontrolador ATmega32u4 y en un chip Atheros AR9331 (que controla el host USB, el puerto para micro-SD y la red Ethernet/WiFi), ambos comunicados mediante un puente. El procesador Atheros soporta la distribución Linux basadas en OpenWrt llamada OpenWrt-Yun. Se trata de una placa similar a Arduino UNO pero con capacidades nativas para conexión Ethernet, WiFi, USB y micro-SD sin necesidad de agregar o comprar shields aparte. Contiene 20 pines digitales, 7 pueden ser usados en modo PWM y 12 como analógicos. El microcontrolador ATmega32u4 de 16Mhz trabaja a 5v y contiene una memoria de solo 32KB (4KB reservados al bootloader), SRAM de solo 2,5KB y 1KB de EEPROM. Como vemos, en este sentido queda corto. Sin embargo se complementa con el AR9331 a 400Mhz basado en MIPS y trabajando a 3v3. Este chip además contiene RAM DDR2 de 64MB y 16MB flash para un sistema Linux embebido.
- Arduino Leonardo (comprarla en Amazon): es una placa basada en un microcontrolador ATmega32u4 de bajo consumo y que trabaja a 16Mhz. La memoria flash tiene una capacidad de 32KB (4KB para el bootloader) y 2.5KB de SRAM. La EEPROM es de 1KB, también muy similar a Arduino UNO en cuanto a capacidades de almacenamiento. A nivel electrónico y de voltajes es igual al UNO. Pero este microcontrolador puede manejar 20 pines digitales (7 de ellos pueden ser manejados como PWM) y 12 pines analógicos. Como vemos, contiene los mismos pines que Yun, solo que prescinde de las funcionalidades de red. El volumen ocupado por Leonardo es inferior al de UNO, puesto que carece de las inserciones de los pines y en su lugar posee perforaciones con pads de conexión en la propia placa. Además las dimensiones del conector USB de la placa es mucho menor, ya que en vez de una conexión USB emplea una mini-USB para ahorrar espacio. Por eso es idóneo para proyectos en los que se requiera ahorrar algo de espacio, pero todo al mismo precio que UNO.
- Arduino Due (comprarla en Amazon): es una placa con un microcontorlador Ateml SAM3X8E ARM Cortex-M3 de 32 bits. Este chips que trabaja a 84Mhz (3,3v) aporta una potencia de cálculo bastante superior a los anteriores microcontroladores vistos. Por eso es idóneo para todos aquellos que necesiten de un proyecto con alta capacidad de procesamiento. Al tener un core a 32 bits permite realizar operaciones con datos de 4 bytes en un solo ciclo de reloj. Además, la memoria SRAM es de 96KB, superior al resto de placas vistas anteriormente e incorpora un controlador DMA para acceso directo a memoria que intensifica el acceso a memoria que puede hacer la CPU. Para el almacenamiento se dispone de 512KB de flash, una cantidad muy grande de memoria para cualquier código de programación. En cuanto a soporte de voltajes en intensidades es idéntica a UNO, solo que el amperaje de los pines se extiende hasta los 130-800mA (para 3v3 y 5v respectivamente). El sistema dispone de 54 pines de E/S digitales, 12 de ellos pueden ser usados como PWM. También tiene 12 analógicos, 4 UARTs (serie, frente a los dos de UNO), capacidades de conexión USB OTG, dos conexiones DAC (conversión digital a analógico), 2 TWI, un power jack, SPI y JTAG. Como vemos en cuanto a interfaz de conexionado está muy completo y permite multitud de posibilidades.
- Arduino Mega (comprarla en Amazon): su nombre proviene del microcontrolador que lo maneja, un ATmega2560. Este chip trabaja a 16Mhz y con un voltaje de 5v. Sus capacidades son superiores al ATmega320 del Arduino UNO, aunque no tan superiores como las soluciones basadas en ARM. Este microcontrolador de 8 bits trabaja conjuntamente con una SRAM de 8KB, 4KB de EEPROM y 256KB de flash (8KB para el bootloader). Como puedes apreciar, las facultades de esta placa se asemejan al Due, pero basadas en arquitectura AVR en vez de ARM. En cuanto a características electrónicas es bastante similar a los anteriores, sobre todo al UNO. Pero como se puede apreciar a simple vista, el número de pines es parecido al Arduino Due: 54 pines digitales (15 de ellos PWM) y 16 pines analógicos. Esta placa es idónea para quien necesita más pines y potencia de la que aporta UNO, pero el rendimiento necesario no hace necesario acudir a los ARM-based.
- Arduino Ethernet (comprarla en eBay): si deseas un Arduino UNO pero con capacidades Ethernet tienes dos opciones, comprar un Arduino UNO y un shield Ethernet para integrarlo, o la otra opción sería adquirir un Arduino Ethernet. Esta placa es bastante similar a la UNO, incluso en el aspecto, pero tiene capacidades de red. Su microcontrolador es un ATmega328 que trabaja a 16Mhz (5v). Va acompañado de 2KB de SRAM, 1KB de EEPROM y 32KB de flash. El resto de características electrónicas son como las de UNO solo que añade capacidad para conexión Ethernet gracias a un controlador W5100 TCP/IP embebido y posibilidad de conectar tarjetas de memoria microSD. Los pines disponibles son 14 digitales (4 PWM) y 6 analógicos. Lo que hay que tener en cuenta es que Arduino reserva los pines 10-13 para ser usado para SPI, el 4 para la tarjeta SD y el 2 para el interruptor W5100.
- Arduino Fio (comprarla en Amazon): es una placa Arduino reducida a la mínima expresión. Por su tamaño es especialmente considerado para proyectos móviles inalámbricas o para ser insertados en espacios reducidos. Funciona con un microcontrolador ATmega328P, una versión similar a la del Ethernet pero que trabaja a una frecuencia inferior, 8Mhz. Al ser tan reducida carece de ciertas comodidades, por ejemplo, para subir los sketches hay que usar un cable FTDI o una placa adicional adaptadora Sparkfun. Igualmente, las tensiones con las que se trabaja se ven mermadas hasta los 3.35-12v máximo. 14 pines digitales (6 PWM) y 8 pines analógicos serán los únicos disponibles en esta placa. Tampoco ayuda sus 2KB de SRAM, 32KB de flash y 1KB de EEPROM, todo esto limitará mucho el tamaño de los sketchs y del circuito del proyecto.
- Arduino Nano (comprarla en eBay): empezaron incorporando un ATMega328 como el de otras placas vistas anteriormente, pero tras la revisión 2.x se sustituyó por un ATmega168 a 16Mhz. Sus dimensiones son aun más reducidas que las de Fio, de tan solo 18,5×43.2mm. Su reducido tamaño no le quitan la posibilidad de ser una placa completa, pero si que necesita de un cable mini-USB y no posee conector de alimentación externa. Esta versión fue diseñada y producida por la compañía Gravitech, especialmente pensado para aplicaciones de reducido costo y donde el tamaño importe. A nivel eléctrico se comporta como un UNO, con 14 pines digitales (6 PWM) y 8 analógicos. Pero sus capacidades han ido a menos con las nuevas revisiones en pos de un menor consumo. Por ello se ha pasado de 32 a 16KB de flash (2 reservados al cargador de arranque), de 2 a 1KB de SRAM y de 1KB a 512 bytes de EEPROM.
- Arduino LilyPad (comprarla en Amazon): especial para ser integrado en prendas y textiles, es decir, es una versión de Arduino “ponible”. Fue desarrollado por Leah Buechley y SparkFun Electronics para ser empleado con los mismo fines que otros Arduino’s solo que con ciertas limitaciones a cambio de sus capacidades de integración y su base flexible. Se basa en dos versiones de microcontrolador diferentes, ambas de bajo consumo denominadas Atmega168V y ATmega328V, esta segunda más potente. Ambos trabajan a 8Mhz, pero la primera trabaja a solo 2,7v y a segunda a 5,5v. Dispone de 14 pines digitales (6 PWM) y 6 analógicos a lo largo de su perímetro. Además integra 16KB de memoria flash para el código del programa, 1KB de SRAM y 512 bytes de EEPROM.
- Arduino Pro (comprarla en eBay): contiene un microcontrolador ATmega168 o Atmega328, con versiones de 3.3V y 8Mhz o 5v para 16Mhz. Contiene 14 pines de E/S digitales (6 de ellos son PWM) y 6 pines analógicos. Esta placa diseñada y construida por SparkFUn Electronics integra entre 32KB y 16KB de flash según el microcontrolador en el que se base (2KB reservados para el gestor de arranque). Lo que si es común para todos los modelos es el KB de SRAM y los 512 bytes de EEPROM. A pesar de su nombre, la versión Pro no es una de las más potentes como podemos apreciar. Pero se ha concebido para usuarios avanzados que necesitan flexibilidad y precios bajos.
- Arduino Pro Mini (comprarla en Amazon): es la hermana pequeña de la versión Pro. Además de la flexibilidad y precios bajos hay que añadirle su reducido tamaño. Para reducir coste y tamaño dispone de los componentes mínimos (sin conector USB Integrado ni conectores de pin). El resto de características son muy similares a la versión Pro.
- Arduino Mega ADK (comprarla en Amazon): placa basada en un ATmega2560 como la versión Mega vista anteriormente. Pero su principal ventaja es que dispone de una interfaz preparada para ser conectada mediante USB a dispositivos móviles basados en Android, gracias a su IC MAX3421e. Esto permite contar con todas las capacidades de una placa Arduino Mega (igual en cuanto al resto de características) más las posibilidades de desarrollo conjuntas con una plataforma Android.
- Arduino Esplora (comprarla en Amazon): se diferencia del resto de placas, a parte de su reducido tamaño y por su forma, en que dispone de una serie de sensores onboard. Es bueno para las personas que comienzan a dar sus primeros pasos en el mundo de la electrónica y están aprendiendo, de ahí su nombre. Incluye unos sensores (acelerómetro, temperatura, luz), zumbador, botones, joystick, micrófono y un socket para conectar una pantalla a color TFT LCD. Funciona con un microcontorlador ATmega32u4 que trabaja a 16MHz y 5v, con SRAM de 2,5KB y 1KB de EEPROM. La flash llega a los 32KB con 4KB reservados al bootloader. El mayor problema es su capacidad de conectividad, casi nula, ya que todo lo tiene integrado para los principiantes (una de las cosas que limita su capacidad y por la que no se aconseja para gente que quiera profundizar algo más en la electrónica y desee mayor flexibilidad).
- Arduino Micro (comprarla en Amazon): diseñado por Adafruit y pensado para una autonomía elevada y con un reducido tamaño. Su precio es bajo con respecto a otros modelos. Sin embargo cuenta con características similares a otros diseños, como un microcontrolador ATmega32u4 a 16Mhz, 20 pines digitales (7 de ellos PWM) y 12 analógicos. En muchos aspectos es similar a Leonardo, pero con capacidad de comunicación USB built-in, eliminando la necesidad de un segundo procesador.
- Arduino BT (comprarla en Amazon): es una placa Arduino con un módulo Bluetooth incorporado y que permite comunicación inalámbrica sin necesidad de comprar un shield independiente. El módulo bluetooth incorporado es un Bluegiga WT11. El resto de características son similares al Arduino UNO, con microcontrolador ATmega168 o 328 a 16MHz.
- Arduino Duemilanove (comprarla en eBay): apareció en 2009, con microcontrolador ATmega168 o 368, 14 pines digitales (6 con posibilidad PWM) y 6 analógicos. Contiene conexión USB, entrada de alimentación, una cabecera ISCP, botón de reset,… todo bastante parecido a UNO ya que se trata de una versión previa que fue sustituida por UNO en la actualidad.
- Arduino Diecimila (comprarla en eBay): otra placa antigua basada en chip DIP ATmega168 a 16Mhz, con 14 pines digitales (6 PWM) y 6 analógicos. El resto de características son similares al más moderno UNO que se ha sacado al mercado para sustituir a estos diseños más primitivos. El modelo “Diecimila” debe su nombre a “diez mil” en italiano, modo en el que se festejó el hecho de haber vendido más de 10.000 placas Arduino en la época en la que se sacó a la venta. Fue una de las placas más antiguas de Arduino, sacada en 2007.
Placas no oficiales (compatibles)
Solo analizaremos las más famosas puesto que como ya dije existen centenares de ellas y probablemente cada día nazcan más de estas placas. Si que es verdad que la mayor atención la debemos tener sobre los modelos oficiales por cuestiones de soporte y de comunidad de desarrolladores que resultan obvias, pero hay que reconocer que algunas placas compatibles son ciertamente interesantes:
- AVR.duino U+: SlicMicro es el creador de esta placa compatible, tanto en hardware como en software, con Arduino UNO Rev3. Esta plataforma de hardware open source añade características frente al oficial. Para poder pasar tu código desde Arduino IDE debes seleccionar la opción Arduino UNO Rev3 como si ésta fuese tu placa y el código cargará sin problemas. Las características adicionales que integra (SlicBus Port, un LED adicional, potenciómetro, pulsador). El resto es igual al Arduino, incluido su ATmega328 que comparte con algunas versiones oficiales. Esta placa es interesante para aquellos que buscan las características combinadas de Arduino UNO y de Esplora, aunque más limitada en gadgets onboard que esta última. Lo que si es una ventaja es su puerto SlicBus que permite conectar módulos especiales fabricados por SlicMicro.
- SainSmart UNO y Mega (comprarla en eBay): son dos placas SainSmart totalmente compatibles con Arduino UNO y con Arduino Mega que han seguido a la rama oficial paso a paso, incluso en las revisiones (véase SainSmart UNO Rev3). Incluso en el aspecto físico y color son bastante idénticas a las oficiales, por no decir en sus características técnicas, empleando hasta el mismo microcontrolador. El precio de Mega ronda los 15 euros y la versión UNO los 8 euros. Como ves, la gran baza de estas placas es su precio frente a las oficiales. Algunas características es la utilización de un chip ATmega8u2 programado para controlar el USB y convertirlo a serie en vez del método empleado anteriormente con chip controlador. También es distinta el encapsulado de los chips, que en estas placas es más avanzado que el primitivo DIP del UNO oficial.
- Brasuino: se basa en UNO con LEDs re-ordenados, conector mini-USB, alteración de la patilla 13 del circuito para reiniciar el LED y una resistencia que no interfiere en la función del pin cuando actúa como una entrada. Fue diseñado con software libre como KiCAD y se distribuye bajo licencia GPLv2. Por el resto de características es idéntico al oficial y totalmente compatible con éste. Ha sido creado por los brasileños de Holoscopio para estudiantes, diseñadores y aprendices del mundillo de la electrónica. Pero tengan en cuenta que su disponibilidad está más limitada que el stock de los oficiales.
- ChibiDuino2: creado por los nipones de TiisaiDipJp. Es compatible con UNO e incluye dos mini-USB B, un puerto para un LCD 1602 y un área breadboard. Por el resto es de características similares al oficial, excepto en su tamaño, que es más reducido, por su distribución y su precio es bastante económico.
- Diavolino: creado por Evil Mad Scientist Laboratories es una versión compatible con el layout (es decir, los pines se encuentran en el mismo sitio y por tanto es compatible con los shields oficiales) de Arduino UNO y diseñada para el uso de un cable USB-TTL serial. Su diseño es atractivo porque rompe con el colorido convencional. El diseño surge de la necesidad de un hacker de San Francisco de tener una placa de bajo coste para la enseñanza.
- Freeduino (comprarla en eBay): es uno de los más famosos de entre los no oficiales creado por Solarbotics, es una placa totalmente libre para los amantes del código abierto. Se vende en versiones SB, NANO y Mega, entre otras, y compatibles 100% con sus respectivas versiones oficiales. En la imagen podemos apreciar Freeduino SB (compatible con Duemilanove), con un diseño muy rudimentario que casi da sensación de casero. Pero no se deben dejar engañar por las apariencias, sus posibilidades son las mismas que las de los oficiales.
- Rascal: compatible con los shields de Arduino oficiales, pero se programa en lenguaje de programación Python. Esto hace que sea interesante para los iniciados en el mundo de la programación, ya que Python posiblemente sea el mejor lenguaje para comenzar a programar, sencillo y simple. Esto contrasta con las posibilidades avanzadas que permite implementar. Rascal Micro ha creado esta placa con un microcontrolador basado en ARM, el AT91SAM9G20. Esta placa nació en Massachusetts, en 2011 y aunque su precio es elevado (unos 175 dólares), puede ofrecer posibilidades que ninguna oficial tiene. Se podría decir que es una mezcla entre un mini-PC con posibilidad de ejecutar Linux, con puertos de red y slot SD para el almacenamiento, y una placa de Arduino compatible con sus shields. Además incluye software para crear un servidor web con ella. Desde el propio sistema se puede programar usando un editor basado en web muy sencillo y practico.
- Romeo 2012: DFRobot ha creado esta placa especialmente pensada para los amantes de la robótica o la mecatrónica. Es totalmente compatible con Arduino UNO Rev3 pin a pin y sus características electrónicas y de programación son similares. Lo interesante es que incluye una serie de características onboard que no tienen los oficiales, destacando por ejemplo el controlador de motores (de dos direcciones y hasta 2A). Otra características es un socket Xbee que permite iniciar el proyecto inmediatamente, sin necesidad de un controlador de motor adicional o shields Wireless. Funciona además con un microcontrolador Atmega32u4, acompañado de multitud de pulsadores programables y un socket para un módulo APC220 y Bluetooth.
- Roboduino (comprarla en eBay): es un derivado de Arduino UNO diseñado para robótica credo por Curious Inventor. Es compatible con el oficial, con un precio de unos 30 euros. Como puedes apreciar en la fotografía, tiene una serie de pines paralelos para conectar sensores y servomotores de una manera más fácil, al igual que incluye conexiones de alimentación y comunicación serial adicionales.
- Seeeduino (comprarla en eBay): SeeedStudio ha creado esta placa compatible, tanto a nivel físico como a nivel de software, con Arduino Diecimila oficial. Por tanto no habrá problema al emplear Arduino IDE y los shields oficiales. En su versión primera poseía un ATmega168, pudiendo optar por un ATMega328 a partir de la v2.21. Ciertas partes han sido remodeladas para aportar mayor flexibilidad y una buena experiencia de usuario.
- Twenty Ten: Freetronics creó esta placa compatible y basada en Duemilanove con un área de prototipado incluida, LEDs, conector mini-USB y un pin 13 alterado para que el LED y resistencia no interfieran con la función del pin cuando está activado como entrada.
- Zigduino: Logos Electromechanical ha creado este kit que es más que una simple placa. Integra un microcontrolador ATmega128RFA1, un ZigBee para conexiones a red inalámbrica (IEEE 802.15.4). También incluye un jack externo RPSMA y es totalmente compatible con Arduino Duemilanove. Al implementar estas funcionalidades de red sin necesidad de shields externos, el precio de la placa supera los 50 euros.
- Faraduino: es una placa desarrollada por Middlesex University Teaching Resources. Es compatible con los shields oficiales, con un transistor H-bridge integrado, con terminales para montar motores de corriente continua integrados (3 servos), etc. Por cierto, para los más curiosos, su nombre se debe al famoso Michael Faraday. Todo se ofrece en un kit que puedes adquirir junto a unos complementos para Faraduino especialmente pensados para la educación en las escuelas y el aprendizaje de la robótica.
- Motoduino: Guibot ha sido la encargada de crear esta placa con un ATMega328 y un L293D con doble puente en H para el control de motores sin necesidad de elementos externos adicionales. Por el resto de características, esta placa china es compatible con Arduino. Esta placa resulta interesante para crear vehículos con motores eléctricos y el uso de motores en pequeños robots.
- FlyDuino Mega (comprarla en eBay): diseñado por Paul Bake para ser compatible totalmente con Arduino Mega pero con características especiales para ser utilizado para el diseño de vehículos autopilotados y autónomos con multirotor para aeronave. Es interesante si eres un apasionado de los aviones caseros o de los tan de moda drones. Su tamaño es reducido, como comprenderás muy importante para este tipo de vehículos donde el volumen y el peso son críticos.
No hay comentarios:
Publicar un comentario