Kit Arduino Vol1
Kit Arduino Vol1
Programación en PC (WINDOWS)
14 Ejercicios mBlock + Arduino
1
Crear un Video Juego
Autor: Hernán Arancibia Cuevas
Mayo 2019
Santa Cruz - Bolivia
Autor y Editor
Hernán Arancibia Cuevas
Androbot
#Libro 0011
Cada vez que terminamos de aprender el inicio de un tema fascinante como la electrónica
pensamos que hasta ahí finalizara y cambiamos a otros temas, pero lo cierto es que solo es
un pequeño paso, una pequeño avance, una pequeña exploración al mundo de la
tecnología.
Estamos refiriéndonos al ARDUINO, sin duda una plataforma que aún sigue dando mucho
de qué hablar desde que se mostró al público en el año 2011 en una feria Marker. Desde
aquí comenzó a viralizarse el ARDUINO y expandirse un sinfín de actividades, pero bueno
dejaremos que nuestra nueva EDICION le informe más al respecto y poder ampliar nuestros
conocimientos juntos.
Así que sin más vueltas al asunto comencemos con la aventura electrónica.
Autor: Hernán Arancibia Cuevas
INDICE
Página
Introducción 1
Tarjeta Electrónica ARDUINO 2
ARDUINO UNO 3
Puertos 4
Puerto Digital 4
Puerto Analógico 5
ARDUINO PC Windows 6
Método 1 SCRATCH 6
mBlock 7
Ejercicio 1 – SCRATCH 8
Realizar animación 8
Conectar el Arduino UNO a la PC 10
Cargar FIRMWARE al ARDUINO 12
Ejercicio 2 – Encender LED 12
Ensamblando en protoboard - Ejercicio 2 13
Ejercicio 3 – encender LED con el Teclado PC 15
Ejercicio 4 – Condiciones 15
Encender y apagar LED con un pulsador 15
Ejercicio 5 – Variable 15
Leer puerto Analógico 17
Que es una variable 18
Ejercicio 6 – LED nocturno automático 19
Ejercicio 7 – Interruptor Digital 20
Ejercicio 8 – Sonido 20
Ejercicio 9 – Generar Sonido aleatorio con LDR 22
Ejercicio 10 - Servomotor 23
Ejercicio 11 – Control Micro servo con potenciómetro 25
Ejercicio 12 – Ultrasónico 26
Ejercicio 13 - detectar un objeto a una distancia 28
Ejercicio 14 – Grabar programa en el ARDUINO 30
Proyecto 1 – Video Juego 32
Programación del Video Juego 35
Autor: Hernán Arancibia Cuevas
INTRODUCCION
Empecemos con una definición básica de este término: “ARDUINO”, lleva este nombre al
azar (una forma de mencionarlo) por los creadores , a continuación se lo mencionamos:
1
Autor: Hernán Arancibia Cuevas
Bien ahora nos dedicaremos a conocer, manipular y hasta programarlo, para entrarnos a
esta fascinante combinación entre la informática – electrónica, que mejor forma de
comenzar con el primer de sus creaciones, mejorada y que por ende es donde todo
comenzaría, vamos a utilizar el modelo ARDUINO UNO.
2
Autor: Hernán Arancibia Cuevas
ARDUINO UNO
Conector USB
Conector DC
Pulsador
de Reinicio
Puerto GND
Esta placa electrónica se llama arduino UNO, básicamente es con la que se empieza a
trabajar, pues bien vamos a conocer sus partes principales al menos las necesarias y
bastante importantes.
Conector DC: aquí es donde conectaríamos una fuente de alimentación externa, baterías o
cargadores con un máximo de 12 voltios y no menos de 6 voltios, con hasta una corriente
de 3 Amperios. Utiliza un conector macho hembra tipo PLUG.
Conector USB: este lugar es donde se ingresan los datos de programación, es decir donde
se programa la tarjeta electrónica utilizando una computadora.
Pulsador de reinicio: este pulsador al presionarlo, reinicia la placa arduino, permitiendo así
que el circuito empiece su funcionamiento otra vez. Muy usado para cuando realicemos
programaciones muy largas o también al suceder fallas y verificarlas.
3
Autor: Hernán Arancibia Cuevas
PUERTOS
Unas de las partes más principales del arduino son los puertos que dispone, primeramente
explicaremos que significa esto:
Podemos decir que un PUERTO es como una puerta,
curioso el ejemplo que presentamos no lo creen.
bueno ,si pensamos que es una puerta sabremos
que es o para que sirve.
Entonces ahí tenemos una definición básica,
Una puerta es donde se entra y sale.
Puerto Positivo +5V : este es un puerto de salida, donde sale corriente eléctrica
POSITIVA, exactamente proporciona 5 voltios.
Puerto Positivo +3,3V: puerto de salida de corriente eléctrica Positivo de 3,3 voltios
Puertos GND - : puerto de salida de corriente eléctrica Negativo.
GND significa: Ground (tierra) lo cual se asemeja al negativo de toda la tarjeta electrónica.
Puerto Voltaje de entrada +DC : este puerto proporciona un voltaje positivo ,el mismo
que se recibe en el Conector DC, es decir , si conectamos en el Conector DC del arduino
con 12 voltios, entonces en este puerto saldrá ese mismo voltaje +12v.
Bien, ahora explicaremos los PUERTOS de control que son: puertos digitales y analógicos.
4
Autor: Hernán Arancibia Cuevas
Puertos Analógicos: estos puertos siempre es variante, es decir siempre puede estar
cambiando, ya no tendría 2 estados como el digital si no, muchos, por ejemplo:
Analógico
Y/O
Digital
Entrada Salida
Entonces el que más cambiaria seria el positivo y el negativo no, por lo tanto a esto nos
referimos a la señal Analógica, entrando o saliendo de los Puertos Analógicos.
Los números valores o datos pueden llegar a más de 10, hasta 1024 o mucho más, a esto ya
se lo denominaría los lenguajes en: Decimal, octal, hexadecimal, Word, flotantes, etc.
Con ellos podremos: leer sensores o controlar el PWM, velocidad de motores, control de
brillo de leds, etc.
NOTA: estos puertos analógicos también pueden dar y recibir señal digital, esto porque
arduino tiene la opción de convertirlos: Analógico-Digital (A/D)
Muy bien hasta aquí, conocemos físicamente la placa electrónica ARDUINO, al menos lo
más principal.
Ahora les mostraremos 3 métodos o formas de Programar este ARDUINO y comenzar
sacarle el jugo a esta plataforma.
Así que les mencionamos estos métodos:
Método 1: programación en PC (Windows) en SCRATCH.
Método 2: programación en PC (Windows) en CODIGO C.
Método 3: Programación en Celular (ANDROID) en CODIGO C.
5
Autor: Hernán Arancibia Cuevas
ARDUINO en PC (Windows)
Primeramente necesitaremos los siguientes materiales para realizar todos los ejercicios:
1 Arduino UNO
1 cable USB
1 protoboard de 400 puntos
4 resistencia de 220 ohm
4 Diodos LED (Rojo,Amarillo,verde,Azul)
2 pulsador de 2 pines
1 LDR o Fotocelda
1 potenciómetro de 100k ohm
1 Parlante de 0,5 watts 8ohm
1 Servomotor SG90
10 cables jumper
1 computadora PC o laptop
(sistema operativo Windows7 u otros)
1 Programa instalador mblock versión 3.4.12)
6
Autor: Hernán Arancibia Cuevas
3er PASO: Explorar Programa mblock, tendrá una vista de esta manera y sus partes
principales es el siguiente:
3 1
7
Autor: Hernán Arancibia Cuevas
Ejercicio 1- SCRATCH
Realizaremos el siguiente ejercicio para incursionarnos en esta plataforma, Empecemos!!
Ejercicio 1: Realizar una animación, cambiando disfraces por 1 segundo, un murciélago volando.
8
Autor: Hernán Arancibia Cuevas
¿Cómo funciona?
*El bloque funciona como inicio del programa.
*El bloque funciona como repetidor o bucle, todo lo que este dentro de el, se
repetirá en cierto tiempo, en este caso por siempre.
*El bloque permite cambiar el traje, disfraz o apariencia del personaje u
objeto, esto es porque cada personaje tiene al menos 2 disfraces por esa razón podemos
hacer el efecto del movimiento.
* El bloque permite realizar una pausa en segundos para realizar una
acción, si quisiéramos un tiempo menor debemos colocar en milisegundos, para esto solo
debemos escribir en la casilla del bloque en vez de 1 seria: 0.5(500 milisegundos) o también
0.1(100 milisegundos) así permitirá hacer una espera más corta y rápida, un ejemplo :
Bien ahora quedaría hacer funcionar el programa, pero antes debemos guardar este ejercicio, vamos
arriba del programa, le damos clic en , clic en guardar y le ponemos un nombre al proyecto,
un ejemplo: “Ej1” y clic en Guardar.
9
Autor: Hernán Arancibia Cuevas
NOTA: la primera vez que se conecta el arduino todos los LEDS se encenderán por un
momento y luego solo quedarían encendido el LED ON, el LED auxiliar se comenzara apagar
y encender intermitentemente, lo que significa que el arduino tiene un programa DEMO
para verificar su funcionamiento de fábrica.
Bien ahora conectaremos el puerto COM del arduino a la PC, para esto realizamos lo
siguiente: vamos arriba del programa mBlock (parte superior) y escogemos esta opción:
10
Autor: Hernán Arancibia Cuevas
11
Autor: Hernán Arancibia Cuevas
Lo que significa que nuestro arduino está listo para funcionar junto con mBlock!!!.
12
Autor: Hernán Arancibia Cuevas
Conectaremos primero la resistencia R1 de 220Ω (ohm), desde la columna 7; Fila H, hasta abajo en la
columna 7; Fila C, aunque pueden realizar la conexión como se sientan cómodos.
Ahora conectaremos el diodo LED, el pin Ánodo conectaría cerca de la resistencia es decir:
El Ánodo(A) conecta en la columna 7; Fila A del protoboard y el Pin cátodo (K) en la línea celeste que
significaría el negativo del circuito.
Después utilizaremos 2 cables jumper, uno para conectar el negativo GND del arduino a la línea
celeste del protoboard y el otro para conectar el puerto PIN2 del arduino a la resistencia R1 de la
columna 7; Fila J del protoboard, podemos colocar cables de cualquier color, por lo tanto como son
pocos cables usare estos colores: Amarillo y Café (marrón).
13
Autor: Hernán Arancibia Cuevas
Muy bien, ya está listo nuestro circuito, ahora vamos a programarlo para que funcione!!!
10mo Paso: Realizar programa en bloques.
Ahora volvamos al software mBlock y armaremos el siguiente programa:
NOTA: A esto nos referimos como “SALIDA” que podremos enviar datos y controlar componentes,
en este caso un LED.
Y por último este bloque nos dará una pausa de espera en segundos para alguna
acción, para este caso, dar un tiempo en encender y apagarse el LED.
Ahora solo bastaría con dar clic en bandera verde para iniciar la simulación y comenzara
funcionar el circuito, recuerden para detenerlo solo le damos clic en “stop” y listo.
14
Autor: Hernán Arancibia Cuevas
Ejercicio 3
Encender LED en el PIN 2 con las teclas “A” y “B” de la computadora PC.
Esta vez activaremos el LED manualmente con las teclas
de la computadora, para realizarlo usaremos el mismo
circuito hecho anteriormente y el programa seria de esta manera:
El Bloque se encuentra en
Este bloque permite iniciar cualquier programa
Que se conecte en él, al presionar cualquier tecla
Que seleccionemos en la casilla:
Después de armar la programación realizamos la simulación dando clic en bandera verde y listo
presionamos las teclas “a” y “b” y funcionara el ejercicio.
Ejercicio 4 – Condiciones
15
Autor: Hernán Arancibia Cuevas
El pulsador está conectado desde la línea roja del protoboard (positivo) hasta la columna 8, en esa
misma columna: fila H, se conecta un cable (azul) hasta el PIN4, luego en la fila: F, de la misma
columna la R2, hasta la línea negativa (azul), esta conexión permite enviar directamente un valor
negativo hasta el PIN4 del arduino asegurando así, la espera de un positivo al presionar el P1. Esto se
hace para que los puertos del arduino reciban una señal un poco más limpia, segura y entendible.
Nuevamente conectamos un LED al PIN 2.
Entonces el programa se vería de esta manera:
Este bloque nos permite leer y detectar, que datos entran en un puerto, en su
casilla podremos colocar el número de puerto que queramos verificar, en este caso los datos serian
en binario: 1 = positivo y 0 = negativo.
16
Autor: Hernán Arancibia Cuevas
Ejercicio 5 - Variable
Leer puerto Analógico A0, guardarVVariaVariable
y mostrarlo en una variable.
El esquema electrónico seria el siguiente:
Ensamblando en protoboard:
17
Autor: Hernán Arancibia Cuevas
El circuito es similar al anterior ejercicio, solo hemos cambiado la posición del cable(azul) desde la
columna:8,Fila:H , hasta conectar al PIN analógico A0 y la fotocelda LDR desde la columna:8 , Fila:i ,
hasta la línea positivo (Rojo).
Este bloque nos permite leer los puertos analógicos y al combinar con esto:
Por lo tanto cada vez que la fotocelda LDR reciba luz u obscuridad el valor cambiara todo el tiempo.
18
Autor: Hernán Arancibia Cuevas
¿Cómo funciona?
Cuando la fotocelda LDR recibe oscuridad,
En este caso alguna sombra, entonces
Baja la resistencia del mismo y por lo
Tanto el valor de la variable bajara,
Mostrando números pequeños hasta el cero.
Ejercicio 6
LED nocturno Automático: encender LED (PIN2) cuando la Fotocelda LDR recibe poca luz
(<20), pero si recibe mucha luz, se apaga el LED.
El esquema electrónico será el mismo del anterior ejercicio 5.
La programación será la siguiente:
19
Autor: Hernán Arancibia Cuevas
Ejercicio 7
Interruptor Digital: Encender y apagar LED , solo cuando se presione el Pulsador P1.
En esta ocasión realizaremos el mismo circuito
Del ejercicio 4.
La funcion es muy simple, solo debemos, apagar
Y encender el LED conectado al PIN2,
Cada vez que presionamos el Pulsador por cada
Segundo.
Es decir que el led solo se enciende al presionar
La primera vez el P1 , la segunda vez que
Presionemos el Pulsaodr, se debe apagar
El LED y asi sucesivamente.
Ejercicio 8 – SONIDO
Generar tonos y/o notas musicales.
Para poder reproducir sonido con el arduino, se debe generar una frecuencia y cada nota genera
una en particular, por ejemplo:
20
Autor: Hernán Arancibia Cuevas
21
Autor: Hernán Arancibia Cuevas
Ejercicio 9
Generando sonidos aleatorios con LDR
Este ejercicio reproduce sonidos
Según la cantidad de luz que recibe
el sensor LDR, si se detecta mucha luz
se generara tonos muy altos en
el parlante, pero si recibe poca
luz e incluso si lo tapamos
con la mano, reproducirá
sonidos muy bajos o graves,
un ejercicio muy divertido
de hacer sin duda.
22
Autor: Hernán Arancibia Cuevas
Ejercicio 10 - SERVOMOTOR
Los servomotores son componentes ELECTROMECANICOS, básicamente son motores encapsulados
(en caja) con engranajes y con tarjeta de control que mejora su precisión.
Son muy utilizados en la área de robótica, para crear: bípedos, humanoides, hexápodos y brazos
robóticos, en fin un componente de bajo consumo que definitivamente nos entusiasmara usarlo.
Realizaremos el siguiente circuito:
Utilizaremos el
Micro Servo SG90
Este servomotor tiene
una fuerza de hasta
1Kg, que se lo
denomina Torque.
Puede funcionar desde
5v hasta 9v.
Ideal para construir
pequeños brazos
robóticos, robots, etc…
¿Cómo funciona?
Los servomotores funcionan con
una señal llamada PWM
(Modulación ancho de pulso).
Básicamente la señal PWM es el
tiempo que se da a cada POLO:
positivo y negativo, con esta
señal podremos controlar la
posición del SERVO, por ejemplo:
El servomotor puede girar hasta 180 grados según la señal PWM que enviemos. Es decir
Puede girar hasta una media vuelta, aunque ya hay servos que pueden girar 360 grados para
aplicaciones especiales, pero en este caso usaremos uno de 180 grados.
Muy bien ahora, utilizaremos un bloque en mblock, para controlar el servo:
24
Autor: Hernán Arancibia Cuevas
Ejercicio 11
Control de Micro Servo con potenciómetro
En este ejercicio de forma básica
Controlaremos la posición del micro servo
Utilizando un potenciómetro de
100 kilo ohmio, que se conecta al
Puerto analógico A0, el potenciómetro
PT1 registra señal analógica, hasta
Valores numéricos de 1024, pero el
Micro servo solo se puede controlar,
Con datos numéricos hasta 180.
Por lo tanto, utilizaremos unas
operaciones matemáticas para
convertirlos datos del potenciómetro.
Así entonces podremos controlar
El servo, cada vez que movamos o
Giremos el PT1, el servo también se
Moverá ligeramente, tanto de extremo
A extremo, sin duda un experimento
Con un funcionamiento curioso,
Interesante y divertido, verlo funcionar.
25
Autor: Hernán Arancibia Cuevas
26
Autor: Hernán Arancibia Cuevas
27
Autor: Hernán Arancibia Cuevas
Ejercicio 13
Al detectar un objeto de una distancia de 5 cm o menos del sensor ultrasónico, activar LED (PIN2) y
reproducir sonido (PIN4) por 1 segundo.
28
Autor: Hernán Arancibia Cuevas
¿Cómo funciona?
Cuando inicia el programa, la variable
“dato” estará en cero, luego dentro
del bucle “por siempre”, se lee el sensor
ultrasónico en los PIN 7 y PIN8, donde
automáticamente calcula una distancia
enviando y recibiendo señales
ultrasónicas. Luego se guarda en la misma
variable .
entonces, después preguntamos
con una condición y comparador
juntos, si la distancia es menor igual a 5 cm.
.
Bien!! ,si la pregunta es correcta, en este caso acercamos un objeto al sensor a 5 centímetros o menos
Entonces encenderá el LED y reproducirá un sonido en el parlante como aviso de detección.
Pero si la pregunta es incorrecta, entonces significa que no hay objetos cercanos alrededor y el LED se quedara
apagado.
29
Autor: Hernán Arancibia Cuevas
30
Autor: Hernán Arancibia Cuevas
Bueno, para iniciar el grabado y descarga del programa al arduino, le damos clic en esta opción, arriba de la
ventana de código :
ahora le colocamos una batería de 9 voltios con su conector adaptado al conector DC del arduino.
Y listo!!!!
Observaremos que el circuito funciona!!!
31
Autor: Hernán Arancibia Cuevas
¿Qué necesitamos?
Para crear un VIDEO JUEGO necesitaremos 2 cosas básicas e importantes:
Primero: Software: programa donde se ejecutara y funcionara mostrándose en una pantalla, en
nuestro caso usaremos la computadora y el programa será mBlock.
Segundo: Hardware: una tarjeta electrónica que controle el video juego, por ejemplo el mando o
joystick, entonces utilizaremos el arduino UNO para controlarlo.
Personajes: son los objetos que participaran en nuestro video juego y estos pueden ser: HEROE,
VILLANO y entre otros más que deseamos añadir.
Escenario: es el lugar donde sucederán todos los acontecimientos, hechos y aventuras de nuestros
personajes.
Historia: aquí debemos redactar de que se trata el video juego, es decir una descripción corta , un
Inicio y fin del video juego.
32
Autor: Hernán Arancibia Cuevas
Software
Personajes
Ahora escogeremos nuestros personajes mencionados:
Para nuestro HEROE utilizaremos el PANDA:
33
Autor: Hernán Arancibia Cuevas
Ahora añadiremos el segundo personaje que será el villano, en nuestro vamos a diseñarlo, entonces realizamos
las siguientes acciones: vamos hacia abajo nuevamente y escogemos la opción “pintar nuevo Sprite”.
Escenario
Ahora debemos escoger un lugar donde nuestros personajes podrán pasar todas las aventuras que
nosotros podremos diseñar, al menos para comenzar. Para escoger un escenario debemos ir en la
parte de abajo y daremos clic en “Escoger fondo de la galería”.
34
Autor: Hernán Arancibia Cuevas
Programando al Heroe
Como habíamos mencionado al principio, en mBlock podemos programar uno por uno, es decir cada objeto e
incluso el escenario, pero bueno vamos a empezar por uno de los personajes comenzamos con el Héroe.
Inicia el programa
35
Autor: Hernán Arancibia Cuevas
Programando al villano
Ahora nos tocaria programar al segundo ,personaje que
por cierto nadie lo controlaria, sera automatico.
Escogemos el personaje nuevamente y
lo programaremos de la siguiente manera:
Inicia el programa
Y por ultimo usaremos el bloque “por siempre” para repetir el programa indefinidamente.
36
Autor: Hernán Arancibia Cuevas
Hardware
Realizamos el siguiente circuito para controlar el juego:
37
Autor: Hernán Arancibia Cuevas
Muy bien!!! Nuestro video juego esta listo, ahora solo restaria hacerlo funcionar,realizamos la
simulacion.
Primero, ampliaremos el escenario en pantalla completa, nos dirijiremos arriba del escenario
Y clic en este icono:
38
Hemos finalizado nuestra introduccion al arduino,
Esperamos que hayan podido entretenerse y aprender con
el metodo SCRATCH,
Aunque parece un metodo algo infantil y simple ,pero es una
buena forma de iniciarse en un tema bastante amplio como la
informatica y manipulacion de datos
Y lo mejor de todo poder combinarlo con el fascinante tema de la electronica.
Estaremos realizando mas proyectos con mBlock y arduino,
publicando en nuestras redes sociales, siganos y esten atentos.
En nuestro siguiente edicion podremos seguir aprendiendo
un poco mas sobre la programacion
Del arduino utilizando otros metodos, incluso hasta
programarlo y hacerlo funcionar con un celular movil!!!