Quando você vai a algum lugar distante por um certo período de tempo? Não há ninguém para regar suas flores internas, então você precisa pedir ajuda aos seus vizinhos, que, por sua vez, podem ser negligentes quanto a isso. Como resultado, com a sua chegada, as plantas vão se sentir mal. Para evitar que isso aconteça, você pode fazer um sistema de irrigação automático. Para isso, precisamos de um Arduino e um sensor de umidade do solo. No artigo, consideraremos um exemplo de conexão e trabalho com o sensor FC-28. Ele provou seu lado positivo, com a ajuda de milhares de projetos criados.
Sobre FC-28
Há uma grande variedade de sensores para determinar a umidade da terra, mas o mais popular é o modelo FC-28. Tem um preço baixo, devido ao qual é amplamente utilizado por todos os radioamadores em seus projetos. Sensor de umidade do solo com Arduino é usado. Ele tem duas sondas que conduzem corrente elétrica através do solo. Acontece que, se o solo estiver molhado, a resistência entre as sondas será menor. Com solo seco, respectivamente, a resistência é maior. O Arduino aceita esses valores, compara e, se necessário, liga, por exemplo, uma bomba. O sensor é capaz de trabalhar com os modos digital e analógico, consideraremos as duas opções de conexão. O FC-28 é usado principalmente em pequenos projetos, por exemplo, ao regar automaticamente uma planta em particular, pois é inconveniente usá-lo em grande escala devido ao seu tamanho e desvantagens, que também serão consideradas.
Onde comprar
O fato é que nas lojas russas os sensores para trabalhar com Arduino são relativamente caros. O preço médio deste sensor na Rússia varia de 200 a 300 rublos, enquanto no Aliexpress o mesmo sensor custa apenas 30-50. A marcação é enorme. Claro, você ainda pode fazer um sensor para medir a umidade do solo com suas próprias mãos, mas mais sobre isso abaixo.
Sobre a conexão
Conectar o sensor de umidade ao Arduino é muito fácil. Vem com comparador e potenciômetro para ajuste da sensibilidade do sensor, bem como para ajuste do valor limite quando conectado através de uma saída digital. O sinal de saída, conforme mencionado acima, pode ser digital e analógico.
Conexão com saída digital
Conectado quase da mesma maneira que analógico:
- VCC - 5V no Arduino.
- D0 - D8 na placa Arduino.
- GND -terra.
Como mencionado acima, um comparador e um potenciômetro estão localizados no módulo do sensor. Tudo funciona da seguinte forma: usando um potenciômetro, definimos o valor limite do nosso sensor. O FC-28 compara o valor com o limite e então envia o valor para o Arduino. Digamos que os valores do sensor estejam acima do limite, nesse caso o sensor de umidade do solo no Arduino transmite 5V, se menos - 0V. Tudo é muito simples, mas o modo analógico tem valores mais precisos, por isso é recomendável usá-lo.
O diagrama de fiação se parece com a foto acima. caminho
O código de programação para Arduino ao usar o modo digital é mostrado abaixo.
int led_pin=13; int sensor_pin=8; void setup() { pinMode(led_pin, OUTPUT); pinMode(sensor_pin, INPUT); } void loop() { if(digitalRead(sensor_pin)==HIGH){ digitalWrite(led_pin, HIGH); } else { digitalWrite(led_pin, LOW); atraso(1000); } }
O que nosso código faz? Primeiramente, foram identificadas duas variáveis. A primeira variável - led_pin - serve para designar o LED e a segunda - para designar o sensor de umidade do solo. Em seguida, declaramos o pino do LED como saída e o pino do sensor como entrada. Isso é necessário para que possamos obter os valores e, se necessário, acender o LED para ver visualmente que os valores do sensor estão acima do limite. No loop, lemos os valores do sensor. Se o valor for superior ao limite, acenda o LED, se for inferior, desligue-o. Em vez de um LEDtalvez uma bomba, tudo depende de você.
Modo analógico
Para conectar usando a saída analógica, você precisa trabalhar com A0. O sensor capacitivo de umidade do solo no Arduino assume valores de 0 a 1023. Conecte o sensor da seguinte forma:
- VCC conecte 5V ao Arduino.
- GND no sensor está conectado ao GND na placa Arduino.
- A0 conecte a A0 no Arduino.
Em seguida, escreva o código abaixo no Arduino.
int sensor_pin=A0; int valor_saída; void setup() { Serial.begin(9600); Serial.println("Lendo o sensor"); atraso(2000); } void loop() { output_value=analogRead(sensor_pin); valor_saída=map(valor_saída, 550, 0, 0, 100); Serial.print("Umidade"); Serial.print(valor_saída); Serial.println("%"); atraso(1000); }
Então o que esse código faz? O primeiro passo foi definir as variáveis. A primeira variável é necessária para determinar o contato do sensor e a outra armazenará os resultados que receberemos usando o sensor. Em seguida, lemos os dados. No loop, escrevemos os valores do sensor para a variável output_value que criamos. Em seguida, a porcentagem de umidade do solo é calculada, após a qual os exibimos no monitor da porta. O diagrama de fiação é mostrado abaixo.
DIY
Foi discutido acima como conectar o sensor de umidade do solo ao Arduino. O problema com esses sensores é que eles são de curta duração. O fato é que eles são muito propensos acorrosão. Algumas empresas fazem sensores com um revestimento especial para aumentar a vida útil, mas ainda não é a mesma coisa. Também é considerada a opção de usar o sensor não com frequência, mas apenas quando necessário. Por exemplo, existe um código de programa onde a cada segundo o sensor lê os valores de umidade do solo. Você pode prolongar a vida útil se ligá-lo, por exemplo, uma vez por dia. Mas se isso não combina com você, você pode fazer um sensor de umidade do solo com suas próprias mãos. O Arduino não sentirá a diferença. Basicamente, o sistema é o mesmo. Simplesmente, em vez de dois sensores, você pode colocar o seu próprio e usar um material menos suscetível à corrosão. Idealmente, é claro, use ouro, mas, dado seu preço, sairá muito caro. Em geral, é mais barato comprar, dado o preço do FC-28.
Prós e contras
O artigo discutiu as opções para conectar um sensor de umidade do solo ao Arduino, e também foram apresentados exemplos de código de programa. O FC-28 é um sensor de umidade do solo muito bom, mas quais são os prós e contras específicos deste sensor?
Prós:
- Preço. Este sensor tem um preço muito baixo, pelo que cada radioamador poderá comprar e construir o seu próprio sistema de rega automática para as plantas. Obviamente, ao trabalhar com grandes escalas, esse sensor não é adequado, mas não se destina a isso. Se você precisar de um sensor mais potente - SM2802B, terá que pagar uma quantia bastante grande por ele.
- Simplicidade. Dominar o trabalho com este sensor de umidade do solo no Arduino podecada. Apenas alguns fios, algumas linhas de código - e é isso. Controle de umidade do solo feito.
Contras: