このチュートリアルはの一部です: デジタル相対湿度・温度センサー HTU21D
デジタル相対湿度・温度センサー HTU21D に関する動画。他の動画へのリンクはこの記事の下にあります。
ArduinoでHTU21DF湿度・温度センサーを使用する方法(カスタムコード)
このコードは、HTU21DFセンサーを使用して温度と湿度を測定するためのものです。全ハードウェア、2種類のコード、およびデモが表示されています。このコードは、温度を摂氏、華氏、またはケルビンで表示し、湿度をビデオに表示されたシリアルモニターに表示します。他の関連するコードについては、このスクリーンを下にスクロールしてください。
このチュートリアルはの一部です: デジタル相対湿度・温度センサー HTU21D
211-Arduino code using HTU21D-F Humidity & Temperature Sensor (Advanced)
言語: C++
/*
* Written/Updated by Ahmad Shamshiri on July 13, 2019
* in Ajax, Ontario, Canada
* Watch video instructions for this sketch: https://youtu.be/Q5y18rgTAhA
**************************************************
*
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 displays 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 htu = Adafruit_HTU21DF();
void setup() {
Serial.begin(9600);
Serial.println("Robojax.com");
Serial.println("HTU21D-F test");
if (!htu.begin()) {
Serial.println("Couldn't find sensor!");
while (1);
}
}
void loop() {
// Robojax HTU21DF Code
Serial.print(getHTU('C'));
printDegree();
Serial.println("C");
Serial.print(getHTU('F'));
printDegree();
Serial.println("F");
Serial.print(getHTU('K'));
Serial.println("K");
Serial.println(" ");
Serial.print("Humidity:");
Serial.print(getHTU('H'));
Serial.println("%");
if(getHTU('C') <81)
{
//digitalWrite(5, LOW);
}
delay(1000);
}
/*
* @brief returns temperature or relative humidity
* @param "type" is a character
* C = Celsius
* K = Kelvin
* F = Fahrenheit
* H = Humidity
* @return returns one of the values above
* Usage: to get Fahrenheit type: getHTU('F')
* to print it on the serial monitor: Serial.println(getHTU('F'));
* Written by Ahmad Shamshiri on July 13, 2019
* in Ajax, Ontario, Canada
* www.Robojax.com
*/
float getHTU(char type)
{
float value;
float temp = htu.readTemperature();
float rel_hum = htu.readHumidity();
if(type =='F')
{
value = temp *9/5 + 32;//convert to Fahrenheit
}else if(type =='K')
{
value = temp + 273.15;//convert to Kelvin
}else if(type =='H')
{
value = rel_hum;//return relative humidity
}else{
value = temp;// return Celsius
}
return value;
}//
/*
* @brief prints degree symbol on serial monitor
* @param none
* @return returns nothing
* Written by Ahmad Shamshiri on July 13, 2019
* for Robojax Tutorial Robojax.com
*/
void printDegree()
{
Serial.print("\\xC2");
Serial.print("\\xB0");
}
必要かもしれないもの
-
アマゾンAmazonでHTU21Dモジュールを購入するamzn.to
-
イーベイeBayからHTU21Dを購入してください。ebay.us
-
アリエクスプレスAliExpressでHTU21DまたはSHT21を購入してください。s.click.aliexpress.com
リソースと参考文献
-
外部Adafruit HTU21Dライブラリ(GitHub)github.com
ファイル📁
データシート(pdf)
-
HTU21D温度・湿度データシート
HTU21D_temerature_humidity_datasheet.pdf0.96 MB