O fotoresistor, conhecido pela sigla LDR "Light Dependent Resistor" ou "Resistor Dependente de Luz" é um componente eletrônico capaz de detectar a intensidade da luz.
Assim como um resistor comum, o fotoresistor tem por finalidade limitar a corrente elétrica que passa por ele, entretanto, podemos definir o LDR como um resistor variável. O componente funciona da seguinte forma: Quanto mais luz incidir sobre sua superfície, menor será a resistência, e quanto menos luz incidir sobre sua superfície, maior será a resistência.
O fotoresistor, não possui polarização como alguns outros componentes eletrônicos, como diodos ou transistores.
Portanto, você pode conectar um LDR a um circuito eletrônico sem se preocupar com a polarização correta. A resistência do LDR simplesmente varia de acordo com a quantidade de luz que incide sobre ele, independentemente da direção da luz.
A operação de um LDR é baseada em materiais semicondutores sensíveis à luz, geralmente compostos de sulfeto de cádmio (CdS) ou seleneto de cádmio (CdSe). Quando a luz incide sobre o LDR, os elétrons nos materiais semicondutores são excitados, aumentando a condutividade do dispositivo e diminuindo sua resistência elétrica. Isso acontece independentemente da direção da luz incidente, pois a luz não tem polarização intrínseca como a polarização de uma corrente elétrica em um diodo, por exemplo.
//Sensor de luz com LDR int PinLed = 11; //Led conectado ao pino 11 int Pinldr = A5; //LDR conectado ao pino analógico 5 int Valorldr = 0; //variavel que ira receber o valor do LDR void setup() { pinMode(PinLed,OUTPUT); //define a porta 11 como saída Serial.begin(9600); //Inicia a comunicação serial } void loop() { //ler o valor do LDR Valorldr = analogRead(Pinldr); //O valor lido será entre 0 e 1023 //se o valor lido for maior que 800, liga o led if (Valorldr>= 800) digitalWrite(PinLed,HIGH); // se não, apaga o led else digitalWrite(PinLed,LOW); //imprime o valor lido do LDR no monitor serial Serial.println(Valorldr); delay(100); }