jueves, 5 de mayo de 2016

Laboratorio 6

Laboratorio 6
Descripción del Laboratorio
El objetivo del siguiente laboratorio es el de controlar un LED RGB desde Arduino, via PWM, controlando cada color, con tres potenciometros.
Lista de los Elementos utilizados
Tarjeta Arduino
Cable USB; COM7
Protoboard
Cables macho-macho
Led RGB
4 Resistencias  220 Ω

3 potenciometros 10 Kω

Diagrama del Montaje en la Protoboard

Diagrama Esquemático del Circuito

Diagrama PCB equivalente

Proceso del Montaje paso a paso (Fotos)



Código Fuente en Arduino (con comentarios)
// Potenciometro que controla el color Rojo
#define POT_Red    A0
// Potenciometro que controla el color Verde
#define POT_Green  A2
// Potenciometro que controla el color Azul
#define POT_Blue   A5

/********** Variables **********/

// Conectamos el LED RGB a los pines 6,5,3 PWM

//  Pin para e color rojo.
int led_Red = 6;
//  Pin para e color verde.
int led_Green = 5;
//  Pin para e color azul.
int leb_Blue = 3;

// Guardamos el valor lo que recibimos via serial

//  Pin para e color rojo
int red = 0;
//  Pin para e color verde
int green = 0;
//  Pin para e color azul
int blue = 0;

/********** Configuracion **********/

// Solo se ejecuta una vez, al iniciar o resetear el Arduino

void setup() {

// Pines de salida para el LED RGB
// pin de salida para el color rojo
    pinMode(led_Red, OUTPUT);
// pin de salida para el color verde
    pinMode(led_Green, OUTPUT);
// pin de salida para el color azul
    pinMode(leb_Blue, OUTPUT);

// pienes de entrada para los potenciometos
//pin de entrada para el potenciometro color rojo.
  pinMode(POT_Red, INPUT);
//pin de entrada para el potenciometro color verde.
  pinMode(POT_Green, INPUT);
//pin de entrada para el potenciometro color azul.
 pinMode(POT_Blue, INPUT);

}

// Ciclo infinito de ejecucion//

void loop() {

  //  Se Guardan los valores de analoogRead y lo mapeamos, para utilizarlos
  //  en el analogWrite.

    red = map(analogRead(POT_Red),0,1023,0,255);
    green = map(analogRead(POT_Green),0,1023,0,255);
    blue = map(analogRead(POT_Blue),0,1023,0,255);
   
// Cambiar la intensidad de iluminacion del LED RGB para cada color.

// color rojo.
    analogWrite(led_Red,red);
// color verde    
    analogWrite(led_Green,green);
// color azul.    
    analogWrite(leb_Blue,blue);
}


Vídeo del Funcionamiento

No hay comentarios.:

Publicar un comentario