Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
HYT939 yra skaitmeninis drėgmės jutiklis, veikiantis pagal I2C ryšio protokolą. Drėgmė yra pagrindinis parametras, kai kalbama apie medicinos sistemas ir laboratorijas, todėl, siekdami šių tikslų, mes bandėme sujungti HYT939 su aviečių pi. Šioje pamokoje buvo parodyta HYT939 jutiklio modulio sąsaja su dalelių fotonu.
Norėdami nuskaityti drėgmės vertes, mes naudojome dalelių fotoną su I2c adapteriu. Šis I2C adapteris leidžia lengvai ir patikimiau prisijungti prie jutiklio modulio. Dalelių fotonas yra plokštė, kuri palengvina duomenų siuntimą ir gavimą iš svetainės, kuri palaiko labiausiai pagrindinė daiktų interneto (IoT) savybė.
1 veiksmas: reikalinga aparatūra:
Medžiagos, reikalingos mūsų tikslui pasiekti, apima šiuos aparatūros komponentus:
1. HYT939
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:
HYT939 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: Drėgmės 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
// HYT939 I2C adresas yra 0x28 (40)
#define Addr 0x28
dviguba drėgmė = 0,0, cTemp = 0,0, fTemp = 0,0;
negaliojanti sąranka ()
{
// Nustatyti kintamąjį
Particle.variable ("i2cdevice", "HYT939");
Particle.variable ("cTemp", cTemp);
Dalelė.kintamas ("drėgmė", drėgmė);
// Inicijuoti I2C komunikaciją kaip MASTER
Wire.begin ();
// Inicijuoti serijinį bendravimą
Serial.begin (9600);
vėlavimas (300);
}
tuštumos kilpa ()
{
nepasirašyti int duomenys [4];
// Pradėti I2C perdavimą
Wire.beginTransmission (Addr);
// Siųsti įprasto režimo komandą
Wire.write (0x80);
// Sustabdyti I2C perdavimą
Wire.endTransmission ();
vėlavimas (300);
// Prašyti 4 baitų duomenų iš įrenginio
Wire.requestFrom (Addr, 4);
// Perskaitykite 4 baitus duomenų
// drėgmė msb, drėgmė lsb, temp msb, temp lsb
jei (Wire.available () == 4)
{
duomenys [0] = Wire.read ();
duomenys [1] = Wire.read ();
duomenys [2] = Wire.read ();
duomenys [3] = Wire.read ();
}
// Konvertuokite duomenis į 14 bitų
drėgmė = ((((duomenys [0] ir 0x3F) * 256,0) + duomenys [1]) * (100,0 / 16383,0);
cTemp = (((duomenys [2] * 256,0) + (duomenys [3] ir 0xFC)) / 4) * (165,0 / 16383,0) - 40;
fTemp = (cTemp * 1,8) + 32;
// Išvesti duomenis į prietaisų skydelį
Particle.publish ("Santykinė drėgmė yra:", Styga (drėgmė));
vėlavimas (1000);
Particle.publish ("Temperatūra Celsijaus laipsniais:", Styga (cTemp));
vėlavimas (1000);
Particle.publish ("Temperatūra Farenheitu:", Styga (fTemp));
vėlavimas (1000);
}
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:
HYT939 yra efektyvus skaitmeninis drėgmės jutiklis, naudojamas medicinos sistemose, autoklavuose. Slėgio rasos taško matavimo ir džiovinimo sistemos taip pat gali naudoti šį jutiklio modulį. Įvairiose laboratorijose, kuriose tinkamas drėgmės lygis yra esminis eksperimentų atlikimo parametras, šį jutiklį galima naudoti ten, kur reikia matuoti drėgmę.