Tutorial de Sensor de Luz no Raspberry Pi – Ligue um LDR e Leia Níveis de Luz com Python
Neste tutorial abrangente de sensor de luz para Raspberry Pi, percorro a fiação de um fotoresistor aos pinos GPIO e a leitura dos dados com um script Python conciso. O objetivo é dar a você uma compreensão prática do circuito, do código e aplicações práticas como um relógio alarme ativado por luz.
Este projeto é ideal para iniciantes que querem explorar integração de sensores, mas também serve como base para projetos mais sofisticados.
Abaixo, detalho os componentes, fiação passo a passo e a lógica Python que transforma os pinos digitais do Pi em uma medição analógica improvisada.
Equipamento
Tudo que você precisa está listado aqui. Embora uma protoboard não seja estritamente necessária, ela simplifica muito a montagem, especialmente se você planeja experimentar mais.
Recomendado
Raspberry Pi
Cartão SD de 8 GB ou Micro SD para Pi 2/B+
Cabo Ethernet ou dongle Wi-Fi
Sensor de luz (LDR)
Capacitor de 1 µF
Opcional
Case para Raspberry Pi
Teclado USB
Mouse USB
Kit breakout GPIO
Protoboard
Fios para protoboard
Vídeo
Para aprendizes visuais, o vídeo que acompanha demonstra a fiação completa e mostra a saída do sensor em tempo real. A mesma informação está no texto abaixo.
Construindo o Circuito do Sensor de Luz
O circuito é intencionalmente simples: um LDR, um capacitor de 1 µF e um único pino GPIO. A resistência do LDR cai para algumas centenas de ohms em luz forte e sobe para vários megaohms no escuro. Medindo a constante de tempo RC do capacitor, o Pi pode inferir o nível de luz mesmo sem entradas analógicas.
- Conecte pino #1 (3,3 V) ao trilho + da protoboard.
- Conecte pino #6 (GND) ao trilho – da protoboard.
- Coloque o LDR na protoboard e ligue um fio de uma extremidade ao trilho +.
- Ligue um fio da outra extremidade do LDR ao pino #7 no Pi.
- Insira o capacitor de 1 µF entre o fio do pino #7 e o trilho –, garantindo que o terminal negativo vá para o trilho –.
Consulte o diagrama abaixo para layout visual. Uma vez que o hardware está no lugar, o código Python converterá o pino digital em uma medição analógica rudimentar.
Código Python
O script abaixo mede quanto tempo leva para o capacitor carregar a 75% da tensão de alimentação. Este tempo RC é proporcional à resistência do LDR, dando uma estimativa aproximada da luz ambiente.
#!/usr/local/bin/python
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
# Pino que conecta à rede RC
pin_to_circuit = 7
def rc_time(pin):
count = 0
GPIO.setup(pin, GPIO.OUT)
GPIO.output(pin, GPIO.LOW)
time.sleep(0.1)
GPIO.setup(pin, GPIO.IN)
while GPIO.input(pin) == GPIO.LOW:
count += 1
return count
try:
while True:
print(rc_time(pin_to_circuit))
except KeyboardInterrupt:
pass
finally:
GPIO.cleanup()
Implantando e Executando
Em um Raspberry Pi rodando Raspbian, as bibliotecas necessárias já vêm pré-instaladas. Se precisar instalar manualmente, execute:
sudo apt-get update
sudo apt-get install python3-rpi.gpio
Clone o repositório e execute o script:
git clone https://github.com/pimylifeup/Light_Sensor/
cd Light_Sensor
sudo python3 light_sensor.py
Alternativamente, cole o código em um novo arquivo, salve como light_sensor.py e execute o mesmo comando.
Melhorando Precisão e Possíveis Aplicações
Embora um LDR forneça uma solução rápida e de baixo custo, sua faixa dinâmica limitada e sensibilidade à temperatura podem ser insuficientes para trabalho de precisão. Para aplicações que exigem maior precisão, considere sensores como o sensor digital de luz de alta faixa dinâmica da Adafruit.
- Alarme Ativado por Luz: Use o LDR para disparar alarme que aumenta conforme a luz do dia aumenta.
- Monitor de Luz Solar no Jardim: Registre intensidade de luz em diferentes zonas do jardim para informar decisões de plantio.
- Alerta de Ocupação de Cômodo: Detecte luz inesperada em cômodo escuro e envie notificação.
Sinta-se à vontade para experimentar, ajustar a rede RC ou integrar o sensor em projetos maiores. Se encontrar problemas ou tiver sugestões, deixe um comentário abaixo.
Fonte: Raspberry Pi Light Sensor – A Simple LDR Tutorial
Processo de manufatura
- Construa um Registrador de Temperatura com Raspberry Pi e Sensor I2C de $5
- Construa um Sensor de Temperatura Remoto com Raspberry Pi e Python – Guia Passo a Passo
- Construa Estação Meteorológica Raspberry Pi que Envia Dados Diários por Email
- Como Conectar Sensor de Temperatura DS1820 One‑Wire ao Raspberry Pi via GPIO
- Conectando Sensor Ultrassônico HC‑SR04 ao Raspberry Pi 3 – Guia Completo
- Monitoramento Residencial Seguro com Home Assistant no Raspberry Pi: Movimento, Alarme e Captura de Vídeo
- Controle um LED com Sensor de Movimento PIR no Raspberry Pi
- Construa um Sensor de Umidade do Solo de Baixo Custo para Irrigação Inteligente com Raspberry Pi
- Leitura de Sensor Hall Linear com Raspberry Pi: Guia Java e Insights ADC0832
- Construa um Sistema de Monitoramento de Temperatura e Luz Multi-Sensor com Raspberry Pi e DS18B20