. E-1 Programación de un semáforo con S4A y Arduino

En este ejercicio tratamos de construir un semáforo de los que esperan que se pulse el botón para permitir el paso de peatones. Como podemos ver en el vídeo el estado normal es rojo para peatones y verde para vehículos, cuando se pulsa el botón el verde de vehículos pasa a amarillo y después a rojo, en este momento el rojo de peatones pasa a verde. Pasado un tiempo el verde de peatones se pone intermitente y finalmente pasa a rojo haciendo que el rojo de vehículos pase a verde, en este estado se queda hasta que se vuelve a pulsar el botón.

 

Los componentes que vamos a nacesitar para este ejemplo son:

  • Placa Arduino
  • Placa de prototipos
  • Leds de colores (rojo, verde y amarillo)
  • Interruptor
  • Resistencias pequeñas (270Ω) y una grande (10kΩ)

 

Las conexiones de la placa Arduino que emplearemos serán:

  • Salida 8 digital  para el color rojo vehículos
  • Salida 12 digital para el color naranja vehículos
  • Salida 13 digital para el color verde vehículos
     
  • Salida 10 digital par color rojo peatones
  • Salida 11 digital para color verde peatones
     
  • Entrada 2 digital para conectar el interruptor
     

 

La conexión de los leds de colores (verde, amarillo y rojo) ya se explicó en el ejemplo anterior pero lo recordamos aquí: tienen polaridad así que la patilla más larga hay que conectarla al polo positivo de la corriente, además hay que incluir una resistencia (270Ω) para limitar la corriente y evitar que se funda.

 

Ahora vamos a ver la conexión del interruptor (botón). Como se puede ver en el esquema una patilla del interruptor va a 5V y la otra va a la entrada digital, así al pulsar el botón metemos la señal de 5V en la patilla y el programa lo detecta.

Si lo dejáramos así, cuando no se pulsa el botón la entrada no estaría conectada a nada lo que podría dar lugar a una lectura errónea en la entrada digital; para evitarlo conectaremos la entrada a tierra a través de una resistencia grande (10kΩ), de esta forma cuando no esté pulsado el botón la entrada estará a 0V.

 

Con todo esto ya podemos construir el circuito y conectarlo a la placa Arduino.

 

El programase bastante sencillo ya que sólo hay que seguir el proceso comentado anteriormente encendiendo y apagando los correspondientes leds.

En el primer bloque de instrucciones apagamos todos los leds.

Después comenzamos un bucle que repetirá la secuencia

Encendemos las luces rojo peatones (10) y verde vehículos (13)

Esperamos a que se pulse el botón (esperar hasta que en digital 2 haya 5V)

esperamos 1 segundo después de pulsar el botón para cambiar las luces

Apagamos el verde vehículos (13) y encendemos el amarillo (12)

Mantenemos este estado 3 segundos

Apagamos: el amarillo vehículos (12)

    rojo peatones (10)

encendemos: rojo vehículos(8)

    verde peatones(11)

Esperamos 15 segundos (para que puedan pasar los peatones)

Entramos en un bucle de 5 repeticiones para hacer el verde peatones intermitente

    lo apagamos (11)

    esperamos 0.3 segundos

    lo encendemos (11)

    esperamso 0.3 segundos

Finalmente apagamos el verde peatones y el rojo vehículos

 

Al empezar el bucle se encienden de nuevo el verde vehículos y el rojo peatones y repetimos el proceso.