PROGRAMACIÓN DE OBJETOS TECNOLÓGICOSCONTROL DE BARRERA DE PARKING
PREMIOS CIENTÍFICOS-TECNOLÓGIOCOS“DON BOSCO”
PRIMERA EDICIÓN, CURSO 2011-2012
IES “PINTOR RAFAEL REQUENA”Caudete-AlbaceteTaller de RobóticaTutor: Manuel HIDALGO DÍAZ
Taller de Robótica
• Actividad extraescolar.• Plan de dinamización de los recreos• Uno o dos recreos a la semana• Alumnos de 1º ESO
• Joel Serrano López • Ricardo Soler Bañón• Alejandro Vicente Cózar • Juan Conejero Sivó • Alejandro Cantó Rubio
Taller de Robótica
• Actividades en grupo• Conocer objetos tecnológicos• Controlar los objetos por programación• Realizar pequeños proyectos
Taller de Robótica
• Placa Arduino
Taller de Arduino• IDE Arduino (Entorno de desarrollo)
Taller de Arduino• Estructura de un programa
Taller de Robótica
• Placa de actividades
Taller de Robótica
Maqueta del proyecto
• Diagrama de bloques
Maqueta del proyecto
Elementos tecnológicos
• Diodo LED
• Están conectados a los pines 3-4-5• Entrada digital• Semáforo
Elementos tecnológicos• Actividad de prueba de LED
– Parpadeo de los LEDs
Elementos tecnológicos
• Pulsador
• Controla encendido/apagado de los procesos• Entrada digital• Tensión 5V 1 digital• Tensión 0V 0 digital
Elementos tecnológicos• Actividad de prueba de Pulsador
– Cambia temporalmente el LED
Elementos tecnológicos• Servomotor
• Actuador que sube y baja la barrera• Partes
• Motor eléctrico de continua• Circuito electrónico de control • Reductora
Elementos tecnológicos• Servomotor
– Se controla con una señal PWM (modulación por anchura de pulso)
Arduino utiliza la librería “Servo.h”
Elementos tecnológicos• Actividad de prueba de Servomotor
– Cambia de posición la barrera durante un tiempo
Elementos tecnológicos• Sensor de infrarrojos (IR)
– Detecta la presencia de un obstáculo a una distancia
• Da una tensión según la distancia• Entrada analógica• La tensión 0V a 5V pasa 0 a1023
• En el sensor IR varía:• 0,4V a 3,2V• 100 a 640
• Valor de seguridad 350
Elementos tecnológicos• Actividad Sensor de infrarrojos (IR)
Elementos tecnológicos• Actividad Sensor de infrarrojos (IR)
Elementos tecnológicos• Los programas de las actividades están en la
memoria.• El resultado de la combinación de estos
elementos es la maqueta.• El siguiente video es el Control de la barrera
con pulsador.
Control barrera con pulsador
Control barrera con pulsadorCódigo de programa
• Variables#include <Servo.h> //libreriasServo servoBarrera; //Declaracion del objeto servomotor int pinLedRojo = 5; //Declaraciones de pines int pinLedAmarillo = 4; int pinLedVerde = 3; int pulsador = 2; int sensorIR = A5; int pulsaValor; //Declaracion variables int sensorValor;
Control barrera con pulsadorCódigo de programa
• Configuracionvoid setup() { pinMode(pinLedRojo, OUTPUT); //configuracion de pines pinMode(pinLedAmarillo, OUTPUT); pinMode(pinLedVerde, OUTPUT); servoBarrera.attach(6); servoBarrera.write(5); //posicion inical de la barrera digitalWrite(pinLedRojo, 0); // Semaforo Verde digitalWrite(pinLedAmarillo, 0); digitalWrite(pinLedVerde, 1); }
Control barrera con pulsadorCódigo de programa
• Programa principalvoid loop() //programa principal { pulsaValor = digitalRead(pulsador); //leemos el valor del pulsador if (pulsaValor == 1) //preguntamos el valor del pulsador y actuamos { digitalWrite(pinLedVerde, 0); digitalWrite(pinLedAmarillo, 1); delay(3000); digitalWrite(pinLedAmarillo, 0); digitalWrite(pinLedRojo, 1); delay(500); servoBarrera.write(90); //barrera abierta delay(10000); //semaforo en rojo 10seg
Control barrera con pulsadorCódigo de programa
sensorValor = analogRead(sensorIR); //lee valor sensor while (sensorValor > 350) //repite la lectura { //porque hay un obstaculo sensorValor = analogRead(sensorIR); delay(10); } delay(2000); servoBarrera.write(5); //barrera cerrada delay(1000); } digitalWrite(pinLedRojo, 0); //semaforo en verde digitalWrite(pinLedAmarillo, 0); digitalWrite(pinLedVerde, 1); delay(10); }
Elementos tecnológicos• Módulo Bluetooth
– Permite una comunicación con otro dispositivo que tenga bluetooth, como un móvil con SO Android.
• Se conecta los pines• Tx y Rx del módulo
• A los pines Rx y Tx de Arduino
Elementos tecnológicos• Módulo Bluetooth
– La aplicación en el móvil Android utilizada es un mando con botones.
• Conectado el módulo de Arduino al móvil• Al pulsar el botón central verde envía la letra ‘C’• El programa de Arduino tiene una intsrucción que escucha el
puerto serie.• Si recibe la letra ‘C’ hace la misma función que el pulsador
Funcionamiento
Maqueta del proyecto con Bluetooth
• Diagrama de bloques
Control barrera por bluetooth
Control barrera con BluetoothCódigo de programa
• Variables#include <Servo.h> //libreriasServo servoBarrera; //Declaracion del objeto servomotor int pinLedRojo = 5; //Declaraciones de pines int pinLedAmarillo = 4; int pinLedVerde = 3; int pulsador = 2; int sensorIR = A5; int sensorValor; //Declaracion variables int boton; //int pulsaValor;
Control barrera con Bluetooth Código de programa
• Configuracionvoid setup() { pinMode(pinLedRojo, OUTPUT); //configuracion de pines pinMode(pinLedAmarillo, OUTPUT); pinMode(pinLedVerde, OUTPUT); servoBarrera.attach(6); servoBarrera.write(5); //posicion inical de la barrera digitalWrite(pinLedRojo, 0); // Semaforo Verde digitalWrite(pinLedAmarillo, 0); digitalWrite(pinLedVerde, 1);
Serial.begin(9600); }
Control barrera con Bluetooth Código de programa
• Programa principalvoid loop() //programa principal { if (Serial.available()) //Escuchamos el puerto de comunicaciones { boton = Serial.read() { if (boton == ‘C’) //preguntamos el valor de boton y actuamos { digitalWrite(pinLedVerde, 0); digitalWrite(pinLedAmarillo, 1); delay(3000); digitalWrite(pinLedAmarillo, 0); digitalWrite(pinLedRojo, 1); delay(500); servoBarrera.write(90); //barrera abierta delay(10000); //semaforo en rojo 10seg
Control barrera con Bluetooth Código de programa
sensorValor = analogRead(sensorIR); //lee valor sensor while (sensorValor > 350) //repite la lectura { //porque hay un obstaculo sensorValor = analogRead(sensorIR); delay(10); } delay(2000); servoBarrera.write(5); //barrera cerrada delay(1000); boton = ‘ ‘; } digitalWrite(pinLedRojo, 0); //semaforo en verde digitalWrite(pinLedAmarillo, 0); digitalWrite(pinLedVerde, 1); delay(10); }
Gracias por su atención
IES “PINTOR RAFAEL REQUENA”Caudete-AlbaceteTaller de RobóticaTutor: Manuel HIDALGO DÍAZ