Mundarija:

SHT25 va Arduino Nano yordamida harorat va namlik monitoringi: 5 qadam
SHT25 va Arduino Nano yordamida harorat va namlik monitoringi: 5 qadam

Video: SHT25 va Arduino Nano yordamida harorat va namlik monitoringi: 5 qadam

Video: SHT25 va Arduino Nano yordamida harorat va namlik monitoringi: 5 qadam
Video: Arduino Nano SHT25 I2C Humidity & Temperature Sensor Tutorial 2024, Noyabr
Anonim
Image
Image

Yaqinda biz harorat va namlikni nazorat qilishni talab qiladigan turli loyihalarda ishladik, so'ngra bu ikki parametr tizimning ish samaradorligini baholashda hal qiluvchi rol o'ynayotganini angladik. Sanoat darajasida ham, shaxsiy tizimlarda ham haroratning optimal darajasi tizimning etarli darajada ishlashi uchun zarur shartdir.

Buning sababi, bu darslikda biz SHT25 namlik va harorat sensori Arduino Nano bilan ishlashini tushuntiramiz.

1 -qadam: SHT25 haqida umumiy ma'lumot:

Sizga nima kerak.. !!
Sizga nima kerak.. !!

Birinchidan, sensorning asosiy tushunchasi va u ishlaydigan protokol bilan boshlaylik.

SHT25 I2C namlik va harorat sensori ± 1,8%RH ± 0,2 ° C I2C Mini moduli. Bu yuqori aniqlikdagi namlik va harorat sensori, raqamli, I2C formatida kalibrlangan, chiziqli sensorlar signallarini ta'minlaydigan, form faktor va razvedka nuqtai nazaridan sanoat standartiga aylandi. Maxsus analog va raqamli elektron bilan birlashtirilgan bu sensor harorat va namlikni o'lchash uchun eng samarali qurilmalardan biridir.

Sensor ishlaydigan aloqa protokoli I2C. I2C o'zaro integratsiyalashgan sxemani anglatadi. Bu aloqa protokoli bo'lib, bunda aloqa SDA (ketma -ket ma'lumotlar) va SCL (ketma -ket soat) liniyalari orqali amalga oshiriladi. Bu bir vaqtning o'zida bir nechta qurilmalarni ulash imkonini beradi. Bu eng oddiy va samarali aloqa protokoli.

2 -qadam: Sizga nima kerak.. !

Sizga nima kerak.. !!
Sizga nima kerak.. !!
Sizga nima kerak.. !!
Sizga nima kerak.. !!
Sizga nima kerak.. !!
Sizga nima kerak.. !!

Maqsadga erishish uchun bizga kerak bo'lgan materiallar quyidagi apparat komponentlarini o'z ichiga oladi:

1. SHT25 Namlik va harorat sensori

2. Arduino Nano

3. I2C kabeli

4. Arduino nano uchun I2C qalqoni

3 -qadam: Uskuna ulanishi:

Uskuna ulanishi
Uskuna ulanishi
Uskuna ulanishi
Uskuna ulanishi

Uskuna ulanish bo'limi asosan sensor va arduino nano o'rtasida zarur bo'lgan simi ulanishlarini tushuntiradi. To'g'ri ulanishni ta'minlash har qanday tizimda kerakli chiqish uchun ishlashning asosiy zarurati hisoblanadi. Shunday qilib, kerakli ulanishlar quyidagilar:

SHT25 I2C ustida ishlaydi. Sensorning har bir interfeysini qanday ulash kerakligini ko'rsatadigan simlar sxemasi.

Qutidan tashqari, taxta I2C interfeysi uchun tuzilgan, shuning uchun agar siz agnostik bo'lsangiz, biz ushbu ulanishni ishlatishni maslahat beramiz. Sizga faqat to'rtta sim kerak!

Vcc, Gnd, SCL va SDA pinlari uchun faqat to'rtta ulanish kerak va ular I2C kabeli yordamida ulangan.

Bu ulanishlar yuqoridagi rasmlarda ko'rsatilgan.

4 -qadam: Harorat va namlik monitoringi kodi:

Harorat va namlik monitoringi kodi
Harorat va namlik monitoringi kodi

Endi Arduino kodidan boshlaylik.

Sensor modulini Arduino bilan ishlatganda, biz Wire.h kutubxonasini o'z ichiga olamiz. "Wire" kutubxonasida sensorlar va Arduino kartalari o'rtasidagi i2c aloqasini osonlashtiradigan funktsiyalar mavjud.

Foydalanuvchining qulayligi uchun butun Arduino kodi quyida keltirilgan:

#qo'shing

// SHT25 I2C manzili - 0x40 (64)

#aniqlang Addr 0x40

bo'sh o'rnatish ()

{

// I2C aloqasini MASTER sifatida boshlang

Wire.begin ();

// Seriyali aloqani ishga tushiring, bod tezligi = 9600 ni o'rnating

Serial.begin (9600);

kechikish (300);

}

bo'sh halqa ()

{

imzosiz int ma'lumotlari [2];

// I2C uzatishni boshlang

Wire.beginTransmission (Addr);

// Namlikni o'lchash buyrug'ini yuboring, xo'jayinni ushlab turmang

Wire.write (0xF5);

// I2C uzatishni to'xtating

Wire.endTransmission ();

kechikish (500);

// 2 bayt ma'lumotni so'rang

Wire.requestFrom (Addr, 2);

// 2 bayt ma'lumotni o'qing

// namlik msb, namlik lsb

agar (Wire.available () == 2)

{

ma'lumotlar [0] = Wire.read ();

ma'lumotlar [1] = Wire.read ();

// Ma'lumotni aylantirish

suzuvchi namlik = (((ma'lumotlar [0] * 256.0 + ma'lumotlar [1]) * 125.0) / 65536.0) - 6;

// Ma'lumotlarni ketma -ket monitorga chiqarish

Serial.print ("Nisbiy namlik:");

Ketma -ket bosma (namlik);

Serial.println (" %RH");

}

// I2C uzatishni boshlang

Wire.beginTransmission (Addr);

// Haroratni o'lchash buyrug'ini yuboring, xo'jayinni ushlab turmang

Wire.write (0xF3);

// I2C uzatishni to'xtating

Wire.endTransmission ();

kechikish (500);

// 2 bayt ma'lumotni so'rang

Wire.requestFrom (Addr, 2);

// 2 bayt ma'lumotni o'qing

// temp msb, temp lsb

agar (Wire.available () == 2)

{

ma'lumotlar [0] = Wire.read ();

ma'lumotlar [1] = Wire.read ();

// Ma'lumotni aylantirish

float cTemp = (((ma'lumotlar [0] * 256.0 + ma'lumotlar [1]) * 175.72) / 65536.0) - 46.85;

float fTemp = (cTemp * 1.8) + 32;

// Ma'lumotlarni ketma -ket monitorga chiqarish

Serial.print ("Selsiy bo'yicha harorat:");

Serial.print (cTemp); Serial.println ("C");

Serial.print ("Farengeytdagi harorat:");

Serial.print (fTemp);

Serial.println ("F");

}

kechikish (300);

}

Buning uchun Arduino -da kodni yozish va ketma -ket portdagi o'qishlaringizni tekshirish kifoya. Chiqish yuqoridagi rasmda ko'rsatilgan.

5 -qadam: Ilovalar:

Ilovalar
Ilovalar

SHT25 harorat va nisbiy namlik sensori haroratni kuzatish, kompyuterning periferik termal himoyasi kabi turli xil sanoat dasturlariga ega. Shuningdek, biz ushbu sensorni ob -havo stantsiyalarida, shuningdek issiqxonalarda monitoring tizimida ishlatdik.

Tavsiya: