Índice:

Solo úmido com nó: 7 etapas
Solo úmido com nó: 7 etapas

Vídeo: Solo úmido com nó: 7 etapas

Vídeo: Solo úmido com nó: 7 etapas
Vídeo: Mecânica dos solos 1 - Aula007 - Cálculo da massa seca a partir da massa úmida 2024, Novembro
Anonim
Image
Image
Solo úmido com nó
Solo úmido com nó
Solo úmido com nó
Solo úmido com nó
Solo úmido com nó
Solo úmido com nó

Neste manual, mostrarei como fazer um sensor de solo homade para o sistema de saúde do jardim. Vou mostrar o que você precisa, dar alguns exemplos de código e como implementar o código.

Ao final das instruções você saberá como mudar a cor de uma tira de led quando o solo estiver úmido, um pouco úmido ou seco.

Neste manual, usarei:

  • Arduino versão 1.8.9
  • A biblioteca Adafruit_NeoPixel.h

Suprimentos

Você vai precisar de:

  • NodeMCU 1.0 (módulo ESP-12E)
  • 1 cabo fêmea para fêmea
  • Uma tira de LED
  • (Opcional) Sensor de solo Homade (assista ao vídeo acima até 00h36)

Etapa 1: configuração

Configurar
Configurar
Configurar
Configurar
Configurar
Configurar
Configurar
Configurar
  • Pegue seu nó e seu sensor de solo.
  • Conecte o sensor de solo a A0. (Foto 1) (como alternativa, pegue um cabo fêmea e conecte-o a A0 (Foto 3)

Pegue sua faixa de LED e coloque GND em G, 5V em 3V e o cabo do meio em D5. (Foto 2)

Agora será parecido com a última foto.

Etapa 2: adicionar código para sensor de solo

Adicionando Código para Sensor de Solo
Adicionando Código para Sensor de Solo
  • Faça um novo projeto no IDE do arduino
  • Passado no seguinte código:

/ * Entrada analógica, saída analógica, saída serial

Lê um pino de entrada analógica, mapeia o resultado em uma faixa de 0 a 255 e usa o resultado para definir a modulação de largura de pulso (PWM) de um pino de saída. Também imprime os resultados no Monitor serial.

O circuito: - potenciômetro conectado ao pino analógico 0. O pino central do potenciômetro vai para o pino analógico. pinos laterais do potenciômetro vão para + 5V e aterramento - LED conectado do pino digital 9 ao aterramento

criado em 29 de dezembro de 2008, modificado em 9 de abril de 2012 por Tom Igoe

Este código de exemplo é de domínio público.

www.arduino.cc/en/Tutorial/AnalogInOutSeri… *

/ Essas constantes não mudam. Eles são usados para dar nomes aos pinos usados: const int analogInPin = A0; // Pino de entrada analógica ao qual o potenciômetro está conectado const int analogOutPin = D5; // Pino de saída analógica ao qual o LED está conectado

int sensorValue = 0; // valor lido do pote

void setup () {// inicializa as comunicações seriais a 9600 bps: Serial.begin (9600); }

void loop () {// lê o valor analógico: sensorValue = analogRead (analogInPin);

// imprime os resultados no Monitor Serial: Serial.print ("sensor ="); Serial.print (sensorValue); Serial.print ("\ n"); // Serial.println (outputValue);

// espera 1 milissegundo antes do próximo loop para o conversor analógico para digital // estabilizar após a última leitura: delay (1000); }

Agora você pode verificar se o seu sensor fornece um valor.

Toque na extremidade do parafuso ou do cabo e você verá algo como a foto 1

Se não funcionar, verifique seus cabos. Eles estão conectados corretamente?

Etapa 3: Biblioteca Neopixel

Biblioteca Neopixel
Biblioteca Neopixel
  • Baixe a biblioteca adafruit_neopixel (se ainda não o fez).

    • Vá para ferramentas> gerenciar liberários
    • pesquisar por adafruit neopixel foto 1
    • Instale a versão 1.2.5

Etapa 4: configuração do código neopixel

  • Adicione o seguinte no topo do seu projeto

    • #incluir
    • #incluir
    • #include "Adafruit_NeoPixel.h"
  • Abaixo disso:

char ssid = "SSID"; // seu SSID de rede (nome)

senha do char = "senha"; // sua senha de rede

E abaixo disso

# define PIXEL_PIN D5 # define PIXEL_COUNT 30 // altera a forma como os leds estão em sua tira

#define PIXEL_TYPE NEO_GRB + NEO_KHZ800

Adafruit_NeoPixel pixels = Adafruit_NeoPixel (PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);

Etapa 5: configuração de anulação

Coloque o seguinte código na configuração voide ()

pixels.begin (); // INITIALIZE NeoPixel strip object (REQUIRED) pixels.show (); // DESLIGUE todos os pixels o mais rápido possível

pixels.setBrightness (50); // deve estar entre 0 e 255 se você quiser que a faixa de led seja mais brilhante você pode aumentar o número

Etapa 6: Void Loop

No loop vazio () e abaixo do atraso (1000); digite o seguinte código

if (sensorValue == 0 || sensorValue <= 200) {

para (int i = 0; i

pixels.setPixelColor (i, 255, 0, 0);

pixels.show ();

}

} else if (sensorValue> 200 || sensorValue <= 500) {

para (int i = 0; i

pixels.setPixelColor (i, 0, 255, 0);

pixels.show ();

}

} else if (sensorValue> 500) {

para (int i = 0; i

pixels.setPixelColor (i, 0, 0, 255);

pixels.show ();

}

}

}

Etapa 7: Verificar

Verificar
Verificar
Verificar
Verificar

Parabéns! Você acabou de fazer um sistema que pode indicar se o solo está úmido ou seco.

Agora, quando você colocar o sensor em solo úmido, o LED ficará verde e quando estiver em solo seco ficará vermelho. Como nas fotos acima.

Recomendado: