Kazalo:
- 1. korak: Potrebna strojna oprema:
- 2. korak: Priključitev strojne opreme:
- 3. korak: Koda za merjenje temperature in vlažnosti:
- 4. korak: Aplikacije:
Video: Merjenje temperature in vlažnosti z uporabo HDC1000 in Arduino Nano: 4 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
HDC1000 je digitalni senzor vlažnosti z vgrajenim temperaturnim senzorjem, ki zagotavlja odlično merilno natančnost pri zelo nizki moči. Naprava meri vlažnost na podlagi novega kapacitivnega senzorja. Senzorji vlažnosti in temperature so tovarniško umerjeni. Deluje v celotnem temperaturnem območju od -40 ° C do +125 ° C.
V tej vadnici je prikazano povezovanje senzorskega modula HDC1000 z arduino nano. Za branje vrednosti temperature in vlažnosti smo uporabili arduino z adapterjem I2c, ki omogoča enostavno in zanesljivo povezavo s senzorskim modulom.
1. korak: Potrebna strojna oprema:
Materiali, ki jih potrebujemo za dosego našega cilja, vključujejo naslednje komponente strojne opreme:
1. HDC1000
2. Arduino Nano
3. Kabel I2C
4. I2C ščit za Arduino Nano
2. korak: Priključitev strojne opreme:
Oddelek za priključitev strojne opreme v bistvu pojasnjuje potrebne ožičenje med senzorjem in arduino nano. Zagotavljanje pravilnih povezav je osnovna potreba pri delu na katerem koli sistemu za želeni izhod. Torej so potrebne povezave naslednje:
HDC1000 bo deloval preko I2C. Tu je primer sheme ožičenja, ki prikazuje, kako povezati vsak vmesnik senzorja.
Plošča je že pripravljena za vmesnik I2C, zato priporočamo uporabo te povezave, če niste agnostični.
Vse kar potrebujete so štiri žice! Potrebne so le štiri povezave Vcc, Gnd, SCL in SDA, ki so povezane s kablom I2C.
Te povezave so prikazane na zgornjih slikah.
3. korak: Koda za merjenje temperature in vlažnosti:
Začnimo s kodo arduino zdaj.
Med uporabo senzorskega modula z arduinom vključujemo knjižnico Wire.h. Knjižnica "Wire" vsebuje funkcije, ki olajšajo komunikacijo i2c med senzorjem in arduino ploščo.
Celotna koda arduino je podana spodaj za udobje uporabnika:
#vključi
// Naslov HDC1000 I2C je 0x40 (64)
#define Addr 0x40
void setup ()
{
// Inicializirajte komunikacijo I2C kot MASTER
Wire.begin ();
// Začetek serijske komunikacije, nastavljena hitrost prenosa = 9600
Serial.begin (9600);
// Zažene komunikacijo I2C
Wire.beginTransmission (Addr);
// Izberite konfiguracijski register
Wire.write (0x02);
// Temperatura, vlažnost omogočena, ločljivost = 14 bitov, grelec vklopljen
Wire.write (0x30);
// Ustavi prenos I2C
Wire.endTransmission ();
zamuda (300);
}
void loop ()
{
podpisani int podatki [2];
// Zažene komunikacijo I2C
Wire.beginTransmission (Addr);
// Pošlji ukaz za merjenje temp
Wire.write (0x00);
// Ustavi prenos I2C
Wire.endTransmission ();
zamuda (500);
// Zahtevajte 2 bajta podatkov
Wire.requestFrom (Addr, 2);
// Preberite 2 bajta podatkov
// temp msb, temp lsb
če (Wire.available () == 2)
{
podatki [0] = Wire.read ();
podatki [1] = Wire.read ();
}
// Pretvorimo podatke
int temp = (podatki [0] * 256) + podatki [1];
float cTemp = (temp / 65536.0) * 165,0 - 40;
float fTemp = cTemp * 1,8 + 32;
// Zažene komunikacijo I2C
Wire.beginTransmission (Addr);
// Pošlji ukaz za merjenje vlažnosti
Wire.write (0x01);
// Ustavi prenos I2C
Wire.endTransmission ();
zamuda (500);
// Zahtevajte 2 bajta podatkov
Wire.requestFrom (Addr, 2);
// Preberite 2 bajta podatkov
// vlažnost msb, vlažnost lsb
če (Wire.available () == 2)
{
podatki [0] = Wire.read ();
podatki [1] = Wire.read ();
}
// Pretvorimo podatke
vlažnost plovca = (podatki [0] * 256) + podatki [1];
vlažnost = (vlažnost / 65536,0) * 100,0;
// Izhodni podatki na serijski monitor
Serial.print ("Relativna vlažnost:");
Serijski.tisk (vlažnost);
Serial.println (" %RH");
Serial.print ("Temperatura v Celzijusi:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Temperatura v Fahrenheitu:");
Serial.print (fTemp);
Serial.println ("F");
zamuda (500);
}
V knjižnici žic Wire.write () in Wire.read () se uporabljata za pisanje ukazov in branje izhoda senzorja.
Serial.print () in Serial.println () se uporabljata za prikaz izhoda senzorja na serijskem monitorju Arduino IDE.
Izhod senzorja je prikazan na zgornji sliki.
4. korak: Aplikacije:
HDC1000 se lahko uporablja pri ogrevanju, prezračevanju in klimatizaciji (HVAC), pametnih termostatih in sobnih monitorjih. Ta senzor se uporablja tudi v tiskalnikih, ročnih merilcih, medicinskih pripomočkih, pošiljanju tovora, pa tudi v avtomobilski megli.
Priporočena:
Merjenje vlažnosti in temperature z uporabo HIH6130 in Arduino Nano: 4 koraki
Merjenje vlažnosti in temperature z uporabo HIH6130 in Arduino Nano: HIH6130 je senzor vlažnosti in temperature z digitalnim izhodom. Ti senzorji zagotavljajo natančnost ± 4% RH. Z dolgoročno stabilnostjo v industriji, resnično temperaturno kompenziranim digitalnim I2C, vodilno zanesljivostjo v industriji, energetsko učinkovitostjo
Merjenje vlažnosti in temperature z uporabo HTS221 in Arduino Nano: 4 koraki
Merjenje vlažnosti in temperature z uporabo HTS221 in Arduino Nano: HTS221 je ultra kompakten kapacitivni digitalni senzor za relativno vlažnost in temperaturo. Vključuje zaznavni element in integrirano vezje za uporabo z mešanim signalom (ASIC) za zagotavljanje merilnih informacij prek digitalne serijske
Merjenje vlažnosti in temperature z uporabo HTS221 in Raspberry Pi: 4 koraki
Merjenje vlažnosti in temperature z uporabo HTS221 in Raspberry Pi: HTS221 je ultra kompakten kapacitivni digitalni senzor za relativno vlažnost in temperaturo. Vključuje zaznavni element in integrirano vezje za uporabo z mešanim signalom (ASIC) za zagotavljanje merilnih informacij prek digitalne serijske
Merjenje temperature in vlažnosti z uporabo HDC1000 in fotona iz delcev: 4 koraki
Merjenje temperature in vlažnosti z uporabo HDC1000 in fotona iz delcev: HDC1000 je digitalni senzor vlažnosti z vgrajenim temperaturnim senzorjem, ki zagotavlja odlično natančnost merjenja pri zelo nizki moči. Naprava meri vlažnost na podlagi novega kapacitivnega senzorja. Senzorji vlažnosti in temperature so fakt
Merjenje temperature in vlažnosti z uporabo HDC1000 in Raspberry Pi: 4 koraki
Merjenje temperature in vlažnosti z uporabo HDC1000 in Raspberry Pi: HDC1000 je digitalni senzor vlažnosti z vgrajenim temperaturnim senzorjem, ki zagotavlja odlično natančnost merjenja pri zelo nizki moči. Naprava meri vlažnost na podlagi novega kapacitivnega senzorja. Senzorji vlažnosti in temperature so fakt