Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
HIH6130 yra drėgmės ir temperatūros jutiklis su skaitmenine išvestimi. Šie jutikliai užtikrina ± 4% RH tikslumo lygį. Turėdamas pramonėje pirmaujantį ilgalaikį stabilumą, tikrą temperatūros kompensuojamą skaitmeninį I2C, patikimumą, energijos vartojimo efektyvumą ir itin mažą pakuotės dydį bei galimybes.
Šioje pamokoje buvo parodyta HIH6130 jutiklio modulio sąsaja su arduino nano. Norėdami nuskaityti temperatūros ir drėgmės vertes, mes naudojome arduino 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. HIH6130
2. Arduino nano
3. I2C kabelis
4. „I2C Shield“, skirtas „arduino nano“
2 veiksmas: prijungimas prie aparatūros:
Techninės įrangos prijungimo skyrius iš esmės paaiškina laidų jungtis, reikalingas tarp jutiklio ir „arduino nano“. Užtikrinti teisingas jungtis yra pagrindinė būtinybė dirbant su bet kuria norimos išvesties sistema. Taigi, būtinos jungtys yra šios:
HIH6130 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 ir temperatūros matavimo kodas:
Pradėkime nuo arduino kodo dabar.
Naudodami jutiklio modulį su „Arduino“, įtraukiame „Wire.h“biblioteką. „Wire“bibliotekoje yra funkcijos, palengvinančios „i2c“ryšį tarp jutiklio ir „Arduino“plokštės.
Visas „Arduino“kodas pateiktas žemiau, kad būtų patogiau:
#įtraukti
// HIH6130 I2C adresas yra 0x27 (39)
#define Addr 0x27
negaliojanti sąranka ()
{
// Inicijuoti I2C komunikaciją kaip MASTER
Wire.begin ();
// Inicijuoti nuoseklųjį ryšį, nustatyti duomenų perdavimo spartą = 9600
Serial.begin (9600);
vėlavimas (300);
}
tuštumos kilpa ()
{
nepasirašyti int duomenys [4];
// Pradėti I2C perdavimą
Wire.beginTransmission (Addr);
// Pasirinkite duomenų registrą
Wire.write (0x00);
// Sustabdyti I2C perdavimą
Wire.endTransmission ();
// Prašyti 4 baitų duomenų
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ų
plūdės drėgmė = ((((duomenys [0] ir 0x3F) * 256) + duomenys [1]) * 100,0) / 16383,0;
int temp = ((duomenys [2] * 256) + (duomenys [3] ir 0xFC)) / 4;
plūdė cTemp = (temp / 16384.0) * 165.0 - 40.0;
plūdė fTemp = cTemp * 1,8 + 32;
// Duomenų išvedimas į serijinį monitorių
Serial.print („Santykinė drėgmė:“);
Serijinis atspaudas (drėgmė);
Serial.println (" %RH");
Serial.print ("Temperatūra Celsijaus laipsniais:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Temperatūra Farenheitu:");
Serial.print (fTemp);
Serial.println ("F");
vėlavimas (500);
}
Laidų bibliotekoje Wire.write () ir Wire.read () naudojami komandoms rašyti ir jutiklio išėjimui skaityti.
Serial.print () ir Serial.println () naudojami jutiklio išėjimui rodyti „Arduino IDE“serijos monitoriuje.
Jutiklio išvestis parodyta aukščiau esančiame paveikslėlyje.
4 žingsnis: programos:
HIH6130 gali būti naudojamas tiksliam santykinės drėgmės ir temperatūros matavimui oro kondicionieriuose, entalpijos jutikliams, termostatams, drėkintuvams/drėkintuvams ir drėkintuvams, kad būtų užtikrintas keleivių komfortas. Jis taip pat gali būti naudojamas oro kompresoriuose, oro stotyse ir telekomunikacijų spintelėse.