Novedades

Los límites los pone la imaginación

27/04/2016
Ilan Cohn, estudiante de último año de la carrera de Ingeniería en Electrónica y docente del Taller de Innovación, cuenta sobre las placas Arduino, sus usos, posibilidades y desafíos. Afirma que "esta tecnología aporta un nuevo paradigma tanto en el uso amateur o comercial como en la educación".

Ilan Cohn, estudiante de Ingeniería en Electrónica¿Qué son las placas Arduino?

Arduino es una plataforma open-source (de hardware y software libres y abiertos) pensada para prototipado de manera sencilla y eficaz.

Su flexibilidad permite utilizar las placas fácilmente pero brindando funcionalidades requeridas para un uso avanzado.

Arduino nos brinda recursos que permiten la implementación de varios sistemas sin necesidad de conocer específicamente el "cerebro" de cada placa.

La gran ventaja y el gran recurso que tiene Arduino es su comunidad, al ser open-source, se tienen recursos que se van mejorando e implementando de diversas maneras.

Para tener una idea, únicamente en el foro oficial de Arduino hay más de 2,5 millones de posts realizados por más de 380 mil miembros. Si agregamos a estos los diferentes foros, artículos, reseñas, etc. el número es incalculable.

Estos tópicos incluyen desde las placas en sí, pasando por los diferentes sensores y actuadores y la conectividad con Internet, hasta utilizar Arduino como herramienta en el salón de clases.

¿Cómo funcionan?

La mayoría de las placas Arduino funcionan basadas en microcontroladores de la marca Atmel.

Un microcontrolador es una mini-PC dentro de un circuito integrado que tiene distintos tipos de memorias, un procesador, un manejo de entradas y salidas, interfaces de comunicación y demás.

Las placas Arduino vienen con lo que se llama un bootloader, que realiza un montón de inicializaciones (como habilitar la interfaz serial y los timers) de ese hardware y nos permite trabajar en más alto nivel.

Esta abstracción permite, además de utilizar el mismo programa en diferentes placas, focalizarnos en la lógica del programa en sí y no malgastar tiempo para realizar cosas que vienen incluidas en las librerías.

Todo aquel que trabajó con un microcontrolador sabe que necesita de un programador específico de la marca para poder programarlo pero con Arduino esto no se necesita. Simplemente baja el entorno de desarrollo y conecta la placa por USB. 

Las placas están pensadas para no necesitar de programadores externos. Aunque parezca un detalle menor, se cree que esta es una de las razones por las cuales han triunfado y se han instaurado en el mercado, ya que para muchos que recién están entrando en el mundo de la electrónica les parece difícil o complicado utilizar estas herramientas.

¿Qué aporta esta tecnología?

Esta tecnología aporta un nuevo paradigma tanto en el uso amateur o comercial como en la educación. Arduino es utilizado muchas veces para validar una idea dentro de startups o mismo dentro de empresas ya instauradas, dependiendo de la complejidad, en unas semanas se puede tener un prototipo funcional o muestra sobre lo que se desea desarrollar.

En cuanto a la educación, varios cursos de educación primaria enseñan a programar utilizando Arduino y se está utilizando en liceos y universidades para introducir gente al mundo de la electrónica. En la escuela generalmente se utiliza Scratch para programar las placas.

Cada vez más los fabricantes están realizando nuevas placas, sensores y actuadores compatibles con Arduino.

Esta gran oferta impacta directamente en el precio, se consiguen cada vez sensores y actuadores más complejos por precios más bajos. Incluso, hay fabricantes que buscan diferenciar sus productos y realizan librerías para Arduino de sus productos y tienen además ejemplos y guías.

¿Qué importancia práctica tienen las Arduino, qué se puede hacer con una placa?

Desde mi punto de vista, la mayor importancia práctica son los prototipados. Según Atmel, el 56% de las productoras de hardware utilizan Arduino para realizar prototipados.

Una placa Arduino maneja entradas y salidas, permitiendo realizar todo tipo de proyectos. Los límites los pone la imaginación. Para poner un ejemplo, podemos hacer que una Arduino controle nuestro aire acondicionado, mida la temperatura de un cuarto, controle un robot, nos notifique si suena la alarma de nuestras casas, etc.

Si bien Arduino es muy útil en diversos ambientes también hay que tener cuenta sus limitaciones. No se pueden utilizar en cuestiones de seguridad de salud o demás sin un estudio de la electrónica a fondo (a nadie se le ocurriría poner una Arduino para controlar un marcapasos).

No obstante, la robustez de la placa se la puede dar uno mismo. Es decir, como es todo abierto y libre uno puede comprar componentes de mayor calidad y tener los cuidados necesarios para un uso más profesional de esta tecnología.

¿Cuál es la conexión de las placas Arduino con Internet de las cosas?

Se está tendiendo globalmente al Internet of Things (IoT), donde Arduino es un gran protagonista. El sábado 2 de abril, en el Genuino Day 2016 (exArduino Day) hubo dos grandes noticias respecto a la interconexión entre Arduino e IoT.

La primera es el lanzamiento oficial al mercado de la nueva placa Arduino MKR1000. Esta placa incluye conectividad vía WiFi (IEEE 802.11 b/g/n), un procesador de 32 bits de bajo consumo, un reloj de tiempo real y preparada para su uso eficiente con una batería de polímero de litio (Li-Po). Es una especie de "starter kit" para el IoT.

La segunda, y con un cambio aún más profundo, es el lanzamiento de Arduino Create que incluye una plataforma de IoT como las ya conocidas como Microsoft e IBM, pero desarrollada por y para Arduino: Arduino Cloud.

Esta nos permite programar eventos o transmisión de mensajes de manera sencilla a través de Internet. Si bien está en versión beta, se puede comenzar a utilizar esta plataforma de manera experimental.

Otro gran cambio que incluye Arduino Create es Project Hub, un lugar para publicar proyectos realizados con Arduino, que está basado y fue hecho en conjunto con hackaday.io (uno de los sitios más populares de proyectos de electrónica).

¿Qué conocimientos previos se necesita para usar una?

Las placas se programan con Arduino IDE y se programan en C++. Si sabemos programar en cualquier lenguaje orientado a objetos (C#, VB, Java, Python, etc ) o C, será muy fácil empezar a utilizarla.

Se necesita tener conceptos básicos de programación como variables, funciones, condicionales y loops, además algo de electrónica básica. De hecho, el IDE en sí mismo viene con ejemplos y sus respectivos esquemas de conexión y materiales necesarios en la web.

Resumiendo, cualquier estudiante de tecnología a nivel liceal puede comenzar a utilizar estas placas. Por supuesto, que a medida que se desean hacer cosas más complejas con diferentes dispositivos, se necesita entender más a fondo sobre electrónica. Es un buen camino para iniciarse en el mundo de la electrónica.

Recursos académicos