Sari la conținut
ELFORUM - Forumul electronistilor

Calcul umiditate


Gilbert Sparios

Postări Recomandate

Bazat pe constanta dielectrica, va rog priviti codul de mai jos.

int moistPin = A0;
int moistVal = 0;

void setup()
{
  Serial.begin(9600);
}
void loop()
{
  moistVal = analogRead(moistPin);
  int percent = 2.718282 * 2.718282 * (.008985 * moistVal + 0.207762); //calculate percent for probes about 1 - 1.5 inches apart
  Serial.print(percent);
  Serial.println("% Moisture ");
  delay(250);
}

codul cica ar merge pentru o distanta intre electrozi de 2.54cm ... 38.0mm , eu as vrea sa modific la 13.0mm intre electrozi.

Ce naiba inseamna valorile astea de acolo ?

Inteleg ca 2.718282 e o constanta matematica dar restul ?

 

Sunt convins ca toată lumea știe, doar eu nu..dar poate cineva se indura sa-mi explice, ca de cautat am cautat de m-am saturat. Si-am gasit decat acest cod la nesfarsit in mici variante schimbate. Dar nimeni...nimic, despre ce inseamna: "0.008985, 0.207762" in fapt, nu am gasit nici o informatie.

Multumesc pentru atentie.

Editat de Gilbert Sparios
Link spre comentariu
  • Răspunsuri 24
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

Top autori în acest subiect

Imagini postate

Formula este dedusa experimental, asa explica autorul millerman4487 in comentariile la postarea asta:

https://create.arduino.cc/projecthub/millerman4487/diy-plant-moisture-sensor-474543

 

Senzorul  are probleme legate de coroziune si continutul de saruri din apa si sol.

 

Daca vrei o abordare serioasa incearca un senzor capacitiv cu electrozi izolati.

In materialul de mai jos pe langa teorie gasesti in linkurile din text detalii constructive, schema electronica si metode de calibrare.

Am avut intentia sa-l incerc dar l-am abandonat, poate tu ai mai multa rabdare:

 

http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0100-69162011000200006

Link spre comentariu

am tot citit cum se usca pamantul in cuptor, dar nu am reușit sa ajung la vreo schema sau ceva.. 

mai caut dar.. cu engleza mea.. 

iar unele link-uri erau in spaniola cred.. 

 

legat de senzori distruși in pamant. am vazut. dat eu am avut la bunică o sapa cu coada de crom. a stat 5 ani in pământ, afara pe post de susținere la o planta pusa de bunică. zilele trecute am scos-o sa vad ce e cu ea, pentru ca eu m-am orientat si am facut senzorul cu electrozi din crom. 

 

surprinzător sau nu, sapa cu coada de crom nu a avut nimic spre absolut. am dat un pic de apa pe ea, si a fost impecabil pentru un metal care a stat in pământ 5 ani, si pământul la ea e plin de îngrășământ. 

 

ma mulțumesc cu atat. nici eu se pare ca nu am răbdare sa ajung la capacitiv.. 

o alternativa la crom, poate chiar mai buna, se poate sa fie carbonul grafitat. 

Editat de Gilbert Sparios
Link spre comentariu

Mi se pare ca senzorul asta de umiditate este de fapt o punte divizoare de tensiune. Pentru a elimina problemele legate de coroziune, poate ca ar fi bine ca senzorul sa nu fie alimentat tot timpul, ci doar cand se face citirea, prin intermediul unui pin digital si a unui BC547.

Despre constantele alea, se determina experimental, cum spunea si colegul @digix, dar daca nu doresti sa stii exact umiditatea din sol poti stabili singur valoarea prag de la care se considera solul uscat, prin incercari.

Carbonul grafitat (o mina de creion, la indemana) iti baga niste rezistente in plus pe senzor (am masurat la 9 cm vreo 10 Ohmi), nu mare lucru, dar este cam fragil...

Link spre comentariu

Ar fi interesant să ne spui şi a cui umiditate vrei s-o măsori de fapt, că până acum se fac doar speculaţii....nu ai precizat dacă vrei să măsori umiditatea aerului, lemnului sau pământului.Că metodele diferă de la caz la caz....pentru aer există senzori dedicaţi, pentru lemn sunt electrozi nichelaţi sau cromaţi între care se determină conductivitatea, iar pentru sol se practică tot cu electrozi, dar alimentaţi preferabil în curent alternativ ca să nu se creeze electroliză, plus că se poate folosi citirea în impulsuri tot în acelaşi scop.

Link spre comentariu
1 oră în urmă, Gilbert Sparios a spus:

o sapa cu coada de crom. a stat 5 ani in pământ,

Prin sapa nu trecea curent, ce motiv ar avea sa se consume?

Problema la electrozi apare cand prin ei trece curent continuu, de aia aplicatiile mai pricepute folosesc senzorii aia cu curent alternativ.

Cel putin asa am inteles eu (la un moment dat, cand ma batea gandul sa fac udatori pentru plante).

 

LE A scris si Vali acelasi lucru (referitor la curentul alaternativ).

Editat de Liviu M
Link spre comentariu

Constanta dielectrica a apei lichide este foarte mare, cca. 80 pana la 5 MHZ, spre deosebire de materialele uscate care au de obicei 1 - 2. Apa isi pierde constanta dielectrica mare peste 10 MHz sau daca ingheata.

Masurarea umiditatii unui material se reduce la masurarea cantitatii de apa aflata in campul electric dintre doi electrozi. Intre umiditate si capacitatea dintre electrozi este o relatie liniara, indiferent de forma sau materialul electrozilor. Electrozii pot fi si corodati, daca isi pastreaza geometria.

Practic trebuie facut un capacimetru, o pereche de electrozi si o etalonare in doua puncte (capacitatea materialului perfect uscat si capacitatea cu materialul amestecat cu N% in greutate apa).

Masurarea capacitatii este bine sa se faca cu un semnal sinusoidal, dar merge destul de bine si cu semnal dreptungiular simetric. Exclus cu impulsuri.

 

Link spre comentariu
Acum 7 ore, Gilbert Sparios a spus:

nu am reușit sa ajung la vreo schema sau ceva... mai caut dar.. cu engleza mea...

 

In linkul oferit de @digix totul este extrem de simplu si bine explicat. Schema puntii cu AO este simplificata la maxim iar PWM-ul de la intrare il obtii de la un generator cu 555 care are preferabil factor de umplere variabil. Traductorul are tijele acoperite cu varnish iar capatul cu legaturile la cablu il inglobezi intr-o rasina epoxi bicomponenta sau chiar poxilina. Am realizat de multe ori traductoare imersate in lichide si nu am avut probleme cu izolatia in matrice epoxi.

s4.png

Link spre comentariu
Acum 12 ore, validae a spus:

Ar fi interesant să ne spui şi a cui umiditate vrei s-o măsori de fapt, că până acum se fac doar speculaţii....nu ai precizat dacă vrei să măsori umiditatea aerului, lemnului sau pământului.Că metodele diferă de la caz la caz....pentru aer există senzori dedicaţi, pentru lemn sunt electrozi nichelaţi sau cromaţi între care se determină conductivitatea, iar pentru sol se practică tot cu electrozi, dar alimentaţi preferabil în curent alternativ ca să nu se creeze electroliză, plus că se poate folosi citirea în impulsuri tot în acelaşi scop.

 

pai..am alimentat senzorul doar la nevoie. citiri o data pe secunda, 5V 0.5mA. nu cred sa faca atata electroliza..

citeam undeva ..pareri total diferite. cum ca tensiunea/curentul, AC/DC are un factor infim de coroziune comparativ cu aciditatea din sol. Dar mna..dac ma luam dupa parerea lor, cumparam produsul ce il vand ei ;) 

 

adevarat ca capacitiv e superior din pctdv al fiabilitatii. dar nu ma pricep sa--l fac..

schema de mai sus nu ma ajuta daca e incompleta..

 

pentru pamant imi trebuie @validae

nu ma pot hotari, cum sa fac citirea. imediat dupa aplicarea tensiunii sau sa astept putin.

citirile difera , in 500ms fata de 5ms de la aplicare. sunt stabile abia dupa cam o secunda.si nu are legatura cu uC. pentru ca daca-i dau reset la uc dar tensiunea a ramas pe electrozi incepe exact cum a ramas ADC. poate fac request la 5Secunde, sa-i dau o secunda solului sa-si faca de cap cu amperu`.

nu stiu ce proces intervine, cel mai probabil o electrolixa anemica.

 

oricum, raman la o banala rezistenta de masa, nici macar nu mi-a placut cum se fac "citirile" printr-un tranistor. foarte instabile.

Editat de Gilbert Sparios
Link spre comentariu

am citit adineauri ce-am scris, nici eu n-am inteles.

vroiam sa obtin o mostra de sol la umiditate 30% ca sa fac etalonare senzor, din 55grame sol si nu stiam cata apa sa pun.

trebuiau ~24ml apa.

 

Nu doresc sa mai deschis un alt topic, cu toate ca nu e chiar pentru ramura curenta, dar rog pe cei care au folosit senzorul ala banal "Higrometru sol" sa-mi spuna daca au avut aceasta problema. folosesc de exemplu codul simplu pentru a citi un sol umezit in prealabil in mod calculat la 30% senzorul fix si lasat peste noapte nemiscat: 

#define SensorPin A0
#define Enable_Sensor 2 // comanda tranzistor PNP
#define ENABLE 0
#define DISABLE 1

float sensorValue = 0; 
void setup() { 
 Serial.begin(9600);
 pinMode(Enable_Sensor,OUTPUT);
 digitalWrite(Enable_Sensor,DISABLE);
} 
void loop() { 
 digitalWrite(Enable_Sensor,ENABLE);
 delay(100UL);
 for (int i = 0; i <= 100; i++) 
 { 
   sensorValue = sensorValue + analogRead(SensorPin); 
   delay(1); 
 } 
 digitalWrite(Enable_Sensor,DISABLE);                        
 sensorValue = sensorValue/100.0; 
 Serial.println(sensorValue); 
 delay(1000); 
} 

iar rezultatul citirilor este ceva de forma

soil-moisture-tutorial-results_amyX27CnP

 

 usor observabil ca rezultatul e schimbator la fiecare citire cate o unitate (fara virgula).

 si o tine tot asa minute bune, peste 40. pana ajunge undeva unde se stabilizeaza.

 daca intrerup alimentarea senzorului, o vreme (1-2 minute) apoi pun inapoi tensiune, citirile reiau ciclul de sus adica se repeta imaginea de mai sus, sa zicem. daca micsorez timpul de 1 secunda in functia loop() la sa spunem 200UL, scaderea/cresterea se intampla mai repede, dar tot se intampla la fiecare citire, pana ajunge la pragul in care se stabilizeaza.

 

iar eu nu prea inteleg de ce se intampla asta. curentul intre electrozi este de 30uA, iar ca durata..se vede din sketch-ul de mai sus...

sa fie vorba de o oarecare electroliza la fiecare impuls...sau ce explicatie ar fi oare..de prevenit nici nu ma gandesc sa intreb.

 

as dori mai mult sa stiu daca acest lucru s-a observat si de alte persoane de aici care au incercat acest tip de senzor.

 

Mentiune: in apa, nu se intampla asa ceva. Nici macar cu adaos de sare.

Editat de Gilbert Sparios
Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări