Medidor de Ph do Solo usando Sensor de Ph do Solo e Arduino
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″.
Conteudo
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 Componentes | Descrição | Quantidade | |
---|---|---|---|
1 | Arduino Board | Arduino Nano | 1 |
2 | Sensor de pH do solo | Sensor de pH do solo | 1 |
3 | OLED Display | 0.96″ I2C OLED Display | 1 |
4 | Modbus Module | MAX485 Modbus | 1 |
5 | Power Supply | Fonte 5V – 30V DC | 1 |
6 | Fios de Conecção | Fios de Conecção | 10 |
7 | ProtoBoard | – | 1 |
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.
Olá bom.
Como está a calibração do sensor, esse para PH e NPK, você conseguiu verificar com um laboratório, tem uma estimativa?
Muito obrigado.
Saudações
Este artigo não foi 100% testado por min, apenas traduzi e pretendo no futuro fazer um parecido com equipamento que irei comprar.
Olá muto obrigado pela visão, saberia de algum código para o sensor NPK (7 em 1)?
Vc precisa ler o sensor de RS485, pois ele transmite atraves de RS486, ai vc pega linha a linha, não achei nada especifico para ele. pois precisa do conversor RS485 para Arduino.