DHT22温湿度センサー用のArduinoコードとビデオ
このチュートリアルでは、DHT22温度・湿度センサーをArduinoで使う方法を学びます。DHT22(別名AM2302)は、摂氏-40度から80度までの温度と、0%から99%までの湿度を測定できます。このガイドに従えば、温度を摂氏・華氏・ケルビンで表示し、湿度も表示できるようになります。

DHTセンサーライブラリを利用して、センサーからのデータを簡単に読み取ります。このライブラリはDHT22との通信を簡素化し、わずか数行のコードで温度と湿度の値にアクセスできるようにします。より詳しい説明は、関連する動画(動画の00:00)をご覧ください。
ハードウェア解説
このプロジェクトの主要なコンポーネントはDHT22センサーモジュールで、デジタル温湿度センサーです。静電容量式の湿度検出素子とサーミスタを用いて周囲の空気を測定します。出力はデジタル信号で、Arduinoで読み取ることができます。
DHT22は3.3〜5ボルトの電圧で動作し、1線式インターフェースで通信するため、プロジェクトへの組み込みが容易です。最大20メートルの長距離伝送に対応しており、センサー配置の柔軟性が高まります。
データシートの詳細
| 製造元 | アオソン |
|---|---|
| 部品番号 | DHT22(AM2302) |
| ロジック/入出力電圧 | 3.3〜5V |
| 電源電圧 | 3.3~5V |
| 測定範囲(温度) | -40〜+80°C |
| 測定範囲(湿度) | 0〜99% |
| 精度(温度) | ±0.5°C |
| 精度(湿度) | 25℃で±2% |
| 解像度 | 0.1°C / 0.1% |
| 伝送距離 | 最大20 m |
| パッケージ | 4ピンモジュール |
- 電源は3.3V〜5Vの範囲で適切に供給してください。
- データピンと電源の間に10kΩのプルアップ抵抗を使用してください。
- 正確な測定のため、センサーの配線は短く保ってください。
- 短時間での連続ポーリングは避け、読み取り間に遅延を設けてください。
- 測定値に影響を与える環境要因に注意してください。
配線手順

DHT22センサーを配線するには、まずセンサーの電源ピン(ピン1)をArduinoの5V出力に接続します。次に、グラウンドピン(ピン4)をArduinoのGNDピンのいずれかに接続します。データピン(ピン2)は通信のためにArduinoのデジタルピン2に接続してください。さらに、安定した読み取りを得るためにデータピンと電源ピンの間に10kΩの抵抗を入れてください。
データ用に別のピンを使用している場合は、それに合わせてコード内のピン指定を変更して更新することを忘れないでください#define DHTPIN選択したピンに合わせる値。設定は簡単なはずです。これらの接続に従えば、センサーは正しく動作します。
コード例と解説
次のコードはDHT22センサーを初期化し、温度と湿度の値を読み取ります。まず、DHTライブラリをインクルードし、センサーが接続されているピンを定義します:
#include "DHT.h"
#define DHTPIN 2 // what digital pin we're connected to
#define DHTTYPE DHT22 // DHT 22 (AM2302)
DHT dht(DHTPIN, DHTTYPE);ここで、変数DHTPINは2に設定されており、これはセンサーのデータピンがArduinoのデジタルピン2に接続されていることを示します。そのDHTTYPE使用されるセンサーの種類を定義しており、この場合はDHT22です。
次に、その中でsetup()関数内で、センサーとシリアルモニタを初期化します:
void setup() {
Serial.begin(9600);
dht.begin();
}このコードスニペットはシリアル通信を初期化し、DHTセンサーの読み取りの準備を行います。そのSerial.begin(9600)シリアル通信のボーレートを設定します。
その中でloop()この関数で、温度と湿度の値を読み取り、表示できます:
Serial.print("Temperature: ");
Serial.print(getTemp("c")); // Celsius
Serial.print(" *C ");
Serial.print(getTemp("h")); // Humidity
Serial.println(" % ");このコードのこの部分は摂氏の温度と湿度(%)をシリアルモニタに出力します。関数getTemp()渡されたパラメータに基づいて要求されたデータを取得するために使用されます。
デモンストレーション/当日の内容
すべてが設定され、コードがアップロードされると、シリアルモニタに温度と湿度の測定値が表示されるはずです。DHT22は安定するまで少し時間がかかることがあるので、測定間に数秒の間隔をあけてください(ビデオでは15:00)。測定値に問題がある場合は配線を確認し、接続が確実かどうかを確認してください。よくある落とし穴はピン割り当ての誤りや電源の問題です。
動画のタイムスタンプ
- 00:00- DHT22センサーの紹介
- 01:30- センサーの配線
- 03:00- コードの説明
- 04:30- コードデモ
- 06:00- 結論
リソースと参考文献
ファイル📁
Arduinoライブラリ(zip)
-
DHT22 PCB module red
application/zip0.01 MB
フリッツィングファイル
-
DHT22 Humidity and Temperature Sensor
application/zip0.01 MB -
DHT22 PCB module red
application/zip0.01 MB
ユーザーマニュアル
-
DHT22 Temperature and Humidity sensor user's manual
application/pdf0.36 MB