TUTORIAL: Sensor de Luminosidade com Arduino
Autor: Hélio Vieira | Publicado: 2011-08-29T08:15:00-03:00

Resumo: Ler um sensor de Luminosidade (LDR), utilizando o Arduino. Converter o sinal analógico lido em digital, e monitorar a partir de então a variação de luminosidade no ambiente que o sensor se encontra.ComponentesArduinoArduino é uma plataforma de hardware e software abertos que simplifica a criação e prototipagem de projetos de eletrônica.Uma típica placa Arduino é composta por um controlador, algumas linhas de E/S digital e analógica, além de uma interface serial ou USB, para interligar-se ao computador, que é usado para programá-la e interagi-la em tempo real.     Figura 1: ArduinoNeste exemplo, vamos utilizar uma porta analógica do Arduino, haja vista que iremos ler um sensor analógico.O Arduino é dotado de seis portas analógicas, que vão de A0 a A5, figura 01. Com resolução de 10 bits, e faixa de leitura de 0 à 5V. E 14 portas digitais, que vão de 0 a 13, figura 1.Sensor de Luminosidade - LDRFigura 2: Sensor de Luminosidade - LDR.LDR (do inglês Light Dependent Resistor ou em português Resistor Dependente de Luz) é um tipo de resistor cuja resistência varia conforme a intensidade de radiação eletromagnética do espectro visível que incide sobre ele.Um LDR é um transdutor de entrada (sensor) que converte a luz em valores de resistência. É feito de sulfeto de cádmio (CdS) ou seleneto de cádmio (CdSe). Sua resistência diminui quando a luz é muito alta, e quando a luz é baixa, a resistência no LDR aumenta. Um multímetro pode ser usado para encontrar a resistência na escuridão ou na presença de luz intensa. Estes são os resultados típicos para um LDR padrão:* Escuridão : resistência máxima, geralmente acima de 1M ohms.* Luz muito brilhante : resistência mínima, aproximadamente 100 ohms.Obs.: Como o LDR não tem uma resposta rápida, variações muito rápidas de luminosidade não são detectadas por ele, por exemplo: raios.CircuitoO circuito proposto fará a leitura do sensor analógico, irá converter o sinal em digital no Arduino, de 0-1023, e a partir daí o usuário poderá utilizar esse valor convertido para monitorar a variação de luz no ambiente. E interagir com outros dispositivos, se for o caso.Figura 3: Circuito de montagem Arduino + LDR.No circuito acima o LDR é excitado pelo próprio Arduino, e o sinal analógico é enviado para porta A0 do Arduino.FirmwareFigura 4: Firmware.Descrição do firmware:São declaradas duas variáveis chamadas “SENSOR” e “D”, a primeira tem o valor de 0, porque fará correspondência a porta analógica 0. Já a segunda é iniciada em 0, porem estará recebendo o valor lido pelo Arduino a cada ciclo.Na função “SETUP()”  é configurado a velocidade para porta serial do Arduino. E na função “LOOP()” é feita a leitura da porta analógica 0 e armazenado em “D”, em seguida, esse valor lido é enviado via porta serial do Arduino para um computador, onde neste exemplo o usuário poderá visualizar a variação desses valores na tela.Pronto, então após gravar este firmware no Arduino e montar o circuito do LDR, como mostrado na figura 3, obteremos o seguinte:ResultadosFigura 5: Resultados.Nesta janela podemos observar os valores lidos pelo Arduino, do sensor de luminosidade, e enviados ao computador. Neste exemplo o Arduino somente envia ao PC o valor lido, mas em outras aplicações o Arduino pode executar ações, como acionar dispositivos, tudo isso a partir o que construímos ate agora.Figura 6: Janela de dados recebidos via porta serial.Veja que o valor oscila bastante, isso porque este valor varia de acordo com a mudança da intensidade de luz que incide sobre o sensor.Você pode assistir a esse tutorial em vídeo passo-a-passo no, You Tube, link:          Ou no site    EngCOMPER: www.engcomper.com