Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
LM75BIMM, termal gözətçi ilə təchiz edilmiş və 400 kHz -ə qədər işini dəstəkləyən iki telli interfeysə malik rəqəmsal temperatur sensoru. Proqramlaşdırıla bilən hədd və hystersis ilə bir çox temperatur çıxışı var.
Bu təlimatda LM75BIMM sensor modulunun arduino nano ilə qarşılıqlı əlaqəsi təsvir edilmişdir. İstilik dəyərlərini oxumaq üçün I2c adapterli arduino 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:
Məqsədimizə çatmaq üçün ehtiyacımız olan materiallar aşağıdakı aparat komponentlərindən ibarətdir:
1. LM75BIMM
2. Arduino Nano
3. I2C Kabeli
4. Arduino nano üçün I2C Shield
Addım 2: Hardware Bağlantısı:
Donanım bağlama bölməsi əsasən sensor və arduino nano 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:
LM75BIMM 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: Temperatur Ölçmə Kodu:
İndi arduino kodundan başlayaq.
Sensor modulunu arduino ilə işləyərkən Wire.h kitabxanasını daxil edirik. "Tel" kitabxanası, sensor və arduino lövhəsi arasındakı i2c əlaqəsini asanlaşdıran funksiyaları ehtiva edir.
İstifadəçinin rahatlığı üçün bütün arduino kodu aşağıda verilmişdir:
#daxil edin
// LM75BIMM I2C ünvanı 0x49 (73)
#define Addr 0x49
boş quraşdırma ()
{
// I2C ünsiyyətini MASTER olaraq başladın
Wire.begin ();
// Serial rabitəni işə salın, baud dərəcəsini = 9600 olaraq təyin edin
Serial.begin (9600);
// I2C ötürülməsinə başlayın
Wire.beginTransmission (Addr);
// Konfiqurasiya qeydini seçin
Wire.write (0x01);
// Davamlı iş, normal işləmə
Wire.write (0x00);
// I2C ötürülməsini dayandırın
Wire.endTransmission ();
gecikmə (300);
}
boşluq döngəsi ()
{
imzasız int məlumatları [2];
// I2C ötürülməsinə başlayın
Wire.beginTransmission (Addr);
// İstilik məlumatları qeydini seçin
Wire.write (0x00);
// I2C ötürülməsini dayandırın
Wire.endTransmission ();
// 2 bayt məlumat tələb edin
Wire.requestFrom (Addr, 2);
// 2 bayt məlumat oxuyun
// temp msb, temp lsb
əgər (Tel.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Məlumatı 9 bitə çevirin
int temp = (data [0] * 256 + (data [1] & 0x80)) / 128;
əgər (temperatur> 255)
{
temp -= 512;
}
float cTemp = temp * 0.5;
float fTemp = cTemp * 1.8 + 32;
// Məlumatların serial monitora çıxarılması
Serial.print ("Selsi temperaturu:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Fahrenheitdəki temperatur:");
Serial.print (fTemp);
Serial.println ("F");
gecikmə (1000);
}
Tel kitabxanasında Wire.write () və Wire.read () əmrləri yazmaq və sensor çıxışını oxumaq üçün istifadə olunur.
Sensorun çıxışını Arduino IDE -nin serial monitorunda göstərmək üçün Serial.print () və Serial.println () istifadə olunur.
Sensorun çıxışı yuxarıdakı şəkildə göstərilmişdir.
Addım 4: Tətbiqlər:
LM75BIMM, baza stansiyaları, elektron test cihazları, ofis elektronikası, fərdi kompüterlər və ya temperatur monitorinqinin performans üçün vacib olduğu hər hansı bir sistem daxil olmaqla bir sıra tətbiqlər üçün idealdır. Bu səbəbdən, bu sensor yüksək temperatur həssas sistemlərin bir çoxunda əsas rola malikdir.