Hoy la palabra de moda en cuanto a electrónica digital y desarrollos rápidos, eficaces y sorprendentes es Arduino. En muchos colegios técnicos están trabajando con este nuevo producto que se presenta como una solución a muchos de los problemas de aprendizaje e interacción del alumno con la tecnología. ¿Cuáles son los motivos que llevan a creer que a partir de una plataforma pre-armada pueda ser más sencillo aprender? ¿Que tiene de especial? Hagamos una comparativa y evaluemos si es tan sorprendente como nos lo venden.
-
-
Si a este gran sumario le agregamos las características de código abierto que brinda el sistema, estamos sin duda ante un producto digno de ser analizado. La facilidad de desarrollar elementos interactivos y la posibilidad de comenzar a utilizar Arduino sin conocimientos previos sobre electrónica, nos tientan a seguir leyendo e investigando acerca de él. El prometedor suceso de manejar motores, encender y apagar luminarias, actuar sobre sensores, y crear programas de computadora para interactuar con el sistema, nos entusiasma y nos permite imaginarnos a nosotros mismos sorprendiendo a la familia con la maravilla de la electrónica que hemos aprendido en ¿tres semanas? ¿No es muy rápido?
Arduino se basa en una plataforma denominada open hardware que reúne en una pequeña placa de circuito impreso (PCB) los componentes necesarios para conectar con el mundo exterior y hacer funcionar un microcontrolador Atmega. Actualmente hay varios modelos de sistemas Arduino que van cambiando de microcontrolador, siendo los primeros el Atmega8 y el Atmega168. Al ser Open-Hardware, tanto su diseño como su distribución son libres. Es decir, puede utilizarse sin inconvenientes para desarrollar cualquier tipo de proyecto sin tener que adquirir ningún tipo de licencia.
La placa es de muy fácil montaje, con pocos componentes periféricos al microcontrolador. Si hemos comprado el kit para armar, será muy sencillo seguir los pasos de guía de los múltiples tutoriales que se encuentran en la red para ponerlo a funcionar. Bastará un pequeño soldador, algo de estaño y los materiales del kit para que, en una tarde, la placa completa pueda estar entregando su magia en nuestra mesa de trabajo.
Una vez armada la placa con sus componentes, resta colocar en ella el microcontrolador y programarla. Pero si creemos que no estamos preparados para armarla nosotros mismos, o si queremos ahorrar tiempo, podemos comprarla ya hecha. La página oficial de Arduino nos informa de varios proveedores en todo el mundo, entre ellos lógicamente España. Será muy sencillo elegir el más próximo a nuestra localidad y adquirir el producto ya listo para usar.
En la actualidad, el fenómeno Arduino está creciendo rápidamente, al igual que la diversidad de modelos que puede elegir el cliente. Hay dos cuestiones principales que hacen la gran diferencia a la hora de elegir dichos modelos: la primera es el tipo de microcontrolador a utilizar, y la segunda es el modo de comunicación que poseerá la placa Arduino con el ordenador. Tal como dijimos antes, los tipos de microcontroladores son dos: Atmega8 y Atmega168. La diferencia entre ambos es la capacidad de memoria interna que poseerán para almacenar el programa que diseñemos e introduzcamos en él.
Diagrama en bloques del Hardware Arduino
En cuanto a la comunicación de Arduino con el ordenador, encontramos que ésta se realiza por Puerto Serie (RS232), Puerto USB (utilizando un FT232BL para la interconexión), o por el sistema ICSP (In Circuit Serial Program) en aquellos casos en que el deseo del usuario sea una unidad autónoma (stand alone) sin necesidad de interacción con el ordenador para su actividad y desarrollo de funciones. Recordemos que la comunicación se utiliza tanto para la interacción de Arduino con el ordenador (cuando el programa grabado en el dispositivo así lo requiera) como para la programación del microcontrolador.
Un ejemplo sencillo de unidad autónoma es una alarma domiciliaria con sensores mecánicos, infrarrojos y actuadores de sirenas. En cambio, si se trata de una unidad que interactúa con el ordenador, puede ser una pequeña central meteorológica que vaya almacenando datos y mostrando en pantalla (en tiempo real) la información obtenida en cada instante. Por último, al software encargado de “crear” el programa que hará funcionar al microcontrolador lo podemos descargar también gratuitamente desde el sitio oficial de Arduino. Actualmente se encuentra disponible la versión Arduino 0015, en versiones disponibles para Windows, MAC y Linux (32 bit).
La placa armada (comprada o hecha por nosotros mismos) consta de aquello que figura en la imagen anterior: un regulador de tensión para brindar al microcontrolador una tensión estabilizada de alimentación (5Volts), el conector de comunicaciones ICSP, y las 6 entradas analógicas para sensores de cualquier tipo, como ser potenciómetros, sensores magnéticos, termocuplas, LDRs, optoacopladores, fototransistores, y cuanto sensor analógico se nos ocurra. Vale aclarar que también puede conectarse allí la salida de cualquier amplificador operacional que haga las veces de buffer de entrada al sistema, brindando a la entrada seleccionada una mejor adaptación de impedancias, junto con una buena aislación y separación entre bloques circuitales. Por último, encontramos las I/O digitales que sirven para activar algún relé, luces, motores, etc.
Esto es Arduino. Muchos artistas y neófitos en la materia acuden a esta plataforma para acortar camino en el desarrollo de un sistema inteligente que produzca algún evento deseado a su salida en función de una eventual acción que provoquen en sus entradas. Por ejemplo, con sensores sensibles al tacto en sus entradas, podemos obtener la activación de sonidos polifónicos en alguna de sus salidas. ¿Y por qué acortan camino? Porque compran algo hecho, moldeable como la arcilla húmeda, que les brinda resultados tangibles a las pocas horas de tenerlo a través de información gratuita (también ya hecha y lista para ser descargada de la Web). Es decir, en Arduino hay muchas cosas sencillas ya hechas, sólo tenemos que elegir la que nos atraiga y sea útil a nuestro propósito, montarla y listo.
Comparativas e interrogantes
Charlando con un colega acerca de este fenómeno, comenzamos a profundizar en el tema y nos surgieron una veintena de interrogantes que pasamos a compartir contigo.- Arduino utiliza un Atmega168 o un Atmega8 (en su versión más económica). Este procesador y la placa (en cualquiera de sus versiones), ¿son más baratos que sus equivalentes en PIC (16F876A o similar)?
Un Atmega es 1 euro más barato que un PIC de similares características. Si contamos el hecho de que un Arduino cuesta cerca de 50 euros, la diferencia es mínima; además, debido a que voy a encontrar toneladas de bibliografía sobre PIC y no tanta sobre Atmega, voy a preferir PIC.
- ¿Se podría hacer una construcción de similares características a Arduino en lo funcional, pero con un 16F876A (conexión RS232 + entradas y salidas multipropósitos)?
Por supuesto. Incluso se puede mejorar restando entradas ADC que no se utilicen, configurando los registros internos del PIC, y pasando a tener más cantidad de I/O digitales que pueden ser vitales en el desarrollo. En la arquitectura Arduino, las I/O están determinadas de una forma inalterable. Entonces, para poder diseñar mi circuito a mi medida voy a preferir PIC.
- El Hardware de Arduino, ¿por qué se vende?
Tal vez porque hay gente que no sepa fabricarlo.
- ¿Tú o yo podemos fabricar placas Arduino y venderlas?
Si, claro. Lo mismo sería si alguien quisiese instalar Linux en su ordenador pero no supiese hacerlo. Nosotros podríamos cobrar por ese trabajo sin importar que estemos instalando algo que es gratis. Nuestro trabajo es lo que se cobra.
Vista del soft de programación de un Arduino
- El software para construir las aplicaciones de Arduino, ¿qué tiene de bueno, además de ser gratis? ¿Puede ser el hecho de que se programe en C?
Exacto. C es uno de los programas de mayor crecimiento en materia de programación de microcontroladores gracias a la simplificación de comandos y su lenguaje de alto nivel. Pero por otro lado, MPLAB es una herramienta distribuida por Microchip que también es gratuita y también nos brinda la posibilidad de trabajar en C. El bonus del MPLAB es que nos permite trabajar en ASM directamente, manejando los tiempos del microcontrolador a la perfección, y con la precisión exacta que nos brinde el cristal que estemos utilizando como clock del sistema. Es decir, con MPLAB se tiene el dominio absoluto de la acción a cada instante. Claro, no podemos programar Atmega con él, sólo PIC. Entonces, voy a preferir PIC.
- Si la programación es en lenguaje C ¿por qué no se usa CCS (en su versión demo, que es completamente funcional) para programar el Atmega que trae Arduino?
Por la misma razón que no se puede usar MPLAB: porque CCS es para PIC. La proporción de ventas de microcontroladores de PICs es altísima respecto a Atmega. Entonces, voy a preferir PIC.
- El MPLAB (que también se puede programar en C), ¿no es infinitamente más versátil, confiable y sobre el que se puede encontrar bibliografía de apoyo en cualquier rincón de la Web, en contraste con el soft creado especialmente para Arduino?
Por supuesto. Una gran compañía como Microchip avala esto. Entonces, voy a preferir PIC.
- Los Atmega, ¿son más fáciles de conseguir y más baratos que los PICs?
En cualquier distribuidor de España seleccionado al azar, Atmega es 1 euro más barato que PIC (a similares características). Además, si consideramos armar un producto final y sumamos los precios de Arduino más los accesorios periféricos a él, la diferencia respecto a PIC se hace mínima ya que se transforma en un 1% o 2% del coste final. Entonces, por mayor versatilidad y apoyo técnico, voy a preferir PIC.
- La programación en ICSP, ¿es más sencilla en Atmega que en PIC?
No, trabaja de similares características.
Ubicación del FT232BL en la placa Arduino
- ¿Conviene usar un Atmega con un FT232B por sobre un 18F2550 directamente?
No, en absoluto. Un sistema nativo es 100% más confiable respecto a un sistema adicional agregado. Entonces, voy a preferir PIC.
- ¿Conviene usar un Atmega con un RS232 por sobre un 16F876 con un RS232?
Ambos trabajan satisfactoriamente en una comunicación RS232.
- ¿Conviene usar un Atmega con un módulo Bluetooth por sobre un rfPIC de 2,4Ghz?
Es el mismo caso de la opción del uso del FT232B. Los rfPIC traen integrado el sistema de radiofrecuencia nativo, lo que los hace más confiables. Entonces, voy a preferir PIC.
- ¿Hay más literatura sobre MPLAB y PIC o sobre Atmega y Arduino?
MPLAB y PIC poseen una enorme cantidad de material de consulta bibliográfica respecto a Atmega, y mucho más aún respecto a Arduino. Infinito a 1. Entonces, voy a preferir PIC.
- ¿Qué se puede hacer con Arduino que no podamos hacer con un 16F876 y MPLAB?
Nada. Por el contrario, habría una interminable lista de cosas que Arduino no podría hacer y PIC sí. Entonces, voy a preferir PIC.
- ¿Hay más usuarios de Windows o de Linux?
De cada 10 usuarios, 8 usan Windows y 2 usan Linux. ¿Y esto qué tiene que ver con Arduino? La gente que elige Linux sabe que va a pertenecer a una minoría; sin embargo, encuentra utilidad en un campo que conoce y, por ende, encuentra satisfacción en ser artífice, protagonista, director y realizador de su propia obra. Con Arduino, esto no es posible. El usuario que elige esta última opción queda limitado a lo que el hardware le permite, viéndose imposibilitado de flexibilizar la arquitectura circuital, lo que sí podría hacer si optara por una estructura diseñada a base de PIC (o cualquier otro microcontrolador).
- ¿Hay más usuarios de Explorer o de Firefox?
De cada 10 usuarios, 6 usa IE y 4 Firefox (salvo en Europa). ¿Y esto en qué se relaciona con Arduino? Es lo mismo que la pregunta anterior. Cuando los padres van a comprar el ordenador a sus niños, piden en la tienda que saquen Linux e instalen Windows porque hay más videojuegos para el segundo. IE es nativo de Windows, por eso se utiliza más que Firefox, a pesar de que este último es infinitamente superior a IE por donde se lo mire. Entonces, las dos preguntas convergen en que el que sabe y le gusta manipular un producto para sacar mayor provecho de él no compraría el limitadísimo Arduino, sino cualquier expandible y experimentable microcontrolador de la marca que sea.
- Usar Arduino, ¿es ser "distinto y experimentador"? ¿Es como usar Linux?
Todo lo contrario. Es para aquel que no sabría desarrollar algo con microcontroladores y optaría por comprar algo hecho.
Encapsulado de un Atmega para Arduino
- Un 16F876A + MPLAB, ¿es superior a Arduino, en toda clase de prestaciones?
Es mucho más flexible por permitir el uso de ASM. Y más aún en los casos en que se desee utilizar alguna versión de BASIC para programar el PIC o interactuar con él (VB6 o cualquier aplicación). Con Arduino, estás atado al uso del soft que viene con el sistema, y si no sabes de programación no puedes variar sus características. O sea, no puedes salirte de la aplicación que te han vendido. Sí puedes interactuar con otros programas; pero para grabar el firmware dentro del microcontrolador, debes usar el específico de Arduino.
- Si Arduino fue creado para fomentar la cultura del software libre, ¿el kit de desarrollo no debería ser también GRATIS, financiado por alguna fundación acorde?
¿Y donde estaría el negocio?
- ¿Es Arduino una verdadera búsqueda del Open Hardware y Open Soft? ¿O es una estrategia de ATMEL para reposicionarse (intentar existir) en el mercado ante Microchip?
Atmel tal vez ni sepa que Arduino existe. La arquitectura Arduino fue concebida en un ámbito universitario donde se vio en ella la practicidad de comprar algo hecho, sin necesidad de trabajar ni pensar para comenzar a utilizarla y estudiarla.
Naturalmente los docentes aplaudieron esta iniciativa porque los liberaba de tener que enseñar desde hacer un PCB hasta soldar componentes; pasaban directamente a los hechos de enseñar programación en C. Por tratarse de un producto económico, el boom expansivo fue instantáneo. El estudiante recibía un producto listo para usar sin pensar ¿Qué más se podía pedir?Sitio Oficial de: ArduinoAdemás (recordemos que estas son opiniones personales) en Arduino se utilizó Atmel y no PIC para tratar de no recibir tan prontamente una catarata de productos similares que rápidamente lo superasen en prestaciones y posibilidades de expansión. Software gratuito para programar PICs hay hasta debajo de las piedras; para programar Atmel, no. Allí estaría la clave de su utilización. Repito, son opiniones personales.
- Si Arduino es para iniciarse, ¿cuantos años le puede llevar a un principiante que no sabe nada de electrónica armarse una placa Arduino conectable a USB?
Toda una vida. Saber soldar componentes electrónicos en un PCB no es información genética que se trae incorporada al nacer. Se debe aprender. Identificación de componentes, prolijidad, orden, buen gusto y ganas de aprender son características de pocos estudiantes. La inmensa mayoría está más pendiente del ordenador, los videojuegos, el teléfono móvil, etc. Soldar un FT232B en montaje SMD puede llevarle tres días a un novato y puede costarle 14 circuitos integrados quemados o con pines arrancados y 3 placas con el circuito impreso destruido.
En la foto se ve muy sencillo porque es la forma de vender el producto, pero la práctica es muy distinta. Es como ver a nuestro ídolo en acción: él lo hará todo fácil. Cuando nosotros intentamos lo mismo, puede suceder un desastre.Conclusiones
Arduino es lo tuyo si eres estudiante y deseas con poco dinero hacer un par de juegos de luces o algún pequeño robot; también te conviene si sabes algo de programación en PC y deseas armar algo para deslumbrar a tus amigos, a las chicas y a tus padres, o si te gusta soldar componentes y armar pequeños cacharrillos que vas encontrando en la Web. Es un entrenador para ingresar de lleno al mundo de los microcontroladores. Pero mira bien y consulta con los que saben antes de comprar. Otros fabricantes de microcontroladores pueden ofrecerte un producto muy superior en todo sentido, y hasta por menos dinero.Si no tienes conocimientos previos de programación, ni sabes soldar componentes, ni puedes distinguir una resistencia de un diodo, debieras solicitar ayuda antes de embarcarte en la empresa de trabajar en esto. Si bien todo con esfuerzo se consigue, es mejor hacerlo con una guía al lado.
Pero si, en cambio, lo tuyo es la experimentación, el desarrollo de equipos avanzados electromecánicamente que sean capaces de interactuar con el medio ambiente de manera inteligente, debes saber que Arduino no fue ideado para personas como tú. Microchip, Atmel, Freescale y muchos otros fabricantes brindan soluciones reales a construcciones verdaderamente importantes. Las cosas que fueron ideadas para que los niños aprendan, o para que aquellos a los que no les interese estudiar demasiado puedan lograr algunas pocas acciones, no sirven para el desarrollador electrónico que llevas en tu interior.
Existen en la Web, además, muchos sitios hispanos donde encontrarás desarrollos de software libre iguales, y hasta en la mayoría de los casos, muy superiores a Arduino. Sólo basta una simple recorrida por la red para descubrir que hay muchos anónimos allí afuera, que también hacen maravillas y las comparten con los demás, sin necesidad de bombos ni platillos. Arduino es un juguete educativo, un entrenador de un microcontrolador específico como cualquier otro, no más que eso. La diferencia está en que hoy es moda y comodidad. Las aplicaciones importantes y/o industriales son otra cosa.
-
¿Y tú, qué opinas?
-
#1pilotito sábado, 04 de abril de 2009, 21:52
Pues visto lo visto, en gran parte estoy de acuerdo contigo. Entonces me gustaría saber si conoces el proyecto "pingüino" (http://www.hackinglab.org/pinguino/index_pinguino.html).
Es casi lo mismo, pero con un PIC de microchip. Lo interesante es que el PIC que usan tiene soporte Usb, con lo que además el montaje es mucho más sencillo. La pena es que como ya no envían samples (o eso dicen por ahí), no voy a poder probarlo. Pero me gustaría que me contases qué te parece.
-
#2Jorge sábado, 04 de abril de 2009, 22:51
Interesante este articulo pero les doy mi opinion con respecto a los PIC:
Estoy de acuerdo que son unos micros muy poderosos y posiblemente les gane en muchos aspectos a los Atmega8 y Atmega168. Sin embargo, estaba intentado buscar una solución para el mando de una silla de ruedas electrica que se quemó y no hay repuesto por ser obsoleta. Lo primero que pensé fue utilizar algún modelo de pic y comenzar con este proyecto hasta que hace unos meses, aquí en Neoteo hicieron el primer post sobre Arduino.
Me di cuenta al instante que era la solución ideal para este caso y otros más complejos.
Conclusión: Si tienes tiempo en aprender electrónica y tener en cuenta todos los det... Leer más -
#3
-
#4leodan domingo, 05 de abril de 2009, 00:19
y se puede armar una targeta madre con varios arduinos??? o hacer una pc con varios arduinos?
-
#5Daniel domingo, 05 de abril de 2009, 00:32
Me parece interesante, aunque Yo prefiero construir mi propio hardware (entiendase por hardware estos pequeños dispositivos capaces de correr programas, no voy fabricar una computadora), o "hackear" otros dispositivos que están diseñadas para fines específicos.
¿Para que voy a usar todo lo que trae Arduino si solo necesito un microcontrolador y unas cositas mas?
En cuanto al tiempo necesario de "toda una vida", yo creo que alguien que no sabe absolutamente nada, en poco tiempo puede aprender lo suficiente como para construirse su Arduino. -
#6ivan domingo, 05 de abril de 2009, 01:32
me parece que hay varios que no estan entendiendo el proposito de la nota, esto no es un atmel vs pic. El tema que creo que el autor intenta abordar es el hecho de que a la hora de aprender se use un microcontrolador con un hardware especifico (arduino) o analizando la problematica del caso, y en base a eso desarrollar el circuito electronico necesario.
Mi conclusion es que puedo recomendar arduino o cualquier tipo de modulo similar a el que vaya a especializar en por ejemplo mecanica o informatica, y no le interese meterse en el mundo de la electronica.
ahora alguien que si le interese, antes de meterse con un micro debe tener una base importante de lo que es la electronica.
Leer más -
#7
-
#8
-
#9brunushky domingo, 05 de abril de 2009, 09:05
#2Hola Jorge... me podrias comentar en Uruguay donde estan vendiendo Arduino?, Gracias.
-
#10
-
#11comrade k domingo, 05 de abril de 2009, 16:37
Buen articulo a proposito he buscado en la internet arduino para comprar y he encontrado muchas alternativas pero no se cual elegir por ejemplo hay el arduino que aquí presentan , el freeduino, inclusive hay uno que usa el procesador xeemy otras mas me podrian decir cual es el mejor y quisiera comprarlo aca en peru no se si habra algun distribuidor a nivel de suamerica.
-
#12kianji domingo, 05 de abril de 2009, 19:02
Muy interesante yo estoy en curso de programación de PIC en C, es lo que esta disponible en mi cuida mas fácilmente, el compilador es GPL y también una comercial.
Todo se simula rápidamente con proteus.
Pero seria fascinante usar ese micro Arduino. -
#13
-
#14Jorge lunes, 06 de abril de 2009, 05:02
Lamentablemente en Uruguay no se puede conseguir la mayoría de la electronica que esta disponible en el primer mundo. Incluso la facultad de ingeniería de aqui, compra mucho de sus componentes para sus proyectos en mouser.com segun una página de ellos. Mi arduino lo compré en e-bay
-
#15loky lunes, 06 de abril de 2009, 08:26
Hola hombre de la bolsa, para empezar debes de saber principios basicos de electricidad los libros de harry mielaf de electricidad tomos 1 al 7 te van a ayudar bastante.
te recomiendo te bajes el libro de electronica para dummies, haz una busqueda rapida en google junto con la palabra mediafire o rapidshare. en www.scribd.com, te puedes dar de alta y bajar los libros que la gente comparte, ahi puedes buscar cursos de electronica tambien. pronto en mi blog, yo creo que 2 semanas hare referencia a electronica. ahora bien hay una pagina donde puedes bajar muchos libros, se llama www.somosmecatronica.net es muy buena.
Si me dices mas o menos que es lo que tienes que hacer, te p... Leer más -
#16Jorge lunes, 06 de abril de 2009, 15:28
#11En America del Sur hay solo 2 distribuidores por ahora y están en Chile y Argentina.
Para comenzar te recomiendo el Duemilanove o Diecimilia. El freeduino es un clon y también funciona bien.
En modern devices venden productos compatibles.
-
#17
-
#18Robocardo martes, 07 de abril de 2009, 05:18
Lo que no entiendo es porque en todas las comparativas prefieren a PIC vs ATMEL. Me parece que la comparación no es justa, porque? Bueno, porque debieran comparar a ARDUINO con alguna placa similar. Entonces cuando se habla de mucha bibliografía para la placa hecha con PIC y poca para Arduino que responderían. EMPATE.
Cuando se comparan otros aspectos en todos los casos llegarían a la misma conclusión.
Cada uno resuelve usar el microcontrolador que mejor le resulta para su proyecto. Yo he trabajado con ATMEL, PIC, Rabbit, Motorola y hasta Dallas.
En cada caso se priorizó ya sea una ventaja económica o técnica. Hoy todo es muy cerrado, tanto ATMEL como Microchip tienen solu... Leer más -
#19brunushky miércoles, 08 de abril de 2009, 05:15
#14Que pena... si justamente el no encontrar componentes o encontrarlos muy caros fue lo que me llevo a alejarme de la electronica ( y parece que seguire asi por un tiempo mas)...... igual de todas formas muchas gracias por la respuesta Jorge.
-
#20vr jueves, 07 de mayo de 2009, 21:53
#9En chile lo distribuye Olimex, www.olimex.cl. Inluso ahora están vendiendo el Arduino Mega, mucho más poderoso.
-
Cargando...
-
nuevo comentario
Nombre Campo obligatorio
Email Escriba una dirección de correo electrónico con el formato sunombre@ejemplo.com.
Campo obligatorio
-



