Mini Proyecto: Controlando Luces con Arduino (2da parte)

UNIDAD EDUCATIVA PARTICULAR “POLITÉCNICO”
1° AÑO DE BACHILLERATO “D” - 5to año pai 
INFORMÁTICA – Trabajo en parejas
                             
Nombres:  Ángel Alava   y Diego Pinzón                        Fecha: 3/07/2019



Actividad de hoy:


Hoy mi compañero falto a clases pero afortunadamente la conexión ya estaba hecha casi todo ,así que solo fue cuestión de completarla y hacer el ejercicio con el circuito que el míster nos dio.

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



Con las configuraciones que nos dio el profesor conseguí que los leds al pulsar un botón logren tener un patron/orden de luces diferente. 

Fecha: 15/07/2019
Hoy el profesor nos reviso el proyecto completo y funcional con las luces leds y los pulsadores.




Conclusión: Con este mini-proyecto el mister buscaba que nos familiarizamos con la programación arduino para poder ser capaces de hacer/realizar los proyectos futuros como por ejemplo el "Simón dice" que ya haremos. 


Programa

Este fue el programa utilizado para configurar el arduino y crear los patrones de luces con los leds.(esta es la version final)

//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;
int led9 = 12;
int led10 = 13;
//Pulsadores
int pulsador1 = 9;
int pulsador2 = 10;
int pulsador3 = 11;
//Pines Analógicos
//Potenciómetro y Foto Celda
int potenciometro = A0;

//Variable donde se almacenará el valor sensado del potenciometro
int valorPotenciometro;
int valorPulsador1;
int valorPulsador2;
int valorPulsador3;

//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);
  pinMode(led9, OUTPUT);
  pinMode(led10, OUTPUT);

  //pongo los pulsadores en entrada
  pinMode(pulsador1, INPUT);
  pinMode(pulsador2, INPUT);
  pinMode(pulsador3, INPUT);
}

void loop() {
  //realiza la lectura del valor del potenciometro y lo almacena en la variable
  valorPotenciometro = analogRead(potenciometro);
  valorPulsador1 = digitalRead(pulsador1);
  valorPulsador2 = digitalRead(pulsador2);
  valorPulsador3 = digitalRead(pulsador3);
  //Encendemos o apagamos el pin del LED según convenga
  if (valorPulsador1 == HIGH) {
      secuencia = 1;
  }    
  if (valorPulsador2 == HIGH) {
      secuencia = 2;
  }
  if (valorPulsador3 == HIGH) {
      secuencia = 3;
  }
  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);
    digitalWrite(led9, HIGH);
    digitalWrite(led10, 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);
    digitalWrite(led9, LOW);
    digitalWrite(led10, 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);
      digitalWrite(led9, HIGH);
      digitalWrite(led10, 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);
      digitalWrite(led9, LOW);
      digitalWrite(led10, HIGH);
    
      //espero tanto mili segundos segun el potenciometro marque
      delay(valorPotenciometro * 2);
    } else {
      if (secuencia == 2) {
      digitalWrite(led1, HIGH);
      digitalWrite(led2, HIGH);
      digitalWrite(led3, HIGH);
      digitalWrite(led4, LOW);
      digitalWrite(led5, LOW) ;
      digitalWrite(led6, LOW);
      digitalWrite(led7, LOW);
      digitalWrite(led8, LOW);
      digitalWrite(led9, LOW);
      digitalWrite(led10, LOW);
    
      //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, HIGH);
      digitalWrite(led9, HIGH);
      digitalWrite(led10, HIGH);

     //espero tanto mili segundos segun el potenciometro marque
      delay(valorPotenciometro * 2);
      
       } else {
      if (secuencia == 3) {
      digitalWrite(led1, HIGH);
      digitalWrite(led2, HIGH);
      digitalWrite(led3, HIGH);
      digitalWrite(led4, LOW);
      digitalWrite(led5, LOW) ;
      digitalWrite(led6, HIGH);
      digitalWrite(led7, HIGH);
      digitalWrite(led8, LOW);
      digitalWrite(led9, LOW);
      digitalWrite(led10, LOW);
    
      //espero tanto mili segundos segun el potenciometro marque
      delay(valorPotenciometro * 2);
      
      digitalWrite(led1, LOW);
      digitalWrite(led2, LOW);
      digitalWrite(led3, LOW);
      digitalWrite(led4, HIGH);
      digitalWrite(led5, HIGH);
      digitalWrite(led6, LOW);
      digitalWrite(led7, LOW);
      digitalWrite(led8, HIGH);
      digitalWrite(led9, HIGH);
      digitalWrite(led10, HIGH);

     //espero tanto mili segundos segun el potenciometro marque
      delay(valorPotenciometro * 2);
      }
    }
   }
   }
      }







Comentarios

Entradas populares de este blog

Actividad de Poteciometro + arduino + leds

Informática #1

Practica en serie y paralelo