Ikẹkọ yii jẹ apakan ti: Ẹ̀rọ Ìrírí Ọrinrin àti Ìwọ̀n Òtútù Oní-nọ́ńbà HTU21D
Àwọn fídíò tó jọmọ́ ẹ̀rọ Díjítàlì Relativational Humidity & Temperature Sensor HTU21D. Àwọn ìjápọ̀ sí àwọn fídíò mìíràn wà ní ìsàlẹ̀ àpilẹ̀kọ yìí.
Ẹkọ 35: Lílo HTU21D Sensor Ìwọ̀n-otútù pẹ̀lú Arduino
Ẹkọ 35: Lílo HTU21D Sensa Igbóná pẹ̀lú Arduino
Nínú ẹ̀kọ́ yìí, a óò kọ́ bí a ṣe lè so HTU21D sensa igbóná pọ̀ mọ́ Arduino. Sensa yìí máa ń jẹ́ kí a lè wọn igbóná àti ọ̀rinrin pẹ̀lú ìlànà I2C, èyí tí ó mú kí ó rọrùn láti fi sínú àwọn iṣẹ́ oríṣiríṣi. Nígbà tí ẹ̀kọ́ yìí bá parí, ìwọ yóò lè ka àwọn iye igbóná àti ọ̀rinrin láti inú sensa kí o sì fi wọ́n hàn lórí Serial Monitor.

Fún iṣẹ́ yìí, a óò lo Adafruit library, èyí tí ó pèsè ọ̀nà tí ó rọrùn láti bá HTU21D sensa sọ̀rọ̀. Ìwọ yóò kọ́ bí a ṣe ń tò àwọn okun, kọ kóòdù, àti láti lóye àwọn ohun pàtàkì tí a lò nínú ètò náà. Bí o bá nílò ìpàlápàlà lórí apá kan nínú ìlànà náà, o lè wo fídíò náà (nínú fídíò ní 0:00).
Ohun Èlò Tí A Ṣàlàyé
HTU21D jẹ́ sensa oní nọ́ńbà fún ọ̀rinrin àti igbóná. Ó ń ṣiṣẹ́ lórí ìwọ̀n foltije 1.5V sí 3.6V, èyí tí ó mú kí ó bá 3.3V àti 5V mu. Sensa náà ń bá I2C sọ̀rọ̀, tí ó nílò okun méjì péré fún gbígbé data: Serial Data Line (SDA) àti Serial Clock Line (SCL). Sensa náà kò lo agbára púpọ̀, ó ń lo 0.02 µA péré nígbà tí kò bá ṣiṣẹ́ àti títí di 450 µA nígbà tí ó bá ń wọn.
Yàtọ̀ sí sensa náà, ìwọ yóò nílò Arduino board àti àwọn jumper wires láti so gbogbo rẹ̀ pọ̀. Àwọn ìsopọ̀ náà rọrùn: fún sensa náà ní agbára, so àwọn okun data pọ̀, ìwọ ti ṣetán. Rí i dájú pé àwọn ìsopọ̀ rẹ ṣinṣin láti yẹra fún àwọn ìṣòro ìbánisọ̀rọ̀.
Àwọn Àlàyé Nínú Datasheet
| Olùṣe | TE Connectivity |
|---|---|
| Nọ́ńbà apá | HTU21D-F |
| Foltiye Logic/IO | 1.5 - 3.6 V |
| Foltiye ìpèsè | 3.3 V |
| Ìwọ̀n ìjàde (nígbà tí ó bá wọ́pọ̀) | 0.02 µA (nígbà tí kò ṣiṣẹ́), 450 µA (nígbà tí ó ń ṣiṣẹ́) |
| Ìwọ̀n igbóná | -40 sí +125 °C |
| Ìwọ̀n ọ̀rinrin | 0 sí 100 % RH |
| Ìpinnu (igbóná) | 0.01 °C |
| Ìpinnu (ọ̀rinrin) | 0.04 % RH |
| Àpótí | DFN-8 |
- Rí i dájú pé foltiye ìpèsè tọ́ (1.5 - 3.6 V) láti yẹra fún ìbàjẹ́.
- Lo àwọn pull-up resistors lórí àwọn okun SDA àti SCL bí ó bá pọn dandan.
- Jẹ́ kí àwọn okun kúrú láti dín àríyànjiyàn kù nínú ìbánisọ̀rọ̀ I2C.
- Ṣàyẹ̀wò àwọn ìsopọ̀ dáradára láti yẹra fún àwọn ohun tí kò ní ìsopọ̀.
- Lo heat sink bí o bá ń ṣiṣẹ́ nítòsí àwọn ìwọ̀n igbóná tí ó ga jùlọ.
Àwọn Ìtọ́nisọ́nà Ìsopọ̀

Láti so HTU21D sensa pọ̀ mọ́ Arduino rẹ, bẹ̀rẹ̀ nípa sísopọ̀ àwọn okun agbára. So okun òsì ti sensa náà pọ̀ mọ́ 3.3V tí ó wà lórí Arduino. Okun kejì yẹ kí ó so pọ̀ mọ́ ilẹ̀ (GND). Nígbà tí ó yá, so okun SDA ti sensa pọ̀ mọ́ pin A4 ti Arduino, èyí tí ó jẹ́ okun data fún ìbánisọ̀rọ̀ I2C. Níkẹyìn, so okun SCL ti sensa pọ̀ mọ́ pin A5 lórí Arduino, èyí tí ó jẹ́ okun aago. Rí i dájú pé gbogbo àwọn ìsopọ̀ ṣinṣin láti mú ìbánisọ̀rọ̀ gbígbàṣe.
Bí o bá ń lo board mìíràn, àwọn pin SDA àti SCL lè yàtọ̀, nítorí náà ṣàyẹ̀wò àwọn ìwé ìtọ́nisọ́nà board rẹ. Nínú fídíò náà, àwọn ọ̀nà ìsopọ̀ mìíràn ni a jíròrò ní ṣókí (nínú fídíò ní 1:30).
Àwọn Àpẹẹrẹ Kóòdù & Ìṣàlàyé
A óò wo kóòdù tí ó ń bá HTU21D sensa sọ̀rọ̀ nísinsin yìí. Kọ́kọ́rẹ̀, a nílò láti fi àwọn library tí a nílò fún ìbánisọ̀rọ̀ I2C àti HTU21D sensa sí inú. Àpẹẹrẹ tí ó tẹ̀le yìí fi ìṣiṣẹ́ setup hàn:
void setup() {
Serial.begin(9600);
if (!htu.begin()) {
Serial.println("Couldn't find sensor!");
while (1);
}
}
Níbí, a bẹ̀rẹ̀ Serial Monitor ní ìwọ̀n baud 9600. A sì gbìyànjú láti bẹ̀rẹ̀ sensa náà pẹ̀lú htu.begin(). Bí a kò bá rí sensa náà, ètò náà yóò tẹ̀ ìròyìn àṣìṣe jáde kí ó sì dúró.
Nígbà tí ó yá, a ń ka àwọn iye igbóná àti ọ̀rinrin nígbà gbogbo nínú ìṣiṣẹ́ loop:
void loop() {
float temp = htu.readTemperature();
float rel_hum = htu.readHumidity();
Serial.print("Temperature: "); Serial.print(temp); Serial.println(" C");
Serial.print("Humidity: "); Serial.print(rel_hum); Serial.println(" %");
delay(500);
}
Nínú loop yìí, a ń ka igbóná pẹ̀lú htu.readTemperature() kí a sì fi sí inú àṣàyàn temp. Bákan náà, a ń ka ọ̀rinrin pẹ̀lú htu.readHumidity(). Àwọn iye náà ni a sì ń tẹ̀ jáde sí Serial Monitor ní gbogbo 500 milliseconds.
Fún ọ̀nà tí ó ṣètò dáradára, o lè ṣàlàyé àwọn ìṣiṣẹ́ láti mú àwọn ìwọ̀n náà. Kóòdù kíkún yóò gbé sílẹ̀ lábẹ́ àpilẹ̀kọ yìí, tí yóò fún ọ ní ààyè kíkún sí gbogbo àwọn iṣẹ́ tí a jíròrò.
Ìfihàn / Ohun Tí O Lè Retí
Nígbà tí o bá gbé kóòdù náà sí inú Arduino rẹ kí o sì ṣí Serial Monitor, o yẹ kí o rí àwọn ìwọ̀n igbóná àti ọ̀rinrin nígbà gbogbo. Àwọn iye náà yóò máa yípadà ní gbogbo idaji ìṣẹ́jú kan. Bí sensa náà bá rí àwọn igbóná tí ó ju ìwọ̀n tí ó ga jùlọ 125 °C lọ, ó lè fi òdo tàbí àwọn iye tí kò tọ́ hàn. Èyí jẹ́ ìṣòro tí a sábà máa ń rí nígbà ìdánwò (nínú fídíò ní 4:30).
Àwọn Àkókò Nínú Fídíò
- [00:00] Ìfihàn
- [00:22] Ìwòye Sensa
- [01:22] Àtúnyẹ̀wò Datasheet
- [02:28] Ìsopọ̀
- [03:03] Fífi Library Sọ̀rọ̀
- [04:05] Ìṣàlàyé Kóòdù (Apá 1)
- [08:33] Ìṣàlàyé Kóòdù (Apá 2)
- [07:34] Ìfihàn Láàyè
Ikẹkọ yii jẹ apakan ti: Ẹ̀rọ Ìrírí Ọrinrin àti Ìwọ̀n Òtútù Oní-nọ́ńbà 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);
}
Ohun ti o le nilo
-
Amazon
-
eBayPurchase HTU21D from eBayebay.us
-
AliExpressPurchase HTU21D or SHT21 from AliExpresss.click.aliexpress.com
Orisun & itọkasi
-
Ita gbangbaAdafruit HTU21D Library (GitHub)github.com
-
Ita gbangbaDifference between HTU21DF and HTU21D (image)robojax.com
-
Ita gbangba
-
Ita gbangbaHTU21D Datasheet (PDF)cdn-shop.adafruit.com
Fáìlìs📁
Awọn ile-ikawe Arduino (zip)
-
Adafruit HTU21DF library (Robojax.com)
robojax_HTU21DF_Adafruit_HTU21DF_Library-master.zip0.01 MB