Bem vindo ao nosso blog

Conectando ideias

Sensor de luz com LDR para controlar uma lâmpada

Sensor de luz com LDR para controlar uma lâmpada

Sensor de luz com LDR para controlar uma lâmpada

Todos queremos que nossos eletrodomésticos sejam controlados automaticamente com base em algumas condições e chamadas de  Automação residencial. Hoje nós vamos controlar a luz baseada na escuridão lá fora, a luz liga automaticamente quando está escuro lá fora e desliga quando fica claro. Para isso, precisamos de um sensor de luz para detectar a condição de luz e alguns circuitos para controlar o sensor de luz. É como  Circuito Detector de Luz e Escuro mas desta vez estamos usando o Arduino para ter mais controle sobre a luz.
 
Neste circuito, estamos fazendo um Sensor de luz usando LDR com Arduino para controlar uma lâmpada como por condição de luz da sala ou área externa.
 

Conteudo

Material Necessário

  • Arduino UNO
  • LDR (Resistor Dependente de Luz)
  • Resistor (100k, 330 ohm)
  • LED
  • Relay module – 5v
  • Lampada
  • Conectando fios
  • Protoboard
 

Diagrama de circuito

 

LDR

LDR é Resistor Dependente de Luz. Os LDRs são feitos de materiais semicondutores para permitir que eles tenham suas propriedades sensíveis à luz. Existem muitos tipos, mas um material é popular e é o sulfeto de cádmio (CdS). Estes LDRs ou PHOTO RESISTORS trabalham com o princípio de “Condutividade Fotográfica”. Agora, o que este princípio diz é que, sempre que a luz cai na superfície do LDR (neste caso) a condutância do elemento aumenta ou, em outras palavras, a resistência do LDR cai quando a luz cai sobre a superfície do LDR. Esta propriedade da diminuição da resistência para o LDR é alcançada porque é uma propriedade do material semicondutor usado na superfície.
Vários tipos de LDR
Nós já fizemos muitos Circuitos usando LDR, que usam o LDR para automatizar as luzes de acordo com a necessidade.

 

Funcionamento do LED controlado por LDR usando o Arduino

De acordo com o diagrama de circuito, fizemos um circuito divisor de tensão usando LDR e resistor de 100k. A saída do divisor de tensão é alimentada ao pino analógico do Arduino. O Pin analógico detecta a tensão e dá algum valor analógico ao Arduino. O valor analógico muda de acordo com a resistência do LDR. Assim, à medida que a luz cai sobre o LDR, a resistência diminui e, consequentemente, o valor da tensão aumenta.
Intensidade da luz ↓ – Resistência↑- Tensão no pino analógico↓ – Luz acende
De acordo com o código do Arduino, se o valor analógico cair abaixo de 700, consideraremos escuro e a luz será ligada. Se o valor estiver acima de 700, consideramos como brilhante e a luz é desligada.
 

Explicação do Código:

Código Arduino Completo  é dado no final deste projeto.
 
Aqui, estamos definindo os pinos para o relé, o LED e o LDR.
#define relay 10
int LED = 9;
int LDR = A0;
 
Configurando o LED e o Relé como pino de saída, e o LDR como pino de entrada.
pinMode(LED, OUTPUT);
pinMode(relay, OUTPUT);
pinMode(LDR, INPUT);
Lendo o valor analógico de tensão através do pino A0 do Arduino. Esta tensão analógica será aumentada ou diminuída de acordo com a resistência do LDR.
int LDRValue = analogRead(LDR);
 
Dando a condição para escuro e brilhante. Se o valor for menor que 700, então está escuro e o LED ou Luz acende. Se o valor for maior que 700, ele fica claro e o LED ou a luz se apaga.
if (LDRValue <=700)
{
  digitalWrite(LED, HIGH);
  digitalWrite(relay, HIGH);
  Serial.println("It's Dark Outside; Lights status: ON");
} else {
  digitalWrite(LED, LOW);
  digitalWrite(relay, LOW);
  Serial.println("It's Bright Outside; Lights status: OFF");
}

Controlando o Rele usando LDR com Arduino

Arduino Light Sensor Circuit diagram using LDR and Relay

Em vez de controlar um LED de acordo com o brilho e a escuridão, podemos controlar nossas luzes domésticas ou qualquer equipamento elétrico. Tudo o que temos a fazer é conectar um módulo de relé e ajustar o parâmetro para ligar e desligar qualquer aparelho AC de acordo com a intensidade da luz. Se o valor cair abaixo de 700, ou seja, escuro, o relé será acionado e as luzes serão acesas. Se o valor for maior que 700, o que significa que seu dia será brilhante, o relé não funcionará e as luzes permanecerão DESLIGADAS.

Controlling Relay with Arduino Light Sensor using LDR

 

 
Código:
#define relay 10
int LED = 9;
int LDR = A0;

void setup() 
{
  Serial.begin(9600);
  pinMode(LED, OUTPUT);
  pinMode(relay, OUTPUT);
  pinMode(LDR, INPUT);
}

void loop() {
  int LDRValue = analogRead(LDR);
  Serial.print("sensor = ");
  Serial.print(LDRValue);

  if (LDRValue <=700) 
  {
    digitalWrite(LED, HIGH);
    digitalWrite(relay, HIGH);
    Serial.println("It's Dark Outside; Lights status: ON");
  } else  {
    digitalWrite(LED, LOW);
    digitalWrite(relay, LOW);
    Serial.println("It's Bright Outside; Lights status: OFF");
  }
}

Informações de contato

Contate-nos por e-mail ou redes sociais
contato@arduinoeautomacao.com.br

Inscreva-se em nossa newsletter