¿Qué es Arduino?
Antes de empezar a hacer proyectos en Arduino quería
explicar en el blog de que trata Arduino y cuáles son sus características
principales. La mayoría de la gente ya conoce esta plataforma pero creo que
antes de empezar a escribir y publicar pequeños proyectos es necesario una
pequeña intro. Con esta introducción no pretendemos profundizar mucho,
simplemente explicar de qué trata todo esto.
La plataforma de electrónica libre Arduino
Arduino es una plataforma de electrónica abierta para la
creación de prototipos basada en software y hardware libre, flexible y fácil de
usar. Se creó para artistas, diseñadores, aficionados y cualquier interesado en
crear entornos u objetos interactivos
Arduino puede tomar información del entorno a través de sus
pines de entrada, para esto toda una gama de sensores puede ser usada y puede
afectar aquello que le rodea controlando luces, motores y otros actuadores. El
microcontrolador en la placa Arduino se programa mediante el lenguaje de
programación Arduino (basado en Wiring) y el entorno de desarrollo Arduino
(basado en Processing). Los proyectos hechos con Arduino pueden ejecutarse sin
necesidad de conectarlo a un ordenador, si bien tienen la posibilidad de
hacerlo y comunicar con diferentes tipos de software (p.ej. Flash, Processing,
MaxMSP)
Tipos de Arduino mas utilizados
Arduino UNO R3
Microcontrolador: ATmega328
Voltaje de funcionamiento: 5 V
Pines I/O digitales: 14 (de los cuales 6 proveen salida
PWM)
Pines de entradas análogas: 6
Corriente DC por cada pin I/O: 40 mA
Corriente DC en el pin de 3.3 V: 50 mA
Memoria Flash: 32 KB (ATmega328) de los cuales 0.5 KB
son utilizados por el bootloader
SRAM: 2 KB (ATmega328)
EEPROM: 1 KB (ATmega328)
Velocidad de reloj: 16 MHz
Arduino NANO
Microcontrolador: ATmega168
Voltaje de funcionamiento: 5 V
Pines I/O digitales: 14 (de los cuales 6 proveen salida
PWM)
Pines de entradas análogas: 8
Corriente DC por cada pin I/O: 40 mA
Memoria Flash: 16 KB de los cuales 2 KB son utilizados por
el bootloader
SRAM: 1 KB
EEPROM: 512 bytes
Velocidad de reloj: 16 MHz
Arduino MEGA
Microcontrolador: ATmega2560
Voltaje de funcionamiento: 5 V
Pines I/O digitales: 54 (de los cuales 15 proveen
salida PWM)
Pines de entradas análogas: 16
Corriente DC por cada pin I/O: 40 mA
Corriente DC en el pin de 3.3 V: 50 mA
Memoria Flash: 256 KB de los cuales 8 KB son utilizados
por el bootloader
SRAM: 8 KB (ATmega328)
EEPROM: 4 KB (ATmega328)
Velocidad del reloj: 16 MHz
Arduino IDE
Arduino tiene su propio entorno de desarrollo basado en
java, gracias a esto es multiplataforma. Este IDE se puede descargar desde AQUÍ .
La instalación de la IDE viene detallada en la web, esta cambia en función de
la plataforma ( Linux, Mac, Windows ) pero en los tres casos es una instalación
sencilla.
Una vez instalado tenemos que ejecutar el entorno en modo
administrador para no tener problemas con que este no reconozca la entrada
serial y no detecte la placa Arduino.
Una vez dentro de la IDE esto es lo que vemos.
Es una IDE bastante sencilla sin muchas opciones pero cumple
con su cometido. Para saber mejor como funciona cada uno de sus elementos echar
un ojo al siguiente manual : http://arduino.cc/en/Guide/Environment .
En este completo manual encontraremos la información que
necesitamos sobre el IDE ademas de otras utilidades ( librerías … ) que podamos
necesitar. De todos modos el mismo IDE tiene una sección ayuda que referencia a
estos manuales.
Programando en Arduino
A pesar de que Arduino pone a nuestra disposición
información muy detallada y de fácil entendimiento en su pagina web www.arduino.ccvamos a explicar brevemente las
principales características de la programación en Arduino.
Las vamos a explicar dentro de un sencillo ejemplo, las
explicaciones vienen dentro de lo que seria un comentario en el lenguaje.
EJ:
/* PROGRAMA ARDUINO */
/* Importamos las librerías que necesitemos para utilizar
nuestro programa */
/* En esta sección, nada mas empezar el programa , creamos
todas las variables, variables para control de flujo, variables para control de
pines etc. */
void setup()
{
/* Esta sección es llamada cuando el programa se ejecuta,
solamente se llama una vez ( cada vez que se ejecuta el programa ). Aquí se
inicializan las variables, se les da un valor de Imput o Output a los pines, se
empiezan a usar las librerías… */
}
void loop()
{
/* La función loop es la función que se va estar ejecutando
continuamente para darle una continuidad al proyecto. Aquí implantaremos
nuestro programa principal y su funcionalidad
}
/* Ademas de estas dos funciones principales podemos crear
las funciones que nosotros creamos necesarias. */
Descarga la IDE de Arduino desde los siguientes enlaces:
Para Windows:
Para GNU/Linux: