Cultura electrónica: Arduino



A comienzos del siglo XXI el campo de la electrónica era algo poco extendido, solo aquellas personas que habían realizado estudios técnicos de Ingeniería o Física, al respecto, y algunos entusiastas que lo tenían como hobby, poseían el conocimiento, y la capacidad para aplicarlo, en el desarrollo de sistemas propios desde sus casas. Todo esto dió un cambio a partir del año 2005 con la aparición de Arduino.


¿Qué es Arduino?



Figua 1. Arduino UNO.

Arduino es una plataforma open-source conformada por un sistema electrónico, una placa de desarrollo de microcontroladores, no obstante, lo que realmente hace de Arduino lo que es, es la capa de abstracción hardware que hay detrás, la cual permite que la programación de la placa sea muy simple e intuitiva dejando de lado el conocimiento sobre electrónica y el hardware de la misma y permitiendo subir de nivel en el lenguaje de programación.

La plataforma Arduino hace llegar a la electrónica a cualquiera que quiera experimentar con ella, no se precisa de conocimientos técnicos sobre electrónica para conseguir hacer funcionar un proyecto, esto además permite enseñar electrónica sin la frustración resultante de tener que aprender cómo funciona cada hardware específico (registros internos).


Historia

La historia que hay detrás de Arduino es un tanto turbia, investigando para hacer esta entrada me he encontrado con una gran cantidad de contradicciones así que lo que detallo a continuación no es más que la conclusión a la que he llegado a través de analizar distintas fuentes (que no tienen por qué ser fiables, a pesar de que es lo que cuentan los fundadores de Arduino).

La génesis de Arduino se remonta al proyecto final de master del colombiano Hernando Barragan, en el Instituto de Diseño Interactivo Ivrea (Italia), los supervisores de la tesis eran Massimo Banzi y Casey Reas (uno de los fundadores de Processing). El proyecto, buscaba crear un sistema de desarrollo electrónico basado en un microcontrolador, que tuviera la simplicidad y forma de ser del lenguaje de programación Processing con el fin de que el sistema pudiera ser utilizado por artistas y diseñadores sin que se precisara de un amplio conocimiento técnico sobre electrónica o el hardware del sistema. Así, el proyecto de Hernando Barragan culminó en 2003 con la aparición de la plataforma Wiring, la predecesora de Arduino.

El proyecto seguía la filosofía Maker y era por tanto completamente libre y abierto (open source) tanto en hardware como en software ya que provenía y hacia uso de Processing (también abierto). Barragan, terminado el Master y de vuelta en Colombia siguió trabajando en Wiring e intentó llevarlo al mercado, pero al mismo tiempo Massimo Banzi reinvento al sistema Wiring (básicamente dando soporte a microcontroladores de la familia atmega8) buscando llevar a los estudiantes del ámbito académico un sistema de desarrollo de microcontroladores que permitiera el aprendizaje de electrónica de modo que fuera más barato que las placas de desarrollo que existían en el mercado de entonces. Así, en 2005, el equipo Arduino (Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, David Mellis y Nicholas Zambetti) sacó las primeras placas Arduino, ramificación (fork) de Wiring y a un precio menor que las que Barragan intentaba llevar al mercado, de esta forma, a pesar del trabajo de Hernando Barragan en Wiring, el equipo de Arduino venció de forma comercial en el asunto (claramente la incorporación al equipo de Gianluca Martino, como contacto para la fabricación barata de las placas, y Tom Igoe, como consejero, contribuyeron a este fin).


La plataforma Arduino


Figura 2. Algunas placas Arduino.


Desde su aparición, el equipo Arduino ha sacado multitud de placas distintas basadas en microcontroladores que presentan diversas funcionalidades y capacidades (más o menos memoria interna, tamaño, número de pines GPIO, USB, Ethernet, Bluetooth…) y siguen en ello. La más reconocida de todas ellas es el Arduino UNO (que presenta un microcontrolador AVR atmega328, de Atmel). Si se precisa de una mayor cantidad de pines de entrada/salida el Arduino Mega (con microcontrolador atmega2560) cumple con dicha función. Por otro lado, si buscamos un pequeño tamaño, se opta por un Arduino micro (microcontroladores atmega168/328).

La programación de todas estas placas se realizan mediante un software específico, el entorno Arduino IDE a través del conector USB de la placa (no se requiere de un programador externo).

Figura 3. Clon de Arduino UNO: Robotduino UNO (3 eur).

Dependiendo del tipo de placa, el coste varía; para el Arduino UNO, tenemos un precio entorno a los 25 euros; no obstante, existen una gran variedad de empresas competidoras (sobre todo en Asia) que, debido a la filosofía open-source del sistema, sacan “clones” de Arduino, completamente compatibles con el resto de la plataforma, a un precio irrisorio (en aliexpress se pueden encontrar clones Arduino UNO por menos de 3 euros, es decir un precio 8 veces menor). Cabe decir que, aunque sean placas “chinas” o “clones” de Arduino, no por ello son diferentes en cuanto a la calidad del sistema (tengamos en cuenta que las placas originales, puede que se ensamblen en países occidentales como Italia, pero los componentes a ensamblar se crean en fábricas localizadas en Asia, así que el que una placa sea original sólo implica que sus componentes se soldaron en la placa en la fábrica “oficial” y llevan el sello de original. La única diferencia sustancial que nos afecta entre los “clones” y los “originales” radican en el conversor USB-Serie que utilizan, ya que los “clones” para conseguir un precio aún mucho menor (aparte de lo ya quitado por no requerir de intermediarios y por pagar la marca) suelen utilizar el circuito CH340 frente al atmega16u2 usado en el original, esto implica que se requieran de distintos drivers.

Figura 4. Bluetooth Shield y Ethernet Shield.

Además de las placas Arduino, para facilitar la creación de proyectos electrónicos, han aparecido los llamados Shields, placas de electrónica físicamente compatibles con los Arduinos para apilarlas directamente sobre ellos, e implementan una gran variedad de interfaces y funcionalidades: crear interfaces de usuario (Shields de LCD y botones, Shields Gamepad…), manejar electrónica de potencia (Shield de reles, Shields controladores de motores…), sensar el entorno (Shields de sensores de temperatura, humedad, estaciones meteorológicas completas…), dotar a Arduino de comunicación inalámbrica (Shields Wifi, Bluetooth, Zigbee, RF…), sistemas de medida inercial (Shields con acelerómetros, giroscópios y magnetómetros; Shields GPS…), etc.


Empresas Arduino

Figura 5. Arduino LLC vs Arduino SRL.

Volviendo a los Arduino originales, nos encontramos con los llamados Genuinos. Estos, a pesar de variar su nombre respecto a Arduino, son originales y han aparecido como respuesta a la confrontación que mantuvieron en 2015 Arduino LLC, empresa creada por el equipo original de Arduino, y Arduino SRL, empresa anteriormente perteneciente al miembro del equipo Gianluca Martino. Y es que anteriormente, las placas oficiales se fabricaban para Europa por parte de Martino en la empresa Smart Projects, mientras que Arduino LLC se encarga de la fabricación para América. Pero a finales de 2014, Martino cambio el nombre de la empresa Smart Projects a Arduino SRL, posteriormente al cambio, Martino vendió parte de sus acciones de la empresa a una firma Suiza, la cual adquirió los derechos y estableció como CEO a Federico Musto; desde ese momento, Arduino LLC y Arduino SRL entraron en conflictos legales. Debido a esto, actualmente, existen dos empresas de Arduino, la original (https://www.arduino.cc/) y la de Federico Musto (http://www.arduino.org/). Mientras se soluciona el conflicto legal, es la empresa de Musto la que tiene el derecho para fabricar placas de nombre Arduino en europa, por ello, Arduino LLC se vio obligada a desarrollar placas Arduino, dentro de América, y placas denominadas Genuino para el resto del mundo. 

 

Conclusiones

El lenguaje de programación de Arduino comienza a estandarizarse de forma que muchos otros sistemas hardware comienzan a adoptarlo para su desarrollo. Desde microcontroladores PIC de Microchip, con el llamado MPide, los MSP de Texas Instrument, mediante Energia, STM de STMicroelectronics, con Maple, etc. Por otro lado, también sistemas más complejos como el SOC ESP8266 se han hecho compatibles con el entorno Arduino y permiten su programación y carga en placa del código como si de un Arduino se tratase. 

Arduino es, por tanto, un pilar fundamental dentro del mundo Maker y el hardware libre, supuso un antes y un después en la electrónica y dio lugar a sistemas innovadores actuales tales como las impresoras 3D de bajo coste y los drones; fomenta el aprendizaje de electrónica y la lleva a un gran número de personas. Sin embargo, a pesar del carácter open-source de la propia plataforma, el extraño origen del sistema y las confrontaciones entre las dos empresas Arduino me deja el mal sabor de boca de que existe la posibilidad de que todo Arduino se ha desarrollado y gira en torno al tema económico.


Enlaces recomendados: 


Comentarios

Entradas populares de este blog

Tips electrónica: Reparar punta de soldador (Baño electrolítico)

Introducción a la electrónica III: Potencia eléctrica y consumo

ESP32 - Preparando el sistema Windows para desarrollar mediante el ESP32-IDF SDK