MIGUELTECNOLOGIA
I.E.S. JOSÉ SARAMAGO (Humilladero)
PRÁCTICAS CON ARDUINO
1. INTRODUCCIÓN
La robótica se encarga de diseñar y construir máquinas que funcionen por sí mismas, sin la atención de las personas.
Los robots no tienen por qué tener forma de humanos o animales, un aparato de aire acondicionado por ejemplo, es un robot.
Los robots se componen de tres partes fundamentales; la unidad de control, los sensores y los actuadores.
2. UNIDAD DE CONTROL
La unidad de control es como el cerebro del robot, que consulta los sensores y controla a los actuadores para que realicen determinada acción: Encender una luz, hacer funcionar un motor, emitir un sonido, etc.
Hay varios tipos de unidades de control, pero últimamente se está utilizando mucho ARDUINO, por su bajo precio y su sencillez de uso.
Arduino es una unidad de control de hardware libre.
SENSORES
Botones, pulsadores, etc
Sensor de luz, humedad, temperatura, etc.
Reconocimiento de voz
Bluetooth, Wifi
Detector de movimiento
Sensor de ultrasonidos
Cámara
ACTUADORES
Motores
Luces
Pantallas
Altavoces
Relés
Con la combinación de los sensores y actuadores y un poco de imaginación se pueden realizar multitud de proyectos y robots: Cerradura con clave, activación de luces con el móvil, climatizador, detector de incendios, semáforo, etc.
En Internet existen miles de proyectos hechos con Arduino, algunos realmente impresionantes.
3. PARTES DE ARDUINO
Existen varios tipos de placas de Arduino
Nosotros vamos a utilizar el modelo de Arduino Uno, por ser el más utilizado y el más versátil.
Dispone de 14 entradas/salidas digitales y de de 6 entradas analógicas.
Se puede alimentar mediante el puerto USB o mediante pilas.
Si conectamos la placa Arduino Uno al ordenador mediante el cable USB se encenderá el Power Led indicándonos que funciona correctamente.
4. EL SHIELD EDUCACIONAL DE ARDUINO
Existen multitud de sensores y actuadores que se pueden conectar a arduino.
Para facilitar la conexión de dichos elementos, se idearon los shields, que son placas conectables a Arduino, que nos facilitan la labor de conectar dispositivos a Arduino.
Nosotros vamos a utilizar el shield educacional.
5. EL BREADBOARD
El shield educacional dispone de un pequeño breadboard para facilitar las conexiones.
El breadboard tiene muchos agujeritos en los que insertaremos los cables y componentes electrónicos.
Los agujeritos están conectados internamente por filas, como puede verse en el esquema siguiente:
6. LA PROGRAMACIÓN
Arduino es un elemento de control programable, que nos permite cambiar el funcionamiento de los sistemas automáticos que diseñemos.
Existen varias formas de programar Arduino, mediante el entorno de programación IDE de Arduino o mediante bloques.
Nosotros vamos a utilizar el programa S4A (Scratch for Arduino) por su sencillez y su funcionamiento visual e intuitivo mediante bloques.
PRÁCTICA nº 1: LED Intermintente
Recuerda que un led es un tipo especial de diodo que emite luz al ser atravesado por la corriente, luego hay que tener en cuenta su polaridad al conectarlo.
En esta práctica vamos a hacer que parpadee un led controlando los tiempos de encendido y apagado del mismo.
Necesitaremos los siguientes componentes y los tendremos que conectar según el siguiente esquema:
Después tendremos que conectar la placa al ordenador mediante el cable USB y abriremos el programa S4A.
Si no nos detecta la placa es seguramente porque no hemos instalado en la misma el firmware de S4A que puedes descargar aquí.
Una vez detectada la placa, realizaremos el siguiente programa arrastrando los bloques correspondientes y luego pulsaremos la bandera verde para hacer funcionar el programa.
SIGUE APRENDIENDO
Intenta comprender el funcionamiento del programa.
Modifica los tiempos para hacer que el funcionamiento del led sea distinto.
Conecta otro led al puerto 12 y haz que parpadeen alternativamente.
PRÁCTICA Nº 2: Semáforo con LEDs
En esta práctica vamos a emular el funcionamiento de un semáforo, conectando tres LEDs (Rojo, Amarillo y Verde).
Conecta los componentes como se indica en el dibujo siguiente y realiza el programa correspondiente con S4A para hacerlo funcionar.
La luz verde estará encendida 3 segundos, luego se apagará y se encenderá la luz amarilla durante 1 segundo y luego la verde durante tres segundos.
SIGUE APRENDIENDO
Haz que el semáforo se quede con la luz amarilla parpadeando después de 3 ciclos normales.
Añade dos LEDs más para simular el semáforo de peatones y modifica el programa adecuadamente.
PRÁCTICA Nº 3: LUCES DE POLICÍA CON SONIDO
En esta práctica vamos a emular las luces de un coche de policía con sonido.
Primer aprenderemos cómo utilizar el zumbador o buzzer.
Para ello conecta un zumbador al negativo y a la patilla 13 de Arduino y ejecuta el siguiente programa:
La salida digital solo permite cerrar o abrir completamente el buzzer, por lo que solo escuchamos un chasquido.
Para producir un sonido, tendremos que poner un valor analógico en el zumbador, que conectaremos esta vez a la patilla 9:
Ahora conecta además del zumbador, dos diodos LED rojo y azul, mediante su resistencia y haz que funcione todo como las luces de un coche de policía.
PRÁCTICA Nº 4: SISTEMA DE ALARMA
En esta práctica vamos a hacer un sistema de alarma que se disparará mediante un pulsador, el cual hará sonar un buzzer y hará parpadear un diodo LED rojo.
Primero vamos a aprender a utilizar el pulsador.
Para ello conecta el pulsador a la entrada D6 como se puede ver en el dibujo siguiente:
Cuando conectamos el botón a la entrada D6 es como si lo conectásemos a la entrada digital 6 de la Arduino. Añade un diodo LED rojo conectado a la patilla 13 y a GND y ejecuta el siguiente programa:
Observa que hemos utilizado una nueva función llamada "si, si no", que nos permite tomar decisiones.
Ahora añade un zumbador a la patilla 9 y escribe las lineas necesarias para hacer parpadear el diodo LED y hacer sonar el zumbador cuando se oprime el pulsador.
PRÁCTICA Nº 5: PROGRAMACIÓN CON EL IDE DE ARDUINO
La programación mediante S4A es muy cómoda e intuitiva, aunque tiene algunas desventajas como la dificultad de que reconozca la placa al conectarla o la lentitud de respuesta y la limitación de entradas y salidas, por ello vamos a realizar la práctica de la alarma mediante el IDE.
Conecta un botón como se indica en el siguiente dibujo y escribe el siguiente programa en el IDE de Arduino, una vez introducido, envía el programa a la placa y pruebalo.
const int buttonPin = 6;
const int ledPin = 13;
int buttonState = 0;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH);
}
else {
digitalWrite(ledPin, LOW);
}
}
Ahora añade un diodo LED en la patilla 13, con su correspondiente resistencia.
Añade también el buzzer en la patilla 8.
Prueba el siguiente programa:
const int buttonPin = 6;
const int ledPin = 13;
int buttonState = 0;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH);
noTone(9);
tone(9, 700, 200);
delay(200);
noTone(9);
tone(9, 500, 200);
digitalWrite(ledPin, LOW);
delay(200);
}
else {
digitalWrite(ledPin, LOW);
}
}