logo
Published on

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

Authors
  • avatar
    Name
    Shou Kawakami / 川上翔
    Twitter

はじめに

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

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

1. MLX90614赤外線温度センサーの概要

MLX90614は、物体の表面温度を非接触で測定するための赤外線温度センサーです。I2C通信を介してデータを提供し、精度が高いため様々なプロジェクトで利用されています。

2. MLX90614の接続

MLX90614をRaspberry Piに接続するためには、I2C接続を使用します。以下は、MLX90614の接続手順です。

  • SDA(データライン): Raspberry PiのGPIO2ピン(デフォルト)
  • SCL(クロックライン): Raspberry PiのGPIO3ピン(デフォルト)
  • VCC(電源): 3.3Vの電源
  • GND(接地): Raspberry PiのGNDに接続

3. Raspberry Piコードの作成

次に、Raspberry Pi上でPythonを使用してMLX90614を制御するためのコードを書きます。以下は、簡単な例です。

import smbus
import time

# MLX90614 I2Cアドレス
MLX90614_ADDRESS = 0x5A

# I2Cバス
bus = smbus.SMBus(1)

def read_temperature():
    data = bus.read_i2c_block_data(MLX90614_ADDRESS, 0x07, 3)
    raw_temperature = (data[1] << 8) + data[0]
    temperature = (raw_temperature * 0.02) - 273.15
    return temperature

try:
    while True:
        temperature = read_temperature()
        print(f"温度: {temperature:.2f} ℃")
        time.sleep(1)

except KeyboardInterrupt:
    pass

このコードは、MLX90614から温度を読み取り、1秒ごとにコンソールに表示するシンプルな例です。必要に応じて、データを保存したり他のセンサーと組み合わせて利用することができます。

4. コードの実行と温度のモニタリング

最後に、コードを実行しMLX90614が正しく動作するかを確認します。ターミナルでコードを実行すると、温度が表示され、非接触で物体の温度をモニタリングすることができます。

これで、Raspberry PiにMLX90614を接続し、温度センシングを行うための基本的な手順が完了しました。MLX90614のデータを活用して、温度に基づく自動制御システムやプロジェクトを構築することが可能です。