Archivo de la categoría: Proyectos

Barrera de Parking con Arduino Leonardo

El presente proyecto simula la barrera de un parking con Arduino Leonardo.

 

montaje_real_jdd

montaje_jdd

 

 

El programa es el siguiente:

// Barrera de entrada a Parking
// Ejemplo elaborado por Jesús Díaz Díaz
// El sistema simula la barrera de entrada a un parking
// Al comienzo del programa la barrera está baja y el led ROJO encendido
// Cuando un sujeto aprieta el pulsador, la barrera comienza a subir y en la parte alta se enciende el led VERDE
// Al mismo tiempo se oye un sonido que cambia de tono cuando está a punto de bajar la barrera
// Se apaga y comienza a bajar la barrera y se enciende el LED rojo

#include <Servo.h> // incluyo la librería servo.h

Servo miservo; // Definimos «miservo» para controlar un servomotor

int ledverde = 12; // utilizo el pin 12 para led verde
int ledrojo = 11; // utilizo el pin 11 para led rojo
int salidaaudio = 6;// utilizo el pin 6 emitir un tono de audio
int pulsador = 2; // utilizo el pin 2 como botón de entrada

int pos = 0; // variable para almacenar la posición del servo
int ESTADOpulsador = 0; // variable para almacenar la lectura del estado del pulsador

void setup()
{
miservo.attach(9); // Convierte el pin 9 en el controlador (driver) del servo denominado «miservo»
// Inicializa los pin digitales como salida
pinMode(ledverde, OUTPUT);
pinMode(ledrojo, OUTPUT);
pinMode(salidaaudio, OUTPUT);
// defino el pulsador como entrada:
pinMode(pulsador, INPUT);
miservo.write(0); // Fija en el servo la posición 0 grados y hace que inicialmente la barrera esté baja
}

void loop()
{
digitalWrite(ledverde, LOW); // inicialmente led verde apagado
digitalWrite(ledrojo, HIGH); // inicialmente led rojo encendido

ESTADOpulsador = digitalRead(pulsador); // leo el estado del botón del pulsador y lo guardo en la variable ESTADOpulsador

if (ESTADOpulsador == HIGH) { // Si ESTADOpulsador está activo (HIGH) comienza a levantar la barrera

for(pos = 0; pos < 90; pos += 1) // La variable «pos» se incrementa desde 0 a 90 grados
{ // en pasos de 1 grado
miservo.write(pos); // indica al servo que vaya la la posición almacenada en la variable «pos»
delay(20); // espera 20ms hasta que el servo alcance la posición
}
digitalWrite(ledrojo, LOW); // con la barrera subida el led rojo se apaga
digitalWrite(ledverde, HIGH); // turn the LED on (HIGH is the voltage level)

//Emite sonido que cambia su frecuencia unos segundos antes de comenzar a bajar como aviso
// sintaxis de tone: tone(pin, frequency)
tone(salidaaudio, 440);
delay(4000);
noTone(salidaaudio);
tone(salidaaudio, 840);
delay(500);
noTone(salidaaudio);
tone(salidaaudio, 440);
delay(500);
noTone(salidaaudio);
tone(salidaaudio, 840);
delay(500);
noTone(salidaaudio);
tone(salidaaudio, 440);
delay(500);
noTone(salidaaudio);
tone(salidaaudio, 840);
delay(500);
noTone(salidaaudio);
tone(salidaaudio, 440);
delay(500);
noTone(salidaaudio);

// Se termina el sonido de aviso

digitalWrite(ledverde, LOW); // se apaga el led verde
digitalWrite(ledrojo, HIGH); // se enciendo el led rojo

for(pos = 90; pos>=1; pos-=1) // comienza a bajar la barrera desde la posición 90 hasta 0 grados
{
miservo.write(pos); // indica al servo que vaya a la posición almacenada en la variable
delay(20); // espera 20ms para que el servo alcance la posición
}
}
}

 

 

esquema_jdd

Proyectos desarrollados en Tecnología para la Semana 26-29 de mayo en el IES La Laguna

Molinos multipala estilo americano construidos por alumnado de 2º de ESO


Juegos eléctricos con los municipios de canarias por el alumnado de 1º de ESO.

Maqueta sobre la central de Gorona del Viento en El Hierro

Hornos de Cal

Este trabajo, llevado a cabo en el IES María Pérez Trujillo, obtuvo el segundo premio del Concurso de Contenidos Canarios. Edición 2004, para Centros de Enseñanza Secundaria Obligatoria.

fotohornosdecal

Haga clic en la imagen para ver la presentación.

El trabajo se realizó con el alumnado de 4º de ESO durante el curso 2003-2004.

Aquí debajo les dejo los vídeos: