Luces estroboscopicas con arduino

Luces estroboscopicas con arduino.

Hola como están, el día de hoy vamos a realizar un proyecto sencillo en arduino, primero repasaremos unos conceptos básicos pero necesarios para cualquier proyecto, comencemos.

Definición de Resistencia

Es la propiedad física mediante la cual todos los materiales tienden a oponerse al flujo de la corriente. La unidad de este parámetro es el Ohmio (Ω). Puedes encontrar resistencias en los calefactores eléctricos, tarjetas electrónicas, son muy útiles para limitar el paso de la corriente y el voltaje.

¿Qué necesito?

3 resistencias de 330 ohm.
3 leds de distinto color.
1 pulsador.
Arduino (en mi caso estaré con arduino uno, pero funciona por igual en los demás).
Protoboard y cables para la conexión.

¿Cómo lo debo conectar?

Ahora mismo me encuentro impartiendo el taller de Arduino en el instituto al cual asisto, mi recomendación fue utilizar un software llamado Fritzing, para mí es perfecto, pues yo hago el diseño y de esta manera solo me centro en la programación, por este motivo estaré dejando el link del diagrama para que ustedes puedan descargarlo y verificar sus conexiones.

Si no les queda clara la conexión, pueden descargar el esquema.

 

Descargar el diagrama

//Declaramos los pines a usar. 
int Led_Azul = 7; //pin 7 de Arduino 
int Led_Blanco = 4; //pin 4 de Arduino

int entrada = 2; //este es nuestro boton. 
int pulsador = 0; 
int tiempo =30; //Esta variable es nuestro tiempo de retardo, recordemos que solo arduino maneja milisegundos. 

//Declaramos si son pines de Entrada (INPUT) o Salida(OUTPUT). 

void setup(){
pinMode(Led_Azul, OUTPUT); 
pinMode(Led_Blanco, OUTPUT); 
pinMode(entrada, INPUT); 
} 

//Esta parte es la que se va a repetir de manera continua, siempre y cuando el arduino este conectado a una fuente de energia. 

void loop(){
digitalWrite(Led_Azul, HIGH); 
delay(tiempo); 
digitalWrite(Led_Azul, LOW); 
delay(tiempo); 
digitalWrite(Led_Azul, HIGH); 
delay(tiempo); 
digitalWrite(Led_Azul, LOW); 
delay(150); 

digitalWrite(Led_Blanco, HIGH); 
delay(tiempo); 
digitalWrite(Led_Blanco, LOW); 
delay(tiempo); 

digitalWrite(Led_Blanco, HIGH); 
delay(tiempo); 
digitalWrite(Led_Blanco, LOW); 
delay(200); 

pulsador = digitalRead(entrada); 

if (pulsador == HIGH) { 
tiempo=30; 
} 
else{ 
tiempo=300; 
} 
}

Descargar el código

¡Explicación del código!

Como pueden notar desde un inicio declaramos los pines a usar, se declara si se trata de pines de entrada o de salida, Ojo! se debe de respetar la sintaxis del código, no podemos escribir “High” en ves de escribir “HIGH” HiGH, es decir, se mantendrá encendido nuestro led por 30 mili segundos y se apagara de inmediato, eso lo indicamos con un Low y pasara a la siguiente orden, incluimos un if, esto es lo mismo que en cualquier otro lenguaje (no me refiero a la sintaxis, me refiero a su función), dentro del if decimos que mientras nuestro pulsador se encuentre presionado, el tiempo de retardo va a cambiar a 300 mili segundos, en caso de que el botón no se encuentre presionado, su valor será de 30 mili segundos, recordemos que el tiempo de retardo es el tiempo que tarda en pasar de una orden a otra.

Notan lo sencillo que es trabajar con arduino, espero les haya gustado el tutorial, hasta la próxima.

Deja un comentario

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