Manual Arduino
Manual Arduino
Contenido
INTRODUCCIÓN .................................................................................................................................. 3
¿QUÉ ES EL ARDUINO? ............................................................................................................... 4
ESTRUCTURA DE UN PROGRAMA ........................................................................................... 5
setup() ............................................................................................................................................. 5
loop() ............................................................................................................................................... 6
DESCRIPCIÓN DE LOS COMPONENTES DEL ARDUINO UNO R3 .................................... 7
DIAGRAMA DE PINES DEL ARDUINO UNO ...................................................................................... 8
Terminales Digitales ........................................................................................................................ 9
Pines Analógicos ............................................................................................................................ 10
Pines de alimentación ................................................................................................................... 11
Otros Pines .................................................................................................................................... 11
PRACTICAS ................................................................................................................................... 12
Práctica 1 – Secuencia básica de 3 leds......................................................................................... 12
Práctica 2 - Lectura de señal analógica con un potenciómetro .................................................... 15
Práctica 3 – Contador .................................................................................................................... 18
Práctica 4 - Control de iluminación de una lámpara ..................................................................... 20
Práctica 5 – Sensor de luz (ldr) ...................................................................................................... 22
Práctica 6 - Control de un motor de dc con un transistor ............................................................. 26
Práctica 7 - Control de un motor a velocidad y sentido de giro variables .................................... 29
Práctica 8 – relevador.................................................................................................................... 31
Práctica 9 - LCD ............................................................................................................................. 34
Práctica 10 – LED RGB ................................................................................................................... 36
Práctica 11 – El zumbador ............................................................................................................. 39
Práctica 12 – Hagamos un juego ................................................................................................... 42
Práctica 13 – LCD + Sensor de temperatura TMP 36 .................................................................... 46
Práctica 14 – El servomotor .......................................................................................................... 48
Práctica 15 - LCD + RGB ................................................................................................................ 51
Práctica 16 - Juego Simon Says ..................................................................................................... 54
Práctica 17 – Temporizador .......................................................................................................... 63
Practica 18 - Control de un Display de 7 segmentos ..................................................................... 70
Práctica 19 – El sensor ultrasonido ............................................................................................... 75
Práctica 20 - Entrada edificio con sensores infrarrojos................................................................. 79
Práctica final – Control por Bluetooth .......................................................................................... 84
INTRODUCCIÓN
Arduino es una plataforma de hardware en código abierto para gente que quiere
hacer una introducción a la electrónica sin necesidad de tener conocimientos
previos en ciencias. Se puede decir que todo el sistema de desarrollo, el software,
los circuitos y la documentación son abiertos.
La filosofía open source -código abierto- que lo sustenta, tanto el modo en que se
ensambla la placa -hardware- como el código fuente del programa Arduino -
software-, son de acceso público. Esto quiere decir que cualquiera puede usarlo y/o
mejorarlo. 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
haberse adquirido ninguna licencia.
En la feria Maker Fair del 2011, se presentó la primera placa Arduino de 32 bits para
trabajar tareas más pesadas. Entre ellas se presentó la impresora en 3D de
MakerBot capaz de imprimir en resina cualquier modelo en 3D.
ESTRUCTURA DE UN PROGRAMA
Código
void setup()
sentencias;
void loop()
sentencias;
setup()
La función “setup()” es llamada una vez cuando arranca tu programa. Se usa para
inicializar el modo de los pins (pinMode), o inicializar el modo serial. Se debe incluir
en un programa aun cuando no haya sentencias para correrlas.
Código
void setup()
loop()
Después de llamar a la función setup(), la función loop(), hace precisamente lo que
su nombre sugiere, y hace ciclos consecutivamente, permitiendo al programa
cambiar, responder, y controlar a la tarjeta Arduino.
Código
void loop()
}
DESCRIPCIÓN DE LOS COMPONENTES DEL ARDUINO UNO R3
Pines Analógicos
En adición a las funciones específicas listadas abajo, los pines de entrada
analógicos soportan conversiones analógico-digital (ADC) de 10 bit utilizando
la función analogRead(). Las entradas analógicas pueden ser también usadas
como pines digitales: entrada analógica 0 como pin digital 14 hasta la entrada
analógica 5 como pin digital 19. Las entradas analógicas 6 y 7 (presentes en el
Mini y el BT) no pueden ser utilizadas como pines digitales.
Otros Pines
- AREF: Referencia de voltaje para las entradas analógicas. Utilizada con
la función analogReference().
- Reset: (Solo en el Diacemila). Pon esta línea a LOW para resetear el
Microcontrolador. Utilizada típicamente para añadir un botón de reset a
shields que bloquean el de la placa principal.
PRACTICAS
Material:
1 Protoboard
3 Diodos LED
3 Resistencias 220 ohm
Arduino Uno R3
Código
Conexiones
Práctica 2 - Lectura de señal analógica con un potenciómetro
Circuito:
Se conectan tres cables a la tarjeta Arduino. El primero va a tierra desde el terminal
1 del potenciómetro. El terminal 3 va a la salida de 5 voltios. El terminal 2 va desde
la entrada analógica #2 hasta el terminal interno del potenciómetro.
Girando el dial o ajustando el potenciómetro, cambiamos el valor de la resistencia
variable. Esto produce oscilaciones dentro del rango de 5 y 0 voltios, que son
capturados por la entrada analógica.
Material:
• 1 Protoboard
• 1 Diodo LED
• 1 Potenciómetro
• Arduino Uno R3
Código
Conexiónes
Práctica 3 – Contador
Material:
• 1 Protoboard
• 1 Diodo LED
• 1 Resistencia 10 K
• 1 Push Bottom
• Arduino Uno R3
Código
Conexiónes
Práctica 4 - Control de iluminación de una lámpara
Material:
• 1 Protoboard
• 1 Diodo LED
• 1 Resistencia 10 K
• 1 Push Bottom
• Arduino Uno R3
Código
Conexiónes
Práctica 5 – Sensor de luz (ldr)
Si la LDR es usada como Rtop, como en el primer circuito, da tensión alta (HIGH)
en la salida cuando la LDR está en la luz, y una tensión baja (LOW) en la salida
cuando la LDR está en la sombra.
La acción del divisor de tensión es inversa cuando la LDR es usada como Rbottom
en lugar de Rtop, como en el segundo circuito. El circuito da tensión Baja (LOW)
en la salida cuando la LDR está en la luz, y una tensión alta (HIGH) en la salida
cuando la LDR está en la sombra. El circuito divisor de tensión dará una tensión
de la salida que cambia con la iluminación, de forma inversamente proporcional a
la cantidad de luz que reciba (sensor de oscuridad).
Material:
1 Protoboard
1 Diodo LED
1 Resistencia 5 K
1 LDR
Arduino Uno R3
Código
Conexiones
Práctica 6 - Control de un motor de dc con un transistor
El diodo 1N4001 se coloca como protección para evitar que las corrientes inversas
creadas en el bobinado del motor puedan dañar el transistor.
1 Protoboard
1 Diodo LED
1 Resistencia 1 K
1 Transistor 2N2222
1 Diodo 1N4001
1 Motor DC
Arduino Uno R3
Código
Conexiones
Práctica 7 - Control de un motor a velocidad y sentido de giro variables
Material:
1 Protoboard
1 Motor DC
1 L293D
Arduino Uno R3
Código
Conexiones
Práctica 8 – relevador
Este sencillo ejemplo enseña como encender una bombilla de 220V de corriente
alterna (AC) mediante un circuito de 5V de corriente continua (DC) gobernado por
Arduino. Se puede utilizar con cualquier otro circuito de 220V con un máximo de
10A (con el relevador del ejemplo).
¿Qué es un relevador?
El relé es un dispositivo electromecánico, que funciona como un interruptor
controlado por un circuito eléctrico en el que, por medio de un electroimán, se
acciona un juego de uno o varios contactos que permiten abrir o cerrar otros
circuitos eléctricos independientes. De aquí extraemos una información muy
importante: Podemos separar dos circuitos de forma que funcionen con voltajes
diferentes. Uno a 5V (Arduino) y otro a 220V (la bombilla).
Como se ve en el esquema inferior hay dos circuitos. El del cableado NEGRO
funciona a 5V de DC y el del cableado ROJO a 220V de AC.
Material:
1 Protoboard
1 Motor DC
1 Relevador 220v
1 Foco
Cable para corriente
1 Transistor BD137
1 Diodo 1N4001
1 Resistencia 10k
Arduino Uno R3
Código
Conexiones
Práctica 9 - LCD
Se trata del control de un Visualizador de Cristal Líquido (LCD), el cual cuenta con
un controlador en C.I. denominado HD44780.
Material:
1 Protoboard
1 LCD 16X2
1 Potenciómetro 10k
Código
Conexiones
Práctica 10 – LED RGB
En esta práctica vamos a aprender a usar un led RGB para arduino. Estos leds
tienen 4 patas: una pata es para el color azul, otra para el verde, otra para el rojo y
la cuarta pata (la más larga) es para los 5V.
Código
Con este programa lo que conseguimos es que el led muestre los colores que
deseemos (ya que con el rojo, azul y verde obtenemos la mayoría de los colores).
Podemos variar los colores variando los números en color (0,255,0). Dependiendo
de los números que pongamos tendremos un color u otro.
Conexiones
Práctica 11 – El zumbador
Bien, hasta ahora lo único que hemos utilizado como salidas de nuestro arduino han
sido luces LED, ahora vamos a conocer un nuevo elemento: el zumbador
Una vez realizado el montaje físico, tenemos que programar el circuito. Para nuestro
circuito vamos a emplear dos variables llamadas corto y largo, que cada una
representará a la S y a la O respectivamente. También declararemos un período de
pausa entre letra y letra y declararemos el pin 2 como salida (pinMode).
Material:
1 Protoboard
1 Resistencia 10 K
1 Transistor BD137
1 Zumbador
Arduino Uno R3
Código
Conexiones
Práctica 12 – Hagamos un juego
Esta práctica nos va a servir para repasar lo que ya sabíamos acerca de las salidas
(luces,sonido), repasar los conceptos como vectores y bucles, y para introducir este
nuevo concepto de órdenes.
Material:
1 Protoboard
5 Resistencias 10 K
1 Resistencia 1 k
1 Zumbador
1 Push button
5 leds
Arduino Uno R3
Código
Conexiones
Práctica 13 – LCD + Sensor de temperatura TMP 36
En esta práctica vamos a hacer aparecer por nuestra pantalla LCD el valor de la
temperatura que nos indique el sensor de temperatura TMP 36.
Material:
1 Protoboard
1 Sensor de temperatura TMP 36
1 Potenciometro 10k
1 Display 16*2
Arduino Uno R3
Código
Conexiónes
Práctica 14 – El servomotor
Este es el aspecto que puede ofrecer un servomotor. Vemos que tiene distintos tipos
de hélice dependiendo de nuestro interés y que también tiene un motor que es el
que va a proporcionar el giro. La conexión se va a hacer con tres cables: Uno rojo,
que va a ser el que reciba la alimentación, uno negro, que será conectado a tierra y
uno amarillo que va a ser el que reciba la señal.
El montaje es muy sencillo, ahora tenemos que hablar de su código. Lo primero que
vamos a tener que hacer es incluir una nueva librería, la Servo.h. Hay que decir que
el manejo del servomotor puede ser muy extenso y que se puede investigar con el
un sin fin de cosas.
Material:
1 Protoboard
1 servomotor
Arduino Uno R3
Código
Conexiónes
Práctica 15 - LCD + RGB
En esta práctica vamos a conectar el led rgb con la pantalla ldr. El color que vaya
luciendo en el led, aparecerá escrito en la pantalla ldr.
Material:
1 Protoboard
1 led RGB
1 Potenciometro 10k
1 Display 16*2
3 Resistencias 1k
Arduino Uno R3
Código
conexiones
Práctica 16 - Juego Simon Says
En esta práctica, vamos a hacer el juego de “Simon Says”, ese famoso juego de
memorizar una secuencia aleatoria de colores.
Material:
1 Protoboard
3 led’s
6 resistencias 1k
3 push button
1 zumbador
Arduino Uno R3
Código
Conexiones
Práctica 17 – Temporizador
Código
Conexiones
Practica 18 - Control de un Display de 7 segmentos
Este es un elemento muy simple que se puede manipular con otro tipo de circuitos
integrados, pero como queremos ir avanzando el uso de matrices, displays y
elementos de control como quizás multiplexores, hemos ido pensando en ir
desarrollando algo introductorio.
Aun así creo que es una práctica perfecta para recordar todo lo que habíamos
aprendido del manejo de leds en Arduino, y para refinar nuestro entendimiento del
código.
Material:
1 Protoboard
1 display de 7 segmentos
1 resistencia 220 ohmios
1 resistencia 1k
1 push button
Arduino Uno R3
Código
Conexiones
El funcionamiento con dos dígitos sería similar, sólo habría que indicarle al primer
display que cuando la cuenta llegara a una decena, el número nueve se cambiara
a cero, y en el segundo display añadir un uno.
Práctica 19 – El sensor ultrasonido
Si tenemos en cuenta que la velocidad del sonido es 340 m/s y medimos el tiempo
que tarda nuestro sensor en recibir la respuesta, podremos despejar la distancia
con la sencilla fórmula:
Una vez dicho esto podemos entrar a ver como el código identifica el tiempo y lo
multiplica por una constante para hallar la distancia
Material:
1 Protoboard
1 Sensor ultrasonido hc-sr04
1 led
1 potenciometro 10k
1 Display 16*2
Arduino Uno R3
Código
Conexiones
Práctica 20 - Entrada edificio con sensores infrarrojos
En esta práctica vamos a enseñar cómo podemos contar las personas que entran
en un edificio poniendo dos barreras infrarrojas a la entrada.
Antes de empezar vamos a explicar un poco estos sensores. La barrera infrarroja
se compone por un diodo infrarrojo (emisor) y un fototransistor (receptor). Son muy
parecidos a un led común, algunos emisores los encontramos transparentes o con
un ligero color en púrpura y los receptores en trasparentes o negros, estos últimos
por un filtro UV que les permite trabajar mejor incluso expuesto a la luz solar.
El fototransistor (aunque parezca un led corriente) debe conectarse con la patilla
larga a masa y la corta a voltaje.
Para esta práctica hemos usado como emisor el led infrarrojo tranparente y como
receptor el fototransistor de color negro.
Una vez distinguidos los
diodos vamos a explicar el
planteamiento: lo primero de
todo es que hemos
distinguido entre las
personas que entran y las
que salen. Las personas que
entran, primero pasan la
primera barrera y después la
segunda. Por el contrario,
las personas que salen,
primero pasan la segunda
barrera y después la
primera. Para este caso,
solo vamos a contar las
personas que entran al
edificio.
Además, hemos introducido dos leds (uno verde y otro rojo) para detectar por que
barrera se está pasando. Si pasamos por la primera barrera, se encenderá el led
verde, y si pasamos por la segunda se encenderá el rojo.
Material:
1 Protoboard
2 pares de diosdos infrarrojos (dos emisores y dos receptores)
2 leds (rojo y verde)
4 Resistencias de 10k
1 LCD 16*2
1 Potenciometro de 10k
Arduino Uno R3
Código
Conexiones
Práctica final – Control por Bluetooth
Esta práctica consiste en lograr la comunicación del Arduino vía Bluetooth con un
Dispositivo Android y controlar el encendido y apagado de tres LED´s a distancia
a través de una aplicación instalada en el Dispositivo Android (ej. un
celular/tableta).
Material:
• 1 Protoboard
• 1 modulo Bluetooth (HC06)
• 1 celular
• 2 resistencias de 1k
• 2 LED´s
• Arduino uno R3
• Cables
Código
Conexiones
Conexiones
Modulo Bluetooth Arduino
VCC 5V
GND GND
TXD RX (Es la conexión 0 de arduino)
RXD Tx (Es la conexión 1 de arduino)