Turinys:
- 1 veiksmas: reikalinga aparatūra:
- 2 veiksmas: prijungimas prie aparatūros:
- 3 žingsnis: Temperatūros matavimo kodas:
- 4 žingsnis: programos:
Video: Temperatūros matavimas naudojant MCP9803 ir dalelių fotoną: 4 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
MCP9803 yra 2 laidų didelio tikslumo temperatūros jutiklis. Jie yra su vartotojo programuojamais registrais, palengvinančiais temperatūros jutimo programas. Šis jutiklis tinka labai sudėtingai kelių zonų temperatūros stebėjimo sistemai.
Šioje pamokoje buvo parodyta MCP9803 jutiklio modulio sąsaja su dalelių fotonu. Norėdami nuskaityti temperatūros vertes, naudojome daleles su I2c adapteriu. Šis I2C adapteris leidžia lengvai ir patikimiau prijungti jutiklio modulį.
1 veiksmas: reikalinga aparatūra:
Medžiagos, reikalingos mūsų tikslui pasiekti, apima šiuos aparatūros komponentus:
1. MCP9803
2. Dalelių fotonas
3. I2C kabelis
4. I2C skydas dalelių fotonui
2 veiksmas: prijungimas prie aparatūros:
Techninės įrangos prijungimo skyrius iš esmės paaiškina laidų jungtis, reikalingas tarp jutiklio ir dalelių fotono. Užtikrinti teisingas jungtis yra pagrindinė būtinybė dirbant su bet kuria norimos išvesties sistema. Taigi, būtinos jungtys yra šios:
MCP9803 veiks per I2C. Čia yra elektros instaliacijos schemos pavyzdys, parodantis, kaip prijungti kiekvieną jutiklio sąsają.
Iš karto plokštė sukonfigūruota I2C sąsajai, todėl rekomenduojame naudoti šį prijungimą, jei esate kitaip agnostikas.
Viskas, ko jums reikia, yra keturi laidai! Reikia tik keturių jungčių „Vcc“, „Gnd“, „SCL“ir „SDA“kaiščių, kurie yra prijungti naudojant I2C kabelį.
Šie ryšiai parodyti aukščiau esančiose nuotraukose.
3 žingsnis: Temperatūros matavimo kodas:
Pradėkime nuo dalelių kodo dabar.
Naudodami jutiklio modulį su dalele, įtraukiame „application.h“ir „spark_wiring_i2c.h“biblioteką. Bibliotekoje „application.h“ir spark_wiring_i2c.h yra funkcijos, palengvinančios i2c ryšį tarp jutiklio ir dalelės.
Visas dalelių kodas pateikiamas žemiau, kad būtų patogiau vartotojui:
#įtraukti
#įtraukti
// MCP9803 I2C adresas yra 0x48 (72)
#define Addr 0x48
plūdė cTemp = 0, fTemp = 0;
negaliojanti sąranka ()
{
// Nustatyti kintamąjį
Particle.variable ("i2cdevice", "MCP9803");
Particle.variable ("cTemp", cTemp);
// Inicijuoti I2C komunikaciją kaip MASTER
Wire.begin ();
// Inicijuoti serijinį ryšį, nustatyti duomenų perdavimo spartą = 9600
Serial.begin (9600);
// Pradėti I2C perdavimą
Wire.beginTransmission (Addr);
// Pasirinkite konfigūracijos registrą
Wire.write (0x01);
// Nuolatinio konversijos režimas, numatytasis įjungimas
Wire.write (0x60);
// Sustabdyti I2C perdavimą
Wire.endTransmission ();
vėlavimas (300);
}
tuštumos kilpa ()
{
nepasirašyti int duomenys [2];
// Pradeda I2C ryšį
Wire.beginTransmission (Addr);
// Pasirinkite duomenų registrą
Wire.write (0x00);
// Sustabdyti I2C perdavimą
Wire.endTransmission ();
// Prašyti 2 baitų duomenų
Wire.requestFrom (Addr, 2);
// Skaityti 2 baitus duomenų
// temp msb, temp lsb
jei (Wire.available () == 2)
{
duomenys [0] = Wire.read ();
duomenys [1] = Wire.read ();
}
// Konvertuokite duomenis į 12 bitų
int temp = ((duomenys [0] * 256) + duomenys [1]) / 16,0;
jei (temperatūra> 2047)
{
temperatūra -= 4096;
}
cTemp = temp * 0,0625;
fTemp = cTemp * 1,8 + 32;
// Duomenų išvedimas į serijinį monitorių
Particle.publish ("Temperatūra Celsijaus laipsniais:", Styga (cTemp));
Particle.publish ("Temperatūra Farenheitu:", Styga (fTemp));
vėlavimas (500);
}
Funkcija „Particle.variable ()“sukuria kintamuosius, kad išsaugotų jutiklio išvestį, o „Particle.publish“() rodo išvestį svetainės prietaisų skydelyje.
Jutiklio išvestis yra parodyta aukščiau esančiame paveikslėlyje.
4 žingsnis: programos:
„MCP9803“gali būti naudojamas daugelyje įrenginių, kuriuose yra asmeninis kompiuteris ir išoriniai įrenginiai, standieji diskai, įvairios pramogų sistemos, biuro sistemos ir duomenų perdavimo sistemos. Šis jutiklis gali būti integruotas į įvairias sudėtingas sistemas.
Rekomenduojamas:
Temperatūros matavimas naudojant STS21 ir dalelių fotoną: 4 žingsniai
Temperatūros matavimas naudojant STS21 ir dalelių fotoną: STS21 skaitmeninis temperatūros jutiklis pasižymi puikiu našumu ir taupo vietą. Jis teikia kalibruotus, linijinius signalus skaitmeniniu I2C formatu. Šio jutiklio gamyba pagrįsta CMOSens technologija, kuri priskiriama pranašesniam
Temperatūros matavimas naudojant TMP112 ir dalelių fotoną: 4 žingsniai
Temperatūros matavimas naudojant TMP112 ir dalelių fotoną: TMP112 didelio tikslumo, mažos galios, skaitmeninis temperatūros jutiklis I2C MINI modulis. TMP112 idealiai tinka ilgesniam temperatūros matavimui. Šis prietaisas siūlo ± 0,5 ° C tikslumą, nereikalaujant kalibravimo ar išorinio komponento signalo kondicionavimo. Aš
Temperatūros matavimas naudojant ADT75 ir dalelių fotoną: 4 žingsniai
Temperatūros matavimas naudojant ADT75 ir dalelių fotoną: ADT75 yra labai tikslus skaitmeninis temperatūros jutiklis. Jį sudaro juostos tarpo temperatūros jutiklis ir 12 bitų analoginis-skaitmeninis keitiklis, skirtas temperatūrai stebėti ir skaitmeninti. Dėl labai jautraus jutiklio man jis yra pakankamai kompetentingas
Drėgmės ir temperatūros matavimas naudojant HIH6130 ir dalelių fotoną: 4 žingsniai
Drėgmės ir temperatūros matavimas naudojant HIH6130 ir dalelių fotoną: HIH6130 yra drėgmės ir temperatūros jutiklis su skaitmeniniu išėjimu. Šie jutikliai užtikrina ± 4% RH tikslumo lygį. Su pirmaujančiu ilgalaikiu stabilumu pramonėje, tikru temperatūros kompensuojamu skaitmeniniu I2C, patikimumu pramonėje, energijos vartojimo efektyvumu
Temperatūros matavimas naudojant AD7416ARZ ir dalelių fotoną: 4 žingsniai
Temperatūros matavimas naudojant AD7416ARZ ir dalelių fotoną: AD7416ARZ yra 10 bitų temperatūros jutiklis su keturiais vieno kanalo analoginiais-skaitmeniniais keitikliais ir įmontuotu temperatūros jutikliu. Temperatūros jutiklį prie dalių galima pasiekti naudojant multiplekserio kanalus. Ši aukšto tikslumo temperatūra