Vai al contenuto
PLC Forum


arduino lettura umidità terreno


lga83

Messaggi consigliati

salve, ho realizzato un sensore che mi rileva umidità inserendo la sonda mod(YL-38 + YL-69) sul terreno e visualizzare il valore su lcd 12x2,il tutto gestito con arduino uno, onestamente lo sketch l'ho preso girando su internet funziona tutto bene, il mio problema e che i valori di lettura sono invertiti nel senso che se lascio la sonda fuori dalla terra mi porta il valore massiomo circa (220.30%) poi quando vado a inserirlo nella terra scende di percentualefino ad arrivare a zero, che funzione utilizzare per poter invertire questi valori?
posto lo sketch..

    #include <Wire.h>
        #include <LiquidCrystal_I2C.h>

        LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
        int sensor ;
       float umidity;
       void setup() {

        lcd.begin(16,2);
       lcd.print("     LGA83"); // scritta iniziale
        lcd.setCursor(0,1);
        lcd.print(" rilevatote umidità"); // Scritta Iniziale
        delay(10000);

        lcd.clear();
        lcd.setCursor(0,0);

        }

        void loop() {
        lcd.print("Umidita Rilevata");
        lcd.setCursor(5,1);

        sensor = analogRead (A3);            // Lettura dati da Sensore
      umidity = ((float)sensor * 100) / 430; // Limite massimo da test sensore in un bicchiere d'acqua pieno + limite di volt massimi del sensore

        lcd.print(umidity);
        lcd.print("%");

        delay(1500);
        lcd.clear();
        }

 

Link al commento
Condividi su altri siti


Son cose che capitano quando si copia pedissequamente un qualche cosa.:)

 

La variabile sensor potrà variare tra 0 e 1024, con 1024 quando la tensione d'ingresso è pari alla tensione di alimentazione di arduino (circa 5V).

metti il sensore nel bicchiere d'acqua come da commento del tuo programma.

umidity = ((float)sensor * 100) / 430; // Limite massimo da test sensore in un bicchiere d'acqua pieno + limite di volt massimi del sensore

 

In questa condizione il valore della variabile sensor equivale a l 100% di umidità, inserisci un ariga di "print" sulla seriale e leggi questo valore, poi ti regoli di conseguenza variando le costanti.

per avere l'altro estremo della scala, estrai il sensore, lo asciughi delicatamente con un phon e ripeti la misura così avrai i due valori estremi.

 

PS non puoi mettere il link al foglio tecnico del sensore? Così posso vedere i dati del sensore e, magari, ti do un consiglio più mirato.

 

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...