Mundarija:

Arduino + Harorat + Namlik: 4 qadam
Arduino + Harorat + Namlik: 4 qadam

Video: Arduino + Harorat + Namlik: 4 qadam

Video: Arduino + Harorat + Namlik: 4 qadam
Video: Make Humidity and Temperature Monitor with Arduino - TM1637 - DHT sensor #arduino #arduinoproject 2024, Iyul
Anonim
Arduino + Harorat + Namlik
Arduino + Harorat + Namlik
Arduino + Harorat + Namlik
Arduino + Harorat + Namlik
Arduino + Harorat + Namlik
Arduino + Harorat + Namlik

Oddiy harorat sensori bitta LM35 nozik harorat sensori, namlik sensori va Arduino yordamida kelajakdagi loyihalaringizga ulanishingiz mumkin. O'chirish harorati va namligi haqida ketma -ket ma'lumotlarni yuboradi, shunda siz kompyuterda foydalanishingiz mumkin. Men kompostdan ma'lumotlarni oldim. Loyiha har kuni mavjud bo'lgan chiqindixona bilan bog'liq bo'lib, uning yordamida har kim oshxona chiqindisini uyda kompostga aylantira oladi. Mahsulot haqida ko'proq ma'lumot olish uchun https://www.dailydump.org/content/ saytiga tashrif buyuring. Digicompost axlatxonada sodir bo'layotgan o'zgarishlarni (harorat, namlik o'zgarishi) ko'rsatadi

1 -qadam: materiallar

Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar

- Arduino (Siz boshqa mikrokontrollerdan foydalanishingiz mumkin, lekin keyin siz kodni o'zgartirishingiz kerak bo'ladi.) Mana bu ma'lumotlar sahifasi.- Breadbooard.- Namlik sensori.- Simlar.

2 -qadam: Arduino + haroratini sozlash

Arduino + haroratini sozlash
Arduino + haroratini sozlash
Arduino + haroratini sozlash
Arduino + haroratini sozlash
Arduino + haroratini sozlash
Arduino + haroratini sozlash

Arduino-bu moslashuvchan, ishlatish uchun qulay bo'lgan apparat va dasturiy ta'minotga asoslangan ochiq elektron manbali prototiplash platformasi. Bu rassomlar, dizaynerlar, havaskorlar va interaktiv ob'ektlar yoki muhit yaratishga qiziquvchilar uchun mo'ljallangan. Qo'shimcha ma'lumot olish uchun tizimga kiring (https://www.arduino.cc) Harorat sensori ulanishi: LM35 uch oyoqli va tranzistorga o'xshaydi. Ikkita tashqi oyoqlari+5v va tuproqli, o'rta oyog'i esa namuna kuchlanishni rivojlantiradi. Analogdan raqamli konvertorga (ADC) analog qiymatlarni raqamli yaqinlashtirishga aylantiradi ADC formulasi = namuna * 1024 / mos yozuvlar kuchlanishi (+5v). +5 voltferans bilan, raqamli yaqinlashuv = kirish voltaji * 205 bo'ladi. (Masalan, 2.5v * 205 = 512.5) LM35 - har bir daraja tselsiy bo'yicha 10mV etkazib beradigan aniq chiziqli harorat sensori. Bu 15 daraja Selsiyda, ya'ni Bu qiymatni bizning ADC konvertatsiyamizga (.15v * 205 = 30.75) qo'yib, biz raqamli kirish sonini 2 ga bo'lish orqali Tselsiy harorati yaqin yaqinligini olishimiz mumkin. boshqa mos yozuvlar zo'riqishida (9v yoki 12v) biz boshqa konvertatsiya qilish usulini qo'llashimiz kerak. Ushbu sxemada 2 ga bo'linish yaxshi ishlaydi.

3 -qadam: namlik sensori ulanadi

Namlik sensori ulanadi
Namlik sensori ulanadi
Namlik sensori ulanadi
Namlik sensori ulanadi

Namlik datchigiga ikkita pin o'rnatilgan, biri yerga, ikkinchisi esa arduino -ga 3 -pin bilan ulanadi. Men namlik/ namlikni tekshirish uchun mahalliy ishlab chiqaruvchi sensordan foydalandim, lekin harorat va namlikka ega bo'lgan SHT15 ga o'tish mumkin.

4 -qadam: Kodni o'rnatish !!

Kod o'rnatilmoqda !!!
Kod o'rnatilmoqda !!!

Arduino -ni kompyuterga ulang, tegishli portni va model raqamini tanlang. har qanday kodlashni boshlashdan oldin. Hammasi tugagandan so'ng, kodni quyida ko'rsatilgan tarzda yozing: int pin = 5; // analog pinint putPin = 3; // namlik temp temp = 0, tempf = 0; // namunadagi harorat o'zgaruvchilari [8]; // aniqlikni yaxshilash uchun o'zgaruvchilar maxi = -100, mini = 100; // maksimal/min haroratni boshlash i; float humi = 0; float prehum = 0; float humconst = 0; float truehum = 0; float pretruehum = 0; uzoq pretruehumconst = 0; long valb = 0; void setup () {Serial.begin (9600); // ketma -ket muloqotni boshlash} void loop () {for (i = 0; i <= 7; i ++) {namunalar = (5.0 * analogRead (pin) * 100.0) / 1024.0; tempc = tempc + namunalar ; kechikish (1000);} tempc = tempc/8.0; tempf = (tempc * 9)/ 5 + 32; valb = analogRead (putPin); // namlikni hisoblash prehum = (valb/5); humconst = (0.16/0.0062); humi = prehum - humconst; pretruehumconst = 0.00216*tempc; pretruehum = 1.0546 -pretruehumconst; truehum = humi/pretruehum; kechikish (1000); Seriyali. chop etish (tempc, DEC); Serial.print ("Selsiy",); Serial.print ("Namlik:"); Serial.print ((uzun) truehum); Serial.println ("%"); tempc = 0; kechikish (1000); // kechiktirmasdan oldin kechikish} Hammasi tugagandan so'ng, yuklash uchun biroz vaqt ketadigan yuklash tugmasini bosing va yuklash tugagandan so'ng sensordan o'qish uchun ketma -ket aloqa tugmasini bosing !!!

Tavsiya: