Arduino “Semáforo V0”

NoejucomLOGO     logo_v1

Tras instalar el software, lo primero que realicé fue una descarga de un programa de ejemplo incluido en el IDE (Entorno de Desarrollo Integrado), más concretamente el “Blink”, que lo podemos encontrar en la ruta “Archivo/Ejemplos/01.Basics/Blink”.

sketch4Ejemplo Archivo/Ejemplos/01.Basics/Blink

sketch5

Realicé el montaje en la “protoboard” y funcionó perfectamente. Tras realizar este pequeño ejemplo, se me ocurrió la idea para asimilar conceptos de una manera sencilla, usar de base este ejemplo y programar un semáforo básico (sin paso de peatones, ni intersecciones….), y a continuación ir incluyendo poco a poco funcionalidades. 

Comenzamos con la Versión 0 de nuestro proyecto: “Arduino Semáforo V0”.

1. Esquema Funcional.

Control secuencial de tres lámparas, verde, amarillo y rojo, siguiendo la siguiente secuencia:

  • Lámpara Verde. Encendida 5 s.
  • Lámpara Amarilla. Encendida 2.
  • Lámpara Roja. Encendida 5 s

2. Lista de señales.

  • SD 11 LED Rojo
  • SD 12 LED Amarillo
  • SD 13 LED Verde

SD = salida digital

3. Programa Arduino Semáforo V0.

Como hemos comentado anteriormente, hemos usado el programa (Sketch) de ejemplo “Blink” para tener la estructura base y así poder desarrollar nuestro programa.

La estructura básica de un Sketch es muy similar a la de cualquier programa en C , con la diferencia de que Arduino interactúa directamente con el medio.

Según Wikipedia:

“La plataforma Arduino se programa mediante el uso de un lenguaje propio basado en el lenguaje de programación de alto nivel Processing que es similar a C++.”

Todo programa de Arduino, siempre dispone de dos funciones principales setup() y loop()

sketch6

La primera parte del Sketch, dispone de comentarios del programa o del desarrollador. El Arduino interpreta como comentarios, las lineas que se encuentran entre los comandos “/*” y “*/”, y en el caso de un comentario de línea aquello que se encuentra después del comando “//”

sketch9

Así la primera parte de un Sketch “setup()” realiza la declaración de variables, donde definiremos las variables globales del Sketch declarando su tipo y, si lo necesitamos, su valor inicial. Las variables globales, son accesibles desde cualquier parte de nuestro Sketch, mientras que las variables locales, sólo serán accesibles dentro de una función o estructura de control. En nuestro caso declaramos tres pines como salidas digitales en “setup()”:

sketch7

En la segunda “loop()”, realizamos el control secuencial antes descrito. Esta función se ejecuta una y otra vez:

sketch8

4. Montaje en la “Protoboard”.

Los componentes utilizados, han sido sencillos:

  • 1 ud. LED Verde
  • 1 ud. LED Amarillo
  • 1 ud. LED Rojo
  • 3 uds. Resistencias 100 Ω
  • Puntas de pruebas.
  • Arduino LEONARDO

Esquema:

Aunque existen varios programas gratuitos, me he decidido por el más usado que es Fritzing, no obstante si queréis ver otras opciones (123D Circuit.io, Oregano..) os aconsejo que leáis el artículo de “Luis Llamas”.

  • Vista  “Protoboard”.

Semaforo_V0_bb

  • Vista  “Esquema”.

Semaforo_V0_esquema

  • Vista  “PCB”.

Semaforo_V0_placa

Montaje físico:

semaforo_vo_1

semaforo_vo_3

Por último, realizamos la prueba del programa……eureka……..funciona!!!!.

Enlaces programas utilizados:

Hasta la próxima entrada.

Saludos!!!!.

2 thoughts on “Arduino “Semáforo V0”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *