logo
Published on

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

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

Raspberry Piは、小型で手軽に利用できるシングルボードコンピューターであり、センサーなどを組み合わせて様々なプロジェクトを実現するのに適しています。この記事では、気温および湿度センサー「AM2302」をRaspberry Piに接続し、制御する方法について解説します。

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

1. AM2302センサーの概要

AM2302は、デジタル温湿度センサーであり、非常に正確な温度と湿度の測定が可能です。このセンサーはDHT22とも呼ばれ、Raspberry Piなどのシングルボードコンピューターと連携して使用されます。

2. AM2302の接続

AM2302には4つの線があります。

  • VCC(赤色): 3.3Vの電源
  • DATA(黄色または白色): データ通信用
  • GND(茶色): 接地
  • NC(緑色): 使用しない

これらをRaspberry Piに接続します。VCCを3.3Vに、DATAをGPIOピンに、GNDをGNDに接続します。

3. Pythonコードの作成

Raspberry PiではPythonを使用してセンサーを制御します。以下は、センサーから温度と湿度を読み取るための基本的なPythonコードの例です。

import Adafruit_DHT
import time

# センサーのタイプとGPIOピンの指定
sensor = Adafruit_DHT.AM2302
pin = 4  # 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 sensor.')

        time.sleep(2)  # 2秒待つ

except KeyboardInterrupt:
    print('Measurement stopped by user.')

このコードは、AM2302センサーから温度と湿度を読み取り、2秒ごとに表示します。適宜、ピン番号や待ち時間を変更することができます。

4. コードの実行と確認

コードを保存し、Raspberry Pi上で実行します。センサーが正しく接続されていれば、温度と湿度のデータが定期的に表示されるはずです。

これで、Raspberry PiにAM2302センサーを接続し、Pythonを使用してデータを取得する基本的な手順が完了しました。このデータを活用して、気象情報の収集や自動制御システムの一部として利用することができます。