Mündəricat:

HYT939 və Raspberry Pi istifadə edərək rütubətin ölçülməsi: 4 addım
HYT939 və Raspberry Pi istifadə edərək rütubətin ölçülməsi: 4 addım

Video: HYT939 və Raspberry Pi istifadə edərək rütubətin ölçülməsi: 4 addım

Video: HYT939 və Raspberry Pi istifadə edərək rütubətin ölçülməsi: 4 addım
Video: Particle Photon HYT939 I2C Humidity and Temperature Sensor Tutorial 2024, Noyabr
Anonim
Image
Image

HYT939, I2C rabitə protokolu üzərində işləyən rəqəmsal rütubət sensoru. Nəmlik, tibbi sistemlərə və laboratoriyalara gəldikdə əsas bir parametrdir, bu məqsədlərə çatmaq üçün HYT939 -u moruq pi ilə birləşdirməyə çalışdıq. Bu təlimatda HYT939 sensor modulunun moruq pi ilə qarşılıqlı əlaqəsi nümayiş olunur və Java dilindən istifadə edərək proqramlaşdırılması da təsvir edilmişdir.

Nəmlik dəyərlərini oxumaq üçün I2c adapterli moruq pi istifadə etdik. Bu I2C adapteri sensor moduluna qoşulmağı asanlaşdırır və daha etibarlıdır.

Addım 1: Lazım olan avadanlıq:

Avadanlıq tələb olunur
Avadanlıq tələb olunur
Avadanlıq tələb olunur
Avadanlıq tələb olunur
Avadanlıq tələb olunur
Avadanlıq tələb olunur

Tapşırığı yerinə yetirmək üçün lazım olan avadanlıq aşağıdakı kimidir:

1. HYT939

2. Moruq Pi

3. I2C Kabeli

4. Raspberry Pi üçün I2C Shield

5. Ethernet Kabeli

-

Addım 2: Hardware Bağlantısı:

Avadanlıq Bağlama
Avadanlıq Bağlama
Avadanlıq Bağlama
Avadanlıq Bağlama

Avadanlıq bağlama bölməsi əsasən sensor və moruq pi arasında lazım olan tel əlaqələrini izah edir. İstənilən çıxış üçün hər hansı bir sistem üzərində işləyərkən düzgün əlaqələrin təmin edilməsi əsas zərurətdir. Beləliklə, zəruri əlaqələr aşağıdakılardır:

HYT939 I2C üzərində işləyəcək. Sensorun hər bir interfeysini necə bağlayacağınızı göstərən nümunə naqillər diaqramı.

Qutudan kənarda, lövhə I2C interfeysi üçün konfiqurasiya olunmuşdur, buna görə də başqa cür agnostiksinizsə bu əlaqəni istifadə etməyi məsləhət görürük. Lazım olan tək şey dörd teldir!

Vcc, Gnd, SCL və SDA pinləri üçün yalnız dörd əlaqə lazımdır və bunlar I2C kabelinin köməyi ilə bağlanır.

Bu əlaqələr yuxarıdakı şəkillərdə göstərilmişdir.

Addım 3: Rütubətin Ölçülməsi üçün Java Kodu:

Nəm Ölçmə üçün Java Kodu
Nəm Ölçmə üçün Java Kodu
Nəm Ölçmə üçün Java Kodu
Nəm Ölçmə üçün Java Kodu

Moruq pi istifadə etmənin üstünlüyü, sensoru onunla əlaqələndirmək üçün lövhəni proqramlaşdırmaq istədiyiniz proqramlaşdırma dilinin rahatlığını təmin edir. Bu lövhənin bu üstünlüyündən istifadə edərək burada Java proqramlaşdırmasını nümayiş etdiririk. HYT939 üçün java kodunu Dcube Mağazası olan github cəmiyyətimizdən yükləyə bilərsiniz.

İstifadəçilərin rahatlığı üçün, kodu da burada izah edirik:

Kodlaşdırmanın ilk addımı olaraq java vəziyyətində pi4j kitabxanasını yükləməlisiniz, çünki bu kitabxana kodda istifadə olunan funksiyaları dəstəkləyir. Beləliklə, kitabxananı yükləmək üçün aşağıdakı linkə daxil ola bilərsiniz:

pi4j.com/install.html

Bu sensor üçün işləyən java kodunu buradan da kopyalaya bilərsiniz:

com.pi4j.io.i2c. I2CBus idxal edin;

com.pi4j.io.i2c. I2CDevice idxal edin;

com.pi4j.io.i2c. I2CFactory idxal edin;

java.io. IOException idxal edin;

ictimai sinif HYT939

{

public static void main (String args ) İstisna atır

{

// I2CBus yaradın

I2CBus avtobusu = I2CFactory.getInstance (I2CBus. BUS_1);

// I2C cihazı alın, HYT939 I2C ünvanı 0x28 (40)

I2CDevice cihazı = bus.getDevice (0x28);

// Normal rejim əmrini göndərin

device.write ((bayt) 0x80);

Thread.sleep (500);

// 4 bayt məlumat oxuyun

// rütubət msb, rütubət lsb, temp msb, temp lsb

bayt məlumat = yeni bayt [4];

device.read (data, 0, 4);

// Məlumatı 14 bitə çevirin

ikiqat rütubət = (((data [0] & 0x3F) * 256) + (data [1] & 0xFF)) * (100.0 / 16383.0);

ikiqat cTemp = ((((data [2] & 0xFF) * 256) + (data [3] & 0xFC)) / 4) * (165.0 / 16383.0) - 40;

ikiqat fTemp = (cTemp * 1.8) + 32;

// Ekrana məlumat çıxarın

System.out.printf ("Nisbi Nəmlik: %.2f %% RH %n", rütubət);

System.out.printf ("Selsi temperaturu: %.2f C %n", cTemp);

System.out.printf ("Fahrenheitdəki temperatur: %.2f F %n", fTemp);

}

}

Sensor və lövhə arasında i2c əlaqəsini asanlaşdıran kitabxana pi4j -dir, onun müxtəlif paketləri I2CBus, I2CDevice və I2CFactory əlaqəni qurmağa kömək edir.

com.pi4j.io.i2c. I2CBus; idxal com.pi4j.io.i2c. I2CDevice; com.pi4j.io.i2c. I2CFactory idxal edin; java.io. IOException idxal edin;

write () və read () funksiyaları, sensorun müəyyən bir rejimdə işləməsini təmin etmək və sensor çıxışını oxumaq üçün bəzi xüsusi əmrləri yazmaq üçün istifadə olunur. Kodun aşağıdakı hissəsi bu funksiyaların istifadəsini göstərir.

// Normal rejimə göndər komanda device.write ((bayt) 0x80); Thread.sleep (500); // 4 bayt məlumat oxuyun // rütubət msb, rütubət lsb, temp msb, temp lsb bayt data = yeni bayt [4]; device.read (data, 0, 4);

Sensorun çıxışı da yuxarıdakı şəkildə göstərilmişdir.

Addım 4: Tətbiqlər:

Tətbiqlər
Tətbiqlər

HYT939, səmərəli rəqəmsal rütubət sensoru olmaqla Tibbi sistemlərdə, Otoklavlarda istifadə olunur. Təzyiq çiy nöqtəsinin ölçülməsi və Qurutma sistemləri də bu sensor modulunun istifadəsini tapır. Müvafiq rütubət səviyyəsinin təcrübələr aparmaq üçün əsas parametr olduğu müxtəlif laboratoriyalarda bu sensor rütubətin ölçülməsi üçün orada yerləşdirilə bilər.

Tövsiyə: