Video: Arduino AMS5812_0050-D-B Təzyiq və Temperatur Sensoru Dərsliyi: 4 addım
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Analoq və Rəqəmsal Çıxışlı AMS5812 Gücləndirilmiş Təzyiq Sensoru, analog gərginlik çıxışı və rəqəmsal I2C interfeysi olan yüksək dəqiqlikli sensordur. Bir piezoresistive algılama elementini işlətmək üçün bir siqnal kondisioner elementi ilə birləşdirir. İşdə arduino nano ilə nümayişidir.
Addım 1: Nə Lazımdır..
1. Arduino Nano
2. AMS5812_0050-D-B
3. I²C Kabel
4. Arduino Nano üçün I2C Shield
Addım 2: Bağlantılar:
Arduino Nano üçün bir I2C qalxanı götürün və Nanonun sancaqlarından yumşaq bir şəkildə itələyin.
Sonra I2C kabelinin bir ucunu AMS5812_0050-D-B sensoruna, digər ucunu isə I2C ekranına bağlayın.
Bağlantılar yuxarıdakı şəkildə göstərilmişdir.
Addım 3: Kod:
AMS5812_0050-D-B üçün Arduino kodu GitHub depomuzdan-Dcube Mağazamızdan yükləyə bilərsiniz.
İşdə bunun üçün bağlantı:
github.com/DcubeTechVentures/AMS5812-0050-D-B
Sensorun Arduino lövhəsi ilə I2c əlaqəsini asanlaşdırmaq üçün Wire.h kitabxanasına daxildir.
Kodu buradan da kopyalaya bilərsiniz, belə verilir:
// Azad iradə lisenziyası ilə paylanmışdır.
// İstənilən şəkildə, mənfəət və ya pulsuz istifadə edin, əlaqəli əsərlərinin lisenziyalarına uyğun gəlir.
// AMS5812
// Bu kod, Dcube Store-da mövcud olan AMS5812_I2CS_0050-D-B I2C Mini Modulu ilə işləmək üçün hazırlanmışdır.
#daxil edin
// AMS5812 I2C ünvanı 0x78 (120)
#təyin Edr 0x78
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);
gecikmə (300);
}
boşluq döngəsi ()
{
imzasız int məlumatları [4];
gecikmə (500);
// 4 bayt məlumat tələb edin
Wire.requestFrom (Addr, 4);
// 4 bayt məlumat oxuyun
// təzyiq msb, təzyiq 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əlumatları çevirin
float təzyiqi = ((data [0] & 0xFF) * 256 + (data [1] & 0xFF));
float temp = ((data [2] & 0xFF) * 256 + (data [3] & 0xFF));
təzyiq = ((təzyiq - 3277.0) / ((26214.0) / 10.0)) - 5.0;
float cTemp = ((temp - 3277.0) / ((26214.0) / 110.0)) - 25.0;
float fTemp = (cTemp * 1.8) + 32;
// Məlumatların serial monitora çıxarılması
Serial.print ("Təzyiq:");
Serial. çap (təzyiq);
Serial.println ("PSI");
Serial.print ("Selsi temperaturu:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Fahrenheitdəki temperatur:");
Serial.print (fTemp);
Serial.println ("F");
gecikmə (500);
}
Addım 4: Tətbiqlər:
AMS5812 gücləndirilmiş bir təzyiq sensoru və statik və dinamik təzyiq ölçümü və barometrik təzyiq ölçülməsi aparılacaq sistemlərdə istifadə edilə bilər. Vakuum monitorinqində, qaz axınının monitorinqində, maye səviyyəsinin ölçülməsində və tibbi cihazlarda əsas rol oynayır.