0.- ÍNDICE
1. INTRODUCCIÓN A LA ROBÓTICA
2. QUÉ ES ARDUINO?
3. PARTES DE ARDUINO
4. SEÑAL ANALÓGICA Y DIGITAL
5. COMPONENTES
6. EJEMPLOS
7. SOFTWARE
8. PROGRAMACIÓN
9. ARDUBLOCK
10.PRÁCTICAS GUIADAS
11.PRÁCTICAS EN GRUPO
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 2
SESIÓN Nº:2
SESIÓN Nº:3
SESIONES Nº:4 y Nº5
SESIONES Nº:6 y Nº7
SESIÓN Nº:1
1.- INTRODUCCIÓN A LA ROBÓTICA
Cuando hablamos de un “robot” quizá todos imaginemos a un ser metálico parecido a
un humano y que son capaces de tomar decisiones de manera independiente.
La realidad es muy diferente y actualmente los robots toman múltiples formas,
actuando en función de una serie de programas en los que se dictan unas órdenes muy
concretas en función de los estímulos que les lleguen a dichos robots.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 3
1.- INTRODUCCIÓN A LA ROBÓTICA
1.1 SISTEMAS DE CONTROL
Un robot va a ser un dispositivo capaz de iniciar y detener procesos sin la intervención
manual del usuario. Para ello necesitarán recibir información del exterior, procesarla y
emitir una respuesta. En un automatismo (unas escaleras automáticas por ejemplo)
dicha respuesta será siempre la misma, pero en un robot podemos tener diferentes
comportamientos según las circunstancias. A esto se le llama un sistema de control.
A la información que recibe el sistema del exterior se le denomina de forma genérica
entrada o input.
A las condiciones que existen en el exterior después de la acción del robot se les
denomina de forma genérica salida o output.
Existen dos tipos de sistemas de control de un robot:
- Sistemas de control de lazo abierto
- Sistemas de control de lazo cerrado.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 4
1.- INTRODUCCIÓN A LA ROBÓTICA
- Sistemas de control de lazo abierto
El sistema no tiene realimentación, es decir, las salidas no tienen efecto sobre el propio
sistema. Su capacidad de toma de decisiones de manera “inteligente” es limitada y a
este tipo de sistemas no suelen denominarse robots.
Ejemplos: Un sistema de riego que humedece las plantas con la misma cantidad de
agua y a una hora determinada sin saber si ese día ha llovido o ha sido muy soleado.
Una tostadora que tuesta el pan sin saber si el tiempo de tostado ha sido suficiente o
por el contrario ha sido excesivo y se ha quemado el pan.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 5
1.- INTRODUCCIÓN A LA ROBÓTICA
- Sistemas de control de lazo cerrado
Son sistemas que tienen feedback. La toma de decisiones no sólo depende de la
entrada original sino también de la salida, que ha podido afectar al entorno inicial.
Este tipo de sistemas no se detienen al transcurrir un determinado tiempo, sino cuando
se ha cumplido el objetivo prefijado. (Cuando la humedad de las plantas es la
adecuada, cuando la temperatura de la tostada es la correcta, etc.).
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 6
1.- INTRODUCCIÓN A LA ROBÓTICA
1.2 SENSORES
Tanto los datos de entrada original como los de realimentación (los datos de salida) de
los sistemas de control, son captados y se introducen en ellos mediante unos
dispositivos que se denominan sensores.
Los sensores serán dispositivos capaces de detectar las condiciones del entorno
(temperatura, luz, humedad, movimiento…) y traducir esta información que le llega del
exterior en un impulso eléctrico, normalmente digital (pasa o no pasa corriente), que
puede ser analizado y procesado por la unidad de control del sistema.
Ejemplos de sensores los encontramos en los portales de nuestras casas cuando se
encienden las luces, en los vehículos de nuestros padres cuando va a aparcar, etc.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 7
1.- INTRODUCCIÓN A LA ROBÓTICA
1.3 TIPOS DE SENSORES
A) Sensor de contacto
Se emplean para detectar el final del recorrido o la posición límite de componentes
mecánicos en movimiento. Por ejemplo: saber cuando una puerta o una ventana que
se abren automáticamente están ya completamente abiertas y por lo tanto el motor que
las acciona debe pararse.
Los principales son los llamados fines de carrera. Se trata de un interruptor que consta
de una pequeña pieza móvil y de una pieza fija que se llama NA, normalmente abierto,
o NC, normalmente cerrado.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 8
1.- INTRODUCCIÓN A LA ROBÓTICA
1.3 TIPOS DE SENSORES
B) Sensor óptico
Se trata de resistencias cuyo valor disminuye con la luz, de forma que cuando reciben
un haz de luz permiten el paso de la corriente eléctrica por el circuito de control.
Cuando una persona o un obstáculo interrumpen el paso de la luz, el sensor aumenta
su resistencia e interrumpe el paso de corriente por el circuito de control.
Se emplean por lo tanto para controlar la presencia de personas o elementos que
interrumpen un haz de luz que llega al sensor y consecuentemente hacer saltar una
alarma. También se utilizan para regular la puesta en marcha de un sistema de
iluminación artificial en función del nivel de luz natural, etc.
Los principales sensores ópticos son las fotoresistencias o LDR.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 9
1.- INTRODUCCIÓN A LA ROBÓTICA
1.3 TIPOS DE SENSORES
C) Sensor de temperatura
Se trata de resistencias cuyo valor asciende con la temperatura (termistor PTC) o bien
disminuye con la temperatura (termistor NTC). Por lo tanto, depende de la temperatura
el hecho de que este sensor permita o no el paso de la corriente por el circuito del
sistema de control.
La principal aplicación de los sensores térmicos, como es lógico, es la regulación de
sistemas de calefacción y aire acondicionado, además de las alarmas de protección
contra incendios, etc.
Los principales son los termistores.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 10
1.- INTRODUCCIÓN A LA ROBÓTICA
1.3 TIPOS DE SENSORES
D) Sensor de humedad
Se basan en la propiedad del agua como elemento que posee conductividad eléctrica
(a diferencia del aire). Por lo tanto, un par de cables eléctricos desnudos (sin cinta
aislante o plástico recubriéndolos) van a conducir una pequeña cantidad de corriente si
el ambiente es suficientemente húmedo. Si colocamos un transistor que amplifique esta
corriente tendremos un detector de humedad.
Los sensores de humedad se aplican para detectar el nivel de líquido en un depósito,
en sistemas de riego de jardines para detectar cuándo las plantas necesitan riego, etc.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 11
1.- INTRODUCCIÓN A LA ROBÓTICA
1.3 TIPOS DE SENSORES
E) Sensor Magnético
Detecta los campos magnéticos que provocan los imanes o las propias corrientes
eléctricas. Consiste en un par de láminas metálicas de materiales ferromagnéticos
metidas en el interior de una cápsula que se atraen en presencia de un campo
magnético, cerrando con ello el circuito.
El principal es el llamado interruptor Reed. Éste puede sustituir a los finales de carrera
para detectar la posición final de un elemento móvil con la ventaja de que no necesita
ser empujado físicamente por dicho elemento sino que puede detectar la proximidad
sin contacto directo.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 12
1.- INTRODUCCIÓN A LA ROBÓTICA
1.3 TIPOS DE SENSORES
F) Sensor Infrarrojos
Si recordamos el espectro electromagnético, nos vendrá a la mente la existencia de
una franja de ondas electromagnéticas cuya frecuencia era muy baja para que nuestros
ojos la detectaran. Esta franja son los infrarrojos. Pues bien, existen diodos capaces de
emitir luz infrarroja y transistores sensibles a este tipo de ondas y que por lo tanto
detectan las emisiones de los diodos.
Esta es la base del funcionamiento de los mandos a distancia de nuestros televisores.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 13
1.- INTRODUCCIÓN A LA ROBÓTICA
1.4 ARQUITECTURA DE UN ROBOT
De acuerdo con la estructura de un sistema de control que hemos estudiado
anteriormente (entrada, control y salida) , en un robot podemos distinguir los siguientes
componentes:
- Los distintos tipos de sensores que hemos estudiado y que se encargan de
suministrar los datos de entrada y / o de realimentación del sistema.
- La unidad de control que procesa la información que proporcionan los sensores y
toma decisiones de acuerdo con dicha información. Por lo general se trata de la
CPU (unidad central de proceso) de un ordenador.
- Los actuadores, que son los elementos que ejecutan las órdenes de la unidad de
control. Pueden ser eléctricos, mecánicos, hidráulicos o neumáticos.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 14
1.- INTRODUCCIÓN A LA ROBÓTICA
1.5 ALGUNAS APLICACIONES DE LOS ROBOT
• Soldadura. Un robot puede soldar, ahorrándole al operario el peligro de las altas
temperaturas y los vapores tóxicos que se desprenden en el proceso.
• Aplicación de pintura, esmalte y adhesivos. Es un trabajo repetitivo adecuado para
que lo haga una máquina en el que además se suele trabajar con productos tóxicos.
• Operaciones de corte: Las máquinas de control numérico permiten llevar a cabo
estas operaciones con la máxima precisión y sin riesgo para el operario.
• Plantas nucleares. Los robots pueden trabajar en zonas sometidas a radiación.
• Movimiento de piezas. Los robots se encargan de colocar las piezas o los materiales
en plataformas, de suministrárselas a las máquinas o de extraer de estas últimas los
productos terminados.
• Montaje y ensamblado. Son robots quienes se encargan de piezas muy pequeñas
necesitadas que requieren una gran precisión, como pueden ser los componentes
eléctricos o electrónicos.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 15
FIN DE LA SESIÓN Nº 1
2.- ¿QUÉ ES ARDUINO?
Arduino es una plataforma electrónica abierta para la creación de prototipos y que gira
entorno a un microcontrolador.
• Plataforma: Posee una arquitectura hardware guiada por un programa o
software que le va a permitir ejecutar programas previamente diseñados.
• Electrónica: Usa una tecnología que se basa en el movimiento controlado de
electrones a través de diferentes dispositivos.
• Abierta: Es un recurso que puede ser usado, distribuido, modificado…
gratuitamente. De esta manera es un elemento muy útil para los estudiantes.
• Prototipo: Es un diseño preliminar que sirve como base para otros desarrollos.
• Microcontrolador: Circuito capaz de ejecutar órdenes grabadas en su memoria.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 16
3.- PARTES DE ARDUINO
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 17
Puerto USB: A través de este puerto podremos conectar el ordenador con la placa Arduino.
Necesitaremos para ello un cable USB tipo AB (el de las impresoras) y a través de éste, podremos
cargar en la placa los programas diseñados y también proporcionar alimentación eléctrica al
dispositivo.
Chip integrador: Actúa como puente y comunica el ordenador y el microcontrolador que
veremos más adelante.
Power: Podemos conectar una fuente de alimentación para que Arduino trabaje de manera
autónoma sin necesidad de que esta placa esté conectada al ordenador mediante USB.
Chip - Cristal de cuarzo: Actuaría como un reloj interno de Arduino. Da las pulsaciones de
frecuencia necesarias para que la placa actúe de manera constante y repetitiva. Cada vez que
reiniciamos arduino, su contador comienza desde cero y esto puede ser útil en ciertos
programas.
LEDs: Hay tres: El “L” está vinculado al puerto 13 de Arduino y nos va a permitir hacer pruebas de
funcionamiento de arduino sin necesidad de conectar otros dispositivos u otros LED. Los otros
dos son los LED TX y RX y éstos nos permiten conocer el estado de comunicación entre el
ordenador y la placa.
Conexiones digitales: Son pines de conexión rápida que funcionan como entrada y salida de
datos digitales. Con ellos podremos remitir información del entorno a la placa (con el empleo de
un sensor por ejemplo) o bien extraer respuestas desde la propia placa hacia otros periféricos
conectados a Arduino (como luces LED, etc.).
LED ON: Es una luz LED que nos permite conocer cuándo nuestro Arduino está conectado a la
corriente (a través de baterías o a través del cable USB) y por lo tanto está encendido y en
funcionamiento.
Microcontrolador: Modelo ATMega328. Va a ser el cerebro de la placa de Arduino. Tiene por
defecto cargado un programa que es el gestor de arranque que le permite reiniciar el programa
que tenga almacenado en memoria cada vez que lo conectamos a la red eléctrica.
Botón de reinicio: Nos permite reiniciar la placa Arduino y por lo tanto también el programa que
el microcontrolador tenga cargado y se encuentre ejecutando en buble.
Entradas analógicas: Hay seis entradas analógicas a través de estos pines de conexión rápida. Se
emplean para la conexión a la placa Arduino de componentes que entreguen señal analógica
como la de un potenciómetro.
Pines Power: Esta barra de energía proporciona la energía suficiente para alimentar dispositivos
externos y ajenos a la placa de Arduino pero que están conectados a ella (como una luz LED por
ejemplo). Hay diferentes voltajes , tomas de tierra (GND) e incluso un pin con el que podremos
resetear la placa Arduino a través de una señal eléctrica.
Condensadores: Dispositivo empleado en electrónica para almacenar energía, que será
proporcional a la diferencia de potencial que exista entre las dos placas que lo conforman.
Reguladores: La fuente de alimentación ofrece unos voltajes que se encontrarán entre 7 y 12
voltios (según la batería que estemos empleando). Los reguladores nos van a permitir reducir
estos voltajes a 5 V que es con los que habitualmente trabaja la placa de Arduino.
4.- ANALÓGICO / DIGITAL
¿RECORDÁIS LAS DIFERENCIAS ENTRE SEÑAL ANALÓGICA Y DIGITAL?
La señal analógica es aquella que presenta una variación continua con el tiempo, es
decir, la información o la señal, para pasar desde un valor a otro pasa necesariamente
por todos los valores intermedios. Es continua y puede tomar infinitos valores.
Las señales analógicas predominan en nuestro entorno (variaciones de temperatura,
presión, velocidad, distancia, sonido etc.) y éstas pueden ser transformadas en señales
eléctricas mediante un dispositivo denominado transductor.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 18
La señal digital es aquella que presenta una variación discontinua con el tiempo y sólo
puede tomar ciertos valores discretos. Es decir, va a saltos entre uno y otro valor. La
utilización de señales digitales para transmitir información puede ser de dos modos:
• En función del número de estados distintos que pueda tener. Binario, ternario…
• En función de su naturaleza eléctrica. Una señal binaria se puede representar
como la variación de una amplitud respecto al tiempo.
4.- ANALÓGICO / DIGITAL
Estamos acostumbrados a trabajar con el sistema decimal (0,1,2,3,4,5,6,7,8,9)
Pero un sistema electrónico suele trabajar con información binaria que solamente
trabajan con ceros y unos. Arduino es capaz de diferenciar si la información es un 0 o
un 1 en función de si recibe o no corriente eléctrica.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 19
5.- COMPONENTES
A) SENSORES
POTENCIÓMETRO
Un potenciómetro es una resistencia variable con el que podremos elegir el valor que
éste puede tomar. De esta forma, controlamos la intensidad de corriente que fluye por
un circuito si éste está conectado en paralelo, así como la diferencia de potencial si
está conectado en serie. Dispone de tres patillas. La resistencia máxima que ofrece el
potenciómetro entre sus dos extremos (que es constante) no es más que la suma de
las resistencias entre los dos extremos y la patilla central.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 20
4.- COMPONENTES
A) SENSORES
SENSOR DE LUZ LDR
Un sensor LDR es un componente electrónico pasivo cuyo valor de la resistencia varía
en función de la luz que recibe. Cuanta más luz reciba, el valor de su resistencia será
menor. Su variación no es lineal, sino exponencial.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 21
5.- COMPONENTES
A) SENSORES
SENSOR DE TEMPERATURA NTC
Un sensor de temperatura NTC es un componente electrónico que varia su resistividad
en función de la temperatura ambiente. Al aumentar la temperatura disminuye la
resistencia. La relación entre ambos parámetros no es lineal, sino exponencial.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 22
5.- COMPONENTES
A) SENSORES
SENSOR DE TEMPERATURA LM35
Un sensor de temperatura LM35 produce una tensión proporcional a la temperatura a
la que éste se vea sometido. Tiene tres patillas: Dos de alimentación y otra que nos
entrega el valor de temperatura tomado. Éste trabaja de forma lineal. Es muy útil.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 23
5.- COMPONENTES
A) SENSORES
SENSOR DE DISTANCIA (POR ULTRASONIDOS) SR04
El sensor SR04 esta compuesto por dos elementos, un emisor de ultrasonidos y un
micrófono capaz de "escuchar" esas frecuencias que captaría las ondas sonoras que
rebotan contra los objetos que se interpongan. De esta manera sabrá que tenemos un
objeto delante y la distancia a la que éste se encuentra, calculando lo que la onda ha
tardado en volver, ya que conocemos la velocidad del sonido en el aire.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 24
5.- COMPONENTES
A) SENSORES
SENSOR DE HUMEDAD DHT11
El sensor DHT11 permitirá tomar lecturas de la humedad y la temperatura. Su precisión
no es muy alta pero nos puede servir para un gran número de propósitos en los que no
nos encontremos en condiciones extremas.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 25
5.- COMPONENTES
A) SENSORES
ACELERÓMETRO
Nos permiten medir el grado de inclinación y la aceleración de un determinado objeto
en uno, en dos o incluso en los tres ejes.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 26
5.- COMPONENTES
A) SENSORES
MICRÓFONO
Captan los sonidos (variaciones de presión del aire) y los transforman en señales
electrónicas basándose en el efecto piezoeléctrico. Necesitan un filtrado y una
amplificación.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 27
5.- COMPONENTES
B) ACTUADORES
LED
Diodo emisor de luz. Podemos encontrarlos de múltiples colores. Los electrones que lo
atraviesan producen una liberación de energía en forma de radiación lumínica. Para
lograr que luzca, debemos hacer que por él circule una potencia superior a la tensión
umbral del led (el mínimo que necesita para lucir), pero inferior a la máxima que puede
soportar, o se quemará, por lo que es importante interponer resistencias.
El LED tiene polaridad. La para más larga debe conectarse al ánodo (+).
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 28
5.- COMPONENTES
B) ACTUADORES
PANTALLA LCD
Pantalla de cristal líquido formada por píxeles. Para iluminar alguno de ellos lo que se
hace es aplicar un campo eléctrico en la zona deseada, con lo que el cristal liquido se
polariza y lo percibimos de otro color.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 29
5.- COMPONENTES
B) ACTUADORES
ZUMBADOR
Produce una vibración cuando se ve sometido a una corriente eléctrica basándose en
el efecto piezoeléctrico. Esta vibración genera un sonido y puede emplearse como
sistema de aviso.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 30
5.- COMPONENTES
C) OTROS
PULSADOR
Actúan como interruptores para permitir o interrumpir el paso de la corriente eléctrica
hacia otros componentes.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 31
5.- COMPONENTES
C) OTROS
SERVOMOTOR
Un servomotor básicamente es un motor de corriente continua con un potenciometro
que le permite saber la posición en la que se encuentra y así poder controlarla, es
decir, que podemos posicionarlo a nuestro antojo, siempre dentro de su rango de
actuación. Por lo general los servomotores suelen tener un rango de 180º.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 32
5.- COMPONENTES
C) OTROS
RESISTENCIAS
Los resistores o resistencias, son unos componente electrónicos utilizados para añadir
una resistencia eléctrica entre dos puntos de un circuito de manera que nos permite
distribuir adecuadamente tensiones y corrientes a lo largo de nuestro circuito. La
unidad de medida es el Ohmio (Ω) y existe un abanico muy amplio.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 33
5.- COMPONENTES
C) OTROS
PLACA DE PROTOTIPOS - PROTOBOARD
Se trata de una placa perforada con conexiones internas en la que podemos “pinchar”
nuestros componentes para realizar nuestros prototipos sin tener que realizar un solo
punto de soldadura tantas veces como queramos. Debemos tener en cuenta como se
distribuyen las conexiones internas de nuestra protoboard:
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 35
5.- COMPONENTES
C) OTROS
CABLEADO
Son cables finos y flexibles para realizar conexiones entre nuestra placa Arduino, la
protoboard y otros componentes con facilidad. Son fabricados en diversos colores para
que en nuestros montajes sean fácilmente identificables.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 36
6.- EJEMPLOS
¿QUÉREIS VER ALGUNOS EJEMPLOS?
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 37
http://tecnovadores.blogspot.com.es/
FIN DE LA SESIÓN Nº 2
7.- SOFTWARE – EL IDE DE ARDUINO
Hemos visto que para poder trabajar con Arduino necesitamos un hardware, un
software y un programa. Ya conocemos al detalle el hardware, que es la propia placa
Arduino y todos los componentes que podemos conectar a ella.
Ahora nos adentraremos en la instalación del software. Puesto que Arduino, a
diferencia del ordenador que usas normalmente, no tiene pantalla ni teclado, se
necesita un programa externo ejecutado en otro ordenador para poder escribir
programas para la placa Arduino. Éste software es lo que llamamos Arduino IDE. IDE
significa “Integrated Development Environment” (Entorno de Desarrollo Integrado).
Accederemos a la página de ARDUINO y nos descargamos e instalamos el software.
http://www.arduino.cc/
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 38
7.- SOFTWARE – EL IDE DE ARDUINO
No tengáis miedo, el IDE de Arduino es sencillo de utilizar:
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 39
PROGRAMA
ÁREA DE MENSAJES
MENÚS DESPLEGABLES
BOTONES DE ACCESO RÁPIDO
8.- PROGRAMACIÓN
Pero antes de seguir trabajando con nuestro software, es necesario hacer un
paréntesis y explicar los fundamentos de la programación con Arduino.
Nosotros hablamos castellano para comunicarnos entre nosotros, pero Arduino no lo
entiende y necesita que le hablemos en otro lenguaje.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 40
8.- PROGRAMACIÓN
Durante estos días de atrás habéis visto algo de programación con “Scratch”, con el
que hemos sido capaces de programar “jugando”.
Ahora veremos unas pinceladas del lenguaje de programación que utiliza Arduino, pero
no os asustéis, no es necesario aprenderlo todo de memoria y sólo es para que
conozcamos un poco más como funciona un programa. Como mejor se aprende es
practicando y es lo que haremos en las siguientes sesiones:
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 41
8.- PROGRAMACIÓN
ESTRUCTURA
Una función es un código que posee un nombre y un conjunto de instrucciones que son
ejecutadas cuando se activa dicha función. Las funciones están asociadas a un tipo de
valor denominado “type” que será el que vaya a devolver la función una vez haya
realizado las instrucciones. Cuando la función devuelva un valor numérico entero se
usará “int”. Si la función no devuelve ningún valor entonces se colocará delante la
palabra “void”, que significa “función vacía”.
Después de declarar el tipo de dato que devuelve la función también será necesario
escribir el nombre de la función. Después del nombre, entre paréntesis, se escribirán, si
es necesario, los parámetros que se deben pasar a la función para que ésta se ejecute.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 42
8.- PROGRAMACIÓN
ESTRUCTURA
La estructura básica del lenguaje de programación de Arduino es simple y se compone
de dos partes o funciones que contendrán las declaraciones e instrucciones.
FUNCIÓN SET UP
La función setup() se invoca una sola vez cuando el programa empieza y se usa para
llevar a cabo la configuración inicial de Arduino (para establece el modo de trabajo de
los pines de entrada y salida, etc.).
FUNCIÓN LOOP
La función loop() es la principal del programa y con ella van a ejecutar constantemente
y de forma cíclica todas las instrucciones que se encuentren en su interior.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 43
8.- PROGRAMACIÓN
SÍMBOLOGÍA
LAS LLAVES {}
Definen el inicio y el final de un bloque de instrucciones.
PUNTO Y COMA ;
Para definir el final de una instrucción y separarla del siguiente. Sino la colocamos el
programa interpreta mal las instrucciones y dará error.
COMENTARIOS /*…*/ y //
El símbolo /*…*/ se emplea para las áreas de texto que nos ayuden a describir un
determinado programa. También podemos generar líneas de comentarios con los
símbolos doble barra //, pero éstos se suelen emplear para describir una única función
y no todo el programa. Arduino ignora estos bloques de comentarios.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 44
8.- PROGRAMACIÓN
VARIABLES
Las variables son elementos donde se almacenan los datos numéricos que va a
necesitar el programa durante su ejecución. A medida que evolucione el programa
estas variables, como su nombre indica, van a ir cambiando su valor.
Las variables tienen que ser declaradas antes de que el programa las utilice y
opcionalmente le podemos asignar un valor inicial. Si no la declaramos el programa
nos dará un error.
El nombre que le demos a las variables debe identificarlas claramente para que nos
ayude a identificarlas. (Por ejemplo: LED, Pulsador, etc.).
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 45
8.- PROGRAMACIÓN
VARIABLES
VARIABLES GLOBALES: Puede ser utilizada por cualquier función del programa y
se declaran al comienzo del mismo.
VARIABLES LOCALES: Sólo la utiliza la función en la que esta variable es
declarada. Esto hace que podamos utilizar variables locales con el mismo nombre
en diferentes funciones sin que el programa nos dé error, aunque para evitar
confusiones… no es recomendable y nosotros intentaremos evitarlo.
CONSTANTES
La constante va a adquirir un único valor que no va a poder ser modificado durante la
evolución del programa.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 46
EJEMPLO:
8.- PROGRAMACIÓN
VARIABLES
Para definir una variable imaginemos que queremos comprar una recipiente en el que
vamos a guardar algo, y depende de lo que queramos introducir, tendrá que ser de una
manera o de otra, si es líquido, no puede ser de cartón, si es algo pesado no puede ser
frágil…
Eso es una variable, un lugar en el que almacenaremos algo para utilizar en nuestro
programa, y si no las declaramos antes de utilizar, es como si no hiciéramos hueco en
nuestra despensa para guardarlas, otra característica es que su inicialización no
siempre es obligatoria, pero es recomendable, esto es como meter una pieza de cada
producto que vayamos a guardar en nuestras cajas, en este caso les hemos asignado
un valor desde el principio por las necesidades del programa.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 47
8.- PROGRAMACIÓN
OPERADORES
Con ellos vamos a poder transformar las variables de un programa. Hay varios tipos:
- Aritméticos: Permiten hacer operaciones de suma, resta, multiplicación, división…
Suma + Resta - Multiplicación * División /
- Compuestos: Se suelen usar en bucles o programas cíclicos:
Sumar uno ++ Restar uno - -
- De comparación: Se usan en estructuras condicionales para comprobar si una
condición se cumple o no.
Igual == Menor < Mayor > Distinto != Menor o igual <=
- Booleanos: Operadores para comparar dos o más expresiones que no devuelven un
valor numérico, sino un valor de verdadero o falso. Son tres:
Se cumplen dos expresiones && Se cumple alguna || Negación !
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 48
8.- PROGRAMACIÓN
ESTRUCTURAS DE CONTROL
Sirven para guiar el programa en una u otra dirección en función de si se cumplen o no
una serie de condiciones que establecemos en el programa. Hay tres tipos, pero
nosotros nos vamos a centrar en dos tipos, las condicionales y los bucles:
1) Condicionales
Chequean una condición y si se cumple, se ejecutan las instrucciones englobadas
dentro de la condición.
If: Si se cumple se ejecutan las sentencias del bloque. Sino se cumple el programa
salta este blque sin ejecutar instrucción alguna.
If … else: Funciona prácticamente igual que la anterior, pero si no se cumple la
condición, no se salta el bloque, sino que ejecuta las instrucciones del bloque
“else”.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 50
8.- PROGRAMACIÓN
ESTRUCTURAS DE CONTROL
2) Bucles:
Son elementos que hacen que el programa entre en un ciclo de repetición mientras se
cumplan una serie de condiciones.
For: Repite un bloque de sentencias mientras se cumpla una condición:
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 51
8.- PROGRAMACIÓN
ESTRUCTURAS DE CONTROL
2) Bucles:
While: Repite las instrucciones entre llaves mientras se esté cumpliendo la expresión
incluida en el bucle.
Do…While: Funciona igual que “While” pero ejecuta las instrucciones al menos una
vez, ya que comprueba si se cumplen las condiciones al final.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 52
8.- PROGRAMACIÓN
ELEMENTOS DE CONTROL DE FLUJO (No son importantes)
Goto: Para realizar un salto a una parte del programa que esté marcada con la etiqueta
correspondiente.
Return: En el momento que el programa lee esta sentencia, éste vuelve a la posición
desde la que se realizó el último salto “Goto”.
Break: Se rompe el bucle y el programa sale de el sin tener en cuenta si se cumplen o
no las condiciones.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 53
8.- PROGRAMACIÓN
ENTRADAS Y SALIDAS
Entradas: Proporcionan información al sistema
Salidas: Realizan actuaciones.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 54
8.- PROGRAMACIÓN
ENTRADAS Y SALIDAS
Ya hemos visto que la plataforma Arduino posee una serie de entradas y salidas para
comunicarse con el exterior bien de forma analógica o bien de forma digital.
Antes de comenzar a describir nuestro programa, es necesario configurar estos pines
en la manera en la que vayan a ser usados, ya que ningún pin puede usarse al mismo
tiempo como entrada y salida.
Para llevar a cabo la configuración usamos la instrucción pinMode, señalando a
continuación el número de pin seguido de cómo queremos que éste actúe: entrada
(INPUT) o salida (OUTPUT). Lo haríamos en el apartado SETUP.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 55
8.- PROGRAMACIÓN
ENTRADAS Y SALIDAS
DIGITALES
Estos pines trabajarán de forma binaria a través de dos estados: HIGH (alto) – Cuando
toma un valor de 5 voltios, o LOW (bajo), asociado al valor de voltaje = 0 voltios.
Lectura: Con la sentencia digitalRead leeremos el estado de un pin almacenado como
HIGH o como LOW.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 56
8.- PROGRAMACIÓN
ENTRADAS Y SALIDAS
DIGITALES
Escritura: Sentencia digitalWrite mandamos a un determinado pin el valor HIGH o LOW
void setup()
{
pinMode (13, OUTPUT); //establece el pin 13 como salida
pinMode (7, INPUT); //establece el pin 7 como entrada
}
void loop()
{
valor = digitalRead (7); //lee el pin 7 y lo asigna a “valor”
digitalWrite (13,valor); //asigna al pin 13 el estado de “valor”
}
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 57
8.- PROGRAMACIÓN
ENTRADAS Y SALIDAS
ANALÓGICAS
A veces no es suficiente con captar o no una señal para poder activar o desactivar las
cosas, sino que necesitamos cuantificar magnitudes reales para que Arduino responda
en proporción. Esto nos lo facilitarán las entradas y salidas analógicas. Por defecto,
todos los pones analógicos son de entrada (INPUT) y no necesitan ser declarados
como tales.
Lectura: Con la función analogRead leeremos un determinado pin analógico
almacenando un valor de 10 bits. Es decir, vamos a tener un rango de 1024 valores
distintos en los que se van a poder obtener lecturas analógicas.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 58
8.- PROGRAMACIÓN
*NOTA: “LOS BITS”
“Bits” es el acrónimo de Binary Digit (Dígito Binario). Como ya hemos mencionado, en
un sistema binario únicamente se usan dos dígitos (0,1) para representar un número y
en digital suele asociarse a dos estados, encendido y apagado.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 59
8.- PROGRAMACIÓN
*NOTA: “LOS BITS”
Cuando decimos que una entrada de Arduino es de 8 o 10 bits a lo que nos estamos
refiriendo es al número de dígitos de los que disponemos para representar un
determinado valor. Es decir, por ejemplo, 10 bits serían 10 posibles dígitos:
Y Y Y Y Y Y Y Y Y Y
En binario, cada uno de estos dígitos puede tener dos posibles valores o estados (0,1).
Entonces… ¿Cuántas posibilidades tendríamos para representar valores diferentes con
10 dígitos y dos estados cada dígito?
Es una potencia: 102
= 1024 posibles valores
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 60
8.- PROGRAMACIÓN
*NOTA: “LOS BITS”
Para una entrada de 10 bits, necesitamos hacer uso de la calculadora, pero ahora
probemos con datos más pequeños y sencillos para que lo entendamos. Imaginemos
por ejemplo, que una entrada de Arduino nos diera 3 bits:
Recordemos que tendríamos 3 posibles dígitos y que cada uno de ellos puede adquirir
dos valores (0,1):
000
001
010
011
100
101
110
111
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 61
Cuando tenemos 3 bits, es sencillo contar las posibilidades “a mano” pero…
¿Os imagináis contarlo a mano con 8 bits? Para ello usamos las potencias:
23 = 2 * 2 * 2 = 8 Posibles valores
23 −→ 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑣𝑎𝑙𝑜𝑟𝑒𝑠 𝑝𝑜𝑠𝑖𝑏𝑙𝑒𝑠 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑏𝑖𝑡𝑠 𝑑𝑒 𝑝𝑟𝑜𝑓𝑢𝑛𝑑𝑖𝑑𝑎𝑑
8.- PROGRAMACIÓN
ENTRADAS Y SALIDAS
ANALÓGICAS
Escritura: Las salidas analógicas están asociadas a los pines PWM. En realidad son
pines digitales y no se hace entrega de una señal analógica pura, sino que se entrega
un determinado valor de tensión a través de complicados procesos de modulación que
no vamos a entrar en describir.
Las salidas digitales trabajan con 8 bits, es decir, 256 valores diferentes (del 0 al 255).
Por ello hay que tener en cuenta que la lectura puede realizarse en 10 bits, pero la
escritura va a tener que traducirse a 8 bits.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 62
8.- PROGRAMACIÓN
PUERTO SERIE
Hay ocasiones en las que deseamos que Arduino no sólo lea o devuelva un valor
determinado, sino que además queremos que nos lo muestre en pantalla para saber si
la plataforma está aportando valores coherentes. Por ejemplo: Si estamos leyendo la
temperatura de la clase y nos devuelve 80ºC… Es que algo está fallando, ¿No?
Para ello usamos el denominado puerto serie.
Asignaríamos un valor al puerto sería y a continuación indicaríamos al programa que
queremos que éste valor sea impreso:
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 63
8.- PROGRAMACIÓN
OTRAS INSTRUCCIONES
DELAY
Esta función detiene la ejecución del programa durante un tiempo determinado.
Durante este tiempo Arduino no detectará eventos como presionar un interruptor,
activar un sensor, etc.
Otro aspecto importante a tener en cuenta es que Arduino mide el tiempo en
milisegundos.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 64
8.- PROGRAMACIÓN
OTRAS INSTRUCCIONES
MILLIS
Arduino tiene un reloj interno que va a ir contando los milisegundos desde que la placa
se conecte a la corriente eléctrica y el programa se inicie. Arduino puede contar hasta
casi 50 días, cuando el tiempo volvería a contar desde cero.
MIN / MAX
Son funciones que comparan dos valores devolviendo el menor o el mayor de ellos:
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 65
FIN DE LA SESIÓN Nº 3
9.- ARDUBLOCK
No os asustéis, no vamos a tener que dominar el lenguaje de programación que hemos
ido viendo para poder trabajar con Arduino, pero es importante que os familiaricéis con
él porque va a ser el lenguaje con el que funcione la plataforma.
Arduino tiene una herramienta muy similar a “Scratch”, la cual ya conocéis y que nos va
a ayudar a llevar a cabo el diseño de nuestros programas e instrucciones.
Esta herramienta se denomina ARDUBLOCK.
Para su descarga…
http://sourceforge.net/projects/ardublock/
Debemos instalarlo dentro de la carpeta “Tools” en la ubicación que tengamos instalado
Arduino.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 66
9.- ARDUBLOCK
Ahora vamos a analizar un poco las librerías con las que cuenta Ardublock. Como en
Scratch, están clasificadas por colores según su funcionalidad y son fáciles de manejar.
Son como piezas de un puzzle que van encajando unas en otras y sólo nos dejará
colocarla si la función elegida es la correcta.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 68
Funciones de Control:
- Bucle: Ejecuta la acción de forma indefinida.
• Si/entonces: Ejecuta unas instrucciones de manera
condicional. La función tiene tres enganches de piezas. La
primera es la condición, la segunda es la instrucción que se
ejecuta si la condición se cumple y la segunda es la
instrucción que se ejecutará si la condición no se cumple.
• Mientras que: Se mantiene la acción encajada en la parte
inferior de la ficha del puzle, mientras se cumpla la condición
establecida en la parte superior.
• Repite: En la parte superior aparecerá el numero de veces
que se repite la acción colocada en hueco inferior de la pieza.
9.- ARDUBLOCK
Pines
Con esta función se gestionan las entradas y salidas, tanto digitales como analógicas.
Números / Constantes
Son funciones usadas para temporizar, por ejemplo, para retardar el programa unos
segundos.
Operadores
Permiten realizar operaciones lógicas y aritméticas.
Utilidades
Podemos dar valores a las salidas o entradas.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 69
10.- PRÁCTICAS GUIADAS
¡¡OS TOCA A VOSOTROS!!
La programación informática es muy complicada de estudiar teóricamente y la mejor
manera de aprender… es practicando con el propio Arduino.
Hagamos algunas prácticas sencillas:
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 70
10.- PRÁCTICAS GUIADAS
PRÁCTICA 1: SALIDAS DIGITALES
Queremos que una luz LED parpadee en un intervalo de tiempo determinado.
En primer lugar vamos a pensar en cómo haríamos el circuito eléctrico. ¿Qué
necesitamos para conseguirlo?
- Placa de Arduino
- Cable USB
- Placa de prototipos – protoboard
- Cables
- Luz LED
- Resistencia
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 71
10.- PRÁCTICAS GUIADAS
PRÁCTICA 1: SALIDAS DIGITALES
¿Cuál es el esquema eléctrico que debemos conseguir?
¿Os acordáis de la ley de Ohm?
¿Qué resistencia tenemos que elegir para no quemar el LED?
(EL LED requiere una intensidad de 20 mA para poder lucir).
R = V/I R = 5V / 0,02 mA R = 250 Ω Usamos la resistencia de 220 Ω
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 72
10.- PRÁCTICAS GUIADAS
PRÁCTICA 1: SALIDAS DIGITALES
Preparemos ahora el circuito en Arduino…
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 73
10.- PRÁCTICAS GUIADAS
PRÁCTICA 1: SALIDAS DIGITALES
Y por último, hagamos el programa…
// Práctica 1: Encender y apagar una luz LED en un determinado intervalo de tiempo
// En primer lugar, declaramos las variables que vamos a emplear
Const int LED=13; // “LED” será una variable constante y entera y la estaremos asociando al pin número 13
// A continuación configuramos Arduino con la función “setup”:
Void setup () {
pinMode (LED, OUTPUT); // Identificamos el pin 13 con una salida digital
}
// Finalmente damos las instrucciones que queremos que Arduino lleve a cabo con “loop”
Void loop () {
digitalWrite (LED, HIGH); // Encendemos a 5V el pin del LED, que es el 13
delay (1000); // Esperamos un segundo
digitalWrite (LED, LOW); // Apagamos a 0V el pin del LED (El pin 13)
delay (1000); // Esperamos un segundo
}
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 74
10.- PRÁCTICAS GUIADAS
PRÁCTICA 1: SALIDAS DIGITALES
¿Funciona?
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 76
GRUPO 2
GRUPO 1
GRUPO 3
GRUPO 4
GRUPO 5
GRUPO 6
10.- PRÁCTICAS GUIADAS
PRÁCTICA 1: SALIDAS DIGITALES
¿Y empleando Ardublock?
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 78
FIN DE LA SESIÓN Nº 4
10.- PRÁCTICAS GUIADAS
PRÁCTICA 2: SEMÁFORO
Es muy sencilla. Queremos programar un semáforo con LED rojo, verde y amarillo.
En primer lugar pensamos en los materiales necesarios para nuestro circuito:
- Placa de Arduino
- Cable USB
- Placa de prototipos – protoboard
- Cables
- Tres luces LED (Una amarilla, una roja y una verde)
- Tres resistencias de 220 ohmios.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 79
10.- PRÁCTICAS GUIADAS
PRÁCTICA 2: SEMÁFORO
¿Cuál es el esquema eléctrico que debemos conseguir?
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 80
¿Y el circuito de Arduino?
10.- PRÁCTICAS GUIADAS
PRÁCTICA 2: SEMÁFORO
Por último, vamos a hacer el programa…
Primero comenzamos configurando Arduino con la función SETUP.
Void setup ()
{
pinMode (6, OUTPUT);
pinMode (7, OUTPUT);
pinMode (8, OUTPUT);
}
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 81
10.- PRÁCTICAS GUIADAS
PRÁCTICA 2: SEMÁFORO
¿Y cómo sería en Ardublock?
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 83
Ahora puedes jugar a cambiar las
frecuencias con las que cambie
el semáforo.
¿Serías capaz de incluir otro
semáforo para peatones que
estuviera coordinado con el
primer semáforo para vehículos?
10.- PRÁCTICAS GUIADAS
PRÁCTICA 3: ENTRADAS DIGITALES
Vamos a por la última práctica guiada. Ahora queremos que una luz LED se encienda
cuando apretamos un pulsador.
En primer lugar pensamos en los materiales necesarios para nuestro circuito:
- Placa de Arduino
- Cable USB
- Placa de prototipos – protoboard
- Cables
- Luz LED
- Pulsador
- Resistencia para el LED
- Resistencia para el pulsador
Podemos usar un polímetro para deducir el funcionamiento de las 4 patas del pulsador.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 84
10.- PRÁCTICAS GUIADAS
PRÁCTICA 3: ENTRADAS DIGITALES
¿Cuál es el esquema eléctrico que debemos conseguir?
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 85
10.- PRÁCTICAS GUIADAS
PRÁCTICA 3: ENTRADAS DIGITALES
Preparemos ahora el circuito en Arduino…
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 86
10.- PRÁCTICAS GUIADAS
PRÁCTICA 3: ENTRADAS DIGITALES
Y por último, hagamos el programa…
// Práctica 2: Encender un LED cuando se presione un pulsador
// En primer lugar declaramos las variables globales
Int pulsador = 2; // Declaramos la variable del pulsador en el pin número 2
Int LED = 12; // Declaramos la variable del LED en el pin número 12
Int estado = 0; // Declaramos la variable del estado del pulsador y le damos un valor inicial = 0
// A continuación configuramos Arduino con la función “setup”:
Void setup () {
pinMode (LED, OUTPUT); // Identificamos el pin 12 del LED con una salida digital
pinMode (pulsador, INPUT); // Identificamos el pin 2 del pulsador con entrada
}
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 87
10.- PRÁCTICAS GUIADAS
PRÁCTICA 3: ENTRADAS DIGITALES
// Finalmente damos las instrucciones que queremos que Arduino lleve a cabo con “loop”
Void loop () {
estado = digitalRead (pulsador); // Leemos el pin del pulsador y lo almacenamos en la variable
“estado”
// Ahora incorporamos una novedad Un ciclo condicional if…else
if (estado == HIGH) { // Comprobamos si el pulsador está presionado
digitalWrite (LED, HIGH); // Si se confirma que está presionado, encendemos el LED
}
else {
digitalWrite (LED, LOW); // Sino se cumple (Es decir, no está presionado),
apagamos el LED
}
}
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 88
10.- PRÁCTICAS GUIADAS
PRÁCTICA 3: ENTRADAS DIGITALES
¿Cómo sería con Ardublock?
Recordemos…
Por lo tanto…
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 89
11.- PRÁCTICAS EN GRUPO
PENSAD EN UNA POSIBLE APLICACIÓN DE ARDUINO
Hay muchos ejemplos en internet. Podéis serviros de la red para buscar ideas sobre
las que hacer vuestro pequeño proyecto con Arduino.
Éste debe cumplir una serie de premisas o pasos a dar:
- Debe poseer al menos un dispositivo de entrada y otro dispositivo de salida
- Piensa en el proyecto que quieres desarrollar o elige uno de los propuestos.
- Dibuja el circuito eléctrico
- Describe con texto el funcionamiento del programa
- Intenta hacerlo con la aplicación Ardublock o Scratch
- ¿Eres capaz de traducirlo a lenguaje de programación Arduino?
- Pide ayuda al profesor siempre que lo necesites.
- Haz un listado de todo material necesario y solicítalo al profesor.
- Haz el montaje del circuito con los componentes necesarios.
- Carga el programa en el Arduino y prueba el funcionamiento del proyecto elegido.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 90
11.- PRÁCTICAS EN GRUPO - PROPUESTAS
PROPUESTA Nº:1
La iluminación de una habitación se enciende automáticamente cuando el nivel de luz
ambiental natural desciende por debajo de un determinado valor.
PROPUESTA Nº:2
Una barrera de un aparcamiento (servomotor) se levanta y permite dejar pasar al
vehículo cuando apretamos un determinado pulsador.
PROPUESTA Nº:3
El sensor de aparcamiento de un vehículo comienza a pitar avisándonos de que
nuestro parachoques se encuentra a menos de 20 cm. del obstáculo más cercano.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 91
11.- PRÁCTICAS EN GRUPO - PROPUESTAS
PROPUESTA Nº:4
El nivel de iluminación artificial de una fábrica se incrementa o disminuye en función de
la forma en la que interactuamos con un potenciómetro.
PROPUESTA Nº:5
El ventilador situado en la cocina de un restaurante se activa cuando la temperatura
registrada en dicha estancia sobrepasa un determinado valor de grados centígrados.
PROPUESTA Nº:6
La alarma de un chalet situado en el campo se activa cuando se intuye la presencia de
alguna persona en el jardín y se detecta movimiento.
TECNOLOGÍAS 4º E.S.O. I.E.S. MARTÍNEZ URIBARRI
Alberto Arroyo Sánchez 92