Medidor de Ph do Solo usando Sensor de Ph do Solo e Arduino

Tempo de leitura: 8 minutes

Neste projeto, faremos nosso próprio Medidor de Ph do Solo usando o Sensor Ph do Solo e Arduino para a medição do Ph do Solo. Os solos podem ser naturalmente ácidos ou alcalinos e podem ser medidos testando seu valor de pH. O pH do solo é uma medida da acidez ou alcalinidade do solo.

O solo é considerado um meio natural para o crescimento e desenvolvimento das plantas. Muitas pesquisas estão em andamento para determinar os fatores internos de falha na produção da safra dos agricultores. Um dos fatores é o equilíbrio da natureza em solo instável ou não fértil que inibe o crescimento e o desenvolvimento das raízes das plantas. O Ph é a acidez ou basicidade do material medido em uma escala entre 0 e 14. O valor de Ph menor que 7 é considerado ácido e maior que 7 é considerado básico. Se a escala de pH for 7, o material é neutro. As condições de solo mais ideais para o crescimento e desenvolvimento das plantas são solos neutros. No entanto, alguns tipos de plantas ainda são tolerantes a solos com pH levemente ácido com pH máximo de 5.

Além do Ph do solo, o conteúdo de nitrogênio, fósforo e potássio do solo também é útil para o crescimento das plantas. Para a medição do conteúdo NPK, podemos usar o sensor NPK. Mas o Ph do solo é um fator completamente diferente em comparação com o NPK do solo. Já discutimos sobre o sensor de pH da água em um de nossos post anteriores, mas o sensor de pH da água não pode ser usado para medir o pH do solo devido ao fator de construção e limitações. É por isso que precisamos de um Sensor de Ph do solo especial para medir o Ph de um solo.

Enquanto navegava pela internet, encontrei um ótimo sensor de pH fabricado por algum fabricante chinês de P&D. O sensor é fabricado por uma empresa chamada HONDETEC e você pode conferir no Alibaba. O sensor funciona perfeitamente com Modbus RS485 e o resultado é altamente impressionante. Portanto, neste artigo, aprenderemos sobre o sensor de ph do solo e a interface do Arduino e projetaremos nosso próprio medidor de ph do solo do Arduino. Exibiremos o valor de Ph do solo em uma tela OLED de 0,96″.

 

Lista de Materiais

A lista de materiais para fazer seu próprio Medidor de Ph do Solo é fornecida abaixo. Todos os componentes podem ser facilmente adquiridos na Amazon, exceto o sensor de medição de pH do solo.

Nome dos ComponentesDescriçãoQuantidade
1Arduino BoardArduino Nano1
2Sensor de pH do soloSensor de pH do solo1
3OLED Display0.96″ I2C OLED Display1
4Modbus ModuleMAX485 Modbus1
5Power SupplyFonte 5V – 30V DC1
6Fios de ConecçãoFios de Conecção10
7ProtoBoard1

 

Medição do pH do solo e é importante

O que é Ph do solo?

O pH do solo é uma medida da acidez ou alcalinidade do solo. Um valor de pH é, na verdade, uma medida da concentração de íons de hidrogênio. Como a concentração de íons de hidrogênio varia em uma ampla faixa, uma escala logarítmica (pH) é usada

A maioria dos solos tem valores de pH entre 3,5 e 10. Em áreas de maior precipitação, o pH natural dos solos normalmente varia de 5 a 7, enquanto em áreas mais secas a faixa é de 6,5 a 9. Os solos podem ser classificados de acordo com seu valor de pH:

1. 6,5 a 7,5 – neutro
2. acima de 7,5 – alcalino
3. menos de 6,5 – ácidos, e solos com pH inferior a 5,5 são considerados fortemente ácidos

Origens

O pH natural do solo depende da rocha a partir da qual o solo foi formado e dos processos de intemperismo que agiram sobre ela, ou seja, clima, vegetação, topografia e tempo. Esses processos tendem a causar uma redução do pH (aumento da acidez) ao longo do tempo.

A chuva também é considerada um dos fatores significativos para o aumento da acidez do solo. Alguns fertilizantes podem alterar o pH do solo e aumentar ou reduzir o número de nutrientes disponíveis para as plantas.

Efeitos

O pH do solo afeta a quantidade de nutrientes e produtos químicos solúveis na água do solo. Alguns nutrientes estão mais disponíveis em condições ácidas, enquanto outros estão mais disponíveis em condições alcalinas. No entanto, a maioria dos nutrientes minerais estão prontamente disponíveis para as plantas quando o pH do solo é quase neutro.

O desenvolvimento de solos fortemente ácidos pode resultar em baixo crescimento das plantas como resultado da toxicidade de Alumínio e Manganês ou deficiência de cálcio e magnésio. Solos alcalinos podem ter problemas com deficiências de nutrientes como zinco, cobre, boro e manganês.

 

Sensor Ph do Solo

Este é um Sensor Ph do solo à prova d’água e poeira que pode medir o valor do Ph do solo de 3 a 9 com alta precisão de até ± 0,3PH. O sensor tem uma caixa de proteção IP68 e é selado com resina epóxi de alta densidade, que pode impedir a entrada de umidade na parte interna do corpo. O sensor é adequado para cultivo agrícola, produção industrial, monitoramento ambiental, pecuária e tratamento de esgoto.

Especificações

1. Tipo de sonda: eletrodo de sonda
2. Faixa de medição: 3~9 PH
3. Precisão de medição: ±0,3PH
4. Resolução: 0,1 PH
5. Sinal de saída: saída RS485/0-5V/0-10V/4-20mA
6. Tensão de alimentação: 5V~30VDC
7. Faixa de temperatura de trabalho: -30°C~70°C
8. Tempo de estabilização: 5-10 minutos após ligar
9. Velocidade de resposta: ≤15S
10. Cabo padrão de 2 metros
11. Estabilidade de longo prazo: ≤5%/y

 

Pinagem

O Soil Ph Sensor possui 4 pinos, pois precisa ser conectado ao Módulo RS485 ou MAX485. Os quatro fios coloridos são amarelo, azul, preto e marrom.

 

Protocolo de comunicação e endereço de registro

O protocolo de comunicação que utiliza é o Modbus. O dispositivo funciona como um escravo com o endereço do dispositivo conforme mostrado abaixo. Você pode enviar esta instrução ou quadro de consulta e ler PH do solo no endereço do dispositivo 0x01.

Você obterá o quadro de resposta da seguinte maneira. A partir do quadro de resposta, você pode calcular o valor de pH.

A partir da resposta recebida, você pode calcular o valor de pH. O 4º bit (começando do 0º bit) é o valor de Ph. Por exemplo, temos 0047H (hexadecimal) = 71 Decimal => pH = 7,1pH

 

Interface do sensor de ph do solo com Arduino e display OLED

Agora, vamos fazer a interface do Sensor Ph do solo com a placa Arduino Nano usando o módulo Modbus MAX485. O diagrama de conexão é fornecido abaixo.

O pino R0 e DI do Modbus é conectado ao D2 e D3 do Arduino usando o software serial. Da mesma forma, temos que habilitar DE & RE alto, o que é feito conectando-os ao pino D7 e D8 do Arduino. O Sensor NPK possui 4 fios. O marrom é VCC que precisa de uma fonte de alimentação de 5V-30V e pode ser conectado a 5V do Arduino. O pino GND preto precisa ser conectado ao GND do Arduino. O fio azul, que é o pino B, está conectado ao pino B do MAX485 e o fio amarelo, que é o pino A, está conectado ao pino A do MAX485.

O Display OLED SSD1306 de 0,96″ é um Módulo I2C. O display OLED VCC e GND estão conectados a 3,3V e GND do Arduino. Da mesma forma, seus pinos SDA e SCL são conectados ao A4 e A5 do Arduino. Você pode seguir o diagrama de circuito e montar o circuito em uma placa de ensaio ou fazer um PCB de design personalizado.

 

Código Fonte / Programa

O código-fonte para fazer a interface do Sensor Ph do solo com o Arduino e recuperar o valor do Ph do solo do sensor por meio do comando Modbus é fornecido abaixo. Você pode enviar o comando e recuperar o valor em Código HEX. O código HEX precisa ser convertido em decimal para obter os dados de conteúdo de Ph do solo medido.

Como estamos usando o display OLED para exibição, você precisará da Biblioteca OLED. Baixe a seguinte Biblioteca OLED e adicione-a ao Arduino IDE.
1. Biblioteca Adafruit SSD1306: Download
2. Biblioteca Adafruit GFX: Download

Aqui está o código-fonte completo. Compile e faça upload para a placa Arduino Nano.

#include <SoftwareSerial.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
 
#define RE 8
#define DE 7
 
const byte ph[] = {0x01, 0x03, 0x00, 0x00, 0x00, 0x01, 0x84, 0x0A};
byte values[11];
SoftwareSerial mod(2, 3);
 
#define SCREEN_WIDTH 128  // Largura da tela OLED, em pixels
#define SCREEN_HEIGHT 64  // Altura da tela OLED, em pixels
#define OLED_RESET    -1  // Redefina o pino nº (ou -1 se estiver compartilhando o pino de redefinição)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
 
 
void setup()
{
  Serial.begin(9600);
  mod.begin(4800);
  pinMode(RE, OUTPUT);
  pinMode(DE, OUTPUT);
  if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C))
  {
    Serial.println(F("SSD1306 allocation failed"));
    for (;;); // Não continue, faça um loop para sempre
  }
  display.display();
  delay(100);
  display.clearDisplay();
 
  display.clearDisplay();
  display.setTextColor(WHITE);
  display.setTextSize(2);
  display.setCursor(20, 20);
  display.print("PH Meter");
  display.display();
  delay(3000);
}
 
void loop()
{
  byte val;
  digitalWrite(DE, HIGH);
  digitalWrite(RE, HIGH);
  delay(10);
  if (mod.write(ph, sizeof(ph)) == 8)
  {
    digitalWrite(DE, LOW);
    digitalWrite(RE, LOW);
    for (byte i = 0; i < 11; i++)
    {
      values[i] = mod.read();
      Serial.print(values[i], HEX);
    }
    Serial.println();
  }
  float soil_ph = float(values[4]) / 10;
  Serial.print("Soil Ph: ");
  Serial.println(soil_ph, 1);
 
  display.clearDisplay();
  display.setTextSize(2);
  display.setCursor(20,0);
  display.println("Ph Value");
 
  display.setTextSize(3);
  display.setCursor(35,30);
  display.print(soil_ph, 1);
 
  display.display();
  
  delay(3000);
}

 

Teste e monitoramento de dados de ph do solo em display OLED

Assim que o código for carregado, o OLED será inicializado junto com o sensor. O sensor levará algum tempo para se estabilizar e a leitura pode ficar incorreta por alguns segundos inicialmente.

Assim que o sensor se estabilizar, você está pronto para começar. O sensor quando exposto ao ar dá 7.0 como um Ph que pode ser observado em um display OLED.

Portanto, é assim que você faz a interface do sensor de medição de ph do solo com o Arduino e obtém a leitura de pH. Da mesma forma, coloque o sensor em diferentes amostras de solo. Você verá uma variação no valor de pH dependendo do tipo de solo. O valor aumenta ou diminui como um Sensor Analógico de Ph do Solo e também pode ser usado como Sensor de Ph do Solo IoT.