
Arduino hay uno solo
Desde sus orígenes, las dos ramas de la empresa Arduino (Arduino LLC y Arduino SRL) operaron en forma prácticamente independiente. El pasado mes de octubre decidieron trabajar juntas y combinarse en una única entidad corporativa llamada Arduino Holding, con miras a potenciar su aporte de innovaciones a mercados florecientes como IoT (Internet de las cosas) y wearables.
El ecosistema Arduino nació cuando el profesor Massimo Banzi (cofundador de la empresa) y varios de sus alumnos crearon los primeros dispositivos Arduino, pensados principalmente como herramientas educativas. Debido a que son altamente adaptables, dichos dispositivos son especialmente aptos para enseñar a los estudiantes cómo crear controladores de hardware y manejarlos mediante software.
En el año 2005, Banzi y sus asociados crearon la compañía Arduino LLC, dedicada a vender placas Arduino en EE.UU. Más tarde, Gianluca Martino (otro de los socios fundadores) estableció Arduino SRL en Italia para dedicarse a vender productos Arduino en todo el mundo excepto EE.UU. Las dos compañías entraron en conflicto cuando Arduino LLC intentó expandirse fuera de EE.UU. No lograron ponerse de acuerdo y comenzaron a competir entre ellas, desarrollando cada una sus productos en forma independiente.

Ahora que las dos compañías se combinaron, Arduino Holding tendrá el control total de la marca y de las ventas de dispositivos. “Hoy es uno de los mejores días en la historia de Arduino”, comentó Banzi al momento de anunciar la unión de las dos ramas. “Esto nos permite comenzar un nuevo rumbo para Arduino, basado en el diálogo constructivo y en innovar para los ámbitos de educación, inventores de dispositivos e IoT”.

El nuevo holding creará a su vez una nueva organización sin fines de lucro llamada Arduino Foundation que funcionará como un recurso para el software Open Source Arduino creado por el holding y por desarrolladores independientes. La fundación también brindará becas y proveerá soporte para los desarrolladores y las comunidades, de forma tal de incentivar un mayor desarrollo del software Arduino. “La fundación nos permitirá manejar los valores claves de la comunidad Arduino dentro del ecosistema Open Source y fortalecer más que nunca nuestro compromiso con Open Source”, agregó Banzi.
“Estamos encantados de poder resolver las cuestiones que tuvieron lugar durante el último par de años, y el equipo está trabajando en forma conjunta para continuar ofreciendo el mejor hardware y software abierto”, dijo Federico Musto, CEO y presidente de Arduino SRL. “Sabemos lo apasionados que son nuestros socios y desarrolladores, y su crecimiento y su lealtad han sido sorprendentes. Los desarrolladores Arduino continuarán viendo avances técnicos fascinantes, como NFC (Near-Field Communication), BLE (Bluetooth low-energy), control de voz y más, para incentivar el crecimiento de IoT y de otras innovaciones”.
Se espera que la combinación de las dos empresas se complete para fines de este año. Con los equipos de diseño de cada compañía trabajando juntos, es muy probable que veamos emerger varios nuevos diseños Arduino durante el próximo año, incorporando tecnologías de ambas compañías.
LA PUERTA DE ENTRADA AL MUNDO ARDUINO
Un dispositivo Arduino es básicamente una placa microcontroladora de desarrollo open source que puede usarse para leer sensores y controlar cosas tales como motores y luces. Se pueden cargar programas en la placa para interactuar con cosas físicas, creando dispositivos inteligentes que respondan y reaccionen al mundo real.
Ejemplos sencillos de dispositivos Arduino pueden ser un sensor de humedad conectado a una maceta para activar un sistema de riego si la tierra se encuentra seca, un dispositivo que publique un tweet cada vez que un gato pasa a través de una puerta de mascota, o una cafetera que se encienda cuando suena el despertador por la mañana.
Básicamente, Arduino puede interfacear con cualquier cosa que esté controlada por electricidad. O incluso si no utiliza electricidad, pueden usarse otras cosas (como motores o electroimanes) para interactuar con ella.
Lo primero que hay que conocer de Arduino es la variedad de modelos que existen. En la página de hardware Arduino (http://www.arduino.cc/en/Main/hardware) puede obtenerse la lista completa, pero los más populares actualmente son el Arduino Uno, Arduino Mega 2560, Arduino Mega ADK (para interfacear con teléfonos Android) y Arduino LilyPad (para wearables y aplicaciones e-Textiles. También hay versiones “legacy”, como NG, Diecimila y Duemilanove, que carecen de algunas de las características que se encuentran en Arduino Uno.

La clave del éxito de Arduino es que es económico, se conecta directamente en el puerto USB de cualquier computadora y es muy simple para configurar y usar, en relación a otras placas de desarrollo.
Entre las características principales de Arduino Uno se destacan su diseño open source, lo que garantiza el respaldo de una comunidad con gente dispuesta a ayudar a debuggear cualquier proyecto.
La interfaz USB de Arduino Uno permite conectarlo a cualquier PC y “mostrarse” como un puerto serie virtual, lo que hace posible interfacear con el dispositivo como si se controlara un puerto serie. El beneficio de esto es que la comunicación en serie representa un protocolo sencillo y ampliamente testeado, a la vez que la conexión USB permite conectarlo a computadoras modernas, carentes de puertos serie reales.

La administración de energía de Arduino también es muy sencilla. Puede conectarse a una fuente externa de hasta 12 V, los cuales regula internamente a 5 V y 3,3 V. También puede alimentarse por medio del puerto USB, sin requerir energía externa.
El “cerebro” del microcontrolador es ATMEGA328, un chip de muy bajo costo y muy fácil de encontrar. Tiene incontables funciones de control de hardware como temporizadores, pines PWM, interrupciones externas e internas y múltiples modos de sueño. Su velocidad de 16 MHz no lo hace precisamente el microcontrolador más veloz del mundo, pero es lo suficientemente rápido para la mayoría de las aplicaciones. 32 KB de memoria flash lo acompañan para aportar almacenamiento de código.
Los 13 pines digitales y 6 pines analógicos de Arduino Uno permiten conectarlo al hardware externo. Estos pines son clave para extender la capacidad de cómputo de Arduino al mundo real. Simplemente se deben conectar los dispositivos y sensores en los sockets que corresponden a cada uno de esos pines para que comience la magia.
HOLA MUNDO
Antes de poder hacer cualquier cosa con Arduino, es necesario descargar e instalar el IDE (entorno de desarrollo integrado) en la PC que se usará para desarrollo. El IDE puede obtenerse en esta página: http://www.arduino.cc/en/Main/software. Utiliza un lenguaje derivado de C y C++.
El siguiente paso consiste en conectar el Arduino con la PC mediante un cable USB común e indicar, en el IDE, el tipo o versión del dispositivo y el puerto serie virtual al que está conectado.
Los programas Arduino se denominan sketches. El IDE incluye grandes cantidades de sketches precargados, por lo que es muy fácil usar cualquiera de ellos para comenzar a usar el dispositivo sin necesidad de programar. El programa “Hola mundo” (el primero que se escribe para poner a prueba un lenguaje o IDE) en versión Arduino es Blink. Su única función es encender y apagar el LED conectado al pin número 13 de la placa Arduino. El programa Blink básicamente configura el pin D13 como output y luego hace parpadear el LED en la placa a una frecuencia determinada.
Una vez que Blink está abierto en el IDE, puede instalarse en el chip ATMEGA328 haciendo clic en el botón Upload. En cuanto comience a funcionar, el LED en el Arduino comenzará a parpadear. Puede cambiarse la frecuencia del parpadeo modificando la duración del delay, y utilizando el botón Upload en cada cambio.
ESCUDOS
Los shields (escudos) de Arduino son placas adaptadoras que extienden la funcionalidad de la placa. Dado que Arduino es hardware abierto, cualquiera puede construir un shield para lo que desee. Existen incontables shields disponibles, y la lista crece incesantemente, como puede verse en el “playground” de Arduino (http://www.arduino.cc/playground/Main/SimilarBoards). Hay muchos más shields en existencia de los que se hallan en el playground, que pueden encontrarse fácilmente en Google.
Tres shields oficiales (Wireless SD, Ethernet y Motor) ofrecen una visión somera de las capacidades de estas extensiones de hardware. Wireless SD cumple dos funciones: por un lado, permite interfacear fácilmente con los módulos transceptores Xbee y así crear redes y dispositivos inalámbricos. En segundo término, el socket micro SD permite almacenar y brindar acceso a una gran cantidad de información.
El shield Ethernet otorga a Arduino conectividad con Internet, dándole la posibilidad de enviar y recibir información hacia y desde cualquier parte del mundo. Puede usarse para cosas tales como controlar robots desde páginas web o tocar un timbre (físico) cada vez que se recibe un mensaje de email. Este shield abre un enorme abanico de posibilidades al dar acceso a Internet a cualquier dispositivo Arduino.
Por último, el shield Motor ofrece la posibilidad de controlar la dirección y velocidad de un motor mediante un dispositivo Arduino. Al permitir direccionar los pines de Arduino, simplifica la tarea de incorporar un motor en el dispositivo. También otorga la posibilidad de encender un motor con una fuente separada de hasta 12 V.
HACER NEGOCIOS CON ARDUINO
Una revisión superficial de las cosas asombrosas que pueden hacerse con Arduino, sumada al bajo costo de los elementos requeridos para comenzar, son suficientes para tentar a cualquiera a lanzarse a plasmar ideas locas en productos de hardware innovadores. Pero debe tenerse en cuenta que, una vez superada la fase “entretenida” de experimentación, se concluye con un prototipo que eventualmente hay que convertir en un producto comercializable.
Llega entonces el momento de pensar en un modelo de negocios, y para ello puede utilizarse como fuente de inspiración el éxito alcanzado por empresas como SparkFun, Adafruit o Evil Mad Scientist, entre muchas otras. Dado que sus negocios se basan en el hardware open source, el intercambio de conocimiento entre estas empresas es la base de su crecimiento, y su principal fuente de ingresos es el fluir constante de nuevas ideas que estimulen la creación de productos novedosos.