• pipes.jpg
  • imgBannerMoodleRayoAzul.jpg
  • universe.jpg
  • electronic.jpg
  • automation.jpg
  • geotermia.jpg
  • fotovoltaica.jpg
  • telecomunicaciones.jpg
  • termica.jpg
  • imgBannerMoodle0.jpg
  • seguridad.jpg
  • imgBannerMoodleRed.jpg
  • automatizacion.jpg
  • agua.jpg
  • led.jpg
  • transporte.jpg
  • interior.jpg
  • soldadura.jpg
  • imgBannerMoodleEolo.jpg
  • imgBannerMoodleRed2.jpg

ELECTRON AUTOMATISMOS

  Cuarta práctica con arduino, se trata de realizar el control de un semáforo para el cruce de una calle. Por lo tanto tendrá una parte para los coches, con tres diodos, rojo, verde y amarillo, y otra para peatones, con verde y rojo.

 

CUARTA PRÁCTICA: SEMÁFORO
Se trata de realizar el control de un semáforo para el cruce de una calle. Por lo tanto tendrá una parte para los coches, con tres diodos, rojo, verde y amarillo, y otra para peatones, con verde y rojo.

Lo primero que tenemos que hacer es establecer una secuencia lógica de tiempos, es decir determinar cuanto tiempo va a estar encendido cada diodo de forma que coincida el paso de los peatones con la parada de los coches y al revés.
Dicha secuencia podría ser la siguiente:

Como decía se trata de establecer una secuencia más o menos lógica. El siguiente paso será pasar los tiempos que se especifican, (reducidos para que no resulte pesado), al programa de arduino.

CÓDIGO DEL IDE:

/* SE TRATA DEL DEL  CONTROL DE UN SEMÁFORO QUE REGULE EL TRÁFICO DE UNA CALLE.PARA LO CUAL CONTAREMOS CON TRES LEDS, ROJO, AMARILLO Y VERDE QUE SIMULARAN LA PARTE DEL SEMÁFORO DE COCHES, Y DOS DIODOS, VERDE Y ROJO, QUE SERÁN LA PARTE DE LOS PEATONES. MEDIANTE LA UTILIZACIÓN DE DELAY PROVOCAREMOS LOS RETARDOS NECESARIOS EN EL PROGRAMA PARA REALIZAR LA SECUENCIA QUE NECESITEMOS*/

int verdecoches=10;           //indicamos que el led verde coches lo conectaremos en el pin 10 
int amarillocoches=11;            //indicamos que el led amarillo coches lo conectaremos en el pin 11 
int rojocoches=12;            //indicamos que el led rojo coches lo conectaremos en el pin 12
int rojopeatones=9;            // indicamos que el led rojo peatones lo conectaremos en el pin 9
int verdepeatones=8;            // indicamos que el led verde peatones lo conectaremos en el pin 8

void setup()
{ pinMode(verdecoches, OUTPUT);            //Se declara el pin 10 como salida
  pinMode(amarillocoches, OUTPUT);            //Se declara el pin 11 como salida
  pinMode(rojocoches, OUTPUT);            //Se declara el pin 12 como salida
  pinMode(rojopeatones, OUTPUT);            //Se declara el pin 9 como salida
  pinMode(verdepeatones, OUTPUT);            //Se declara el pin 8 como salida
}
void loop()
{

 digitalWrite(verdecoches,HIGH);            //Activa el pin 10
 digitalWrite(rojopeatones, HIGH);           // Activa el pin 9
 delay(5000);                                            //Espera en esta situación durante 5 segundos
 digitalWrite(amarillocoches, HIGH);           // Activa el pin 8
 delay(2000);                                             //Espera en esta situación durante dos segundos
 digitalWrite(verdecoches,LOW);            //Desactiva el pin 10
 digitalWrite(amarillocoches, LOW);           // Desactiva el pin 8
 digitalWrite(rojocoches,HIGH);            //Activa el pin 12
 delay(2000);                                  //Espera en esta situación durante dos segundos
 digitalWrite(rojopeatones, LOW);           // Desactiva el pin 9
 digitalWrite(verdepeatones,HIGH);            //Activa el pin 8
 delay(4000);                                             //Espera en esta situación durante 4 segundos
 digitalWrite(verdepeatones,LOW);            //desactiva el pin 8
 digitalWrite(rojopeatones, HIGH);           // activa el pin 9 
 delay(2000);                                             //Espera en esta situación durante dos segundos
 digitalWrite(rojocoches,LOW);            //Activa el pin 12


 }

El esquema en Fritzing.


 

 

Fuente: sjulian333.blogspot