LED tricolor (rgb)

En aquest projecte aprendrem a fer un circuit elèctric mitjançant el qual podrem crear colors d'un ldr depenent de la intesitat lumínica que rebin uns sensors de llum. L'actuador que es fa servir per aquest projecte és un rgb. El rgb són tres LEDs en un mateix LED; per tant dins d'un mateix LED tenim un LED blau, un LED vermell i un de verd. Sempre tenen 4 potes, i depenent del tipus, les potes poden anar connectades a un lloc o a un altre. Els rgb poden ser de càtode comú, que significa que els tres LEDs comparteixen càtode; o de ànode comú, que significa que els tres LEDs comparteixen ànode. Els podem trobar en forma de LEDs o en forma de mòduls.  Per tant, aquest actuador funciona igual que un LED, però amb tres a la vegada. El rgb utilitzat en aquest projecte és de comú càtode. Per tant en aquest projecte utilitzarem tres sensors de llum, mitjançant els quals depenent de la intensitat lumínica que rebin podrem crear tota mena de colors amb el rgb.

Per tal de realitzar l'esquema elèctric d'aquest projecte necessitarem:

  • 1xArduino UNO
  • 1xProtoboard
  • 1xLED rgb
  • 3xresistències de 220ohm
  • 3xresistències de 10 kilo ohm
  • 3xLDR
  • cables





Una vegada ja hem realitzat el circuit elèctric, és hora de programar la placa. El programa a realitzar és el següent:


const int PinLedVerde=9;        //Definim el pin del LED verd

const int PinLedRojo=11;        //Definim el pin del LED vermell
const int PinLedAzul=10;        //Definim el pin del LED blau

const int PinEntradaVerde=A1;   //Definim el pin a on va connectat el ldr del led verd
const int PinEntradaRojo=A0;    //Definim el pin a on va connectat el ldr del led vermell
const int PinEntradaAzul=A2;    //Definim el pin a on va connectat el ldr del led blau

int ValorSensorRojo=0;          //Creem la variable a on guardarem el valor del sensor per al LED vermell
int ValorSensorAzul=0;          //Creem la variable a on guardarem el valor del sensor per al LED blau
int ValorSensorVerde=0;         //Creem la variable a on guardarem el valor del sensor per al LED verd

int ValorRojo=0;                //Creem la variable a on es guarda la intensitat per al LED vermell
int ValorAzul=0;                //Creem la variable a on es guarda la intensitat per al LED blau
int ValorVerde=0;               //Creem la variable a on es guarda la intensitat per al LED verd


void setup() {
Serial.begin(9600);             //Inicialitzem el serial

pinMode (9,OUTPUT);             //Definim el pin 9 com a sortida
pinMode (10,OUTPUT);            //Definim el pin 10 com a sortida
pinMode (11,OUTPUT);            //Definim el pin 11 com a sortida


}

void loop() {
  // put your main code here, to run repeatedly:
ValorSensorRojo=analogRead(PinEntradaRojo);     //Guardem el valor del sensor vermell en la variable ValorSensorRojo
delay(5);                                       //Esperem 5 milisegons
ValorSensorVerde=analogRead (PinEntradaVerde);  //Guardem el valor del sensor verd en la variable ValorSensorVerde
delay(5);                                       //Esperem 5 milisegons
ValorSensorAzul=analogRead (PinEntradaAzul);    //Guardem el valor del sensor blau en la variable ValorSensorAzul

//Printem els tres valors que acabem de llegir
Serial.print("Mapa de valors dels sensors \t Vermell:");
Serial.print(ValorSensorRojo);
Serial.print("\t Verd:");
Serial.print(ValorSensorVerde);
Serial.print("\t Blau:");
Serial.println(ValorSensorAzul);


//Dividim cada un dels valors que acabem de llegir entre 4, ja que el màxim que llegim són 1023
//i el màxim que se li pot donar a un LED són 255
ValorRojo=ValorSensorRojo/4;
ValorVerde=ValorSensorVerde/4;
ValorAzul=ValorSensorAzul/4;


//Els valors que acabem de llegir, els traiem per als LEDs
analogWrite(PinLedRojo,ValorRojo);
analogWrite(PinLedVerde,ValorVerde);
analogWrite(PinLedAzul,ValorAzul);


}

Una vegada realitzat el projecte cal dir que podem fer el mateix projecte, però substituint els LDR per potenciòmetres i així es poden crear colors de manera manual i més pràctica. Si es fa, no cal canviar cap cosa del codi. En el següent botó podeu descarregar el programa ja fet amb arduino




Cap comentari:

Publica un comentari a l'entrada

↓↓↓ Si vols deixar un comentari fes-ho aquí ↓↓↓