logo
Published on

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

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

Arduinoを使用して温度と湿度を測定するために、高精度で信頼性のあるセンサー「SHT21」を接続し制御する方法を紹介します。SHT21は、I2C通信を使用しており、簡単にArduinoと接続できます。

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

1. SHT21センサーの概要

SHT21は、温度と湿度を同時に測定できるデジタルセンサーです。I2Cバスを介してArduinoと通信し、高い精度と安定性を提供します。このセンサーは、様々なアプリケーションに利用され、特に気象計測や温湿度制御に適しています。

2. SHT21の接続

SHT21をArduinoに接続するためには、4つの線があります。

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

これらの線を対応するArduinoのピンに接続します。一般的に、Arduino Unoの場合は、3.3Vまたは5VにVCCを、GNDにGNDを、A4にSDAを、A5にSCLを接続します。

3. Arduinoライブラリのインストール

SHT21を簡単に扱うために、Adafruitの「Adafruit_SHT21」ライブラリをArduino IDEにインストールします。IDE内で「スケッチ」→「ライブラリを管理」を選択し、「Adafruit_SHT21」を検索してインストールします。

4. Arduinoコードの作成

SHT21を制御するための基本的なコードを以下に示します。

#include <Wire.h>
#include <Adafruit_SHT21.h>

Adafruit_SHT21 sht21;

void setup() {
  Serial.begin(9600);
  if (!sht21.begin()) {
    Serial.println("SHT21 not found!");
    while (1);
  }
}

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

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

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

  delay(1000); // 1秒待つ
}

このコードは、SHT21から温度と湿度を読み取り、シリアルモニターに表示するものです。適宜、取得したデータを他のアクションに利用することができます。

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

コードをArduinoにアップロードし、シリアルモニターを開いて結果を確認します。正しく接続されていれば、温度と湿度の値が表示されるはずです。

これで、ArduinoにSHT21を接続し、温度と湿度を取得する基本的な手順が完了しました。これをベースにして、様々なプロジェクトやセンシングアプリケーションを開発することが可能です。