Explicamos qué es Arduino y para qué sirve. Mostramos paso a paso cómo conectar Arduino UNO a un PC, cómo descargar los drivers y el IDE de desarrollo. Realizamos un primer proyecto hardware consistente en encender y apagar un LED. Explicamos cómo alimentar eléctricamente Arduino UNO una vez desconectado del PC. Realizamos la conexión en un equipo con Microsoft Windows 7.
- Arduino, plataforma de hardware libre.
- Conectar Arduino UNO a un PC con W7, instalar y configurar Arduino IDE.
- Primer proyecto hardware con Arduino UNO, encender un LED.
- Alimentación eléctrica para Arduino UNO.
Arduino, plataforma de hardware libre
Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos multidisciplinares.
El hardware consiste en una placa con un microcontrolador Atmel AVR y puertos de entrada/salida. Los microcontroladores más usados son el Atmega168, Atmega328, Atmega1280, ATmega8 por su sencillez y bajo coste que permiten el desarrollo de múltiples diseños. Por otro lado el software consiste en un entorno de desarrollo que implementa el lenguaje de programación Processing/Wiring y el cargador de arranque (boot loader) que corre en la placa.
Arduino se puede utilizar para desarrollar objetos interactivos autónomos o puede ser conectado a software del ordenador (por ejemplo: Macromedia Flash, Processing, Max/MSP, Pure Data). Las placas se pueden montar a mano o adquirirse. El entorno de desarrollo integrado libre se puede descargar gratuitamente.
Al ser open-hardware, tanto su diseño como su distribución es libre. Es decir, puede utilizarse libremente para el desarrollo de cualquier tipo de proyecto sin haber adquirido ninguna licencia.
Consta de 14 entradas digitales configurables entrada i/o que operan a 5 voltios. Cada pin puede proporcionar o recibir como máximo 40 mA. Los pines 3, 5, 6, 8, 10 y 11 pueden proporcionar una salida PWM (Pulse Width Modulation). Si se conecta cualquier cosa a los pines 0 y 1, eso interferirá con la comunicación USB. Diecimila también tiene 6 entradas analógicas que proporcionan una resolución de 10 bits. Por defecto miden de 0 voltios (masa) hasta 5 voltios, aunque es posible cambiar el nivel más alto, utilizando el pin Aref y algún código de bajo nivel.
Existen numerosos modelos de Arduino con diferentes tamaños y características: Arduino UNO, Duemilanove (Nano), Mega 2560, ATmega1280, Mini, Fio, BT w/ ATmega328, BT w/ ATmega168, LilyPad Arduino w/ ATmega328, LilyPad Arduino w/ ATmega168, Pro, Pro Mini, NG, etc.
Mostramos una foto de Arduino, en concreto del modelo UNO, en una mano para apreciar la escala:

Vista en detalle de Arduino UNO en su parte superior:
Frontal del Arduino UNO (conector USB y alimentación eléctrica):
Parte trasera del Arduino UNO:
Algunos sensores que se pueden conectar a Arduino: temperatura, humedad, barométrico, acelerómetro, alcoholímetro, infrarrojos, compás, giroscopio, capacitivo, corriente, distancia, fuerza, movimiento, proximidad, óptico, sonido, etc.
Por supuesto, también se le pueden conectar a Arduino una serie de módulos para dotarlo de funcionalidades extra como: módem GPRS (conectando una tarjeta SIM podremos enviar SMS, hacer llamadas y conectarnos a Internet desde Arduino), Ethernet Shield (para conectar Arduino a una red LAN), módulo Bluetooth, módulo GPS, control de relés, RGB LED, pantalla OLED, conectividad Wifi, sintonizador digital FM, etc.
En la imagen un módulo GPRS Quadband:
La parte de atrás del módulo GPRS acoplable para Arduino UNO:
Conectar Arduino UNO a un PC con W7, instalar y configurar Arduino IDE
Adquisición del hardware necesario: Arduino UNO, cable USB tipo A-B y LED
Como ejemplo en este artículo conectaremos Arduino UNO a un PC con cable USB y enviaremos un programa a Arduino para que encienda un LED. A continuación indicamos el hardware necesario para realizar este proyecto de ejemplo.
En primer lugar necesitaremos, obviamente, adquirir el Arduino UNO, lo podremos adquirir vía web en cualquier proveedor, por ejemplo desde http://www.cooking-hacks.com (Libelium Comunicaciones Distribuidas S.L.). En concreto, Arduino UNO cuesta unos 22,00 euros:
Por otro lado, para este proyecto hardware de ejemplo con Arduino UNO usaremos un LED que cuesta unos 0,20 euros:
Para la conexión del Arduino UNO con el PC usaremos un cable USB de tipo A-B:
Si no usáramos el pin digital 13 de Arduino para conectar el LED necesitaríamos una resistencia de unos 200 ohmios (el valor estándar más cercano es de 220 ohmios), el cálculo:
- Un LED normal necesita de entre 5 y 20 mA para encenderse, por lo que necesitaremos unos 15mA para que el LED luzca bien.
- La alimentación del Arduino UNO es de 5 voltios.
- En el LED caerán 2 voltios.
- En la resistencia deben caer unos 3 voltios.
Por lo tanto:
- 5 – 2 = 3 voltios de tensión.
Aplicando la ley de Ohm (Tensión = Intensidad * Resistencia):
- V = I * R
Puesto que conocemos V e I
podremos calcular R:
- R = V / I
Con los valores:
- R = 3 / 0.015 = 200 ohmios.
(donde «0.015» serán los 15mA que necesita el LED pasados a amperios)
Por lo tanto necesitaremos la resistencia del mercado que más se aproxime a 200 ohmios, que es una de 220 ohmios:
La resistencia iría conectada a la pata más larga del LED, la positiva (cátodo), algo así:
Pero en nuestro caso no usaremos una resistencia externa pues conectaremos el LED al pin digital 13 de Arduino que ya incorpora en placa dicha resistencia:
Instalación software IDE de desarrollo y controladores para conectar Arduino con un PC con Windows 7
Para poder programar el Arduino UNO usaremos el propio IDE que proporciona Arduino, podremos descargar la última versión desde:
http://arduino.cc/en/Main/Software
Actualmente podremos descargar la versión 0022 de Arduino IDE, para el caso de Windows el fichero arduino-0022.zip de 86 MB. Descomprimiremos el fichero descargado en una carpeta. Esta carpeta contiene tanto el IDE de desarrollo de Arduino como los drivers (controladores) para la conexión USB en Windows.
Tras descargar el fichero y descomprimirlo, en el caso de Linux no será necesario instalar drivers, pero en el caso de Microsoft Windows 7 deberemos instalar los controladores para el emulador de puerto USB a puerto serie. Aunque Arduino se conecta al PC mediante el puerto USB en realidad, internamente, emula un puerto serie, por ello, en Microsoft Windows 7 realizaremos los siguientes pasos para instalar los drivers:
1. Conectaremos Arduino UNO al PC mediante el cable USB de tipo A-B:
2. Microsoft Windows 7 detectará el dispositivo e intentará instalar los drivers:
3. No encontrará los drivers, por lo que dará error. No será problema, lo ignoraremos:
4. Accederemos al botón «Inicio» – «Panel de control»:
5. Pulsaremos en «Hardware y sonido»:
6. Pulsaremos en «Administrador de dispositivos»:
7. En la ventana del Administrador de dispositivos, en «Otros dispositivos» nos mostrará con admiración «Arduino Uno», pulsaremos con el botón derecho del ratón y seleccionaremos «Actualizar software de controlador»:
8. Pulsaremos en «Buscar software de controlador en el equipo. Buscar e instalar el software de controlador de forma manual»:
9. Pulsaremos en el botón «Examinar» para seleccionar la carpeta donde se encuentran los drivers:
10. Seleccionaremos la carpeta «arduino-0022» (descomprimida anteriormente) y, dentro de esta, la carpeta «drivers»:
11. Pulsaremos «Siguiente»:
12. El asistente para instalar un nuevo controlador nos mostrará un aviso de seguridad, pulsaremos «Instalar este software de controlador de todas formas»:
13. Si todo es correcto, el asistente nos habrá instalado el controlador para Arduino UNO y nos mostrará la siguiente ventana:
14. En el Administrador de dispositivos de Microsoft Windows 7 nos mostrará el nuevo controlador instalado, en «Puertos (COM y LPT)». Es importante que anotemos el nombre asignado al puerto COM para Arduino, en nuestro caso COM3, pues lo necesitaremos seleccionar en el IDE de Arduino:
Primera ejecución del IDE de Arduino y configuración inicial para desarrollar proyectos hardware
Tras instalar el controlador de Arduino, ahora realizaremos una primera ejecución para configurar el IDE de desarrollo, pulsaremos con el botón derecho del ratón sobre el ejecutable «arduino.exe» de la carpeta descomprimida anteriormente y seleccionaremos «Ejecutar como administrador» (no es necesario, pero así evitamos posibles problemas de limitaciones de Microsoft Windows 7):
En el IDE de desarrollo de Arduino, en primer lugar seleccionaremos el tipo de dispositivo (Board). Para ello pulsaremos en el menú «Tools» – «Board» y seleccionaremos «Arduino Uno» (o el que hayamos adquirido):
Seleccionaremos también el puerto serie asignado al controlador de Arduino (en nuestro caso COM3), para ello accederemos al menú «Tools» – «Serial Port» – «COM3»:
Primer proyecto hardware con Arduino UNO, encender un LED
Una vez adquirido Arduino, conectado al PC y configurado el IDE, vamos a explicar cómo realizar una primera aplicación en Arduino IDE y cómo enviarla al dispositivo y testarla. Como ya hemos comentado encenderemos un LED, si no disponemos de un LED no es problema pues la placa de Arduino UNO incorpora un LED que nos serviría para las pruebas:
Si disponemos de un LED conectaremos la pata más larga (positivo ó cátodo) al pin digital 13 de Arduino y la pata más corta al pin GND más cercano al 13:
El LED quedará conectado directamente a los conectores del Arduino, lo más profesional es usar una placa prototipo y conectar ahí el LED y, a su vez, conectar la placa prototipo al Arduino con sus cables correspondientes.
El LED conectado directamente al Arduino:
Con una placa prototipo y usando una resistencia sería algo así:
Pero, repetimos, para realizar un ejemplo básico no es necesaria ni la resistencia, ni la placa prototipo o incluso ni el LED, pues Arduino UNO ya incorpora una resistencia en el pin 13 y un LED incorporado en placa.
Abriremos el IDE de desarrollo de Arduino, abriremos una aplicación de ejemplo que incluye el propio Arduino para encender y apagar un LED, para ello accederemos al menú «File» – «Examples» – «Basics» – «Blink»:
Se abrirá el siguiente programa, cada línea está comentada explicando para qué sirve:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
/* Blink Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */ void setup() { // initialize the digital pin as an output. // Pin 13 has an LED connected on most Arduino boards: pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); // set the LED on delay(1000); // wait for a second digitalWrite(13, LOW); // set the LED off delay(1000); // wait for a second } |
Pulsaremos en el botón «Verify» para compilar el código C++ y verificar que es correcto:
En la parte inferior indicará si la compilación ha sido correcta con «Done compiling» o si ha habido algún error (en cuyo caso no podremos enviarlo a Arduino):
Para enviar el programa al dispositivo Arduino conectado al PC y probarlo directamente pulsaremos en el botón «Upload»:
Si el envío por el puerto establecido se ha realizado correctamente al dispositivo Arduino, en la parte inferior mostrará «Done uploading»:
Si todo es correcto, cada segundo se encenderá el LED y se apagará otro segundo, así sucesivamente pues hemos usado un «loop»:
Alimentación eléctrica para Arduino UNO
En el proyecto de ejemplo que hemos realizado hemos alimentado el Arduino mediante el cable USB conectado al PC, obviamente, si desconectamos este cable el Arduino se apagará. Para alimentarlo sin PC necesitaremos un adaptador de +12V con un conector como el que se muestra en la imagen:
Conectándolo a la corriente eléctrica y al Arduino el programa que hemos cargado se iniciará y se encenderá y apagará el LED, esto es debido a que Arduino cuenta con una memoria para alojar el programa enviado y así poder ejecutarlo cuando se enciende (si así se ha programado):
Por supuesto, Arduino puede ser alimentado eléctrimante de muchas otras formas, por ejemplo con placas solares y una batería:
En esta imagen mostramos el LED funcionando con dos placas solares conectadas en serie y, a su vez, conectadas al Arduino en su conector de alimentación eléctrica: