ARD01 – Introducción a Arduino

Facebooktwittergoogle_pluslinkedinmailFacebooktwittergoogle_pluslinkedinmail

BIENVENIDOS

Este texto pretende ser una guía de mis experiencias y las de otras personas en el entorno Arduino. Aunque empezaremos exponiendo algunas bases teoricas y a lo largo del manual haremos referencia a conceptos de programación, el conjunto pretende ser eminentemente práctico, en plan de aprender a hacer las cosas haciéndolas, más que estudiando sobre ellas. Los autores hemos huido de los tecnicismos académicos en la medida de lo posible.

Sólo esperamos que disfrutes tanto experimentando y aprendiendo con Arduino como lo hicimos nosotros.

QUÉ ES ARDUINO

Esta es, sin duda, la primera cuestión que debemos abordar. Mucha gente ha oido el término y, de algún modo, saben que tiene algo que ver con programación o con ordenadores, pero no saben de que va. ¿Es un lenguaje? ¿Algún entorno de desarrollor? ¿Un programa de oficina?

Arduino es un sistema que permite conectar el ordenador con el mundo físico, de forma que podamos interactuar, por programación, con objetos del mundo exterior.

En concreto, el entorno Arduino nos permite emplear el ordenador para interactuar con sensores de luz, temperatura, etc, así como con otros dispositivos electrónicos.

Arduino está compuesto, a grandes rasgos, por una pequeña plaquita de circuito impreso que incorpora una microcontroladora y una pequeña capacidad de memoria, y por un IDE (entorno de desarrollo) que nos permite programar esa plaquita como decidamos hacerlo.

Por supuesto, la definición anterior simplifica muchísimo la cuestión. Ya veremos que el entorno Arduino es mucho más amplio, pero aquí solo estamos “asomando el hociquito”.

La plaquita de Arduino, por ejemplo, constituye el corazón del sistema pero, para poder hacer “algo” con ella es necesario el uso de otros componentes y elementos. En el apartado siguiente, “La parte física (hardware)” vamos a conocer esta plaquita y algunos de los elementos básicos que necesitaremos.

La parte física (hardware)

El corazón de Arduino es un circuito impreso con una microcontroladora y poco más que está englobado dentro de lo que se llama Harware Libre. Esto significa que el esquema electrónico está libremente disponible en Internet y culquiera puede fabricarse libremente (e, incluso, vender) sus propias plaquitas Arduino. Sin embargo, debido a su bajo coste, merece la pena adquirirla hecha. En seguida daremos algunas referencias sobre donde se puede consegur esta placa y otros componentes y elementos que necesitaremos.

A lo largo de la corta pero intensa vida del proyecto Arduino han salido al mercado diferentes versiones de la placa. Si bien físicamente puede muy parecidas, nosotoros aconsejamos recurrir, como punto de partida, a la versión UNO, que es la más actual en el momento de escribir estas líneas. En las figuras 1.1.x ves algunas versiones de Arduino fotografiadas.

Figura 1.1.a. Placa Arduino Uno, que usaremos en nuestros primeros montajes.

Figura 1.1.a. Placa Arduino Uno, que usaremos en nuestros primeros montajes.

Una descripción más detallada de las tarjetas Arduino la iremos viendo según sea necesaria o conveniente a los fines didácticos que perseguimos, pero ya apreciamos algunos detalles comunes entre todas ellas:

  • Todas poseen un botón de reset, para devolver la placa a su estado de reposo tras ejecutar un programa.
  • Todas poseen un conector USB para conectarla a un ordenador (en el caso de la nano y la leonardo es micro usb, pero eso es indiferente).
    arduino_leonardo

    Figura 1.1.b. Placa Arduino Leonardo

  • Todas poseen un conector para alimentación Vcc (entre 7 y 12 V) para poder ejecutar el programa que hayamos cargado aún desconectando la placa del ordenador. Normalmente se usa para esto una pila de 9 V. En las primeras placas Arduino se empleaba un jumper (conector de pines intercambiable) para seleccionar, como fuente de alimentación, el USB o la alimentación externa; las placas actuales seleccionan de modo automático la alimentación disponible en cada caso.
    arduino_nano

    Figura 1.1.c. Placa Arduino Nano

  • Todas tienen un chip que es la microcontroladora, y algunos comoponentes adicionales para operar normalmente.
  • Todas tienen unos pines de conexión para actuar como entrada y / o salida de datos, para actuar sobre dispositivos electrónicos o recibir información de sensores.

En el caso de la Arduino UNO, las características técnicas básicas son las siguientes:

  • Microcontroladora: Atmega328
  • Voltaje de operación: 5V
  • Voltaje de entrada (Recomendado): 7 – 12V
  • Voltaje de entrada (Límite): 6 – 20V
  • Pines para entrada- salida digital: 14 (6 pueden usarse como salida de PWM)
  • Pines de entrada analógica: 6
  • Corriente continua por pin IO: 40 mA
  • Corriente continua en el pin 3.3V: 50 mA
  • Memoria Flash: 32 KB (0,5 KB ocupados por el bootloader)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Frecuencia de reloj: 16 MHz
    arduino_mega

    Figura 1.1.d Placa Arduino Mega. Tiene más prestaciones, pero también más tamaño.

Seguramente, si acabas de llegar al mundillo Arduino, estos datos no te aporten, al menos por ahora, nada de interés. Más adelante irás entendiendo diversos conceptos.

Figura 1.2. Representación habitual, para esquemas de montaje, de la placa Arduino Uno.

Figura 1.2. Representación habitual, para esquemas de montaje, de la placa Arduino Uno.

En los ejemplos que veremos en este libro usaremos, con carácter general, el símbolo que ves en la figura 1.2 para representar la placa Arduino, más cómodo, a efectos didácticos, que las fotografías de las figuras 1.1.x. Como ves en ambas figuras, la placa Arduino incorpora en los dos laterales más largos una filas de agujeritos, conocidos también con el nombre de pines o piedinos, que usaremos para conectar la placa, medicante cablecillos insertables, con componentes, sensores u otros elementos electrónicos, de forma que podamos interactuar con ellos.

 


LAS CONEXIONES DE LA PLACA ARDUINO.

Vamos a echar un vistazo rápido a las conexiones de la placa Arduino. Realmente entenderos su uso y funcionalidad cuando empecemos a “hacer cosas” con la placa pero, al menos, un breve resumen para empezar.

Aparte del conector USB (que se usa para alimentar la placa y transferir datos entre esta y el ordenador) tenemos un conector de alimentación independiente. Este nos permite alimentar la placa, de forma que si ya tiene un programa cargado puede ejecutarlo sin conexión al ordenador.

En la parte inferior tenemos las conexiones de salida de alimentación, por donde la placa suministra tensión a dispositivos externos. Están agrupadas bajo el rótulo POWER. Los terminales GND son de masa (el negativo, en tensión continua). También vemos salidas de 3.3 y de 5 voltios, para distintos dispositivos. La salida de 3.3 V es una alimentación de 5 V filtrada por un regulador de tensión. Estas salidas de 3.3 y de 5 V son, exactamente, eso: salidas. No intentes usar estos pines para suministrar tensión a la placa, ya que podrías dañarla permanentemente (vamos, que a la basura, y a la tienda a por otra). Tambiñen deberemos tener en cuenta que las placas de Arduino, dependiendo de su versión, pueden trabajar con dispositivos con un consumo máximo de 150 mA. Hablaremos de este particular en otro artículo de esta serie.

Bajo el rótulo ANALOG IN tenemos seis entradas analógicas, nominadas de A0 a A5. Se usan para enviarle a Arduino señales que pueden variar de forma analógica, de un valor mínimo a un máximo, como las procedentes de un potenciómetro o un sensor de luminosidad, por ejemplo. Correctamente programado, Arduino reconocerá el valor de estas señales y actuará en consecuencia.

En la parte superior tenemos 14 pines digitales, cada una de las cuales se pueden configurar independientemente, por software, como de entrada o salida. Las que están marcadas con el guarismo ~ (PWM) pueden configurarse como salidas analógicas. Las salidas digitales solo ofrecen dos estados: activadas (HIGH) o desactivadas (LOW). una salida analógica puede tener diferentes niveles de señal de salida. Hablaremos sobre la técnica PWM, que permite emular señales analógicas a partir de digitales en los primeros experimentos que hagamos con Arduino.

LA PLACA PROTOBOARD

Para montar circuitos electrónicos de forma fácil, barata, rápida y cómoda, sin recurrir a soldaduras, usaremos una protoboard, como la que vemos en la figura 1.3.

Figura 1.3. Representación esquemática de una placa Protoboard

Figura 1.3. Representación esquemática de una placa Protoboard

Es una placa llena de agujeritos en los que se pueden insertar los terminales de los componentes electrónicos que necesitemos. La separación entre los agujeros es tal que los componentes de patás cortas y rígidas, como los circuitos integrados, encajan perfectamente, sin forzarlos. Otros componentes con terminales más largos y flexibles, tales como resistencias, condensadores, etc, se pueden insertar cómodamente en los agujeritos que necesitemos.

Los agujeros de la placa protoboard están conectados electricamente por dentro, siguiendo un esquema de conexión que la experiencia de los fabricantes y usuarios ha determinado como el más adecuado para montajes caseros.

La placa aparece “dividida” en cuatro zonas, de arriba abajo, como vemos en la imagen. La primera y última zonas son iguales. Están formadas por dos filas de agujeritos. Todos los agujeritos de una fila están conectados entre sí. Los agujeritos de la otra fila también están conectados entre sí. Así montados, se pueden usar como un bus para distribuir alimentación, tal como aparecen rotulados, a lo largo de toda la placa.

Figura 1.4. Fotografía de una Protoboard real.

Figura 1.4. Fotografía de una Protoboard real.

En cada una de las zonas centrales encontramos 30 columnas de cinco agujeritos. Los cinco agujeritos de cada columna están conectados entre sí, y aislados del resto de las columnas.

En la figura 3 vemos unas líneas grises muy finas que revelan el conexionado interno de la placa. En la figura 1.4 vemos una fotografía de una placa protoboard real.

Aunque parezca pequeña, el tamaño de esta placa es apto para una gran cantidad de montajes y, dado que está diseñada de forma modular, puedes unir cuantas necesites para tus dieseños.

Como base física para nuestros montajes emplearemos una placa conectada a nuestro circuito Arduino, mediante dos cablecillos para llevar la alimentación de Arduino a la protoboard, como vemos en la figura 5.

Figura 1.5. La protoboard con el bus de alimentación conectado a la salida de tensión de Arduino.

Figura 1.5. La protoboard con el bus de alimentación conectado a la salida de tensión de Arduino.

DONDE CONSEGUIR LA PARTE FÍSICA

La placa de Arduino, así como la placa protoboard, y los componentes electrónicos que emplearemos en las primeras etapas de este libro pueden comprarse a muy bajo coste, tanto por Internet como en tiendas físicas. Te recomiendo que recurras a un pack comercial conocido como Arduino Starter Kit, que contiene lo más fundamental (Las placas, componentes, cablecillos de conexión, etc.). Puedes encontrarlo en los siguientes enlaces. Este kit es muy completo para emprezar, está muy bien concebido y sale a un precio muy asequible. Con grastos de envío puede rondar los cien euros. Si bien puede parecer una cantidad significativa, las facilidades que nos presta para iniciarnos hacen que mereszca la pena. El kit incluye gran cantidad de componentes para diversos montajes, y un libro muy cómodo de leer y de usar en los comienzos, que es de lo que se trata.

De este kit hay dos ediciones: la que trae el libro en español y la que lo trae en intaliano (y puede que alguna más). Si puedes, intenta conseguirlo en tu propio idioma. Es más cómodo.

http://www.amazon.es/ARDUINO-Arduino-Starter-Kit/dp/B00L7Z2J6A/ref=sr_1_1?ie=UTF8&qid=1433233757&sr=8-1&keywords=the+arduino+starter+kit

http://www.electronicaembajadores.com/Productos/Detalle/-1/LCA1KA1/kit-arduino-starter-kit

EL SOFTWARE DE ARDUINO

Tenemos una placa electrónica programable. Ahora necesitamos una herramienta de software que nos permita programarla. Para ello existe un IDE, específicamente diseñado para Arduino, que podemos descargar de http://www.arduino.cc/en/Main/Software. Dependiendo de nuestra plataforma de trabajo (Windows, Linux o Mac) deberemos elegir la versión adecuada. En mi caso empleo Windows 7, así que descargaré el instalador necesario y lo ejecutaré.

El IDE nos permitirá desarrollar programas para arduino (se guardan en el odernador con la extensión .ino), compilarlos y cargarlos, por USB en la placa Arduino, además de otras funciones que iremos conociendo. Los programas que escribamos se conocen, genéricamente con el nombre de sketches. Un sketch es un programa para que Arduino haga “algo”. Sin embargo, antes de empezar a escribir y probar sketches aún debemos hacer la instalación y puesta en marcha.

INSTALACIÓN DEL IDE DE ARDUINO.

Una vez descargado procederemos, en primer lugar, a instalar el IDE de Arduino. El instalador es el típico (en el caso de Windows), como vemos en las siguientes imágenes, que revelan el proceso (figura1.6.x).

Figura 1.6.a. Primera fase de la instalación del IDE de Arduino.

Figura 1.6.a. Primera fase de la instalación del IDE de Arduino.

Figura 1.6.b. Segunda fase de la instalación del IDE de Arduino.

Figura 1.6.b. Segunda fase de la instalación del IDE de Arduino.

Figura 1.6.c. Tercera fase de la instalación del IDE de Arduino.

Figura 1.6.c. Tercera fase de la instalación del IDE de Arduino.

Figura 1.6.d. Cuarta fase de la instalación del IDE de Arduino.

Figura 1.6.d. Cuarta fase de la instalación del IDE de Arduino.

Figura 1.6.e. Quinta y última fase de la instalación del IDE de Arduino.

Figura 1.6.e. Quinta y última fase de la instalación del IDE de Arduino.

También es posible que te salga una ventana de aviso como la del a figura 1,7 en algún momento de la instalación. Se refiere a la instalación de un driver que permita gestionar los puertos USB desde el IDE de Arduino. Pulsa el botón Instalar. Es totalmente seguro.

Ahora tenemos que configurar el software de Arduino para que pueda comunicarse con la placa.

Empezamos conectando la placa Arduino al ordenador mediante USB y abrimos el software desde el acceso directo que se ha creado en el escritorio, y que vemos en la figura 8.

Figura 1.7 Confirmación de USB Driver.

Figura 1.7 Confirmación de USB Driver.

Figura 1.8. Acceso directo al IDE.

Figura 1.8. Acceso directo al IDE.

Nos encontramos con una pantalla de trabajo en la que lo primero que vamos a hacer es decirle al IDE que modelo de placa vamos a usar y por que puerto se va a comunicar.

Hacemos esto a través del menú de Herramientas, tal como vemos en las capturas de pantalla de las figura 1.9.x.

Con esto ya tenemos listo todo lo que necesitamos para empezar a trabajar. En el próximo capítulo analizaremos la estructura básica de un skecth Arduino y escribiremos nuestro primer sketch, lo que nos permitirá sentar los conceptos fundamentales de la programación en este entorno.

Figura 1.9.a. Estableciendo el modelo de placa.

Figura 1.9.a. Estableciendo el modelo de placa.

Figura 1.9.b. Estableciendo el puerto.

Figura 1.9.b. Estableciendo el puerto.

Puede que encuentres el IDE de programación de Arduino un poco tosco y rudo al principio, sobre todo si estás acostumbrado a trabajar con otros IDES en otros entornos. A nosotros nos pasó. Más adelante conoceremos interesantes alternativas, en otros artiículos de esta serie pero, por ahora, mejor que nos acostumbremos al oficial, aunque no parezca, en principio, la mejor opción. A disfrutarlo.

     

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *