Índice:

Calibração do pluviômetro do Arduino: 7 etapas
Calibração do pluviômetro do Arduino: 7 etapas

Vídeo: Calibração do pluviômetro do Arduino: 7 etapas

Vídeo: Calibração do pluviômetro do Arduino: 7 etapas
Vídeo: Manutenção dos Pluviômetros: 02 - Verificação da Calibração 2024, Novembro
Anonim
Calibração do medidor de chuva Arduino
Calibração do medidor de chuva Arduino

Introdução:

Neste Instructable, 'construímos' um pluviômetro com o Arduino e o calibramos para relatar a precipitação diária e de hora em hora. O coletor de chuva que estou usando é um pluviômetro adaptado do tipo balde basculante. Veio de uma estação meteorológica pessoal danificada. No entanto, existem muitos instructables excelentes sobre como fazer um do zero.

Este Instructable é parte de uma estação meteorológica que estou fazendo e é uma documentação do meu processo de aprendizagem disfarçada como um tutorial:)

Características do pluviômetro:

  • as medições da precipitação diária e horária estão em polegadas para facilitar o upload para o Weather Underground.
  • o código de debouncing para a chave magnética não está incluído para manter o código simples.
  • sendo mais um tutorial, o produto acabado é mais um protótipo de um protótipo.

Etapa 1: alguma teoria

Alguma teoria
Alguma teoria

A precipitação é relatada / medida em milímetros ou polegadas, que tem a dimensão do comprimento. É um indicativo de quão alto, cada porção da área de chuva recebeu chuva, se a água da chuva não tivesse se dissipado e drenado. Portanto, uma precipitação de 1,63 mm significaria que se eu tivesse um tanque plano nivelado de qualquer formato, a água da chuva coletada teria uma altura de 1,63 mm do fundo do tanque.

Todos os pluviômetros têm uma área de captação de chuva e uma medição da quantidade de chuva. A área de captação é a região sobre a qual a chuva é coletada. O objeto de medição seria algum tipo de medição de volume para um líquido.

Portanto, a precipitação em mm ou polegadas seria

altura da chuva = volume de chuva coletado / área de captação

No meu coletor de chuva, o comprimento e a largura eram de 11 cm por 5 cm, respectivamente, dando uma área de captação de 55 cm2. Portanto, uma coleção de 9 mililitros de chuva significaria 9 cc / 55 sq.cm = 0,16363… cm = 1,6363… mm = 0,064 polegadas.

No pluviômetro do balde basculante, o balde inclina 4 vezes para 9 ml (ou 0,064… polegadas de chuva) e, portanto, uma única ponta é para (9/4) ml = 2,25 ml (ou 0,0161.. polegadas). Se fizermos leituras de hora em hora (24 leituras por dia antes das redefinições), manter a precisão de três dígitos significativos é decente o suficiente.

Assim, a cada ponta / tombo da caçamba, o código acessa como 1 sequência liga-desliga ou um clique. Sim, relatamos 0,0161 polegadas de chuva. Para repetir, do ponto de vista do Arduino

um clique = 0,0161 polegadas de chuva

Nota 1: Eu prefiro o International System of Units, mas Weather Underground prefere as unidades Imperial / US e então essa conversão em polegadas.

Nota 2: Se os cálculos não são sua preferência, vá para Volume of Rainfall, que fornece ajuda perfeita para tais questões.

Etapa 2: peças para este projeto

Partes para este projeto
Partes para este projeto
Partes para este projeto
Partes para este projeto
Partes para este projeto
Partes para este projeto

A maioria das peças estavam espalhadas e uma lista justa (para formalidade) é

  1. Arduino Uno (ou qualquer outro compatível)
  2. Medidor de chuva da antiga estação meteorológica danificada.
  3. Placa de ensaio.
  4. RJ11 para conectar meu Rain Gauge à placa de ensaio.
  5. 10K ou resistor superior para atuar como um resistor pull up. Usei 15K.
  6. 2 peças de fios de ligação macho-fêmea
  7. 2 fios de ligação macho-macho.
  8. Cabo USB; A Macho para B Macho

Ferramentas:

Seringa (foi usada a capacidade de 12 ml)

Etapa 3: o coletor de chuva

O coletor de chuva
O coletor de chuva
O coletor de chuva
O coletor de chuva

As fotos do meu coletor de chuva devem deixar as coisas claras para muitos. De qualquer forma, a chuva que cai em sua área de captação é canalizada para um dos dois baldes basculantes dentro dela. Os dois baldes basculantes são conectados como uma gangorra e conforme o peso da água da chuva (0,0161 polegada de chuva para o meu) inclina um balde para baixo, ele é esvaziado e os outros baldes sobem e se posicionam para coletar a próxima água da chuva. O movimento de inclinação move um ímã sobre uma 'chave magnética' e o circuito é conectado eletricamente.

Etapa 4: circuito

O circuito
O circuito

Para fazer o circuito

  1. Conecte o pino digital nº 2 do Arduino a uma extremidade do resistor.
  2. Conecte a outra extremidade do resistor ao pino de aterramento (GND).
  3. Conecte uma extremidade do conector RJ11 ao pino digital nº 2 do Arduino.
  4. Conecte a outra extremidade do conector RJ11 ao pino + 5V do Arduino (5V).
  5. Conecte o pluviômetro ao RJ11.

O circuito está completo. Fios de jumpers e placa de ensaio tornam as conexões mais fáceis de fazer.

Para completar o projeto, conecte o Arduino ao PC usando o cabo USB e carregue o sketch fornecido abaixo.

Etapa 5: O Código

O esboço RainGauge.ino (incorporado no final desta etapa) está bem comentado e, portanto, indicarei apenas três seções.

Uma parte conta o número de pontas do balde basculante.

if (bucketPositionA == false && digitalRead (RainPin) == HIGH) {

… … }

Outra parte verifica o tempo e calcula a quantidade de chuva

if (now.minute () == 0 && first == true) {

hourlyRain = dailyRain - dailyRain_till_LastHour; …… ……

e outra parte limpa a chuva do dia, à meia-noite.

if (now.hour () == 0) {

chuva diária = 0; …..

Etapa 6: Calibração e Teste

Desligue o Rain Collector do resto do circuito e execute os seguintes passos.

  1. Encha a seringa com água. Encho o meu com 10 ml.
  2. Mantenha o Rain Collector em uma superfície nivelada e despeje a água da seringa aos poucos.
  3. Eu mantenho uma contagem dos baldes inclinados. Quatro pontas foram suficientes para mim e drenaram 9 ml da seringa. De acordo com os cálculos (veja a seção de teoria), obtive a quantidade de 0,0161 polegadas de chuva por bico.
  4. Incluo essas informações em meu código no início.

const double bucketAmount = 0,0161;

Isso é tudo. Para obter mais precisão, pode-se incluir mais dígitos, como 0,01610595. É claro que espera-se que seus números calculados variem se seu coletor de chuva não for idêntico ao meu.

Para fins de teste

  1. Ligue o Rain Collector à tomada RJ11.
  2. Conecte o Arduino ao PC usando o cabo USB.
  3. Abra o monitor serial.
  4. Despeje quantidades de água medidas anteriormente e observe a saída quando a hora terminar.
  5. Não despeje água, mas espere a próxima hora terminar. A chuva horária deve ser zero neste caso.
  6. Mantenha o PC com o circuito conectado ligado durante a noite e veja se a chuva diária e a chuva de hora em hora voltam a zero à meia-noite. Para esta etapa, também se pode alterar o relógio do PC para um valor adequado (para assistir as saídas no monitor serial ao vivo).

Etapa 7: Reflexões e Agradecimentos

A resolução das leituras de precipitação no meu caso é de 0,0161 polegadas e não pode ser mais precisa. Circunstâncias práticas podem diminuir ainda mais a precisão. As medições do tempo não têm a precisão da mecânica quântica.

Parte do código foi emprestado do Instructable do Lazy Old Geek.

Recomendado: