Mundarija:

Arduino Nano - SI7050 harorat sensori bo'yicha qo'llanma: 4 qadam
Arduino Nano - SI7050 harorat sensori bo'yicha qo'llanma: 4 qadam

Video: Arduino Nano - SI7050 harorat sensori bo'yicha qo'llanma: 4 qadam

Video: Arduino Nano - SI7050 harorat sensori bo'yicha qo'llanma: 4 qadam
Video: Arduino Nano - SI7050 Temperature Sensor Tutorial 2024, Iyul
Anonim
Image
Image

SI7050 - bu raqamli harorat sensori, I2C aloqa protokolida ishlaydi va butun ish kuchlanish va harorat oralig'ida yuqori aniqlikni ta'minlaydi. Sensorning yuqori aniqligi signallarni qayta ishlashning yangi analogi va analog dizayni bilan bog'liq. Bu datchiklar kalibrlash ma'lumotlarini saqlaydigan chipli xotira bilan o'ralgan bo'lib, uni keng diapazonda ishlatishni osonlashtiradi. Mana, Arduino Nano bilan uning namoyishi.

1 -qadam: Sizga nima kerak.. !

Sizga nima kerak.. !!
Sizga nima kerak.. !!

1. Arduino Nano

2. SI7050

3. I²C kabeli

4. Arduino Nano uchun I²C qalqoni

2 -qadam: Ulanish:

Ulanish
Ulanish
Ulanish
Ulanish
Ulanish
Ulanish
Ulanish
Ulanish

Arduino Nano uchun I2C qalqonini oling va uni muloyimlik bilan Nano pinlariga suring.

Keyin I2C kabelining bir uchini SI7050 sensoriga, ikkinchi uchini esa I2C ekraniga ulang.

Ulanishlar yuqoridagi rasmda ko'rsatilgan.

3 -qadam: Kod:

Kod
Kod

SI7050 uchun arduino kodini bizning github omboridan-DCUBE do'konidan yuklab olish mumkin.

Mana shu havola:

github.com/DcubeTechVentures/SI7050/blob/master/Arduino/SI7050.ino

Sensorning Arduino platasi bilan I2c aloqasini osonlashtirish uchun biz Wire.h kutubxonasini o'z ichiga olamiz.

Siz bu erdan kodni nusxalashingiz mumkin, u quyidagicha berilgan:

// Ixtiyoriy litsenziya bilan tarqatilgan.

// Agar xohlasangiz, foyda yoki tekin ishlating, agar u tegishli asarlar litsenziyalariga mos kelsa.

// SI7050

// Bu kod SI7050_I2CS I2C Mini moduli bilan ishlash uchun mo'ljallangan

#qo'shing

// SI7050 I2C manzili - 0x40 (64)

#aniqlang Addr 0x40

bo'sh o'rnatish ()

{

// I2C aloqasini MASTER sifatida boshlang

Wire.begin ();

// Seriyali aloqani ishga tushiring, bod tezligi = 9600 ni o'rnating

Serial.begin (9600);

// I2C uzatishni boshlang

Wire.beginTransmission (Addr);

// I2C uzatishni to'xtating

Wire.endTransmission ();

kechikish (300);

}

bo'sh halqa ()

{

imzosiz int ma'lumotlari [2];

// I2C uzatishni boshlang

Wire.beginTransmission (Addr);

// Haroratni o'lchash buyrug'ini yuboring, MASTER YO'Q

Wire.write (0xF3);

// I2C uzatishni to'xtating

Wire.endTransmission ();

kechikish (500);

// 2 bayt ma'lumotni so'rang

Wire.requestFrom (Addr, 2);

// 2 bayt ma'lumotni o'qing

// temp msb, temp lsb

agar (Wire.available () == 2)

{

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

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

}

// Ma'lumotni aylantirish

float temp = ((ma'lumotlar [0] * 256.0) + ma'lumotlar [1]);

float ctemp = ((175.72 * temp) / 65536.0) - 46.85;

float ftemp = ctemp * 1.8 + 32;

// Ma'lumotlarni ketma -ket monitorga chiqarish

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

Serial.print (ctemp);

Serial.println ("C");

Serial.print ("Farengeytdagi harorat:");

Serial.print (ftemp);

Serial.println ("F");

kechikish (500);

}

4 -qadam: Ilovalar:

SI7050 turli xil tizimlarga, shu jumladan kompyuter uskunalari, ko'chma iste'molchi qurilmalari va tibbiy asbob -uskunalarga qo'shilishi mumkin. Bu sensor sovuq saqlash zanjirlarida, aktivlarni kuzatishda, shuningdek turli sanoat nazorat tizimlarida ishlatilishi mumkin. U batareyani himoya qilishda ham muhim rol o'ynaydi.

Tavsiya: