Sensores

Luxímetro com o Arduino

Eletrogate 19 de março de 202110 min

Introdução

A iluminância é uma medida física no qual serve para mensurar a intensidade da iluminação, no qual os físicos representam ela em suas equações pela letra E. Essa medida é feita medindo a quantidade de luz que reflete em uma determinada área.

A unidade de medida para a iluminância é lux, que não deve ser confundido com o lúmen, que é uma medida de fluxo luminoso – isto é, uma medida de quantos fótons passam por um determinado ponto.

A iluminância é mais simples de se medir do que a luminosidade ou fluxo luminoso, porque a iluminância capta a luz em uma determinada área, não dizendo o quão luminoso é o emissor, e sim dizendo o quão iluminado está o sensor ou a área que ele está instalado.

Saber a iluminância de um local é particularmente importante em aplicações gráficas, visto que a impressão de uma tonalidade de uma cor pode variar de acordo com qual iluminado está a superfície. Pode ter aplicações na medicina, onde é necessário calibrar instrumentos de acordo com a  luz que ele emite, e ajustar a luminosidade de salas. Pode ter aplicações também para consumidores finais, uma vez que ajustar bem o brilho de lampadas e monitores pode garantir uma saúde ocular prolongada.

Neste post iremos apresentar um sensor BH1750FVI, que é capaz de medir iluminância na faixa de 1 a 65535 lux, podendo ser utilizado no Arduino para controle da intensidade da lâmpada, iluminação automática ou até mesmo como luxímetro.

Para entender um pouco mais sobre como a iluminância afeta nossa visão e ter como parâmetro alguns cenários, esta tabela mostra como os astros iluminam a terra em alguns cenários:

Condição
Iluminância típica (lux)
Luz solar 107.527
Fim do dia 10.752
Dia nublado 1.075
Dia muito escuro 107
Crepúsculo 10,8
Lua cheia 1,08
Lua crescente 0,108
Noite estrelada 0,0011
Noite nublada 0,0001

Créditos: https://www.teachmemicro.com/using-the-bh1750-gy-30-sensor-with-arduino/


Hardware

Este sensor funciona com o CI BH1750FVI, da Rohm (empresa japonesa). Ele possui algumas características bem interessantes, como:

  • Interface: I2C
  • Rejeição à ruídos de luzes de 50Hz – 60Hz
  • Responsabilidade espectral próxima à resposta do olho humano
  • Resolução: 1lx (lux)
  • Faixa de medição: 1 ~ 65535lx
  • Baixa variação de medição: +/- 20%
  • Configuração de resolução e modo de medição

Este chip é muito utilizado em smartphones e notebooks para fazer o brilho automático da tela, câmeras digitais para realizar configurações automáticas de ISO, etc.

Créditos: https://grabcad.com/library/ambient-light-sensor-bh1750fvi-1


Pinout e Especificações

O módulo possui 5 pinos, onde:

  • GND: é o neutro da fonte de alimentação
  • ADD: Pino para definir o endereço I2C, sendo 0x23 se o valor no pino for GND e 0x5C se for VCC.
  • SDA: Pino de dados da comunicação I2C, que vai ligado ao SDA do Arduino (A4 caso seja Arduino Uno ou Nano, e 20 para o Mega e Due)
  • SCL: Pno de clock da comunicação I2C, que vai ligado ao SCL do Arduino (A5 caso seja Arduino Uno ou Nano, e 21 para o Mega e Due)
  • Vcc: É o positivo da fonte de alimentação, que pode ser de 3 a 5V.

Materiais Necessários para o Projeto Luxímetro com o Arduino

Para realizar a montagem do projeto de teste do sensor, iremos precisar de:

cta_cart


Montagem

Para realizar a montagem é bem simples, basta fazer a ligação abaixo do sensor com sua placa Uno.


Código

Antes de utilizar fazer upload do código, iremos precisar instalar uma biblioteca para utilizar o sensor.

Em sua Arduino IDE vá em “Ferramentas > Gerenciar Bibliotecas” 

Procure por “BH1750” e instale a biblioteca do Christopher Laws.

Após a biblioteca estar instalada, basta carregar este código para o seu Arduino:

#include <Wire.h>
#include <BH1750.h>

BH1750 luximetro; // Criando um objeto sensor para chamar as funções da biblioteca


void setup(){
  Serial.begin(9600);
  Wire.begin();
  luximetro.begin();
  Serial.println(F("O tesde do BH1750 começou"));
}


void loop() {
  float lux = luximetro.readLightLevel();
  Serial.print("Iluminancia: ");
  Serial.print(lux);
  Serial.println(" lx");
  delay(1000);
}

 

Após carregar, você deverá ver algo assim no seu monitor serial.


Conclusão

Curtiu este sensor? Já utilizava algum outro sensor, como o LDR para medir intensidade de luz? Que tal agora dar um upgrade no seu projeto e poder medir a iluminância com maior precisão e com uma medida segura?

Caso você comprou o sensor e já montou o seu projeto, grave um video e nos marque lá no instagram @eletrogate. Vamos ficar bem felizes em ver o seu projeto.

Não esqueça de avaliar o post e deixar na aba dos comentários o seu comentário ou sua dúvida.

Um forte abraço e até a próxima!

Tenha a Metodologia Eletrogate na sua Escola! Conheça nosso Programa de Robótica Educacional.


Sobre o Autor


Gustavo Nery

Cursando Engenharia de Controle e Automação pela UFMG. Apaixonado por eletrônica, computação e tecnologias na área de sistemas embarcados. Nos tempos livres me divido entre desenvolver pesquisa na universidade, adquirir novos conhecimentos e estar com a família.


Eletrogate

19 de março de 2021

A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.

Tenha a Metodologia Eletrogate dentro da sua Escola! Conheça nosso Programa de Robótica nas Escolas!

Eletrogate Robô

Cadastre-se e fique por
dentro de novidades!