Traducido by Tino Fernández Cueto
Traducido by Tino Fernández Cueto
Traducido by Tino Fernández Cueto
com
Traducido by Tino Fernández Cueto http://www.futureworkss.com
Lo autores del libro de proyectos de Arduino en inglés “ARDUINO PROJECTS BOOK”:
Proyectos y textos por Scott Fitzgerald y Michael Shiloh
Revisión del texto por Tom Igoe
ASESORES Y APOYO
Massimo Banzi, Gianluca Martino, Smart Projects
GRACIAS
Muchas gracias a toda la comunidad de Arduino por su continua
contribución, soporte y sugerencias.
También gracias en especial al equipo de Fritzing: algunas de las
ilustraciones de los componentes electrónicos utilizadas en este
libro son tomadas o modificadas del proyecto Open-Source de
Fritzing (www.fritzing.org)
Gracias de corazón a Paul Badger por la librería “CapacitveSensor”
usada en el Proyecto número 13
TRADUCCIÓN
Autor: Florentino Blas Fernández Cueto (Tino Fernández)
Sitio web: http://www.futureworkss.com
Bajo una Licencia Creative Commons Reconocimiento –
NoComercial -CompartirIgual 3.0 del 2015 por futureworkss
4 00 INTRODUCCIÓN
42 03 Medidor de enamoramiento
78 07 Teclado musical
102 10 Zoótropo
Usted esta rodeado por docenas de ellos cada día: se encuentran dentro de relojes,
termostatos, juguetes, mandos de control remoto, hornos de microondas, en
algunos cepillos de dientes. Solo hacen una tarea en concreto y si no se da cuenta de
que existen – lo cual es en la mayoría de las ocasiones – es porque están realizando
bien su trabajo. Han sido programados para detectar y controlar una actividad median-
te sensores y actuadores.
Los sensores “escuchan” el mundo físico. Convierten la energía que usted usa al
presionar un botón, o al mover los brazos, o al gritar, en señales eléctricas. Botones y
mandos son sensores que toca con sus dedos, pero existen otra clase de sensores.
Los actuadores hacen algo dentro del mundo físico. Convierten la energía eléctrica
en energía física, como la luz el calor y el movimiento.
Los microcontralodores “escuchan” a los sensores y “hablan” con los actuadores.
Ellos deciden que hacer basándose en el programa que tu escribes.
Sin embargo, los microcontroladores y la electrónica que se une con ellos son solo el
esqueleto de sus proyectos, tendrá que tener una serie de habilidades para poner algo
de carne en los huesos de este esqueleto.
Por ejemplo, en uno de los proyectos que sugerimos, tendrá que hacer una flecha y unir-
la a un motor para ponerlos juntos en una caja con un mando, de esta forma puede hacer
un indicador para decirle a la gente si está ocupado o no lo está. En otro proyecto pondrá
algunas luces y un interruptor de inclinación sobre un marco de cartón para hacer un
reloj de arena.
Arduino puede hacer que tus proyectos realicen su cometido pero solamente tu
puedes hacerlos hermosos. Nosotros te proporcionamos sugerencias en este libro
de como conseguirlo.
Arduino fue diseñado para ayudarte a hacer cosas. Para conseguirlo, intentamos que tan-
to la programación como los materiales electrónicos utilizados se reduzca lo mas posible.
Si decides que quieres saber más acerca de estos aspectos, existen muchas buenas
guías disponibles. Te proporcionaremos un par de referencias y puedes encontrar más
información a través de la página web de Arduino en: arduino.cc/starterkit
+
COMPONENTES Placa de pruebas – Una placa sobre la cual puede montar
componentes electrónicos. Es como un panel con agujeros,
con filas de agujeros que le permite conectar juntos cables
DE TU KIT y componentes electrónicos. También están disponibles
tarjetas sobre las que hay que soldar y también sin
necesidad de usar un soldador como la mostrada aquí.
Puente-H – Se trata de un circuito que permite controlar la Pantalla de Cristal Líquido (LCD) – Un tipo de pantalla
polaridad de la tensión aplicada a un carga. El puente-H en numérica o gráfica basado en cristal líquido. Los LCDs están
el kit es un circuito integrado, pero se puede construir a disponibles en varios tamaños, formas y estilos. El que se
partir de un número determinado de componentes incluye con este kit dispone de 2 filas con 16 caracteres en
discretos (resistencias, condensadores y transistores). cada una de ellas.
Resistencia
Diodo Zumbador piezo-eléctrico
Papel de color Cualquier conector con cable que tenga por lo menos un
interruptor o un pulsador, y que este dispuesto a usar,
valdrá pare realizar este trabajo
Tijeras
Cinta y goma
__________________________________________________________
La versión online de esta guía esta disponible en la siguiente dirección:
arduino.cc/guide
WINDOWS arduino.cc/windows
INSTALACIÓN EN Si usted está usando Linux, por favor visite la página web para ver como se
hace.
LÍNUX Arduino.cc/linux
COMUNICACIÓN Ahora que ya ha instalado el IDE de Arduino y esta seguro de que su ordenador puede
comunicarse con la placa, es el momento de comprobar si puede cargar un programa en
CON ARDUINO Arduino
1. Hacer doble click sobre la aplicación de Arduino para abrirla. Si el entorno IDE esta en un
lenguaje que no es el suyo, puede cambiarlo al seleccionar el menú “Archivo” y escoger
“Preferencias”. En la ventana que se abre y dentro del “Editor de idioma” escoger el
lenguaje que desee. Reiniciar el programa para que tenga efecto. Buscar “the
environment page ” dentro de esta página para obtener más información: arduino.cc/ide
2. Navegar para abrir un sketch de ejemplo que hace que el diodo led de la placa Arduino
parpadee (la palabra ´sketch´es como se llama a los programas en Arduino).
Seleccionar el menú “Archivo” escoger “Ejemplos” a continuación “01Basics” y por
último “Blink”.
3. Debería de abrirse una nueva ventana con un texto dentro. Dejar la ventana como esta
por ahora, y seleccionar su placa Arduino desde:
Herramientas > Placa
4. Escoger el puerto serie en donde su placa Arduino esta conectada desde el menú de:
Herramientas > Puerto
a) En Windows: Probablemente aparecerá con el número más alto de puerto
COM. No pasará nada si se equivoca al escoger este número de puerto,
simplemente no funcionará.
b) En Mac: Deberá aparecer algo parecido a /dev/tty.usbmoderm en este
sistema. Por lo general aparecen dos, seleccionar uno cualquiera de ellos.
5. Para cargar el Sketch que hace que el diodo led parpadee a su Arduino, presionar el
botón Subir en la esquina superior izquierda de la ventana. Ver la figura 1
6. Debe de ver una barra indicando el progreso de carga del sketch cerca de la esquina
inferior derecha del IDE de Arduino, y los diodos led de la placa Arduino con las etiquetas
TX y RX estarán parpadeando en el momento de la carga. Si la carga se ha realizado
correctamente, el IDE mostrará el mensaje SUBIDO en la esquina inferior izquierda.
7. A los pocos segundos de completar la carga del Sketh, debe de ver como el diodo led
amarillo, con la etiqueta L cerca, comienza a parpadear. Ver figura 2.
Si es así, ¡felicidades! Acaba de conseguir programar Arduino para que el diodo led de
la placa parpadee.
A veces su nuevo Arduino está ya programado con el Sketch de parpadeo, así que no
puede saber si realmente lo acaba de programar. En este caso, cambiar dentro de la
instrucción “delay” el tiempo que aparece entre paréntesis a 100, y volver a subir de
nuevo el sketch de parpadeo. Ahora el diodo led de la placa debe de parpadear más
rápido.
¡Felicidades! ¡Usted realmente tiene el control!. Ahora es el momento de comenzar con
el proyecto número 1. (No necesita guardar ninguno de los cambios que ha realizado.)
Si tiene problemas con alguno de los pasos descritos anteriormente, por favor mirar las
sugerencias para solucionar los problemas a través de la siguiente página web:
arduino.cc/trouble
Mientras se esta preparando para realizar los proyectos de este libro, puede dirigirse a la
siguiente página para obtener más información acerca del entorno de programación de
Arduino.
arduino.cc/en/Guide/Environment
Descubra: La teoría básica de la electricidad, como se trabaja con una placa de prueba y
como se conectan componentes en serie y en paralelo
Tiempo: 30 MINUTOS
Nivel: bajo
La electricidad es un tipo de energía, como el calor, la gravedad o la luz. La energía eléctrica fluye
través de los conductores, como los cables. Puede transformar la energía eléctrica en otras formas de
energía para hacer algo interesante, como encender una luz o hacer algo de ruido a través de un
altavoz.
Los componentes que podría usar para hacer esto, como altavoces o bombillas, son transductores
eléctricos. Los transductores transforman otros tipos de energía en energía eléctrica y viceversa. Los
componentes que transforman otras formas de energía en energía eléctrica son a menudo llamados
sensores, y los componentes que convierten la energía eléctrica en otras formas de energía se conocen
algunas veces con el nombre de actuadores. Construirá circuitos para hacer que la electricidad circule a
través de diferentes componentes. Se trata de circuitos en bucles cerrados mediante cables con una
fuente de energía (como una batería) y algún componente que haga algo útil con la energía; este
componente se suele llamar carga.
En un circuito, la electricidad fluye desde un punto con el potencial de energía más alto (normalmente
se conoce como el positivo o + de la fuente de energía) a un punto con el potencial de energía más bajo.
La masa (a menudo representado con el signo “-” o GND) es normalmente el punto con el menor
potencial de energía en un circuito. En los circuitos que va a construir la corriente eléctrica solo circula
en una dirección. Este tipo de circuitos se llaman de corriente directa o DC. Por otro lado en los circuitos
con corriente alterna (AC) la electricidad cambia de dirección 50 o 60 veces por segundo (dependiendo
de donde usted viva). Este es el tipo de electricidad que puede encontrar en un enchufe de la pared de
una habitación.
Existen una serie de términos con los cuales debe de familiarizarse cuando trabaje con circuitos
eléctricos. Corriente (medida en amperios, o amps; con el símbolo A) es la cantidad de carga eléctrica
que circula a través de un determinado punto de un circuito. Tensión (medido en voltios; con el símbolo
V) es la diferencia de energía entre un punto de un circuito y otro que se toma como referencia. Y por
último, resistencia (medida en ohmios; con el símbolo ) representa cuanto se opone un componente a
que la energía eléctrica fluya a través de él.
A través de estos proyectos, podrá ver dos vistas de los circuitos: una vista sobre
la placa de pruebas (como en la figura 5), que se parece a las cosas de su kit. La
otra es la vista de esquema (como en la figura 6), se trata de una forma más
abstracta de mostrar las relaciones entre los componentes de un circuito. Un
esquema no siempre muestra donde se colocan los componentes unos con
respectos a otros, pero sí que muestra como están conectados.
SUS PRIMEROS
COMPONENTES
Un LED, o diodo emisor de luz , es un componente que convierte la energía eléctrica en energía
luminosa. Los LEDs son componentes que tienen polaridad, esto quiere decir que solo circula corriente
a través de ellos en una sola dirección. El terminal más largo del LED es llamado ánodo, se conectará a
la alimentación. El terminal más corto es el cátodo y se conectará a masa. Cuando la tensión es
aplicada al ánodo del led y el cátodo está conectado a masa, el LED emite luz.
Una resistencia es un componente que se opone al paso de la energía eléctrica (ver el listado de
componentes para obtener información sobre las bandas de colores que tiene en un lado del cuerpo
de la resistencia). Transforma parte de la energía eléctrica en calor. Si se coloca una resistencia en
serie con un componente como un LED, el resultado será que el diodo led recibe menos energía al
consumir la resistencia esa energía que el LED no recibe. Esto permite poder alimentar a los
componentes con la cantidad de energía que necesitan. Puede usar una resistencia en serie con un
LED para evitar que reciba demasiada tensión. Sin la resistencia, el led podría brillar con gran
intensidad durante unos momentos, pero rápidamente se quemará.
MONTANDO EL
CIRCUITO
Va a usar la placa Arduino en este proyecto, pero solo como una fuente de
alimentación. Cuando la conecte a un puerto USB o a una batería de 9V,
Arduino suministrará una tensión de 5V entre su terminal de 5V y su terminal
de masa los cuales puede usar. 5V = 5 voltios, lo verá escrito de esta forma
muchas veces.
Una vez que todo esta preparado, presionar el botón. El diodo LED deberá
encenderse. ¡Le felicito, acaba de que conseguir que el circuito funcione! Una
vez que se haya cansado de presionar el botón para encender la luz, es el
momento de mejorar las cosas añadiendo un segundo botón.
Circuito en serie
LOS COMPONENTES EN SERIE SE CONECTAN UNO DESPUÉS DE OTRO
Una vez que ha desconectado la fuente de alimentación añadir un pulsador cerca del que
ya está montado en la placa de pruebas. Conectar un cable para conectarlos en serie
como se muestra en la figura 10. Conectar el ánodo (terminal largo) del LED al segundo
pulsador. Conectar el cátodo del LED a masa. Alimentar de nuevo la placa Arduino: ahora
para encender el LED, necesita presionar los dos pulsadores a la vez. Puesto que están en
serie, ambos deben ser cerrados para que el circuito funcione.
Los dos pulsadores están en serie. Esto quiere decir que circula
la misma corriente a través de ellos, así que ambos tienen que
ser presionados a la vez para que el LED se encienda
Figura 10
Circuito en paralelo
LOS COMPONENTES EN PARALELO SE CONECTAN UNO AL LADO DEL OTRO
Ahora que ha dominado el arte de las cosas en serie, es el momento de conectar los
pulsadores en paralelo. Dejar los pulsadores y el diodo LED donde están, pero quitar la
conexión entre los dos pulsadores. Colocar un cable desde cada pulsador a la resistencia.
Unir el otro extremo de cada pulsador al diodo LED, como muestra la figura 12. Ahora
cuando se presiona cualquier botón, el circuito funciona y el diodo led se enciende.
ENTENDIENDO LA
LEY DE OHM
En el circuito de la figura 5 se aplica una tensión de 5 voltios. La resistencia tiene un valor de 220
ohmios. Para averiguar la corriente que usa el LED, reemplazar los valores en la ecuación de la Ley de
Ohm. Por tanto I = V / R ; I = 5 / 220 = 0.023 amperios, este valor equivale a la 23 milésima parte de
un amperio, o 23 miliamperios (23mA) que consume el diodo LED. Este valor es casi el máximo con el
cual puede trabajar con seguridad este tipo de diodo LED, es por eso que se utiliza un resistencia de
220 ohmios.
Puede usar este proyecto de varias formas diferentes, o creando su propio pulsador (se puede realizar
con dos trozos de papel de aluminio con un cable), o creando una combinación de pulsadores y LEDs
en paralelo y en serie. ¿Qué sucede cuando coloca tres o cuatro LEDs en serie?, ¿qué sucede cuando
se colocan en paralelo?, ¿por qué funcionan de la forma en lo hacen?
Ahora que tiene los fundamentos de la electricidad bajo control, es el momento de pasar a controlar
cosas con su Arduino. En este proyecto, va a construir algo que podría ser una interface de una nave
espacial de una película de ciencia ficción de los años 70. Va a montar un panel de control con un
pulsador y luces que se encienden cuando presiona el pulsador. Puede decidir que indican las luces
“Activar hiper-velocidad” o “¡Disparar los rayos laser!”. Un diodo LED verde permanecerá encendido
hasta que pulse el botón. Cuando Arduino reciba la señal del botón pulsado, la luz verde se apaga y se
encienden otras dos luces que comienzan a parpadear.
Los terminales o pins digitales de Arduino solo pueden tener dos estados: cuando hay voltaje en un pin
de entrada y cuando no lo hay. Este tipo de entrada es normalmente llamada digital (o algunas veces
binaria, por tener dos estados). Estos estados se refieren comúnmente como HIGH (alto) y LOW (bajo).
HIGH es lo mismo que decir “¡aquí hay tensión!” y LOW indica “¡no hay tensión en este pin!”. Cuando
pone un pin de SALIDA (OUTPUT) en estado HIGH utilizando el comando llamado digitalWrite(), está
activandolo. Si mide el voltaje entre este pin y masa, obtendrá una tensión de 5 voltios. Cuando pone un
pin de SALIDA (OUTPUT) en estado LOW, está apagandolo.
Los pins digitales de Arduino pueden trabajar como entradas o como salidas. En su código, los
configurará dependiendo de cual sea su función dentro del circuito. Cuando los pins se configuran como
salidas, entonces podrá encender componentes como los diodos LEDs. Si se configuran como entradas,
podrá verificar si un pulsador está siendo presionado o no. Ya que los pins 0 y 1 son usados para
comunicación con el ordenador, es mejor comenzar con el pin 2.
MONTANDO EL
CIRCUITO
Figura 1
Puede cubrir la placa de pruebas con una plantilla suministrada en el kit. O puede decorarla para
fabricar su propio sistema de control de la nave. Las luces que se encienden y se apagan no nos
dicen nada, pero cuando se colocan en un panel de control y se le coloca una etiqueta, estas sí
que sabemos para que valen. ¿Que quiere que indique la luz verde?, ¿qué significa el parpadeo
de los LEDs rojos?, ¡usted decide!
EL CÓDIGO
Algunas notas antes de comenzar
Cada programa de Arduino tiene dos funciones básicas principales. Las
funciones son partes de un programa de ordenador que ejecuta instrucciones
específicas. Las funciones tienen un único nombre y son “llamadas” cuando
se necesitan. Estas dos funciones principales en un programa de Arduino son
llamadas con setup() y loop(), la cuales necesitan ser declaradas, esto quiere
decir que es necesario indicarle a Arduino lo que estas funciones harán. En la
siguiente página y en su parte superior dentro del primer cuadro se puede
ver como hay que declarar estas funciones setup() y loop (). Lo primero que
hay que hacer antes de meterse en la parte principal del programa es crear
una variable. Las variables son nombres que se utilizan para guardar
información dentro de la memoria de Arduino. Los valores de las variables
pueden cambiar dependiendo de la instrucciones que contenga el programa.
El nombre de las variables deben de ser una descripción de tipo de
información que contienen. Por ejemplo, una variable llamada SwitchState
(estado del pulsador) le dice lo que está guardando: el estado de un pulsador.
Por otra parte, una variable llamada “x” no dice mucho acerca del tipo de
información que guarda.
Para crear una variable, es necesario declarar de que tipo se trata. Una
variable de tipo int guardará un numero entero (también llamado integer);
eso significa que almacena cualquier número sin decimales. Cuando se
declara una variable, normalmente también se le asigna a la vez un valor
inicial. Las declaraciones de la variables siempre deben de finalizar con un
punto y coma (;).
{ Las llaves }
Cualquier código que escriba entre llaves
será ejecutado cuando se llama a la
función
Mayúsculas y minúsculas
Poner atención a la hora de escribir en
mayúsculas y minúsculas dentro del
código. Por ejemplo, pinMode es el
nombre de una instrucción, pero pinmode
producirá un error.
Comentarios
Si alguna vez quiere usar el lenguaje
natural dentro del programa, puede
escribir un comentario.
Los comentarios son notas que se dejan
para recordar lo hace el programa,
además el microcontrolador ignora estos
comentarios. Para añadir un comentario
escribir antes dos líneas inclinadas // y a
continuación escribir lo que se desee
anotar. El microcontrolador ignorará
cualquier texto escrito después de estas
dos líneas.
Para conseguir que los LEDs rojos parpadeen cuando el pulsador este
presionado es necesario encenderlas y apagarlas dentro del bloque de la
instrucción else que se acaba de escribir. Para hacer esto, cambiar el código
tal y como se puede ver en el recuadro de la derecha (parte inferior de la
hoja siguiente).
COMO SE UTILIZA
Una vez que Arduino esta programado, el LED verde debe de verse encendido. Cuando
presione el pulsador, los LEDs rojos comenzarán a parpadear y el LED verde se apagará.
Intenta cambiar el tiempo de las dos instrucciones delay(); observa que le pasa a los LEDs
y como la respuesta del sistema ha cambiado al variar la velocidad del parpadeo. Cuando
en el programa se llama a la instrucción delay() hace que todo deje de funcionar durante
un tiempo. No se puede leer la posición del pulsador hasta que el tiempo establecido
dentro de la instrucción delay() haya finalizado. Los retrasos dentro de un programa son a
menudo útiles, pero hay que fijarse al realizar un proyecto que su uso no es innecesario y
que no interfiere el funcionamiento de dicho proyecto.
¿Cómo podría conseguir que los diodos LEDs comiencen a parpadear cuando el programa comienza?
¿Cómo puedo hacer una interface para mis aventuras interesterales más grande, o más compleja con
LEDs y pulsadores
Cuando se inicia la creación de una interface para un proyecto, debemos pensar acerca de las
expectativas de las personas mientras lo están usando. Cuando presionen el pulsador, ¿querrán que
ocurra algo de inmediato? ¿Debe de existir un tiempo de retraso entre la pulsación y lo que Arduino
hace? Intenta ponerte en el lugar de las personas que lo van a usar en el momento de realizar el
diseño, y ver si cumple con las expectativas de lo que se espera del proyecto.
Los valores de las resistencias se indican mediante bandas de colores, según un código
que se desarrollo en 1920, cuando erá muy difícil escribir números en objetos tan
pequeños.
Cada color se corresponde con un número, como se puede ver en la tabla inferior. Cada
resistencia tiene entre 4 o 5 bandas. En las resistencias con 4 bandas, las dos primeras
bandas indican los dos primeros dígitos del valor de la resistencia, mientras que la tercera
banda de color indica el número de ceros que sigue a los dos primeros valores
(técnicamente esta tercera banda representa potencias de diez). La última banda
especifica la tolerancia: en el ejemplo inferior, se puede leer un valor de resistencia de
10K, y este valor puede variar en más o menos un 5% según esta tolerancia