Turinys:
- Prekės:
- 1 žingsnis: Medžiagos
- 2 žingsnis: Arduino + temperatūros nustatymas
- 3 žingsnis: Drėgmės jutiklio prijungimas
- 4 veiksmas: kodo nustatymas !!!
Paprastas temperatūros jutiklis, naudojant vieną LM35 tikslumo temperatūros jutiklį, drėgmės jutiklį ir Arduino, kad galėtumėte prisijungti prie būsimų projektų. Grandinė siunčia serijinę informaciją apie temperatūrą ir drėgmę, kad galėtumėte naudotis kompiuteryje. Aš paėmiau duomenis iš komposto. Projektas yra susijęs su esamu gaminio kasdieniu sąvartynu, kuriuo kiekvienas gali namuose paversti virtuvės atliekas į kompostą. Daugiau informacijos apie gaminį rasite http://www.dailydump.org/content/. „Digicompost“ rodo pokyčius (temp, drėgmės pokyčius) viduje sąvartyne
Prekės:
1 žingsnis: Medžiagos
- Arduino (galite naudoti kitą mikrokontrolerį, bet tada reikės pakeisti kodą).
- LM35 tikslumo centimetras Temperatūros jutiklis, galite gauti iš bet kurios elektroninės parduotuvės. Čia yra DUOMENŲ LAPAS.
- Bandomoji Lenta.
- Drėgmės jutiklis.
- Laidai.
2 žingsnis: Arduino + temperatūros nustatymas
„Arduino“ yra atviro kodo elektronikos prototipų kūrimo platforma, pagrįsta lanksčia, lengvai naudojama aparatine ir programine įranga. Jis skirtas menininkams, dizaineriams, mėgėjams ir visiems, norintiems kurti interaktyvius objektus ar aplinką. Norėdami gauti daugiau informacijos, prisijunkite (http://www.arduino.cc)
Temperatūros jutiklio prijungimas:
LM35 turi tris kojas ir atrodo kaip tranzistorius. Du išorinės kojos yra
+ 5v ir žemė, o vidurinė kojelė kuria mėginio įtampą.
Analoginis į skaitmeninį keitiklį (ADC) konvertuoja analogines reikšmes į skaitmeninį suderinimą
pagal formulę ADC vertė = mėginys * 1024 / etaloninė įtampa (+ 5v). Taigi su +5 voltais
nuoroda, skaitmeninis apytikslis = įvesties įtampa * 205. (pvz., 2.5v * 205 = 512.5)
LM35 yra precizinis tiesinis temperatūros jutiklis, tiekiantis 10 mv Celsijaus laipsnį.
Tai reiškia 15 laipsnių Celsijaus laipsnį, tai sudarytų 150V arba 150 milivolų skaitymą.
Įvedę šią vertę į mūsų ADC konversiją (.15v * 205 = 30.75), mes galime gauti glaudų
Celsijų temperatūros apytikslis, dalijant skaitmeninį įėjimų skaičių 2.
Jei LM35 būtų tiekiama kitokia atskaitos įtampa (9v arba 12v), mes turėtume
naudoti kitą konversijos metodą. Dėl šios grandinės gerai padalijamas 2.
3 žingsnis: Drėgmės jutiklio prijungimas
Ant drėgmės jutiklio yra du smeigtukai, vienas - ant žemės ir kitiems, kurie eina ant 3 kišenės į arduino. Naudojau vietinį jutiklį drėgmės / drėgmės tyrimui, tačiau galima naudoti SHT15, turinčią tiek temperatūrą, tiek drėgmę.
4 veiksmas: kodo nustatymas !!!
Prijunkite savo arduino prie kompiuterio, atidarykite programą, pasirinkite tinkamą prievadą ir modelį Nr. prieš pradėdami bet kokį kodavimą. Atlikę viską, užsirašykite kodą, kaip parodyta toliau:
int pin = 5; // analoginis kaištis
int putPin = 3; // drėgmė
int tempc = 0, tempf = 0; // temperatūros kintamieji
int mėginiai 8; // kintamieji, kad būtų užtikrintas geresnis tikslumas
int maxi = -100, mini = 100; pradžios maks. / min
int i;
float humi = 0;
float prehum = 0;
float humconst = 0;
float truehum = 0;
float pretruehum = 0;
ilgas pretruehumconst = 0;
ilgas valb = 0;
negaliojantis nustatymas ()
{
Serial.begin (9600); // pradėti serijinį ryšį
}
tuščia kilpa ()
{
už (i = 0; i <= 7; i ++) {
mėginiai i = (5,0 * analoginisRead (pin) * 100.0) / 1024,0;
tempc = tempc + mėginiai i;
vėlavimas (1000);
}
tempc = tempc / 8,0;
tempf = (tempc * 9) / 5 + 32;
valb = analoginisRead (putPin); drėgmės skaičiavimas
prehum = (valb / 5);
humconst = (0.16 / 0.0062);
humi = prehum - humconst;
pretruehumconst = 0,00216 * tempc;
pretruehum = 1,0546-pretruehumconst;
truehum = humi / pretruehum;
vėlavimas (1000);
Serial.print (tempc, DEC);
Serial.print („Celsijaus“);
Serial.print („Drėgmė:“);
Serial.print ((ilgas) truehumas);
Serial.println ("%");
tempc = 0;
vėlavimas (1000); // vėlavimas prieš kilpą
}
Po to, kai viskas bus padaryta, spustelėkite įkėlimo mygtuką, kuris užtruks šiek tiek laiko, kol bus įkeltas, o kai įkėlimas bus atliktas, įsitikinkite, kad spustelėsite serijos komunikaciją, kad gautumėte rodmenis iš jutiklio !!!