Introducción a Arduino

Introducción a Arduino

En este capitulo aprenderá a:

  • Conocer la familia Arduino.
  • Utilizar el entorno de programación.

¿Qué es Introducción a Arduino?

De manera formal se podría decir que la Introducción a Arduino es una plataforma de realización de prototipos electrónicos compuesta tanto de hardware como de software. En la parte correspondiente al hardware, Arduino dispone de una serie de tarjetas programables compuesta básicamente por un microcontrolador (basado en los ATMEGA8, ATMEGA168, ATMEGA328 de Atmel o familias de estos), un cristal oscilador y un regulador lineal de 5 voltios y que ofrece un cierto numero de entradas y salidas tanto analógicas como digitales(pines de entrada y salida).

La función del oscilador es proveer al microcontrolador de una serie de pulsos que permiten que pueda funcionar a una determinada velocidad. Dependiendo de los modelos de Arduino tendrán unas u otras entradas y salidas adicionales, por ejemplo, la de USB, En general las placas Arduino utilizan microcontroladores de 8 bits excepto la Arduino Due que es de 32 bits.


Nota:

En electrónica se distinguen los microcontroladores de los microprocesadores en que los microcontroladores suelen estar pensados para tareas específicas mientras que los microprocesadores son de uso más genérico. Otra diferencia estriba en que los microprocesadores necesitan de elementos externos para proporcionar entradas y salidas y gestión de memoria, mientras que los microcontroladores tienen embebidas estas funcionalidades. Ejemplos de microprocesadores son los Motorola 68000 o los Intel Pentium, mientras que los microcontroladores tenemos los Atmel AVR o los Texas Instruments TI MSP430.

Si queremos explicar de una manera mas informal, definiremos Arduino como un pequeño ordenador al que se le puede programar para interactúe con el mundo real, bien ofreciendo salidas o reaccionando a una serie de entradas.

Tanto las entradas que puede entender la tarjeta como las salidas que ofrece son de naturaleza eléctrica , dicho de otro modo , el hardware Arduino solo entiende electricidad , así queremos hacer un termómetro , necesitaremos leer la temperatura de alguna manera , transformar el valor en electricidad , procesarlo mediante Arduino y valernos de algún otro medio para volver a  transformar el valor eléctrico en algo utilizable por el mundo real(si es humano por ejemplo mediante una pantalla o si es un actuador como por ejemplo una válvula, adecuar la salida eléctrica a lo esperado por ella).


Para obtener información del mundo exterior, Arduino utiliza sus entradas de modo que reciben impulsos eléctricos, mediante diferentes elementos se capta la realidad para transformarlo en corriente eléctrica como pueden ser acelerómetros, detectores de ultrasonidos, botones es lo que comúnmente se llaman sensores.

Por ejemplo, podríamos hacer un detector de proximidad mediante un botón que cuando algo este cerca lo apriete … pero quizá es demasiado cerca … mejor usar un detector de ultrasonidos ¿no? En cada situación deberemos seleccionar el sensor que mas se adapte a las necesidades.

El hardware ofrecido por Arduino junto con su entorno de programación está pensado para ser utilizados por personas sin preparación específicos de programación ni electrónicos … bueno, un poco si necesita, pero no es necesario tener grandes conocimientos para realizar montajes realmente interesantes y útiles.


Existen multitud de modelos de Arduino, desde las mas potentes como la Arduino Mega, con 54 puertos digitales de entrada y salida y 16 entradas analógicas, hasta pequeñas piezas tales como Arduino mini especialmente pensada para montajes en los que el espacio es un inconveniente e incluso algunas tan curiosas.

LilyPad desarrollada para utilizar en ropa y complementos electrónicos o la Esplora con múltiples sensores (micrófonos , pulsadores, acelerómetro, sensor de temperatura) y actuadores(altavoz, leds…) ya incluidos en la placa, lo que la hace ideal para aquellos que quieren utilizar rápidamente una placa sin tener conocimientos de electrónica  o para controlar algún otro dispositivo.

. Para el desarrollo de periféricos destinados a la plataforma de movilidad Android, existe la Arduino Mega ADK (Accesory Development Kit), ya preparada para conectividad con dispositivos móviles con sistema operativo Android.

Placas Arduino Esplora, Mini y LiliPad.


Además, también hay múltiples tarjetas compatibles realizadas por la comunidad como por ejemplo la Freeduino o la Roboduino y es tanto los esquemas del hardware Arduino como el código fuente de su software son libres, cualquiera puede acceder a ellos y crear sus propias placas y venderlas.

Además, todas estas placas copias de Arduino, normalmente mantienen la disposición de los pines de modo que cualquier complemento existente para la original como los shields.

Pese como se ha visto existen varias placas Arduino, nos centraremos en una de las más extendidas, concretamente la Arduino uno (muy semejante a la Arduino Duemilanove).

Placa Arduino Uno R3


Shields

Para facilitar los montajes con piezas requieran conexiones complejas o múltiples (como por ejemplo pantallas TFT), los fabricantes ponen a disposición de Arduino unos bloques de conexiones ya ensambladas a modo de placas que se montan directamente sobre la tarjeta Arduino, siendo totalmente operables nada más ser colocadas. Estos bloques son conocidos como shields(escudos) y existen de muchos tipos (Ethernet, GPS…).

Shields Ethernet y GPS


Arduino UNO

Como se ha comentado anteriormente, modelo de placa Arduino a utilizar, es la Arduino Uno por ser la más difundida. Su aspecto ya se pudo ver en una figura anterior, pero vamos a ver que es cada una de las partes de la placa.

Pin de referencia analógico:

  • GND:
  • Pines Digitales: son los zócalos donde conectar los sensores y actuadores que necesiten señal digital.
  • Salida Serial TX:
  • Entrada serial RX:
  • Botón reset: Sirve para inicializar de nuevo el programa cargado en microcontrolador.
  • Microcontrolador: El cerebro de la placa. Actualmente se montan con un ATmega328 de Atmel, pero se pude encontrar con microprocesadores ATmega8 o ATmega168, en tal caso las conexiones son idénticas. En cuanto a memoria consta de 32kb de memoria Flash, 2k de SRAM y 1K de EEPROM.
  • Fuente de alimentación externa: Se utiliza para alimentar la placa si no se usa alimentación vía USB.
  • Pines analógicos: zócalo con distintos pines de entrada analógica que permiten leer entradas distintas d ellos 0 y 1 digitales.
  • USB: Se utiliza tanto para conectar con el ordenador y transferir los programas al microcontrolador como para dar electricidad a la placa. También se puede usar como puerto de transferencia serie hacia la placa, tanto para transmisión como para recepción.
  • Pines digitales: Son los zócalos donde conectar los sensores y actuadores que necesiten señal digital.

Entorno de programación

Para ejecutar el entorno de programación habrá que seleccionar el fichero arduino.exe(o Arduino en Linux y Mac) dentro del directorio de donde se ha descomprimido el fichero .zip. El aspecto del entorno de desarrollo es el de la figura, aunque dependiendo del sistema operativo que se este utilizando puede haber ligeras diferencias, el aspecto general es muy similar

Entorno de desarrollo de desarrollo de Arduino.

Se puede observar que la ventana del entorno de desarrollo esta dividida en tres partes horizontales (sin contar los menús , ya que en Mac no se encuentran en la ventana); la parte superior corresponde a una botonera con las acciones mas comunes, la parte central será donde realicemos el trabajo de programación , donde encontrara el código fuente también llamado sketch, mientras en la parte inferior corresponde a la salida de la consola, donde se podrán ver errores y mensajes de información durante el proceso de codificación.

Debajo de esta consola se encuentra una barra de información donde se puede encontrar a la izquierda el número de línea en la que está posicionado el cursor dentro del sketch y a la derecha el modelo de la placa Arduino activa en ese momento y puerto en el que se encuentre conectada.

Nota

En el mundo Arduino, cada uno de los programas ejecutables por las placas son denominados Sketch.

En cuanto a la zona de menús vamos a ver las entradas más importantes.

Dentro del menú Archivo podemos encontrar las siguientes entradas:

  • Nuevo: Permite crear un nuevo sketch en blanco.
  • Abrir: Sirve para abrir sketches ya existentes. Genera una nueva ventana con el sketch seleccionado.
  • Sketchbook: Es la librería de sketches guardados.
  • Ejemplos: Contiene una serie de ejemplos de sketches operativos que podemos utilizar en nuestros trabajos. Se presentan convenientemente ordenados por tipo.
  • Cerrar: Cierra el sketch actual.
  • Guardar: Guarda el sketch activo.
  • Cargar: Carga el sketch actual en la tarjeta configurada que este conectado en el puerto configurado.
  • Cargar usando programador: Carga el sketch en el microcontrolador utilizando un programador en lugar de la tarjeta Arduino. Esta opción no se usará en el libro.
  • Preferencias: Nos guía a la pantalla de preferencias donde configurar el comportamiento del editor. Mas adelante se explica en detalle.

En el menú Editar encontramos:

  • Copiar, Pegar…: Dan acceso a funcionalidades típicas de cualquier editor de textos.
  • Copiar para el Foro: Copia el código del sketch en un formato especial para usar en el foro de Arduino, incluyendo colores dependientes de sintaxis.
  • Comentar/Decomentar: Permite comentar y decomentar bloques de código.
  • Buscar: Varias entradas de menús con toda la familia de posibilidades típicas de búsqueda de los editores de código.

El menú Sketch tiene entre sus opciones:

  • Verificar /Compilar:  Procede a verificar la sintaxis del programa, es idéntico a la acción realizada por el botón comentado anteriormente.
  • Mostrar la carpeta de Sketch: Abre el explorador de sistema en la carpeta que contiene el sketch actual.
  • Agregar Archivo: Permite añadir nuevos archivos de código al sketch activo en ese momento.
  • Importar librería: Añade al código las líneas necesarias para utilizar la librería selecciona. Las librerías disponibles son las que se encuentran almacenadas en el disco duro, dentro del directorio.

Dentro del menú Herramientas encontramos:

  • Formato automático: Organiza y ordena el código de modo que quede perfectamente tabulado y fácil de leer.
  • Archivar el Sketch: Crea un fichero comprimido con todos los códigos fuentes necesarios correspondiente al sketch. Ideal para portar los sketches entre distintas maquinas o realizar backups.
  • Monitor Serie: Muestra el monitor serie del mismo modo que el botón comentado anteriormente.
  • Tarjeta: Muestra una serie de tarjetas entre las cuales tenemos que seleccionar la que se quiere utilizar para probar el sketch.
  • Puerto Serie: Muestra los puertos serie disponibles. Se debe seleccionar aquel en el que se encuentre conectada la tarjeta sobre la que se quiere trabajar.
  • Programador: En caso de no utilizar tarjetas Arduino y programar directamente el microcontrolador, se debe seleccionar el programador que se va a utilizar mediante este menú.

Deja una respuesta

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

Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos.
Privacidad