ArduinoでGROVE デジタル温度・湿度センサを使う

1つのモジュールで温度と湿度を同時に計測できるGROVE デジタル温度・湿度センサを購入したので簡単な使い方を解説します。

前提条件として 「Arduino Uno」+「GROVEベースシールド」が必要です。

GROVE デジタル温度・湿度センサ(820円)


ライブラリのインストール

Arduino IDE の [スケッチ] → [ライブラリをインクルード] → [ライブラリを管理] からキーワード「Grove Temperature And Humidity Sensor」で検索します。

複数表示される場合には「DHT11」と表示されているライブラリをインストールしてください。


温度と湿度をシリアルモニタに出力するスケッチ

デジタル温度・湿度センサは[D2]に接続します。

#include "DHT.h"

#define DHTPIN 2
#define DHTTYPE DHT11

DHT dht(DHTPIN , DHTTYPE);

///=======================================================================
//   +setup
///=======================================================================

void setup() {

	//---Serialポートを開く
	Serial.begin(9600);

	//---温度計初期化
	dht.begin();
}

///=======================================================================
//   +loop
///=======================================================================

void loop() {

	float h = dht.readHumidity();
	float t = dht.readTemperature();

	if(isnan(t) || isnan(h)){

		Serial.println("Failed to read from DHT");

	}else{

		Serial.print("湿度: ");
		Serial.print(h);
		Serial.print(" %t");
		Serial.print("温度: ");
		Serial.print(t);
		Serial.println(" ℃");
	}
	
	//---1秒の遅延
	delay(1000);
}

スケッチ実行結果

スケッチを実行するとシリアルモニタに温度と湿度が出力されます。

安定した電源に接続しないと数値が不安定になる事がありました。また小数点以下の数値は計測されないようです。

※計測した温度が一定にならなかったりディスプレイ表示が異常な場合には、GROVEベースシールドに3.3Vと5Vの切替スイッチがありますので5V側に切り替わっているか確認してください。3.3Vでは正しく動作しません。