Ir para o conteúdo principal

Referência do wokwi-photoresistor-sensor

Módulo sensor fotoresistor (LDR)

Nome dos Pinos

NomeDescrição
VCCFonte de alimentação positiva
GNDTerra
DOSaída digital
AOSaída analógica

Atributos

NomeDescriçãoValor padrão
luxValor do nível de iluminância (lx)"500"
thresholdTensão de limiar da saída digital (Vth)"2.5"
rl10Resistência LDR @ 10lx (em kilo-ohms)"50"
gammaInclinação do gráfico log(R) / log(lx)"0.7"

Operação

O módulo do sensor fotoresistor inclui um LDR (resistor dependente de luz) em série com um resistor de 10K. O pino AO é conectado entre o LDR e o resistor de 10K.

A tensão no pino AO depende do nível de iluminância - ou seja, a quantidade de luz que incide sobre o sensor. Você pode ler essa tensão conectando o pino AO do sensor fotorresistor a um pino de entrada analógica e, em seguida, usando a função analogRead().

Existem dois parâmetros que controlam a sensibilidade do LDR: rl10 e gama. rl10 é a resistência do LDR com nível de iluminância de 10lx. O valor gama determina a inclinação do gráfico log(R) / log(lx). Normalmente, você pode encontrar esses dois valores na folha de dados do LDR.

A tabela a seguir mostra a relação entre o nível de iluminância (lux), resistência (R) e o nível de tensão no pino AO quando gama = 0,7 e rl10 = 50 (os valores padrão):

CondiçãoNível de iluminância (lux)Resistência LDRTensão*valor analogRead()
Lua cheia0.11.25MΩ4.961016
Crepúsculo profundo1250kΩ4.81985
Crepúsculo1050kΩ4.17853
Monitor do computador**5016.2kΩ3.09633
Iluminação da escada1009.98kΩ2.50511
Iluminação do escritório4003.78kΩ1.37281
Dia nublado1,0001.99kΩ0.83170
Luz do dia10,000397Ω0.1939
Luz direta do sol100,00079Ω0.048

* Quando VCC = 5V
** Medido a um metro de distância do monitor

O código a seguir para converter o valor de retorno de analogRead() em um valor de nível de iluminância (em lux):

// Essas constantes devem corresponder aos atributos "gama" e "rl10" do fotoresistor
const float GAMMA = 0.7;
const float RL10 = 50;

// Converte o valor analógico em valor lux:
int analogValue = analogRead(A0);
float voltage = analogValue / 1024. * 5;
float resistance = 2000 * voltage / (1 - voltage / 5);
float lux = pow(RL10 * 1e3 * pow(10, GAMMA) / resistance, (1 / GAMMA));

Saída digital

O pino de saída digital ("DO") fica em nível alto quando está escuro e baixo quando há luz. No sensor físico, você ajusta o pequeno potenciômetro integrado para definir o limite. No simulador, use o atributo "limite" para definir a tensão limite. O limite padrão é 2,5 volts ou cerca de 100 lux.

O LED inferior ("LED DO") está conectado à saída digital e acende sempre que o pino DO fica baixo. Em outras palavras, ele acende quando o sensor é iluminado.

Esquemático

Esquemático do módulo sensor fotoresistor (LDR) Wokwi

Exemplos no simulador