Mini Proyecto: Controlando Luces con Arduino
UNIDAD EDUCATIVA PARTICULAR “POLITÉCNICO”
SEGUNDO AÑO DE BACHILLERATO – PARALELO
CONTROLANDO LUCES CON ARDUINO.
Nombres: Annette Macharé y Emilie Barreno. Fecha: 26/06/19
MATERIALES DE TRABAJO:
- 1 PROTOBOARD
- 1 ARDUINO
- 1 POTENCIÓMETRO
- 1 FOTO RESISTOR
- 2 PULSADORES
- 8 LEDS
- 8 RESISTENCIA 220 O 330 OHMIOS
- CABLES MACHO - MACHO
Descripción:
Conectamos ocho leds en paralelo, y ademas dos pulsadores, una fotocelda y un potenciómetro, cada uno con su resistencia, entonces se conectó cada led a un pin digital del arduino, y los otros componentes también para así poder crear el código en arduino y subirlo.
Hicimos la siguiente conexión:
Observaciones:
Al principio se tenían que prender todos los leds puestos en el protoboard, pero con el código puesto, al aplastar el pulsador los leds comenzaban a parpadear y el potenciómetro en este caso regulaba la intensidad de los leds y hacía que el parpadeo sea mas rápido o mas lento.
Pusimos el siguiente código:
//Variables Globales
//Pines Digitales
//Leds
int led1 = 1;
int led2 = 2;
int led3 = 3;
int led4 = 4;
int led5 = 5;
int led6 = 6;
int led7 = 7;
int led8 = 8;
//Pulsadores
int pulsador1 = 9;
int pulsador2 = 10;
//Pines Analógicos
//Potenciómetro y Foto Celda
int potenciometro = A0;
int foto_celda = A1;
//Variable donde se almacenará el valor sensado del potenciometro
int valorPotenciometro;
int valorFotoCelda;
int valorPulsador1;
int valorPulsador2;
//Para secuencia o barrido de los leds
int secuencia = 0;
void setup() {
//pongo los leds como salida
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
pinMode(led7, OUTPUT);
pinMode(led8, OUTPUT);
//pongo los pulsadores en entrada
pinMode(pulsador1, INPUT);
pinMode(pulsador2, INPUT);
}
void loop() {
//realiza la lectura del valor del potenciometro y lo almacena en la variable
valorPotenciometro = analogRead(potenciometro);
valorPulsador1 = digitalRead(pulsador1);
//Encendemos o apagamos el pin del LED según convenga
if (valorPulsador1 == HIGH) {
secuencia = 1;
}
if (secuencia == 0) {
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
digitalWrite(led6, HIGH);
digitalWrite(led7, HIGH);
digitalWrite(led8, HIGH);
//espero tanto mili segundos segun el potenciometro marque
delay(valorPotenciometro * 2);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
digitalWrite(led6, LOW);
digitalWrite(led7, LOW);
digitalWrite(led8, LOW);
//espero tanto mili segundos segun el potenciometro marque
delay(valorPotenciometro * 2);
} else {
if (secuencia == 1) {
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
digitalWrite(led4, LOW);
digitalWrite(led5, HIGH);
digitalWrite(led6, LOW);
digitalWrite(led7, HIGH);
digitalWrite(led8, LOW);
//espero tanto mili segundos segun el potenciometro marque
delay(valorPotenciometro * 2);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
digitalWrite(led3, LOW);
digitalWrite(led4, HIGH);
digitalWrite(led5, LOW);
digitalWrite(led6, HIGH);
digitalWrite(led7, LOW);
digitalWrite(led8, HIGH);
//espero tanto mili segundos segun el potenciometro marque
delay(valorPotenciometro * 2);
} else {
if (secuencia == 2) {
//aqui otra condición
}
}
}
}
Dificultades:
Al principio un cable que habíamos puesto en la conexión no valía, entonces eso hacia que la conexión no funcionara y después al momento de subirse el código no funcionaba muy bien.
Logros:
Logramos encontrar el cable que no funcionaba en la conexión, también reseteamos el arduino para que se vuelva a subir el código y de ahí funcionó correctamente.
Conclusiones:
Finalmente los con la programación ya subida al arduino, al momento de aplastar el pulsador parapadeaban y se prendían como en secuencia y el potenciómetro regulaba todo eso.
Comments
Post a Comment