Como utilizar o sensor de chuva

 

COMO UTILIZAR O SENSOR DE CHUVA

 

 

Já imaginou elaborar projetos que detectam se está chovendo ou não e a partir dessa informação realizar uma ação desejada? Com o módulo “sensor de chuva” você pode desenvolver diversos projetos para este fim, este artigo tem por finalidade descrever as características desse módulo bem como sua importância para a implementação de projetos que envolva a detecção de chuva.

 

Como o sensor de chuva funciona?

O sensor de chuva é um dispositivo com um funcionamento bastante simples de ser compreendido e implementado.

Basicamente a base do sensor possui uma série de traços de cobre expostos, em conjunto atua como um resistor variável (assim como um potenciômetro) cuja resistência varia de acordo com a quantidade de água presente em sua superfície.

Sua resistência é inversamente proporcional à quantidade de água presente em sua superfície.  A figura abaixo apresenta 3 situações distintas para o sensor.

 

 

Quanto mais água na sua superfície, significa melhor condutividade e resultará em uma resistência menor.

Quanto menos água na sua superfície, significa baixa condutividade e resultará em uma maior resistência.

Através desta variação de resistência o sensor produz uma tensão de saída, que medindo pode-se determinar se está chovendo ou não.

Um sensor de chuva típico é composto de dois dispositivos, são eles: a base sensora e o módulo sensor.

 

A Base sensora

A base sensora é composta de uma série de linhas de cobre que devem ser colocados expostos ao ar livre, como por exemplo no telhado de uma residência.

Normalmente, essas linhas não estão conectadas, mas são interligadas em contato com a água.

 

 

O Módulo

O Módulo sensor é um dispositivo eletrônico que realiza a leitura através da base sensora. Seus pinos podem ser conectados ao Arduino.

O módulo produz uma tensão de saída de acordo com a resistência da base sensora e é disponibilizada em um pino de saída analógica (AO).

O mesmo sinal é alimentado a um Comparador de alta precisão LM393 para digitalizá-lo e é disponibilizado em um pino de Saída Digital (DO).

O módulo possui um potenciômetro embutido para ajuste de sensibilidade da saída digital (DO).

 

 

Uma das características do módulo é poder através do potenciômetro definir um valor limite, desta maneira quando a quantidade de água exceder o valor limite definido, o módulo assumirá nível baixo, caso contrário, nível alto.

Girando o botão no sentido horário haverá o aumento da sensibilidade e no sentido anti-horário a diminuição.

O módulo possui dois LEDs internos. Um deles é o LED de alimentação, que acenderá quando o módulo for energizado, o outro é o LED de Status que acenderá quando a saída digital estiver em nível lógico baixo.

 

Pinagem do Sensor de Chuva

Conforme a figura abaixo, o módulo possui 2 pinos para conexão com a base sensora e outros 4 pinos para conexão com o Arduino.

 

 

O pino 1 (saída analógica A0) nos dá um sinal analógico entre 0V e o valor de alimentação (5V).

O pino 2 (Saída Digital DO) fornece a saída digital do circuito interno comparador. Você pode conectá-lo a qualquer pino digital em um Arduino ou diretamente a um relé de 5V.

O pino 3 (GND) corresponde ao negativo da alimentação.

O pino 4 (VCC) corresponde ao positivo da alimentação. Recomenda-se alimentar o módulo entre 3,3V – 5V. Observe que a saída analógica irá variar dependendo da voltagem fornecida para o módulo.

 

Conectando o sensor de chuva com o Arduino

Realizar a conexão do sensor de chuva ao Arduino é relativamente simples, primeiro de tudo você precisa fornecer a energia ao módulo sensor. Para isso você pode conectar o pino VCC do módulo no pino de 5V do Arduino.

No entanto, um problema comumente conhecido com esses sensores de chuva é sua baixa vida útil quando expostos a um ambiente úmido. A aplicação constante de energia na base sensora acelera significativamente a taxa de corrosão. Para evitar este problema, recomendamos que você não ligue o sensor constantemente, mas ligue-o apenas quando fizer as leituras.

Uma maneira fácil de fazer isso é conectar o pino VCC a um pino digital do Arduino e configurá-lo para HIGH ou LOW conforme sua necessidade.

Além disso, a potência total consumida pelo módulo (com os dois LEDs acesos) é de cerca de 8mA, portanto, não há problema em desligar o módulo através de um pino digital do Arduino.

Então, vamos conectar o pino VCC do módulo ao pino digital 7 do Arduino e o pino GND do módulo ao GND do Arduino.

Finalmente, conecte o pino 2 (DO) do módulo ao pino digital 8 do Arduino.

 

Módulo Sensor

Arduino

VCC

Pino 7

GND

GND

D0

Pino 8

A0

--

 

 

 

 

 

 

 

 

 

A ilustração a seguir mostra as conexões do circuito descritas anteriormente:

 

 

Calibrando o Sensor de Chuva

Para obter leituras precisas do seu sensor de chuva, é recomendável que você o calibre primeiro.

O módulo possui um potenciômetro embutido para calibração da saída digital (DO).

Ao girar o botão do potenciômetro, você pode definir um limite. Assim, quando a quantidade de água ultrapassar o valor limite, o LED de status acenderá e a saída digital (DO) assumirá nível lógico baixo.

Agora, para calibrar o sensor, borrife um pouco de água no sensor e ajuste o potenciômetro no sentido horário para que o LED de status acenda e então ajuste o potenciômetro no sentido anti-horário até que o LED se apague.

Pronto, seu sensor está calibrado e pronto para uso.

 

Detectando chuva – código Arduino

Uma vez que o circuito é construído, faça o upload do seguinte sketch para o seu Arduino.

Agora coloque o sensor de chuva em um local de modo que a chuva possa cair diretamente no sensor, possivelmente sobre o telhado. Coloque-o também ligeiramente inclinado por volta de 20° para facilitar o fluxo de água.

Observe que o módulo eletrônico não foi projetado para ser à prova d'água, tenha o cuidado de instalá-lo para que apenas a almofada sensora entre em contato com a água.

 

 

Depois que o sketch for carregado, você pode abrir o monitor serial do Arduino para ver o estado da saída do sensor. Você deverá ver uma saída digital ALTA quando o clima estiver bom. Para vê-lo assumir nível lógico 0, você pode borrifar um pouco de água na base sensora. A saída deve inverter o seu estado de nível lógico ALTO para nível lógico baixo.

 

Explicação do código:

O sketch começa com a declaração dos pinos do Arduino aos quais o VCC e DO do sensor estão conectados.

 

 

Foram declarados na seção de configuração (void setup) a alimentação de energia ao sensor como saída e, em seguida, a definimos como baixa para que nenhuma energia flua através do sensor inicialmente. Também configuramos o monitor serial do Arduino.

 

 

Na seção de loop (void loop), chamamos a função readSensor() repetidamente no intervalo de um segundo e imprimimos o valor retornado junto com o status.

 

 

A função readSensor() é usada para obter a saída digital atual do sensor. Ela liga o sensor, aguarda 10 milissegundos, lê o valor digital do sensor, desliga o sensor e retorna o resultado.

 

 

Para dar um passo adiante com base neste projeto, pode ser implementado por exemplo, para quando houver chuva enviar solicitações de fechamento de persianas, janelas, toldos e etc.