Descrición:
Imos usar o sensor Soilwatch10 (pino-tech) que permite medir o contido relativo de auga no chan.
Semella un condensador onde as placas están formadas por pistas de cobre na placa do circuíto e o medio circundante (o solo) é o material dieléctrico, producíndose un campo eléctrico entre a placa positiva e negativa en función da permitividade eléctrica do solo. Os factores que afecta a este valor non son unicamente o contido de auga do solo, senón tamén a temperatura, porosidade, tipo de minerais, etc.
Montaxe:
Este sensor conéctase nun pin analóxico que mide a saída de voltaxe no sensor, que variará segundo a permitividade eléctrica do solo, que está relacionada co contido de auga.
Fíxate na serigrafía e conecta VCC, GND e o pin de datos ao pin analóxico A0.
Programa:
O primeiro que temos que facer é calibrar o sensor vendo os valores que dá cando está completamente seco (minSolo) e completamente somerxido en auga (maxSolo). No programa calcularemos a saída en % utilizando a función map.
// Declaración de variables: const int PinSolo = A0; // Pin analóxico no que conectamos o sensor int minSolo = 7; // substitúe pola túa medición no aire int maxSolo = 660; // substitúe pola túa medición completamente somerxido bool is1V1Output = false; // poñer "true" se é un sensor con saída de 1.1V e "false"para un sensor de 3V int medidaSolo; // variable da saída do convertedor analóxico dixital do sensor de auga no solo int augaSolo; // contido de auga no solo a partir do valor de saída mínimo en aire e máximo en auga // Configuración: void setup() { Serial.begin(9600); // Iniciamos a comunicación serie // Isto non o imos usar nós, pois é para o caso de que o sensor sexa de 1.1V if(is1V1Output == true){ analogReference(INTERNAL); //set ADC reference to internal 1.1V } } // Programa: void loop() { medidaSolo = analogRead(PinSolo); // Lectura analóxica no pin A0 augaSolo = map(medidaSolo,minSolo,maxSolo, 0, 100); // Calculamos a porcentaxe de auga Serial.print("Medida= " ); // Imprimimos na consola Serial.print(medidaSolo); Serial.print(" - " ); Serial.print("auga= " ); Serial.print(augaSolo); Serial.println("%" ); delay(500); // tempo de agarda entre medicións }
Propostas:
- Imos regar unha planta cando o % de humidade do solo sexa menor que un 20%. Deberá activarse unha bomba de auga mediante un relé que regue a maceta que funcionará ata que a humidade do solo alcance o 50%.