/a/センサー
Published on

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

1134文字2分で読めます–––
閲覧数
Authors
  • avatar
    Name
    将 有坂
    short bio
    ラズパイやArduinoで電子工作をしてます。

はじめに

Raspberry Piは豊富なGPIOピンを備えたシングルボードコンピュータで、様々なセンサーやモジュールと組み合わせて利用することができます。この記事では、環境光センサー「BH1750」をRaspberry Piに接続し、制御する方法について解説します。

※ センサー類を安く買うなら → AliExpress 🛒 早く届くのが良ければ → Amazon 🚚

1. BH1750環境光センサーの概要

BH1750はデジタル式の環境光センサーであり、非常に広い範囲の照度を測定することができます。このセンサーはI2C通信を使用しており、Raspberry Piと簡単に接続できます。

2. BH1750の接続

BH1750をRaspberry Piに接続するためには、以下の手順に従います。

  • BH1750のVCCをRaspberry Piの3.3Vに、GNDをGNDに接続します。
  • SDAをRaspberry PiのGPIO2(SDA)に、SCLをGPIO3(SCL)に接続します。

3. Pythonコードの作成

次に、Pythonコードを使ってBH1750を制御します。まず、Raspberry Pi上で以下のコマンドを実行して必要なライブラリをインストールします。

pip install smbus2

そして、以下はBH1750を使用するための簡単なPythonコードの例です。

import smbus2
import time

# BH1750のI2Cアドレス
BH1750_I2C_ADDR = 0x23

# 初期化
bus = smbus2.SMBus(1)

# 連続モードで照度を取得する関数
def get_light_intensity():
    data = bus.read_i2c_block_data(BH1750_I2C_ADDR, 0x20)
    light_level = (data[1] + (256 * data[0])) / 1.2
    return light_level

try:
    while True:
        light_intensity = get_light_intensity()
        print(f"照度: {light_intensity} lx")
        time.sleep(1)

except KeyboardInterrupt:
    pass

finally:
    bus.close()

4. コードの実行と確認

以上のコードを保存して実行すると、ターミナルに照度が表示されます。照度の値は光の強さを表し、外部環境の明るさに応じて変化します。

これで、Raspberry PiにBH1750を接続し、Pythonコードを使用して照度を測定する基本的な手順が完了しました。この情報を活用して、照明制御や環境モニタリングなどのプロジェクトを進めることができます。

※ センサー類を安く買うなら → AliExpress 🛒 早く届くのが良ければ → Amazon 🚚
avatar

将 有坂

電子部品専門家 / ラズベリーパイのプロ / 数多くのセンサーやモジュールの導入実績
ラズベリーパイやArduinoの電子工作に関わるソフトウェアエンジニア。これまで100種類以上のセンサーやモジュールの導入を行い、その知識と経験を活かして、多くの人々に電子工作の楽しさを伝えることを使命としている。

タグ ->