Turinys:
- 1 veiksmas: reikalinga aparatūra:
- 2 veiksmas: prijungimas prie aparatūros:
- 3 žingsnis: Temperatūros matavimo kodas:
- 4 žingsnis: programos:
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
MCP9808 yra labai tikslus skaitmeninis temperatūros jutiklis ± 0,5 ° C I2C mini modulis. Jie yra su vartotojo programuojamais registrais, palengvinančiais temperatūros jutimo programas. Aukšto tikslumo temperatūros jutiklis MCP9808 tapo pramonės standartu pagal formos faktorių ir intelektą, teikiant kalibruotus, linijinius jutiklių signalus skaitmeniniu, I2C formatu.
Šioje pamokoje buvo parodyta MCP9808 jutiklio modulio sąsaja su dalelių fotonu. Norėdami nuskaityti temperatūros reikšmes, mes naudojome aviečių pi su I2c adapteriu. Šis I2C adapteris leidžia lengvai ir patikimiau prijungti prie jutiklio modulio.
1 veiksmas: reikalinga aparatūra:
Medžiagos, reikalingos mūsų tikslui pasiekti, apima šiuos aparatūros komponentus:
1. MCP9808
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:
MCP9808 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 „arduino“, į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
// MCP9808 I2C adresas yra 0x18 (24)
#define Addr 0x18
plūdė cTemp = 0, fTemp = 0;
negaliojanti sąranka ()
{
// Nustatyti kintamąjį
Particle.variable („i2cdevice“, „MCP9808“);
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 (0x00);
Wire.write (0x00);
// Sustabdyti I2C perdavimą
Wire.endTransmission ();
// Pradėti I2C perdavimą
Wire.beginTransmission (Addr);
// Pasirinkite skiriamąją gebą rgister
Wire.write (0x08);
// Rezoliucija = +0.0625 / C
Wire.write (0x03);
// 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 (0x05);
// 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 ();
}
vėlavimas (300);
// Konvertuokite duomenis į 13 bitų
int temp = ((duomenys [0] ir 0x1F) * 256 + duomenys [1]);
jei (temperatūra> 4095)
{
temperatūra -= 8192;
}
cTemp = temp * 0,0625;
fTemp = cTemp * 1,8 + 32;
// Išvesti duomenis į prietaisų skydelį
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:
MCP9808 skaitmeninis temperatūros jutiklis turi keletą pramonės lygių programų, kuriose yra pramoniniai šaldikliai ir šaldytuvai bei įvairūs maisto perdirbimo įrenginiai. Šis jutiklis gali būti naudojamas įvairiems asmeniniams kompiuteriams, serveriams ir kitiems kompiuterių periferiniams įrenginiams.
Rekomenduojamas:
Judesio stebėjimas naudojant MPU-6000 ir dalelių fotoną: 4 žingsniai
Judesio stebėjimas naudojant MPU-6000 ir dalelių fotoną: MPU-6000 yra 6 ašių judesio sekimo jutiklis, turintis 3 ašių akselerometrą ir 3 ašių giroskopą. Šis jutiklis gali efektyviai sekti tikslią objekto padėtį ir vietą trimatėje plokštumoje. Jis gali būti naudojamas
Saulės skydelio stebėjimas naudojant dalelių fotoną: 7 žingsniai
Saulės skydų stebėjimas naudojant dalelių fotoną: Projekto tikslas - pagerinti saulės kolektorių efektyvumą. Projektas skirtas prižiūrėti saulės fotovoltinės energijos gamybą, siekiant pagerinti saulės jėgainės veikimą, stebėjimą ir priežiūrą. Šiame projekte dalelės ph
Temperatūros ir drėgmės stebėjimas naudojant SHT25 ir dalelių fotoną: 5 žingsniai
Temperatūros ir drėgmės stebėjimas naudojant SHT25 ir dalelių fotoną: Neseniai dirbome prie įvairių projektų, kuriems reikėjo stebėti temperatūrą ir drėgmę, ir tada supratome, kad šie du parametrai iš tikrųjų vaidina lemiamą vaidmenį įvertinant sistemos darbo efektyvumą. Abu Indijoje
Oro kokybės stebėjimas naudojant dalelių fotoną: 11 žingsnių (su nuotraukomis)
Oro kokybės stebėjimas naudojant dalelių fotoną: Šiame projekte PPD42NJ dalelių jutiklis naudojamas matuoti oro kokybę (PM 2,5), esančią ore su dalelių fotonu. Jis ne tik rodo duomenis dalelių konsolėje ir dweet.io, bet ir rodo oro kokybę naudojant RGB šviesos diodą, jį pakeičiant
Konferencijų salės stebėjimas naudojant dalelių fotoną: 8 žingsniai (su nuotraukomis)
Konferencijų salės stebėjimas naudojant dalelių fotoną: Įvadas Šioje dalelėje integruota „Slack“, naudojant „Webhooks“, kad būtų galima gauti realaus laiko atnaujinimus, ar kambarys yra prieinamas, ar ne. PIR jutikliai naudojami