Olá pessoal, neste projeto você aprenderá como fazer um sensor de luminosidade básico, e uma pequena aplicação, onde você verá três LED‘s acendo conforme variação da luminosidade. Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!
Para você visualizar o monitor serial selecione a opção Tools, Serial Monitor (ou Ctrl+Shift+M) e pronto.
COMPONENTES NECESSÁRIOS
1 Arduino Uno R3
1 Protoboard
1 LDR (Light Dependent Resistor(Resistor dependente de luz))
1 LED Vermelho
1 LED Amarelo
1 LED Verde
3 Resistores de 330 ohms *
1 Resistor de 10K ohms
Fios jumpers
* Esse valor pode ser diferente, dependendo do LED que você utilizar.
CONECTANDO OS COMPONENTES
Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, pegue o LDR, o resistor de 10 K ohms e os fios e conecte-os como mostra a figura.
Observação importante: Verifique a polaridade dos LED’s.
Não importa se você utiliza fios de cores diferentes ou furos diferentes na protoboard, desde que os componentes e os fios estejam conectados na mesma ordem da figura. Tenha cuidado ao inserir os componentes na protoboard. Caso sua protoboard seja nova, a superfície dos furos ainda estará rígida. A não inserção cuidadosa dos componentes pode resultar em danos. Certifique-se de que todos os componentes estejam conectados corretamente. Quando você estiver seguro de que tudo foi conectado corretamente, ligue seu Arduino e conecte o cabo USB.
AGORA VAMOS AO CÓDIGO
// Projeto 5 - Sensor de luminosidade
// Define o pino analógico A0, onde será lido o valor do sensor
int sensorAlogPin = 0;
// Define uma variável qualquer para armazenar o valor lido do pino A0
int armazenaValor = 0;
void setup(){
// Inicializa a função Serial, configurando sua velocidade
Serial.begin(9600);
}
void loop(){
// Faz a leitura da porta analogica A0 e armazena na variável armazenaValor
armazenaValor = analogRead(sensorAlogPin);
Serial.print("Lendo valor... "); // Imprime no monitor serial
Serial.print(armazenaValor); // Mostra o valor lido pela porta serial
delay(1000); // Aguarda 1 segundo
}
Para certificar se o código está correto pressione o botão Verify/Compile. Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino. Pronto, agora inicialize o monitor serial e visualize o que acontece quando você muda a luminosidade no LDR.
IMAGEM DA PORTA SERIAL DO IDE DO ARDUINO
APLICAÇÃO DO SENSOR DE LUMINOSIDADE
Complemente o projeto anterior conforme mostra a figura
COMPLEMENTE O CÓDIGO DA SEGUINTE MANEIRA
// Projeto 5.1 - Sensor de luminosidade com LED’s
// Define o pino analógico A0, onde será lido o valor do sensor
int sensorAnalogPin = 0;
// Define uma variável qualquer para armazenar o valor lido do pino A0
int armazenaValor = 0;
// Definindo pinos onde estão conectados os LED’s
const int ledVerde = 11;
const int ledAmarelo = 12;
const int ledVermelho = 13;
void setup(){
// Ativando o serial monitor que exibirá os valores lidos no sensor
Serial.begin(9600);
// Definindo pinos digitais dos LED’s como de saída
pinMode(ledVerde,OUTPUT);
pinMode(ledAmarelo,OUTPUT);
pinMode(ledVermelho,OUTPUT);
}
void loop(){
// Faz a leitura da porta analogica A0 e armazena na variável armazenaValor
int armazenaValor = analogRead(sensorAnalogPin);
//Os valores da luminosidade podem ser alterados conforme a necessidade
//Luminosidade baixa
if (armazenaValor < 600) {
apagaLeds();
digitalWrite(ledVermelho,HIGH);
}
// Luminosidade média
if (armazenaValor >= 600 && valorSensor <= 850) {
apagaLeds();
digitalWrite(ledAmarelo,HIGH);
}
// Luminosidade alta
if (armazenaValor > 850) {
apagaLeds();
digitalWrite(ledVerde,HIGH);
}
// Exibindo o valor do sensor no serial monitor.
Serial.print("Lendo valor... "); // Imprime no monitor serial
Serial.println(valorSensor); // Mostra o valor lido pela porta serial
delay(1000);
}
// Está função criada para apagar todos os leds de uma vez
void apagaLeds() {
digitalWrite(ledVerde,LOW);
digitalWrite(ledAmarelo,LOW);
digitalWrite(ledVermelho,LOW);
}
Para certificar se o código está correto pressione o botão Verify/Compile. Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino. Pronto, agora você verá os LED’s trocando de cor conforme variação de luminosidade.
fonte: facacomarduino.info