Arduino Doble Semáforo Con Paso A Nivel
Práctica Arduino: Doble Semáforo Con Paso A Nivel.
Miguel Ruíz Sanchéz
Eduardo Quesada Barnés
Índice
1-Portada
1-Portada
2- Descripción del proyecto
3- Búsqueda de información
4- Listado de materiales
5- Listado de herramientas
6- Fase de montaje
7- Código de arduino
8- Muestra final
8- Muestra final
Descripción Del Proyecto
Vamos a realizar un proyecto con arduino, en el cual vamos a simular un cruce con semáforos y un paso a nivel, en el cual habrá dos semáforos sincronizados para la correcta circulación, además este proyecto tendrá un paso a nivel para cortar la circulación de coches, con el objetivo de que pase el tranvía, un ejemplo de la muestra podria ser esta imagen.
Listado De Materiales
Los Materiales que usaremos serán materiales sencillos, entre los que se encuentran:
-Cartón
-Tabla De Madera
-Resistencias
-Leds
-Placa De Arduino
-Cables
-Servomotor
-Pajitas para simular el paso a nivel
Listado De Herramientas
Entre las herramientas que vamos a usar se encuentran:
-Tijeras
-Lápiz
-Pistola Termofusible
-Cúter
-Pinceles
-Cola
-Regla (para tomar medidas)
-Cinta aislante
Fase De Montaje
En primer lugar nos dispondremos a pegar el trozo de cartulina a la base de cartón para que la estructura sea solida.
Después utilizaremos algunos trozos de cartón para hacer los semáforos, las calles y algún que otro edificio.
Seguido simularemos con pintura blanca las vías del metro los pasos de peatones y las carreteras.
Una vez hecha la maqueta utilizaremos los leds para el semáforo y pegaremos los leds con los cables para conectarlos a la placa de arduino.
Una vez conectados los leds y el servomotor haremos que funcionen a través del código de arduino en el orden correcto.
Seguido simularemos con pintura blanca las vías del metro los pasos de peatones y las carreteras.
Una vez hecha la maqueta utilizaremos los leds para el semáforo y pegaremos los leds con los cables para conectarlos a la placa de arduino.
Una vez conectados los leds y el servomotor haremos que funcionen a través del código de arduino en el orden correcto.
Código
El código que hemos usado a sido el siguiente:
#include <Servo.h>
Servo servo_0;
void setup()
{
servo_0.attach(0);
pinMode(2, OUTPUT); Amarillo 2
pinMode(3, OUTPUT); Verde 1
pinMode(4, OUTPUT); Rojo 2
pinMode(5, OUTPUT); Amarillo 1
pinMode(6, OUTPUT); Rojo 1
pinMode(7, OUTPUT); Verde 2
}
void loop()
{
servo_0.write(90);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
delay(5000); // Wait for 5000 millisecond(s)
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
delay(1000); // Wait for 1000 millisecond(s)
servo_0.write(0);
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
delay(5000); // Wait for 5000 millisecond(s)
digitalWrite(4, LOW);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
delay(1000); // Wait for 1000 millisecond(s)
servo_0.write(90);
digitalWrite(4, LOW);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, HIGH);
delay(5000); // Wait for 5000 millisecond(s)
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
delay(1000); // Wait for 1000 millisecond(s)
digitalWrite(1, HIGH);
digitalWrite(2, LOW);
}
Muestra Final
Comentarios
Publicar un comentario