Sensor de luminosidade TSL2561 • Do bit Ao Byte
Djames Suhanko 3 de setembro de 2019 4 min read
O sensor de luminosidade TSL2561 é uma excelente opção para quem deseja acurácia na aferição de uma medida de luz. É um sensor digital que se comunica pelo barramento I2C, o que facilita, simplifica e com certeza dá muito mais confiança do que um LDR.
Assim como os diversos outros sensores que tenho escrito ultimamente, esse sensor é vendido pelo nosso parceiro CurtoCircuito, eis o link direto para o menu de sensores.
Sua faixa de medição vai de 0.1 à 40.000 lux. Se não conhece a medida, escrevi há algum tempo um artigo sobre candela, lumen e lux. É uma boa leitura.
Uma boa razão para adquirir esses sensores é principalmente em empresas, onde fiscalização é (desnecessariamente) pesada. Existem algumas convenções sobre a quantidade de iluminação ideal em cada ambiente. Em escritórios por exemplo, 300 lux. Esses padrões você encontra em uma breve pesquisa no Google, não vou descrever todos eles, mas se pretende implantar alarmes ou fazer um dispositivo para aferição, é bom ter esses parâmetros e exibí-los em um display para dar um charme. Inclusive você pode gerar gráfico, seguindo esse outro artigo.
Conectar o sensor de luminosidade TSL2561 ao ESP32
Qualquer sensor pode ser montado a um circuito que lhe possibilite trabalhar em diferentes níveis lógicos. Algumas placas tem regulador de tensão, em alguns casos a placa trabalha em ambos, 3v3 ou 5v, mas aqui estou o conectando ao 3v3 por duas razões; não vi nada que evidencie um LLC e também o ESP32 tem o nível lógico de 3v3.
Wiring do sensor
Segue o padrão; GPIO21 para SDA e GPIO22 para SCL. No Arduino é A2 e A3. Como citando anteriormente, VCC vai a 3V3 e GND ao GND.
Código para o sensor de luminosidade TSL2561
Esse código roda tanto no ESP32 quanto no Arduino ou ESP8266 e está disponível nos exemplos da biblioteca, apenas adicionei informações relacionadas ao wiring e endereço:
SDA -21
SCL - 22
ADDR: 0x39 ou 0x49, depende se está flutuando ou ao GND.
//aqui pode ser FLOAT, HIGH ou LOW para ajustar os endereços
O resultado será mostrado no terminal:
Ela é bastante estável, aqui eu tirei um shot enquanto movia o sensor em direção à luz. Mais fácil que isso? Não tem!