Wannan koyawa wani ɓangare ne na: Na'urar auna zafi da zafi ta dijital HTU21D
Bidiyoyi masu alaƙa da na'urar auna zafi da danshi ta dijital HTU21D. Hanyoyin haɗi zuwa wasu bidiyo suna ƙasa da wannan labarin.
Darasi na 35: Yin amfani da na'urar zafin jiki ta HTU21D tare da Arduino
Darasi na 35: Yin Amfani da Na'urar Zazzabi ta HTU21D tare da Arduino
A cikin wannan koyarwar, za mu koyi yadda ake haɗa na'urar zazzabi ta HTU21D da Arduino. Wannan na'urar tana ba da damar auna zazzabi da danshi daidai ta amfani da sadarwar I2C, wanda ke sauƙaƙa haɗawa cikin ayyuka daban-daban. A ƙarshen wannan darasi, za ku iya karanta ƙimar zazzabi da danshi daga na'urar kuma ku nuna su a kan Serial Monitor.

Don wannan aikin, za mu yi amfani da ɗakin karatu na Adafruit, wanda ke ba da hanya mai sauƙi don sadarwa da na'urar HTU21D. Za ku koyi yadda ake saita wayoyi, rubuta lambar, da fahimtar mahimman alamomin da aka yi amfani da su a cikin shirin. Idan kuna buƙatar ƙarin bayani kan kowane ɓangare na tsari, kuna iya koma ga bidiyon (a cikin bidiyo a 0:00).
Bayanin Kayan Aiki
HTU21D na'urar auna danshi da zazzabi ce ta dijital. Tana aiki a kan kewayon wutar lantarki na 1.5V zuwa 3.6V, wanda ya dace da tsarin 3.3V da 5V. Na'urar tana sadarwa ta I2C, tana buƙatar wayoyi biyu kawai don canja wurin bayanai: Serial Data Line (SDA) da Serial Clock Line (SCL). Na'urar tana da ƙarancin amfani da wutar lantarki, tana ɗaukar 0.02 µA kawai lokacin da ba ta aiki ba kuma har zuwa 450 µA yayin aunawa.
Baya ga na'urar, za ku buƙaci allo na Arduino da wasu wayoyi masu haɗawa don haɗa komai. Haɗin suna da sauƙi: ba da wutar lantarki ga na'urar, haɗa layukan bayanai, kuma kun shirya. Tabbatar cewa haɗinku suna da ƙarfi don guje wa matsalolin sadarwa.
Cikakkun Bayanai na Datasheet
| Mai Ƙirƙira | TE Connectivity |
|---|---|
| Lambar sashi | HTU21D-F |
| Wutar Logic/IO | 1.5 - 3.6 V |
| Wutar samarwa | 3.3 V |
| Fitar wutar (na yau da kullun) | 0.02 µA (lokacin hutu), 450 µA (lokacin aiki) |
| Kewayon zazzabi | -40 zuwa +125 °C |
| Kewayon danshi | 0 zuwa 100 % RH |
| Ƙimar auna (zazzabi) | 0.01 °C |
| Ƙimar auna (danshi) | 0.04 % RH |
| Kunshin | DFN-8 |
- Tabbatar da ingantaccen wutar samarwa (1.5 - 3.6 V) don guje wa lalacewa.
- Yi amfani da resistors masu ɗagawa akan layukan SDA da SCL idan ya cancanta.
- Ka tsare wayoyi su kasance gajeru don rage hayaniya a sadarwar I2C.
- Bincika haɗin a hankali don guje wa shigarwar da ba ta da tushe.
- Yi amfani da abin rarraba zafi idan kuna aiki kusa da iyakar zazzabi mafi girma.
Umarnin Haɗa Wayoyi

Don haɗa na'urar HTU21D zuwa Arduino, fara da haɗa fil ɗin wutar lantarki. Haɗa fil ɗin hagu na na'urar zuwa fitar 3.3V akan Arduino. Fil na biyu ya kamata a haɗa shi da ƙasa (GND). Na gaba, haɗa fil ɗin SDA na na'urar zuwa fil ɗin A4 na Arduino, wanda ke aiki azaman layin bayanai don sadarwar I2C. A ƙarshe, haɗa fil ɗin SCL na na'urar zuwa fil ɗin A5 akan Arduino, wanda ke aiki azaman layin agogo. Tabbatar cewa duk haɗin suna da ƙarfi don kiyaye sadarwa mai dogaro.
Idan kuna amfani da wani allo daban, fil ɗin SDA da SCL na iya bambanta, don haka duba ƙayyadaddun allo ɗinku. A cikin bidiyon, an tattauna zaɓuɓɓukan haɗin wayoyi daban-daban a taƙaice (a cikin bidiyo a 1:30).
Misalan Lamba & Bayani
Yanzu za mu duba lambar da ke sadarwa da na'urar HTU21D. Da farko, muna buƙatar haɗa ɗakunan karatu masu dacewa don sadarwar I2C da na'urar HTU21D. Wannan ɓangaren da ke gaba yana nuna aikin saitin:
void setup() {
Serial.begin(9600);
if (!htu.begin()) {
Serial.println("Ba a sami na'urar ba!");
while (1);
}
}
A nan, muna fara Serial Monitor a ƙimar baud na 9600. Sannan muna ƙoƙarin fara na'urar da htu.begin(). Idan ba a sami na'urar ba, shirin zai buga saƙon kuskure kuma ya tsaya.
Na gaba, muna ci gaba da karanta ƙimar zazzabi da danshi a cikin aikin madauki:
void loop() {
float temp = htu.readTemperature();
float rel_hum = htu.readHumidity();
Serial.print("Zazzabi: "); Serial.print(temp); Serial.println(" C");
Serial.print("Danshi: "); Serial.print(rel_hum); Serial.println(" %");
delay(500);
}
A cikin wannan madauki, muna karanta zazzabi ta amfani da htu.readTemperature() kuma mu adana shi a cikin ma'aunin temp. Hakazalika, muna karanta danshi da htu.readHumidity(). Ana buga ƙimar zuwa Serial Monitor kowane milisakanci 500.
Don ingantacciyar hanya, kuna iya ayyana ayyuka don sarrafa karatun. Cikakken lambar zai ɗora a ƙarƙashin wannan labarin, yana ba ku cikakken damar yin amfani da duk ayyukan da aka tattauna.
Nuni / Abin da Za Ku Yi Tsammani
Lokacin da kuka ɗora lambar zuwa Arduino kuma ku buɗe Serial Monitor, ya kamata ku ga ci gaba da karatun zazzabi da danshi. Ƙimar za su sabunta kowane rabin daƙiƙa. Idan na'urar ta gano zazzabi sama da iyakar mafi girma na 125 °C, tana iya nuna sifili ko ƙimar kuskure. Wannan matsala ce ta gama gari da za a kula da ita yayin gwaji (a cikin bidiyo a 4:30).
Lokutan Bidiyo
- [00:00] Gabatarwa
- [00:22] Bayanin Na'urar
- [01:22] Binciken Datasheet
- [02:28] Haɗa Wayoyi
- [03:03] Shigar da ɗakin karatu
- [04:05] Bayanin Lamba (Kashi na 1)
- [08:33] Bayanin Lamba (Kashi na 2)
- [07:34] Nuni na Kai Tsaye
Wannan koyawa wani ɓangare ne na: Na'urar auna zafi da zafi ta dijital HTU21D
- Lesson 35-1: Using the HTU21D Temperature Sensor
- Lesson 35-2: Using the HTU21D Temperature Sensor Custom Code
- Lesson 36: Using the HTU21D Temperature Sensor with an LCD Arduino Step-by-Step Course
- Using Two More HTU21DF Humidity and Temperature Sensors with Arduino
- Displaying Temperature from an HTU21D on an LCD
- Displaying Temperature from an HTU21D as a Bar Graph on an LCD
- How to Use the HTU21DF Humidity and Temperature Sensor with Arduino (Basic Code)
- How to Use the HTU21DF Humidity and Temperature Sensor with Arduino (Custom Code)
++
/***************************************************
This is an example for the HTU21D-F Humidity & Temperature Sensor
Designed specifically to work with the HTU21D-F sensor from Adafruit
----> https://www.adafruit.com/products/1899
These module use I2C to communicate; 2 pins are required to
interface
****************************************************/
#include <Wire.h>
#include "Adafruit_HTU21DF.h"
// Connect Vin to 3-5VDC
// Connect GND to ground
// Connect SCL to I2C clock pin (A5 on UNO)
// Connect SDA to I2C data pin (A4 on UNO)
Adafruit_HTU21DF htu1 = Adafruit_HTU21DF();//create object for first HTU21DF sensor
Adafruit_HTU21DF htu2 = Adafruit_HTU21DF();//create object for second HTU21DF sensor
//Adafruit_HTU21DF htu3 = Adafruit_HTU21DF();//create object for third HTU21DF sensor (disabled, remove // from begging of code)
void setup() {
Serial.begin(9600);
Serial.println("HTU21D-F test for two modules");
if (!htu.begin()) {
Serial.println("Couldn't find sensor!");
while (1);
}
}
void loop() {
//get value for sensor 1
float temp1 = htu1.readTemperature();
float rel_hum1 = htu1.readHumidity();
//get value for sensor 2
float temp2 = htu2.readTemperature();
float rel_hum2 = htu2.readHumidity();
//get value for sensor 3
float temp3 = htu3.readTemperature();
float rel_hum3 = htu3.readHumidity();
//print values for sensor 1
Serial.print("Sensor 1 Temp : "); Serial.print(temp1); Serial.print(" C");
Serial.print("\t\t");
Serial.print("Sensor 1 Humidity: "); Serial.print(rel_hum1); Serial.println(" %");
//print values for sensor 2
Serial.print("Sensor 2 Temp : "); Serial.print(temp2); Serial.print(" C");
Serial.print("\t\t");
Serial.print("Sensor 2 Humidity: "); Serial.print(rel_hum2); Serial.println(" %");
//print values for sensor 3
//Serial.print("Sensor 3 Temp : "); Serial.print(temp3); Serial.print(" C");
//Serial.print("\t\t");
//Serial.print("Sensor 3 Humidity: "); Serial.print(rel_hum3); Serial.println(" %");
delay(500);
}
Abin da zaka iya bukata
-
Amazon
-
eBayPurchase HTU21D from eBayebay.us
-
AliExpressPurchase HTU21D or SHT21 from AliExpresss.click.aliexpress.com
Albarkatun da kuma shafukan da za a duba
-
WajeAdafruit HTU21D Library (GitHub)github.com
-
WajeDifference between HTU21DF and HTU21D (image)robojax.com
-
WajeHTU21D Datasheet (PDF)cdn-shop.adafruit.com
Fayiloli📁
Littattafan Arduino (zip)
-
Adafruit HTU21DF library (Robojax.com)
robojax_HTU21DF_Adafruit_HTU21DF_Library-master.zip0.01 MB