Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
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 hissəcik fotonu ilə qarşılıqlı əlaqəsi təsvir edilmişdir.
Rütubət dəyərlərini oxumaq üçün I2c adapteri olan hissəcik fotonundan istifadə etdik. Bu I2C adapteri sensor moduluna qoşulmağı asanlaşdırır və daha etibarlı edir. Əşyalar İnternetinin (IoT) əsas xüsusiyyəti.
Addım 1: Lazım olan avadanlıq:
Məqsədimizə çatmaq üçün ehtiyacımız olan materiallar aşağıdakı aparat komponentlərindən ibarətdir:
1. HYT939
2. Foton hissəcikləri
3. I2C Kabeli
4. Partikül Foton üçün I2C Qalxanı
Addım 2: Hardware Bağlantısı:
Avadanlıq bağlama bölməsi əsasən sensor və hissəcik fotonu arasında lazım olan naqillərin ə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ət Ölçmə Kodu:
İndi hissəcik kodundan başlayaq.
Sensor modulunu Arduino ilə birlikdə istifadə edərkən application.h və spark_wiring_i2c.h kitabxanasını daxil edirik. "application.h" və spark_wiring_i2c.h kitabxanası, sensor və hissəcik arasındakı i2c əlaqəsini asanlaşdıran funksiyaları ehtiva edir.
İstifadəçinin rahatlığı üçün bütün hissəcik kodu aşağıda verilmişdir:
#daxil edin
#daxil edin
// HYT939 I2C ünvanı 0x28 (40)
#define Addr 0x28
ikiqat rütubət = 0.0, cTemp = 0.0, fTemp = 0.0;
boş quraşdırma ()
{
// Dəyişən təyin edin
Particle.variable ("i2cdevice", "HYT939");
Particle.variable ("cTemp", cTemp);
Hissəcik.dəyişən ("rütubət", rütubət);
// I2C ünsiyyətini MASTER olaraq başladın
Wire.begin ();
// Serial Ünsiyyətə Başlayın
Serial.begin (9600);
gecikmə (300);
}
boşluq döngəsi ()
{
imzasız int məlumatları [4];
// I2C ötürülməsinə başlayın
Wire.beginTransmission (Addr);
// Normal rejim əmrini göndərin
Wire.write (0x80);
// I2C ötürülməsini dayandırın
Wire.endTransmission ();
gecikmə (300);
// Cihazdan 4 bayt məlumat tələb edin
Wire.requestFrom (Addr, 4);
// 4 bayt məlumat oxuyun
// rütubət msb, rütubət lsb, temp msb, temp lsb
əgər (Tel.available () == 4)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
}
// Məlumatı 14 bitə çevirin
rütubət = (((data [0] & 0x3F) * 256.0) + data [1]) * (100.0 / 16383.0);
cTemp = (((data [2] * 256.0) + (data [3] & 0xFC)) / 4) * (165.0 / 16383.0) - 40;
fTemp = (cTemp * 1.8) + 32;
// Göstərişlər panelinə məlumat çıxarın
Particle.publish ("Nisbi Nəmlik:", String (rütubət));
gecikmə (1000);
Particle.publish ("Selsi İstiliyi:", String (cTemp));
gecikmə (1000);
Particle.publish ("Fahrenheitdəki temperatur:", String (fTemp));
gecikmə (1000);
}
Particle.variable () funksiyası sensorun çıxışını saxlamaq üçün dəyişənlər yaradır və Particle.publish () funksiyası saytın tablosuna çıxışı göstərir.
Sensor çıxışı istinad üçün yuxarıdakı şəkildə göstərilmişdir.
Addım 4: 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.