logo
Published on

Arduinoに「APDS-9301」を接続し制御する

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

Arduinoは様々なセンサーやモジュールと組み合わせて利用できるプログラム可能なマイコンボードです。この記事では、光センサーモジュール「APDS-9301」をArduinoに接続し、制御する方法について解説します。APDS-9301は、環境光の明るさを測定するためのデジタル光センサーです。

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

1. APDS-9301の概要

APDS-9301は、デジタル出力型の光センサーであり、近赤外線(NIR)と可視光領域に対して感度があります。このモジュールはI2C通信を使用してデータを転送し、Arduinoなどのマイコンボードで簡単に制御できます。

2. APDS-9301の接続

APDS-9301をArduinoに接続するためには、以下のように接続します。

  • VCC: 5Vの電源
  • GND: 接地
  • SDA: ArduinoのSDAピンに接続
  • SCL: ArduinoのSCLピンに接続

3. Arduinoコードの作成

APDS-9301を制御するためのArduinoコードを作成しましょう。以下は、APDS-9301を利用して環境光の明るさを読み取り、シリアルモニターに表示する簡単な例です。

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

Adafruit_APDS9301 apds;

void setup() {
  Serial.begin(9600);
  
  if (!apds.begin()) {
    Serial.println("Error initializing APDS-9301 sensor!");
    while (1);
  }
}

void loop() {
  sensors_event_t event;
  apds.getEvent(&event);

  if (event.light) {
    Serial.print("Light: ");
    Serial.println(event.light);
  } else {
    Serial.println("Error reading light sensor.");
  }

  delay(1000); // 1秒ごとに明るさを読み取る
}

このコードでは、APDS-9301から得られた光の強度をシリアルモニターに表示します。適宜、読み取り間隔や表示方法を変更することができます。

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

Arduinoにコードをアップロードし、シリアルモニターを開いて光センサーが正しく動作しているか確認します。明るい場所と暗い場所に移動させて、センサーの反応を確認してみてください。

これで、ArduinoにAPDS-9301を接続し、環境光の明るさを測定するための基本的な手順が完了しました。このセンサーを利用して、照明制御や環境モニタリングなどのプロジェクトを構築することが可能です。