Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
O sensor de luz ambiente TSL2561 é um componente eletrônico utilizado para medir a intensidade de luz em um ambiente. Ele é amplamente utilizado em projetos de automação residencial, robótica e em qualquer aplicação que necessite de informações sobre a luminosidade do ambiente.
Este artigo tem como objetivo fornecer informações técnicas e instrutivas sobre o sensor TSL2561, incluindo exemplos de códigos e uma lista dos componentes utilizados nos exemplos.
Projeto: Monitoramento de Luz Ambiente
O projeto consiste em utilizar o sensor TSL2561 para monitorar a intensidade de luz ambiente em um determinado local. O objetivo é obter informações precisas sobre a luminosidade do ambiente e utilizar esses dados para controlar outros dispositivos ou tomar decisões baseadas na quantidade de luz presente.
O sensor TSL2561 possui duas células fotossensíveis, uma de luz visível e outra de infravermelho. Ele é capaz de medir a intensidade de luz em uma ampla faixa de espectro, o que o torna ideal para diversas aplicações.
Lista de componentes:
Exemplos:
Exemplo 1: Leitura da intensidade de luz ambiente
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_TSL2561_U.h>
Adafruit_TSL2561_Unified tsl = Adafruit_TSL2561_Unified(TSL2561_ADDR_FLOAT, 12345);
void setup() {
Serial.begin(9600);
if (!tsl.begin()) {
Serial.println("Sensor TSL2561 não encontrado!");
while (1);
}
tsl.enableAutoRange(true);
tsl.setIntegrationTime(TSL2561_INTEGRATIONTIME_13MS);
}
void loop() {
sensors_event_t event;
tsl.getEvent(&event);
float lux = tsl.calculateLux(event);
Serial.print("Intensidade de luz: ");
Serial.print(lux);
Serial.println(" lux");
delay(1000);
}
Neste exemplo, utilizamos a biblioteca Adafruit_TSL2561_U para realizar a leitura da intensidade de luz ambiente. O sensor é inicializado no setup() e, em seguida, no loop(), a intensidade de luz é lida e exibida no monitor serial.
Exemplo 2: Controle de iluminação com base na intensidade de luz
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_TSL2561_U.h>
Adafruit_TSL2561_Unified tsl = Adafruit_TSL2561_Unified(TSL2561_ADDR_FLOAT, 12345);
const int ledPin = 9;
void setup() {
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
if (!tsl.begin()) {
Serial.println("Sensor TSL2561 não encontrado!");
while (1);
}
tsl.enableAutoRange(true);
tsl.setIntegrationTime(TSL2561_INTEGRATIONTIME_13MS);
}
void loop() {
sensors_event_t event;
tsl.getEvent(&event);
float lux = tsl.calculateLux(event);
Serial.print("Intensidade de luz: ");
Serial.print(lux);
Serial.println(" lux");
if (lux < 100) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
delay(1000);
}
Neste exemplo, além de ler a intensidade de luz ambiente, utilizamos essa informação para controlar um LED. Se a intensidade de luz for menor que 100 lux, o LED é ligado, caso contrário, ele é desligado.