O objetivo deste projeto é controlar o estado de um LED (aceso ou apagado) através da verificação de luminosidade do ambiente utilizando um sensor de luminosidade LDR.
O LDR (Light Dependent Resistor) é um componente que varia a sua resistência conforme o nível de luminosidade que incide sobre ele. A resistência do LDR varia de forma inversamente proporcional à quantidade de luz incidente sobre ele.
Quanto maior a luminosidade, menor será a resistência, por outro lado, no Arduino, maior será o valor presente na entrada analógica. Quanto menor for a luminosidade, maior será a resistência, ou seja, menor será o valor na entrada analógica do Arduino.
Para essa experiência, vamos supor que o nível limite de luminosidade para que o LED se acenda como sendo um valor menor que 100 na entrada analógica.
Para monitorar o valor gerado pelo LDR vamos estabelecer a comunicação serial entre o Arduino e o computador e, em seguida, utilizar o Serial Monitor da IDE do Arduino para monitorar.
1 Arduino
1 Resistor de 220 ohms (vermelho, vermelho, marrom) ou 330 ohms (laranja, laranja, marrom) para o LED2
1 LED (qualquer cor) 2
1 LDR1 2
1 Resistor de 10k ohms (marrom, preto laranja) para o LDR1 2
1 Protoboard2
Jumper cable
¹ Podem ser substituídos pelo módulo P13-LDR da GBK Robotics.
² Podem ser substituídos pelo módulo P7-Sensor de Luminosidade da GBK Robotics.
a. Conecte o pino 5v do Arduino à linha de alimentação positiva (vermelha) da protoboard;
b. Conecte o pino GND do Arduino à linha de alimentação negativa (preta) da protoboard;
c. Coloque o resistor de 220 ohms (ou 330 ohms) entre a linha de alimentação negativa e qualquer outra linha da protoboard;
d. Coloque o LED com o catodo (lado chanfrado) conectado ao resistor de 220 ohms (ou 330 ohms);
e. Conecte o anodo do LED ao pino 13 do Arduino.
f. Coloque o resistor de 10k ohms entre a linha de alimentação negativa e qualquer outra linha da protoboard.
g. Conecte uma das extremidades do LDR na linha o resistor de 10k ohms.
h. Conecte uma extremidade do jumper entre o LDR e o resistor. A outra extremidade conecte no pino analógico A0;
i. Conecte a outra extremidade do LDR à linha de alimentação positiva (vermelha).
a. Conecte o pino GND do Arduino à linha de alimentação negativa (preta) da protoboard;
b. Coloque o resistor de 220 ohms (ou 330 ohms) entre a linha de alimentação negativa e qualquer outra linha da protoboard;
c. Coloque o LED com o catodo (lado chanfrado) conectado ao resistor de 220 ohms (ou 330 ohms);
d. Conecte o anodo do LED ao pino 13 do Arduino.
e. Conecte o pino 5v do Arduino ao pino +5Vcc do módulo P13;
f. Conecte o pino GND do módulo P13 à linha de alimentação negativa da protoboard;
g. Conecte o pino analógico A0 do Arduino ao pino Sinal A do módulo P13.
Este projeto pode ser montado substituindo o LED, o LDR, os Resistores de 220 ohms (ou 330 ohms) e 10k ohms e a Protoboard pelo módulo P7-Sensor de Luminosidade da GBK Robotics, neste caso:
a. Conecte o pino 5v do Arduino ao pino 5Vcc do módulo P7;
b. Conecte o pino GND do módulo P7 a um dos pinos de GND do Arduino;
c. Conecte o pino analógico A0 do Arduino ao pino Sinal Analog. do módulo P7;
d. Conecte o pino Led1 do módulo P7 ao pino digital 13 do Arduino.
int LED = 13; // Pino no qual o LED está conectado
int LDR = A0; // Pino no qual o LDR está conectado
int entrada = 0; // Variável que terá o valor do LDR
void setup()
{
Serial.begin(9600); // Definir a velocidade de comunicação na porta serial
pinMode(LDR, INPUT);
pinMode(LED, OUTPUT); // Definir o pino como saída
}
void loop()
{
entrada = analogRead(LDR);
Serial.println(entrada);// Valor que será impresso no serial monitor do Arduino
delay(500);
if (entrada < 100)
digitalWrite(LED, HIGH); // Acende o LED
else
digitalWrite(LED, LOW); // Apaga o LED
delay(100);
}