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.