logo
Published on

Arduinoに「AM2320」を接続し制御する

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

「AM2320」は、温湿度センサーモジュールであり、Arduinoを使用して簡単に制御できます。この記事では、「AM2320」をArduinoに接続し、温度と湿度のデータを取得する方法について詳しく解説します。

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

1. AM2320センサーモジュールの概要

AM2320は、高精度かつデジタルな温湿度センサーです。I2C通信プロトコルを使用しており、Arduinoなどのマイコンボードに接続することができます。このセンサーを使用することで、環境の温度と湿度を正確に測定することが可能です。

2. AM2320の接続

AM2320をArduinoに接続するためには、4つのピンがあります。

  • VCC(赤色): 5Vの電源
  • GND(茶色): 接地
  • SCL(緑色): I2Cクロックライン
  • SDA(白色または黄色): I2Cデータライン

これらを対応するArduinoのピンに接続します。一般的な接続では、VCCを5Vに、GNDをGNDに、SCLをA5に、SDAをA4に接続します。

3. Arduinoコードの作成

次に、Arduino IDEを開いてAM2320を制御するためのコードを書きます。AM2320のデータを読み取るには、AdafruitのAM2320ライブラリを使用するのが便利です。まず、ライブラリを導入します。

  1. Arduino IDEを開く
  2. 「スケッチ」 -> 「ライブラリをインクルード」 -> 「ライブラリを管理」を選択
  3. 検索バーに「AM2320」を入力し、Adafruit AM2320を選択してインストール

以下は、AM2320から温度と湿度を読み取る基本的なコード例です。

#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_AM2320.h>

Adafruit_AM2320 am2320 = Adafruit_AM2320();

void setup() {
  Serial.begin(9600);
  Serial.println("AM2320 Test");
  
  if (!am2320.begin()) {
    Serial.println("Couldn't find AM2320 sensor!");
    while (1);
  }
}

void loop() {
  delay(2000); // 測定間隔(2秒ごとに測定)

  float humidity = am2320.readHumidity();
  float temperature = am2320.readTemperature();

  Serial.print("Humidity: "); 
  Serial.print(humidity);
  Serial.print("%\t");
  Serial.print("Temperature: "); 
  Serial.print(temperature);
  Serial.println("°C");
}

4. コードのアップロードと動作確認

以上のコードをArduinoにアップロードし、シリアルモニターで温度と湿度の値が表示されることを確認します。これで、AM2320をArduinoで制御し、環境の温湿度を取得する準備が整いました。利用する際には、プロジェクトに合わせてコードを拡張することができます。