
Orodha ya maudhui:
2025 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2025-01-23 15:11


HTS221 ni sensorer ya hali ya juu ya hali ya hewa yenye unyevu na joto. Inajumuisha kipengee cha kuhisi na matumizi ya ishara iliyochanganywa mzunguko maalum uliounganishwa (ASIC) kutoa habari ya kipimo kupitia njia kuu za dijiti. Imejumuishwa na huduma nyingi hii ni moja ya sensorer zinazofaa zaidi kwa vipimo muhimu vya unyevu na joto.
Katika mafunzo haya kuingiliana kwa moduli ya sensorer ya HTS221 na nano ya arduino imeonyeshwa. Kusoma viwango vya unyevu na joto, tumetumia arduino na adapta ya I2c. Adapter hii ya I2C inafanya unganisho kwa moduli ya sensa iwe rahisi na ya kuaminika.
Hatua ya 1: Vifaa vinahitajika:



Vifaa ambavyo tunahitaji kutimiza lengo letu ni pamoja na vifaa vifuatavyo vya vifaa:
1. HTS221
2. Arduino Nano
3. Cable ya I2C
4. I2C Shield kwa Arduino Nano
Hatua ya 2: Kuunganishwa kwa vifaa:


Sehemu ya uunganishaji wa vifaa kimsingi inaelezea uunganisho wa wiring unaohitajika kati ya sensa na nano ya arduino. Kuhakikisha unganisho sahihi ni hitaji la msingi wakati unafanya kazi kwenye mfumo wowote wa pato unalotaka. Kwa hivyo, viunganisho vinavyohitajika ni kama ifuatavyo.
HTS221 itafanya kazi juu ya I2C. Hapa kuna mfano wa mchoro wa wiring, unaonyesha jinsi ya kuweka waya kila kiunganishi cha sensa.
Nje ya sanduku, bodi imesanidiwa kwa kiolesura cha I2C, kwa hivyo tunapendekeza utumie uunganisho huu ikiwa wewe ni agnostic.
Unachohitaji ni waya nne! Viunganisho vinne tu vinahitajika Vcc, Gnd, SCL na SDA pini na hizi zimeunganishwa kwa msaada wa kebo ya I2C.
Uunganisho huu umeonyeshwa kwenye picha hapo juu.
Hatua ya 3: Nambari ya Upimaji wa Unyevu na Joto:

Wacha tuanze na nambari ya Arduino sasa.
Wakati wa kutumia moduli ya sensorer na Arduino, tunajumuisha maktaba ya Wire.h. Maktaba ya "Waya" ina kazi ambazo zinawezesha mawasiliano ya i2c kati ya sensa na bodi ya Arduino.
Nambari nzima ya Arduino imepewa hapa chini kwa urahisi wa mtumiaji:
# pamoja
// Anwani ya HTS221 I2C ni 0x5F
#fafanua Addr 0x5F
kuanzisha batili ()
{
// Anzisha mawasiliano ya I2C kama MASTER
Wire.begin ();
// Anzisha mawasiliano ya serial, weka kiwango cha baud = 9600
Kuanzia Serial (9600);
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Chagua rejista ya usanidi wastani
Andika waya (0x10);
// Sampuli za wastani wa joto = 256, Sampuli za wastani wa unyevu = 512
Andika waya (0x1B);
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Chagua rejista ya kudhibiti1
Andika waya (0x20);
// Power ON, Kuendelea kusasisha, kiwango cha pato la data = 1 Hz
Andika waya (0x85);
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
kuchelewesha (300);
}
kitanzi batili ()
{
data isiyowekwa saini [2];
unsigned int val [4];
unsigned int H0, H1, H2, H3, T0, T1, T2, T3, mbichi;
// Thamani za upunguzaji wa unyevu
kwa (int i = 0; i <2; i ++)
{
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Tuma rejista ya data
Andika waya ((48 + i));
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Omba 1 byte ya data
Ombi la Wire. Toka (Addr, 1);
// Soma 1 ka data
ikiwa (Waya haipatikani () == 1)
{
data = soma kwa waya ();
}
}
// Badilisha data ya Unyevu
H0 = data [0] / 2;
H1 = data [1] / 2;
kwa (int i = 0; i <2; i ++)
{
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Tuma rejista ya data
Andika waya ((54 + i));
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Omba 1 byte ya data
Ombi la Wire. Toka (Addr, 1);
// Soma 1 ka data
ikiwa (Waya haipatikani () == 1)
{
data = soma kwa waya ();
}
}
// Badilisha data ya Unyevu
H2 = (data [1] * 256.0) + data [0];
kwa (int i = 0; i <2; i ++)
{
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Tuma rejista ya data
Andika waya ((58 + i));
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Omba 1 byte ya data
Ombi la Wire. Toka (Addr, 1);
// Soma 1 ka data
ikiwa (Waya haipatikani () == 1)
{
data = soma kwa waya ();
}
}
// Badilisha data ya Unyevu
H3 = (data [1] * 256.0) + data [0];
// Thamani za upigaji joto
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Tuma rejista ya data
Andika waya (0x32);
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Omba 1 byte ya data
Ombi la Wire. Toka (Addr, 1);
// Soma 1 ka data
ikiwa (Waya haipatikani () == 1)
{
T0 = soma kwa waya ();
}
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Tuma rejista ya data
Andika waya (0x33);
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Omba 1 byte ya data
Ombi la Wire. Toka (Addr, 1);
// Soma 1 ka data
ikiwa (Waya haipatikani () == 1)
{
T1 = soma kwa waya ();
}
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Tuma rejista ya data
Andika waya (0x35);
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Omba 1 byte ya data
Ombi la Wire. Toka (Addr, 1);
// Soma 1 ka data
ikiwa (Waya haipatikani () == 1)
{
ghafi = waya.soma ();
}
mbichi = mbichi & 0x0F;
// Badilisha viwango vya joto vya joto kuwa 10-bits
T0 = ((mbichi & 0x03) * 256) + T0;
T1 = ((mbichi & 0x0C) * 64) + T1;
kwa (int i = 0; i <2; i ++)
{
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Tuma rejista ya data
Andika waya ((60 + i));
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Omba 1 byte ya data
Ombi la Wire. Toka (Addr, 1);
// Soma 1 ka data
ikiwa (Waya haipatikani () == 1)
{
data = soma kwa waya ();
}
}
// Badilisha data
T2 = (data [1] * 256.0) + data [0];
kwa (int i = 0; i <2; i ++)
{
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Tuma rejista ya data
Andika waya ((62 + i));
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Omba 1 byte ya data
Ombi la Wire. Toka (Addr, 1);
// Soma 1 ka data
ikiwa (Waya haipatikani () == 1)
{
data = soma kwa waya ();
}
}
// Badilisha data
T3 = (data [1] * 256.0) + data [0];
// Anza Uhamisho wa I2C
Uwasilishaji wa waya (Addr);
// Tuma rejista ya data
Andika waya (0x28 | 0x80);
// Acha Uhamisho wa I2C
Uwasilishaji wa waya ();
// Omba ka 4 za data
Ombi la Wire. Toka (Addr, 4);
// Soma ka 4 za data
// unyevu msb, unyevu lsb, temp msb, temp lsb
ikiwa (Waya haipatikani () == 4)
{
val [0] = Soma kwa waya ();
val [1] = Soma kwa waya ();
val [2] = soma ya waya ();
val [3] = soma ya waya ();
}
// Badilisha data
unyevu wa kuelea = (val [1] * 256.0) + val [0];
unyevu = ((1.0 * H1) - (1.0 * H0)) * (1.0 * unyevu - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0);
int temp = (val [3] * 256) + val [2];
kuelea cTemp = ((((T1 - T0) / 8.0) * (temp - T2)) / (T3 - T2) + (T0 / 8.0);
kuelea fTemp = (cTemp * 1.8) + 32;
// data ya Pato kwa mfuatiliaji wa serial
Serial.print ("Unyevu wa jamaa:");
Printa ya serial (unyevu);
Serial.println ("% RH");
Serial.print ("Joto katika Celsius:");
Serial.print (cTemp); Serial.println ("C");
Serial.print ("Joto katika Fahrenheit:");
Serial.print (fTemp);
Serial.println ("F");
kuchelewesha (500);
}
Katika maktaba ya waya Wire.write () na Wire.read () hutumiwa kuandika amri na kusoma pato la sensorer.
Serial.print () na Serial.println () hutumiwa kuonyesha pato la sensa kwenye mfuatiliaji wa serial wa IDE ya Arduino.
Pato la sensor linaonyeshwa kwenye picha hapo juu.
Hatua ya 4: Maombi:

HTS221 inaweza kuajiriwa katika bidhaa anuwai za watumiaji kama viboreshaji hewa na majokofu n.k. Sensor hii pia hupata matumizi yake katika uwanja mpana pamoja na mitambo ya Smart nyumbani, mitambo ya Viwanda, vifaa vya kupumua, ufuatiliaji wa mali na bidhaa.
Ilipendekeza:
Jinsi ya kutumia DHT22 Unyevu wa unyevu na joto la joto na Arduino: Hatua 6

Jinsi ya kutumia unyevu wa DHT22 na sensorer ya joto na Arduino: Katika mafunzo haya tutajifunza jinsi ya kutumia unyevu wa DHT22 na Sensor ya Joto na Arduino na kuonyesha maadili kwenye OLED Onyesha video
Upimaji wa Unyevu na Joto Kutumia HIH6130 na Arduino Nano: Hatua 4

Upimaji wa Unyevu na Joto Kutumia HIH6130 na Arduino Nano: HIH6130 ni unyevu na sensorer ya joto na pato la dijiti. Sensorer hizi hutoa kiwango cha usahihi wa ± 4% RH. Pamoja na utulivu wa muda mrefu wa kuongoza kwa tasnia, I2C ya kweli inayolipa joto ya dijiti, kuegemea kwa Viwanda, Ufanisi wa Nishati
Upimaji wa Unyevu na Joto Kutumia HTS221 na Raspberry Pi: 4 Hatua

Upimaji wa Unyevu na Joto Kutumia HTS221 na Raspberry Pi: HTS221 ni sensa ya dhabiti yenye nguvu ya hali ya hewa ya unyevu na joto. Inajumuisha kipengee cha kuhisi na mchanganyiko wa matumizi ya ishara maalum ya mzunguko uliounganishwa (ASIC) kutoa habari ya kipimo kupitia nambari ya dijiti
Upimaji wa Unyevu na Joto Kutumia HTS221 na Particle Photon: 4 Hatua

Upimaji wa Unyevu na Joto Kutumia HTS221 na Particle Photon: HTS221 ni sensa ya dhabiti yenye nguvu ya hali ya hewa ya unyevu na joto. Inajumuisha kipengee cha kuhisi na mchanganyiko wa matumizi ya ishara maalum ya mzunguko uliounganishwa (ASIC) kutoa habari ya kipimo kupitia nambari ya dijiti
Jinsi ya kutumia Sensor ya Joto la DHT11 na Arduino na Joto la Uchapishaji wa Joto na Unyevu: Hatua 5

Jinsi ya Kutumia Sensorer ya Joto la DHT11 Na Arduino na Joto la Uchapishaji Joto na Unyevu: Sura ya DHT11 hutumiwa kupima joto na unyevu. Unyevu wa DHT11 na sensorer ya joto hufanya iwe rahisi sana kuongeza data ya unyevu na joto kwenye miradi yako ya elektroniki ya DIY. Ni kwa kila