"PRÁCTICA: REGULANDO VELOCIDAD DE LEDS CON ARDUINO"


Mini Proyecto 2 Estudiantes: Controlando Luces con Arduino


UNIDAD EDUCATIVA PARTICULAR "POLITÉCNICO"
AÑO PAI - 1ERO “D 
MINI PROYECTO 2 ESTUDIANTES:
CONTROLANDO 
LUCES CON ARDUINO

Integrantes: Ariana Lindao y Estefany Taipe.

Circuito con arduino + leds prendidos en secuencia + potenciómetro regulando velocidad

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 de la actividad 

Para comenzar y realizar este circuito lo primero que hicimos fue conectar ocho leds en el protoboard, y a lado de cada uno, conectamos un cable macho-macho en la pata negativa del led, en la pata positiva pusimos resistencias, y debajo de las resistencias otros cables macho-macho para el Arduino (tx→1;2;-3;4;-5;-6;7;8) como indicaba el ejemplo que estaba en moodle. 

También estaba acompañado con un potenciometro, dos pulsadores y una fotocelda y en cada una de ellas estaban resistencias que iban conectadas en el protoboard del lado positvo y negativo, tambien iban conectados al Arduino (A0;A1;-9;-10;5v), finalmente hicimos el código, lo conecté al CPU. 

Y lo que observamos fue que los leds se prendían y apagaban continuamente...



¿Qué dificultades tuvimos? y ¿Cómo logramos superarlas?
Las dificultades que tuve fueron, que no tenía los materiales suficientes para el circuito, para que pueda funcionar y esté bien, pero mi compañera de trabajo  consiguió los materiales que necesitábamos y finalmente pudimos acabar con la práctica.



Conclusión
En conclusión este "Mini proyecto" es un circuito muy complejo, ya que teníamos que tener mucha precisión con los lugares adecuados de los materiales al momento de hacer el circuito, pero al final los resultados de nuestro proyecto fueron un éxito y tuvo mejoras, y gracias a esto hemos aprendido a controlar luces led con Arduino.


PROGRAMACIÓN

//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 = 9;
int led10 = 10;

//Pulsadores
int pulsador1 = 11;
int pulsador2 = 12;
int pulsador3 = 13;

//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 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) {
        //aqui otra condición
      }
    }
  }
}

















Comentarios

Entradas más populares de este blog

"PRÁCTICA: MENSAJES POR DISPLAY LCD "