Baixe o app para aproveitar ainda mais
Prévia do material em texto
Projeto Sensor de luz Este projeto apresenta um novo componente, conhecido como resistor dependente de luz, ou LDR. Como implica seu nome, esse dispositivo e um resistor que depende de luz. Em um ambiente escuro, o resistor tem uma resistência muito alta. Conforme fótons (luz) atingem o detector, a resistência diminui. Quanto mais luz, menor a resistência. Lendo o valor do sensor, você pode detectar se o ambiente está claro, escuro, ou com qualquer variação de luminosidade. Neste projeto, você utilizara um LDR para detectar a luz, e um sonorizador piezo para fornecer feedback sonoro da quantidade de luz detectada. Essa configuração poderia, por exemplo, ser utilizada em um alarme que indica quando uma porta foi aberta. Da mesma forma, você também poderia utilizá-la para criar um instrumento musical semelhante a um teremim2. Componentes necessários Sonorizador piezo (ou disco piezo) Resistor dependente de luz Resistor de 10 kΩ Conectando os componentes Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Depois, conecte seus componentes como no circuito da figura. Verifique todas as suas conexões antes de reconectar a energia ao Arduino. Circuito do projeto Sensor de luz O LDR pode ser inserido de qualquer forma, uma vez que não tem polaridade. Em meu caso, percebi que um resistor de 10 kΩ teve desempenho satisfatório, mas você pode ter de experimentar configurações diferentes de resistor até que encontre uma adequada ao seu LDR. Um valor entre 1 kΩ e 10 kΩ deve ser o suficiente. Ter opções de resistores de valores diferentes em sua caixa de componentes e sempre uma boa opção. Antes de qualquer coisa, temos que calibrar o sensor. Código para calibrar o sensor. //Calibrar o Sensor const int LDR = 0; int ValorLido = 0; void setup() { Serial.begin(9600); } void loop() { ValorLido = analogRead(LDR); Serial.print("Valor lido pelo LDR = "); Serial.println(ValorLido); delay(500); } O código acima mostra no monitor serial os valores que o LDR está lendo. No caso da iluminação no local onde este material foi escrito, os valores lidos pelo LDR são os seguintes: Digite o código Ligue o IDE de seu Arduino, e digite o código simples e curto da listagem. Listagem – Código para o projeto Sensor de luminosidade. // Projeto – Sensor de luz int piezoPin = 8; // Piezo no pino 8 int ldrPin = 0; // LDR no pino analógico 0 int ldrValue = 0; // Valor lido do LDR void setup() { // nada a ser feito aqui } void loop() { ldrValue = analogRead(ldrPin); // lê o valor do LDR tone(piezoPin,1000); // toca um tom de 1000 Hz do piezo delay(25); // espera um pouco noTone(piezoPin); // interrompe o tom delay(ldrValue); // espera a quantidade de milissegundos em ldrValue } Quando você fizer o upload desse código, o Arduino reproduzira pequenos bips. O intervalo entre os bips será longo se o LDR estiver na sombra, e curto se houver luz brilhando sobre ele, fornecendo um efeito semelhante ao de um contador Geiger. Pode ser mais prático soldar um conjunto de fios longos ao LDR, para permitir que você mantenha sua protoboard e seu Arduino na mesa enquanto movimenta seu LDR, apontando-o para regiões escuras e claras. Como alternativa, ilumine o sensor com uma lanterna e movimente a luz sobre ele. O código para o projeto é muito simples, e você deve ser capaz de descobrir sozinho como ele funciona, sem minha ajuda. Entretanto, mostrarei como um LDR funciona e por que o resistor adicional e importante.
Compartilhar