logo
Published on

Raspberry Piに「DHT22」を接続し制御する

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

Raspberry Piは小型で強力なシングルボードコンピューターであり、様々なセンサーやデバイスと組み合わせて利用できます。この記事では、温湿度センサー「DHT22」をRaspberry Piに接続し、制御する方法について解説します。

※モジュールの価格を比較 ▶ TemuAliExpress楽天メルカリ

1. DHT22センサーの概要

DHT22は、温度と湿度を同時に測定できるセンサーモジュールです。デジタル出力を持ち、Raspberry Piなどのマイコンボードと組み合わせて気象観測や環境モニタリングなどに利用されます。

2. DHT22の接続

DHT22には通常、3本の線があります。

  • VCC(赤色): 3.3Vまたは5Vの電源
  • GND(茶色): 接地
  • データ(黄色または白色): データの受信

これらを対応するRaspberry PiのGPIOピンに接続します。例えば、VCCを3.3Vまたは5Vに、GNDをGNDに、データをRaspberry PiのGPIOピンに接続します。

3. Pythonコードの作成

Raspberry Piでは、Pythonを使ってDHT22を制御することが一般的です。以下は、DHT22が接続されたGPIOピンが4番だと仮定した例です。

import Adafruit_DHT
import time

sensor = Adafruit_DHT.DHT22
pin = 4  # DHT22が接続されたGPIOピン

try:
    while True:
        humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)
        if humidity is not None and temperature is not None:
            print(f'Temperature: {temperature:.2f}°C, Humidity: {humidity:.2f}%')
        else:
            print('Failed to retrieve data from DHT22 sensor')
        time.sleep(2)  # 2秒ごとに温湿度を取得

except KeyboardInterrupt:
    print('Program terminated by user')

finally:
    print('Exiting program')

このPythonコードは、DHT22から温湿度データを読み取り、それをターミナルに表示する簡単な例です。適宜、読み取りの間隔やデータの処理方法を変更することができます。

4. コードの実行と確認

Raspberry Pi上でPythonコードを実行して、DHT22から正しい温湿度データが得られるか確認します。実行が成功すれば、Raspberry Piは定期的にデータを取得して表示します。

これで、Raspberry PiにDHT22を接続し、Pythonコードを用いて簡単な温湿度モニタリングを行うための基本的な手順が完了しました。将来的には、取得したデータを可視化したり、データベースに保存したりするなど、さまざまな拡張が可能です。