Mundarija:

HIH6130 va Arduino Nano yordamida namlik va haroratni o'lchash: 4 qadam
HIH6130 va Arduino Nano yordamida namlik va haroratni o'lchash: 4 qadam

Video: HIH6130 va Arduino Nano yordamida namlik va haroratni o'lchash: 4 qadam

Video: HIH6130 va Arduino Nano yordamida namlik va haroratni o'lchash: 4 qadam
Video: Arduino Nano, BME280 и SSD1306 OLED-метеостанция 2024, Noyabr
Anonim
Image
Image

HIH6130 - namlik va harorat sensori, raqamli chiqish. Bu sensorlar ± 4% RH aniqlik darajasini ta'minlaydi. Sanoatning etakchi uzoq muddatli barqarorligi, haqiqiy harorat bilan kompensatsiyalangan raqamli I2C, sanoatning etakchi ishonchliligi, energiya tejamkorligi va o'ta kichik o'lchamdagi paketlar va imkoniyatlar.

Ushbu qo'llanmada HIH6130 sensori modulining arduino nano bilan o'zaro aloqasi tasvirlangan. Harorat va namlik ko'rsatkichlarini o'qish uchun biz I2c adapterli arduino -dan foydalanganmiz, bu I2C adapteri sensor moduliga ulanishni oson va ishonchli qiladi.

1 -qadam: Uskuna kerak:

Uskunalar talab qilinadi
Uskunalar talab qilinadi
Uskunalar talab qilinadi
Uskunalar talab qilinadi
Uskunalar talab qilinadi
Uskunalar talab qilinadi

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

1. HIH6130

2. Arduino nano

3. I2C kabeli

4. Arduino nano uchun I2C qalqoni

2 -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:

HIH6130 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.

3 -qadam: Namlik va haroratni o'lchash kodi:

Namlik va haroratni o'lchash kodi
Namlik va haroratni o'lchash 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

// HIH6130 I2C manzili - 0x27 (39)

#aniqlang Addr 0x27

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 [4];

// I2C uzatishni boshlang

Wire.beginTransmission (Addr);

// Ma'lumotlar reestrini tanlang

Wire.write (0x00);

// I2C uzatishni to'xtating

Wire.endTransmission ();

// 4 bayt ma'lumotni so'rang

Wire.requestFrom (Addr, 4);

// 4 bayt ma'lumotni o'qing

// namlik msb, namlik lsb, temp msb, temp lsb

agar (Wire.available () == 4)

{

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

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

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

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

}

// Ma'lumotni 14 bitga aylantiring

suzuvchi namlik = ((((ma'lumotlar [0] & 0x3F) * 256) + ma'lumotlar [1]) * 100.0) / 16383.0;

int temp = ((ma'lumotlar [2] * 256) + (ma'lumotlar [3] & 0xFC)) / 4;

float cTemp = (temp / 16384.0) * 165.0 - 40.0;

float fTemp = cTemp * 1.8 + 32;

// Ma'lumotlarni ketma -ket monitorga chiqarish

Serial.print ("Nisbiy namlik:");

Ketma -ket bosma (namlik);

Serial.println (" %RH");

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

Serial.print (cTemp);

Serial.println ("C");

Serial.print ("Farengeytdagi harorat:");

Serial.print (fTemp);

Serial.println ("F");

kechikish (500);

}

Tel kutubxonasida Wire.write () va Wire.read () buyruqlarni yozish va sensor chiqishini o'qish uchun ishlatiladi.

Arduino IDE seriyali monitorida sensorning chiqishini ko'rsatish uchun Serial.print () va Serial.println () ishlatiladi.

Sensorning chiqishi yuqoridagi rasmda ko'rsatilgan.

4 -qadam: Ilovalar:

Ilovalar
Ilovalar

HIH6130 konditsionerlar, entalpiya sezgichlari, termostatlar, namlagichlar/namlagichlar va namlagichlarda namlik va haroratni aniq o'lchashni ta'minlash uchun ishlatilishi mumkin. U havo kompressorlarida, ob -havo stantsiyalarida va telekommunikatsiya kabinetlarida ham ishlatilishi mumkin.

Tavsiya: