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
                          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


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.





















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

Entradas populares de este blog

TEMA 1: RED