Índice:

Arduino Pro-mini Data-logger: 15 etapas
Arduino Pro-mini Data-logger: 15 etapas

Vídeo: Arduino Pro-mini Data-logger: 15 etapas

Vídeo: Arduino Pro-mini Data-logger: 15 etapas
Vídeo: Amazing arduino project 2024, Julho
Anonim
Arduino Pro-mini Data-logger
Arduino Pro-mini Data-logger

Instruções de construção para data-logger pro-mini Arduino de código aberto

Isenção de responsabilidade: o design e o código a seguir podem ser baixados e usados gratuitamente, mas não são fornecidos com absolutamente nenhuma garantia ou garantia de qualquer natureza.

Devo primeiro agradecer e promover as pessoas talentosas que inspiraram a ideia deste registrador de dados e contribuíram com o código e os sensores usados. Em primeiro lugar, a ideia do data-logger veio do data-logger muito bem projetado e bem explicado (desculpe, nosso tutorial não é tão bom) de Edward Mallon: https://thecavepearlproject.org/2017/06/19/ arduin …

Em segundo lugar, os sensores de umidade do solo de código aberto usados aqui, bem como o código / biblioteca para executá-los, foram projetados e construídos pela Catnip Electronics. São sensores de alta qualidade e muito robustos. Informações sobre onde comprá-los e obter o código para executá-los (obrigado Ingo Fischer) são fornecidas abaixo.

Etapa 1: materiais, ferramentas e equipamentos necessários

Materiais, ferramentas e equipamentos necessários
Materiais, ferramentas e equipamentos necessários

Placa Pro-mini Arduino. Para esta aplicação, usamos código aberto (assim como todas as nossas peças) pró-mini clones de fabricação chinesa (microprocessador 5V, 16 MHz, ATmega 326) (Fig. 1a). Essas placas podem ser compradas no Aliexpress, Ebay e sites semelhantes por menos de $ 2US. No entanto, outras placas podem ser usadas com a mesma facilidade (observe os requisitos de tensão dos sensores necessários, bem como os requisitos de memória do programa).

Cartão SD e módulo de registro de relógio em tempo real (RTC) lançado pela Deek-Robot (ID: 8122) (Fig 1b). Este módulo inclui um DS13072 RTC e um leitor de cartão micro-SD. Essas placas custam menos de US $ 2US e são muito robustas.

Adaptador de terminal de parafuso Arduino nano (sim - “nano”), também lançado Deek-Robot, que pode ser comprado por menos de US $ 2US na Aliexpress ou similar (Fig. 1c). Como você pode ver, nós simplesmente amamos o Aliexpress.

Fio isolado de núcleo sólido de calibre 22 (Fig. 1d).

Caixa de registro de dados (Fig. 1e). Usamos caixas de “grau de pesquisa”, mas os utensílios de plástico baratos funcionam bem na maioria das situações.

Caixa de bateria para 4 baterias AA NiMh (Fig. 1f). Estes podem ser adquiridos no Aliexpress por ca. $ 0,20 cada (sim - 20 centavos). Não desperdice seu dinheiro em caixas de bateria mais caras.

6V, painel solar ca 1W. Pode ser adquirido no Aliexpress por menos de $ 2US.

Ferro de soldar, solda e fluxo do tipo passado.

Pistola de cola quente.

Etapa 2: Instruções de construção

Instruções de construção
Instruções de construção

Tempo necessário para construir: cerca de 30 a 60 min.

Prepare o adaptador de nano terminal para soldagem.

Para o propósito desta demonstração, prepararemos o adaptador de terminal de parafuso nano para facilitar a conexão de três sensores de umidade do solo I2C. No entanto, com um pouco de criatividade, os terminais de parafuso podem ser preparados de diferentes maneiras para facilitar outros dispositivos. Se você não sabe o que é I2C, verifique os seguintes sites:

howtomechatronics.com/tutorials/arduino/ho…

www.arduino.cc/en/Reference/Wire

A ideia de usar adaptadores de parafuso nano foi tirada do maravilhoso design de data logger de Edward Mallon:

thecavepearlproject.org/2017/06/19/arduino…

Corte os traços na parte de trás do terminal de parafuso entre os pinos grandes e pequenos nas posições 3, 5, 9, 10 e 11 (contando a partir da parte superior do terminal) (Fig. 2). Esses traços correspondem às etiquetas “RST”, “A7”, “A3”, “A2” e “A1” no terminal de parafuso. Cortar os traços é muito mais fácil se você tiver uma ferramenta do tipo 'Dremel', mas se não tiver, uma faca pequena funcionará facilmente. Não se corte! Observe que as etiquetas no terminal de parafuso e no pro-mini não são todas iguais (o nano e o pro-mini têm alguns pinos em locais diferentes). Esta é uma das inconveniências deste projeto, mas é fácil o suficiente para etiquetar novamente a placa do terminal quando terminar, se desejar.

Raspe cuidadosamente (usando uma Dremel ou faca pequena) a camada fina de epóxi diretamente adjacente aos pinos grandes 9, 10 e 11 (marcados como 'A3', 'A2', 'A1' no terminal nano) (Fig. 2). O revestimento de cobre exposto sob o epóxi é aterrado na pró-miniplaca Arduino. Posteriormente, soldaremos essa seção exposta aos pinos adjacentes, fornecendo, assim, três terminais de parafuso aterrados.

Etapa 3: Instruções de construção

Instruções de construção
Instruções de construção

Corte oito pedaços de fio isolado de calibre 22 com 8 cm de comprimento e descasque cerca de 5 mm de isolamento de uma extremidade e 3 mm da outra extremidade. Recomendamos o uso de fio de núcleo sólido.

Pegue quatro desses fios, dobre uma extremidade 90 graus (a extremidade com 5 mm ou fio exposto) e solde * transversalmente * (ou seja, unindo todos os pinos com solda abundante e fluxo) para os seguintes pontos:

Fio 1: pinos grandes 3, 4 e 5 (identificados como 'RST', '5V', 'A7' no nano terminal). Vamos modificar esses três terminais de parafuso em três terminais VCC (Fig. 3).

Etapa 4: Instruções de construção

Instruções de construção
Instruções de construção

Fio 2: pinos grandes 9, 10 e 11 (identificados como 'A3', 'A2', 'A1' no nano terminal), bem como o revestimento de cobre exposto que foi exposto anteriormente. Use bastante solda. Não se preocupe se parecer bagunçado. Modificaremos esses três terminais de parafuso em três terminais de aterramento (-) (Fig. 4).

Etapa 5: Instruções de construção

Instruções de construção
Instruções de construção

Fio 3: pinos grandes 13, 14 e 15 (identificados como 'REF', '3V3', 'D13' no nano terminal). Modificaremos esses três terminais de parafuso em três terminais A5 SCL para comunicações I2C (Fig. 5).

Etapa 6: Instruções de construção

Instruções de construção
Instruções de construção

Fio 4: pinos grandes 28, 29 e 30 (identificados como 'D10', 'D11', 'D12' no terminal nano). Modificaremos esses três terminais de parafuso em três terminais A4 SDA para comunicações I2C (Fig. 6).

Etapa 7: Instruções de construção

Instruções de construção
Instruções de construção

Solde um fio em cada um dos pequenos (repito - pequenos) pinos 9, 10 e 11 (identificados como 'A3', 'A2', 'A1' no terminal nano) (Fig. 7).

Etapa 8: Instruções de construção

Instruções de construção
Instruções de construção

Solda

o fio restante para o pino grande 22 (identificado como 'D4' no nano terminal) (Fig. 8).

Etapa 9: Instruções de construção

Instruções de construção
Instruções de construção

Solde a extremidade livre de cada fio em seus orifícios correspondentes na blindagem do registrador de dados Deek-Robot (Fig. 9):

pino grande 'RST + 5V + A7' para o orifício do pino 5V

pino grande 'A3 + A2 + A1' no orifício do pino GND

pino pequeno 'A3' no orifício do pino SCK

pino pequeno 'A2' no orifício do pino MISO

pino pequeno 'A1' no orifício do pino MOSI

pino grande 'REF + 3V3 + D13' para o orifício do pino SCL

pino grande 'D10 + D11 + D12' no orifício do pino SDA

e o pino grande 'D4' no orifício do pino CS

Etapa 10: Instruções de construção

Instruções de construção
Instruções de construção

Observe que fornecemos os rótulos nano aqui apenas para facilitar a conexão. Essas etiquetas não corresponderão aos pinos na pró-miniplaca, uma vez que ela seja inserida no terminal de parafuso.

Solde dois fios de 6 cm de comprimento nos orifícios A4 e A5 da parte inferior da pró-miniplaca (Fig. 10).

Etapa 11: Instruções de construção

Instruções de construção
Instruções de construção

Solde os pinos na pró-miniplaca e insira-os no terminal de parafuso completo. Não se esqueça de inserir os fios A5 e A4 nos terminais D12 (A4) e D13 (A5) na placa nano. Lembre-se sempre de que os pinos no Arduino e nas etiquetas dos terminais de parafuso não se alinharão exatamente (as placas pro-mini e nano têm arranjos de pinos diferentes).

Insira uma bateria CR 1220 e um cartão micro-SD na placa de registro. Usamos cartões SD com capacidade inferior a 15 GB, pois tivemos problemas com cartões de capacidade maior. Usamos formatar os cartões para FAT32.

Finalmente, cubra todas as juntas soldadas e prenda todos os fios à placa do terminal com cola quente.

A placa agora está pronta para uso. O quadro completo agora deve ter a seguinte aparência: Fig. 11.

Etapa 12: Configurando o registrador de dados para uso em campo

Configurando o registrador de dados para uso em campo
Configurando o registrador de dados para uso em campo

Para evitar que seu data-logger tombe na caixa do data-logger, além de facilitar o acesso aos pinos de comunicação, recomendamos fazer uma plataforma de estabilização. A plataforma também mantém a eletrônica a pelo menos alguns centímetros do fundo da caixa, em caso de alagamento. Usamos uma folha de acrílico de 1,5 mm e a conectamos ao data-logger com parafusos, porcas e arruelas de 4 mm (Fig. 12).

Etapa 13:

Imagem
Imagem

Usamos sensores de umidade do solo do tipo capacitância I2C de código aberto. Nós os compramos da Catnip Electronics (site abaixo). Eles podem ser adquiridos no Tindie e custam cerca de $ 9US para o modelo padrão e ca $ 22US para o modelo robusto. Usamos a versão robusta em experimentos de campo. Eles são muito robustos e oferecem desempenho semelhante a alternativas comerciais muito mais caras (não colocaremos ninguém na Front Street, mas você provavelmente conhece os suspeitos de sempre).

Sensor Catnip Electronics I2C apresentado neste tutorial:

compre aqui:

Biblioteca arduino:

Biblioteca arduino no Github:

Conecte o fio amarelo do sensor I2C a um dos terminais de parafuso A5. Conecte o fio verde do sensor I2C a um dos terminais A4. Os fios vermelho e preto do sensor vão para o VCC e os terminais de aterramento, respectivamente.

Coloque quatro baterias NiMh carregadas na caixa da bateria. Conecte o fio vermelho (+) ao pino RAW no registrador de dados (ou seja, o pino RAW na mini placa pro) (mas consulte a seção "economia de energia" abaixo). Conecte o fio preto (-) a um dos pinos de aterramento no data-logger.

Para uso em campo de longo prazo, conecte um painel solar de 6 V 1 W ao logger. O painel solar será usado para operar o data-logger e carregar a bateria durante o dia, e funciona mesmo sob céu nublado (embora a neve seja um problema).

Primeiro, solde um diodo Schottky ~ 2A no terminal positivo do painel solar. Isso impedirá que a corrente volte para o painel solar quando não houver radiação solar. Não se esqueça de fazer isso ou você perderá as baterias em pouco tempo.

Anexe o terminal (+) do painel solar (ou seja, o diodo) ao pino RAW no logger (ou seja, o pino RAW no pró-mini) e o terminal (-) do painel solar para um dos aterramentos terminais no logger.

Esta configuração permite que o regulador de voltagem embutido no pro-mini board regule a voltagem proveniente do painel solar e da bateria. Agora… direi que esta não é uma configuração ideal para carregar baterias NiMh (difícil mesmo em condições perfeitas). No entanto, os painéis solares que usamos produzem cerca de 150mA em condições de sol pleno, o que corresponde a cerca de 0,06 C (C = a capacidade da bateria), o que provou ser um método de carregamento simples, seguro e confiável para nossos madeireiros. Eles estão operando dessa forma em campo por até um ano no Colorado. No entanto, consulte a isenção de responsabilidade - nossos loggers não vêm com absolutamente nenhuma garantia ou garantia. Sempre que usar baterias ou painéis solares no campo, você corre o risco de iniciar um incêndio. Tome cuidado. Use este design por sua própria conta e risco!

Proteja o registrador de dados e a bateria em uma caixa à prova de intempéries (Fig. 13).

Etapa 14: Conservação de energia

Freqüentemente, desativamos os LEDs de energia das placas pro-mini e data-logger. Os traços desses LEDs podem ser cortados com cuidado com uma lâmina de barbear (veja o link abaixo). Cada LED consome cerca de 2,5 mA de corrente a 5 V (link abaixo). No entanto, para muitas aplicações, essa quantidade de perda de energia será insignificante e o pesquisador pode simplesmente deixar os LEDs de energia como estão.

www.instructables.com/id/Arduino-low-Proje…

Também rodamos a biblioteca 'LowPower.h' (por 'rocketscream'; link fornecido abaixo), que é muito fácil de usar e reduz significativamente o consumo de energia entre os intervalos de registro.

github.com/rocketscream/Low-Power

Depois de remover os LEDs de energia do pro-mini e da placa de registro de dados e executar a biblioteca LowPower.h (consulte 'código' abaixo), o logger consumirá ca. 1mA de corrente em 5 V durante o sono. Executando três sensores I2C simultaneamente, o registrador no modo de hibernação (entre as iterações de amostragem) consome cerca de 4,5 mA a 5 V e cerca de 80 mA durante a amostragem. No entanto, como a amostragem ocorre muito rapidamente, e com pouca frequência, o consumo de corrente de 80mA não contribui significativamente para o esgotamento da bateria.

Mais energia pode ser economizada quando os painéis solares não são usados conectando o terminal (+) da bateria diretamente ao pino VCC no logger. No entanto, a conexão direta ao VCC, em vez do pino RAW, evita o regulador de tensão integrado, e a corrente para os sensores não será tão constante como seria se tivesse sido direcionada através do regulador. Por exemplo, a tensão diminuirá à medida que a bateria se esgota ao longo de dias e semanas e, em muitos casos, isso resultará em uma variação significativa nas leituras do sensor (dependendo de quais sensores você está usando). Não conecte um painel solar diretamente ao VCC.

Etapa 15: Código

Incluímos dois esboços para executar o data-logger com três sensores de umidade do solo I2C. O primeiro esboço 'logger_sketch' irá amostrar de cada sensor e registrar os dados de capacitância e temperatura para o cartão SD a cada 30 minutos (mas pode ser facilmente alterado pelo usuário). O segundo esboço 'ChangeSoilMoistureSensorI2CAddress' permitirá ao usuário atribuir diferentes endereços I2C a cada um dos sensores para que possam ser usados simultaneamente pelo registrador de dados. Os endereços no 'logger_sketch' podem ser alterados nas linhas 25, 26 e 27. As bibliotecas necessárias para executar o sensor podem ser encontradas no Github.

Recomendado: