Sensore d’umidità terreno

Share

Ecco un esempio di codice Arduino per utilizzare un sensore di umidità del terreno. Questo codice utilizza un sensore di umidità del terreno analogico collegato a un pin analogico dell’Arduino.

// Definisci il pin a cui è collegato il sensore di umidità
const int pinSensoreUmidita = A0;

void setup() {
  Serial.begin(9600); // Inizializza la comunicazione seriale
}

void loop() {
  // Leggi il valore analogico dal sensore di umidità
  int valoreLettura = analogRead(pinSensoreUmidita);

  // Converte il valore letto in percentuale di umidità
  float percentualeUmidita = mappa(valoreLettura, 0, 1023, 0, 100);

  // Stampa la lettura di umidità
  Serial.print("Umidita del terreno: ");
  Serial.print(percentualeUmidita);
  Serial.println("%");

  delay(1000); // Attendi un secondo prima di effettuare una nuova lettura
}

// Funzione di mappatura personalizzata per convertire il valore analogico in percentuale
float mappa(float x, float inMin, float inMax, float outMin, float outMax) {
  return (x - inMin) * (outMax - outMin) / (inMax - inMin) + outMin;
}

Assicurati di collegare il pin del sensore di umidità del terreno al pin analogico corretto sull’Arduino (nel codice sopra, è A0).

Questo codice legge il valore analogico dal sensore di umidità del terreno, lo converte in percentuale di umidità e lo stampa sulla porta seriale ogni secondo. Puoi utilizzare il monitor seriale dell’IDE di Arduino (Baud rate: 9600) per visualizzare le letture di umidità del terreno.

Tieni presente che i valori letti dal sensore di umidità del terreno possono variare a seconda del tipo di sensore utilizzato e delle condizioni ambientali. Potresti dover calibrare il sensore in base al tuo ambiente specifico.