logo
Published on

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

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

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

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

1. Si7021センサーの概要

Si7021は、高精度かつデジタル出力の温湿度センサーで、I2C通信プロトコルを使用してArduinoと通信します。このセンサーモジュールは、小型で取り扱いが簡単であり、様々なプロジェクトに利用されています。

2. Si7021の接続

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

  • VCC: 3.3Vの電源
  • GND: 接地
  • SDA: I2Cデータライン
  • SCL: I2Cクロックライン

これらをArduinoの対応するピンに接続します。Arduino Unoなどのボードでは、通常、SDAはA4ピン、SCLはA5ピンに接続されます。

3. Arduinoライブラリの導入

Si7021を制御するには、Arduino IDEに適切なライブラリを導入する必要があります。ライブラリマネージャーから「Si7021」を検索し、インストールします。

4. Arduinoコードの作成

Si7021センサーを制御するArduinoコードを書きます。以下は基本的な例です。

#include <Wire.h>
#include <Adafruit_Si7021.h>

Adafruit_Si7021 sensor = Adafruit_Si7021();

void setup() {
  Serial.begin(9600);
  if (!sensor.begin()) {
    Serial.println("Si7021 not found. Please check your connections.");
    while (1);
  }
}

void loop() {
  float temperature = sensor.readTemperature();
  float humidity = sensor.readHumidity();

  Serial.print("Temperature: ");
  Serial.print(temperature);
  Serial.println(" °C");

  Serial.print("Humidity: ");
  Serial.print(humidity);
  Serial.println(" %");

  delay(2000); // 2秒待つ
}

このコードはSi7021から温度と湿度を読み取り、シリアルモニターに表示するものです。適宜、データの取得間隔や表示方法を変更することができます。

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

コードをArduinoにアップロードし、シリアルモニターを開いてSi7021からの温湿度データが正しく表示されるか確認します。

これで、ArduinoにSi7021を接続し、温湿度データを取得するための基本的な手順が完了しました。これをベースにして、様々なIoTプロジェクトや気象観測装置を作成することが可能です。