Mundarija:

MCP9803 va zarracha foton yordamida haroratni o'lchash: 4 qadam
MCP9803 va zarracha foton yordamida haroratni o'lchash: 4 qadam

Video: MCP9803 va zarracha foton yordamida haroratni o'lchash: 4 qadam

Video: MCP9803 va zarracha foton yordamida haroratni o'lchash: 4 qadam
Video: ЭЛЕКТРОСКУТЕР ЗАПАС ХОДА 100 км 1 АКБ SKYBOARD BR50-3000 pro max CITYCOCO SKYBOARD дальность поездки 2024, Noyabr
Anonim
Image
Image

MCP9803-2 simli yuqori aniqlikdagi harorat sensori. Ular foydalanuvchi tomonidan dasturlashtiriladigan registrlar bilan jihozlangan bo'lib, ular haroratni sezishni osonlashtiradi. Bu sensor juda ko'p zonali haroratni nazorat qilish tizimi uchun javob beradi.

Ushbu qo'llanmada MCP9803 sensor modulining zarracha foton bilan o'zaro aloqasi tasvirlangan. Harorat qiymatlarini o'qish uchun biz I2c adapterli zarrachadan foydalanganmiz, bu I2C adapteri sensor moduliga ulanishni oson va ishonchli qiladi.

1 -qadam: Uskuna kerak:

Uskunalar talab qilinadi
Uskunalar talab qilinadi
Uskunalar talab qilinadi
Uskunalar talab qilinadi
Uskunalar talab qilinadi
Uskunalar talab qilinadi

Maqsadga erishish uchun bizga kerak bo'lgan materiallar quyidagi apparat komponentlarini o'z ichiga oladi:

1. MCP9803

2. Foton zarrachalari

3. I2C kabeli

4. Zarrachalar fotoni uchun I2C qalqoni

2 -qadam: Uskuna ulanishi:

Uskuna ulanishi
Uskuna ulanishi
Uskuna ulanishi
Uskuna ulanishi

Uskuna ulash bo'limi asosan sensor va zarracha fotoni o'rtasida zarur bo'lgan simi ulanishlarini tushuntiradi. To'g'ri ulanishni ta'minlash har qanday tizimda kerakli chiqish uchun ishlashning asosiy zarurati hisoblanadi. Shunday qilib, kerakli ulanishlar quyidagilar:

MCP9803 I2C orqali ishlaydi. Sensorning har bir interfeysini qanday ulash kerakligini ko'rsatadigan simlar sxemasi.

Qutidan tashqari, taxta I2C interfeysi uchun tuzilgan, shuning uchun agar siz agnostik bo'lsangiz, biz ushbu ulanishni ishlatishni maslahat beramiz.

Sizga faqat to'rtta sim kerak! Vcc, Gnd, SCL va SDA pinlari uchun faqat to'rtta ulanish kerak va ular I2C kabeli yordamida ulangan.

Bu ulanishlar yuqoridagi rasmlarda ko'rsatilgan.

3 -qadam: Haroratni o'lchash kodi:

Haroratni o'lchash kodi
Haroratni o'lchash kodi

Endi zarracha kodidan boshlaylik.

Sensor modulini zarracha bilan ishlatganda, biz application.h va spark_wiring_i2c.h kutubxonasini o'z ichiga olamiz. "application.h" va spark_wiring_i2c.h kutubxonasi sensor va zarracha o'rtasidagi i2c aloqasini osonlashtiradigan funktsiyalarni o'z ichiga oladi.

Butun zarracha kodi foydalanuvchiga qulay bo'lishi uchun quyida keltirilgan:

#qo'shing

#qo'shing

// MCP9803 I2C manzili - 0x48 (72)

#aniqlang Addr 0x48

float cTemp = 0, fTemp = 0;

bo'sh o'rnatish ()

{

// O'zgaruvchini o'rnating

Particle.variable ("i2cdevice", "MCP9803");

Particle.variable ("cTemp", cTemp);

// I2C aloqasini MASTER sifatida boshlang

Wire.begin ();

// Serial aloqani ishga tushiring, bod tezligi = 9600

Serial.begin (9600);

// I2C uzatishni boshlang

Wire.beginTransmission (Addr);

// Konfiguratsiya registrini tanlang

Wire.write (0x01);

// Uzluksiz konvertatsiya rejimi, Quvvat manbai

Wire.write (0x60);

// I2C uzatishni to'xtating

Wire.endTransmission ();

kechikish (300);

}

bo'sh halqa ()

{

imzosiz int ma'lumotlari [2];

// I2C aloqasini boshlaydi

Wire.beginTransmission (Addr);

// Ma'lumotlar reestrini tanlang

Wire.write (0x00);

// I2C uzatishni to'xtating

Wire.endTransmission ();

// 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 12 bitga aylantiring

int temp = ((ma'lumotlar [0] * 256) + ma'lumotlar [1]) / 16.0;

agar (harorat> 2047)

{

harorat -= 4096;

}

cTemp = temp * 0.0625;

fTemp = cTemp * 1.8 + 32;

// Ma'lumotlarni ketma -ket monitorga chiqarish

Particle.publish ("Selsiydagi harorat:", String (cTemp));

Particle.publish ("Farengeytdagi harorat:", String (fTemp));

kechikish (500);

}

Particle.variable () funktsiyasi sensorning chiqishini saqlash uchun o'zgaruvchilarni yaratadi va Particle.publish () funktsiyasi saytning boshqaruv panelida chiqishini ko'rsatadi.

Ma'lumot uchun sensor chiqishi yuqoridagi rasmda ko'rsatilgan.

4 -qadam: Ilovalar:

Ilovalar
Ilovalar

MCP9803 shaxsiy kompyuter va tashqi qurilmalar, qattiq disklar, har xil ko'ngilochar tizimlar, ofis tizimlari va ma'lumotlar uzatish tizimlarini o'z ichiga oladigan ko'plab qurilmalarda ishlatilishi mumkin. Bu sensorni har xil murakkab tizimlarga kiritish mumkin.

Tavsiya: