Làmpada RGB

COMPONENTS

  • Díode led RGB
  • 3xResistència de 220Ω
  • 3xResistència de 10kΩ
  • 3xFotoresistència LDR
  • Paper de cel·lofana

EL PROJECTE

Utilitzant un LED tricolor i 3 fotoresistències, creareu unes làmpades que canvien de color en funció de la quantitat de llum que reben.

UNA MICA DE TEORIA

Arduino no pot variar la tensió de sortida dels pins, solament pot subministrar 5V.

Per tant és necessari utilitzar una tècnica anomenada Modulación per Ample de Pols o PWM(en anglès) per esvair suaument la llum dels LEDs.

PWM aconsegueix que un pin de sortida variï ràpidament la seva tensió de alta a baixa (entre 5 i 0V) durant un període fix de temps. Aquest canvi de tensió es realitzada tan ràpid que l’ull humà no pot veure-ho. És similar a la forma en les quals es projecten les pel·lícules de cinema, es passen ràpidament un nombre d’imatges fixes durant un segon per crear la il·lusió de moviment.

La placa Arduino Uno disposa de sis pins que es poden usar amb PWM (els pins digitals 3,5,6,9,10 i 11), els quals es poden identificar per el símbol ~ que apareix al costat de el seu nombre sobre la placa.

QUÈ ÉS UN LDR?

Per a les entrades en aquest projecte, s’usaran foto resistències (sensors que canvien la seva resistència depenent de la quantitat de llum que arribi a la seva superfície, també es coneixen amb el nom de foto cèl·lules o resistències depenents de la llum LDR).

COM ÉS UN LED RGB PER DINS?

Aquest díode LED té els elements vermell, verd i blau separats en el seu interior, i un massa comuna (el càtode).

En aparèixer una diferència de tensió entre el càtode i les tensions de sortida dels pins de Arduino en format PWM, serà possible fer que el LED variï la il·luminació dels seus tres colors.

MUNTATGE

  • Recordeu connectar les fotoresistències als ports analògics d’entrada (A0-A5).
  • Observeu que el pin més llarg del LED, inserit en la placa de proves, es connecta a GND.

PER A QUÈ SERVEIX EL PAPER DE CEL·LOFANA

Agafeu les tres làmines de paper cel·lofana i col·locar cadascuna sobre cada foto resistència.

Cadascun d’aquests papers de colors actuen com a filtres de llum, i solament deixen passar una determinada longitud d’ona (color)  cap al sensor sobre el qual estan damunt.

El paper de color vermell solament deixa passar la llum vermella, el paper verd solament deixa passar la llum verda, i el paper blau solament deixa passar la llum blava.

Això permet detectar els nivells relatius de color de la llum que reben els sensors.

PROGRAMACIÓ

  • Definim constants pels 6 pins que farem servir a aquest projecte.

const int LedR=11;
const int LdrR=A0;

  • Creem 3 variables per guardar les lectures dels sensors i 3 variables per guardar i manipular la intensitat de cada llum.

int sensorR=0;
int valorR=0;

  • Configurem el Port Sèrie i indiquem el funcionament dels pins digitals.

void setup() {
Serial.begin(9600);
pinMode(LedR,OUTPUT);

}

  • Llegim el valor de cada sensor de llum.

void loop() {
sensorR=analogRead(LdrR);
delay(10);

}

  • Mostrar les lectures per la pantalla. «\t» equival a presionar la tecla «tab» per tabular al començament d’una línia.

Serial.print(«Valors dels sensors: \t Red: «);
Serial.print(sensorR);
Serial.print («\t Green: «);
Serial.print(sensorG);

  • Convertim les lectures dels sensors.

valorR=sensorR/4;*

*Les lectures analògiques van del 0-1023 mentre que les escritures analògiques van del 0-255. 1023/4 = 255.

  • Mostrem per la pantalla els valors d’aquestes divisions, que seran el número que farem servir per il·luminar el Led.

Serial.print(«Valors dels leds: \t Red: «);
Serial.print(valorR);
Serial.print («\t Green: «);
Serial.print(valorG);

  • I per últim, il·luminar els LEDs.

analogWrite(LedR, valorR);
delay (500);

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.