- Published on
Raspberry Piに「SHT35」を接続し制御する
1430文字3分で読めます–––
閲覧数
- Authors
- Name
- 将 有坂
- short bio
- ラズパイやArduinoで電子工作をしてます。
はじめに
Raspberry Piは小型で強力なシングルボードコンピュータであり、様々なセンサーやモジュールを接続して利用することができます。この記事では、高精度な温湿度センサー「SHT35」をRaspberry Piに接続し、Pythonを用いて制御する方法について解説します。
※ センサー類を安く買うなら → AliExpress 🛒 早く届くのが良ければ → Amazon 🚚
1. SHT35温湿度センサーの概要
SHT35は、I2CまたはSPIインターフェースを通じて通信することができるデジタル温湿度センサーです。非常に高い精度で温度と湿度を測定することができ、特に気象観測や室内環境モニタリングなどに適しています。
2. SHT35の接続
SHT35をRaspberry Piに接続するには、通常、I2Cを利用します。以下は、基本的な接続の手順です。
- VCC(赤色): 3.3Vの電源
- GND(茶色): 接地
- SCL: I2Cクロック
- SDA: I2Cデータ
これらを対応するRaspberry Piのピンに接続します。Raspberry Piのモデルによってピンの配置が異なるため、マニュアルを確認してください。
3. Pythonコードの作成
SHT35をPythonで制御するには、smbus
ライブラリを使用します。以下は、SHT35から温湿度を読み取る簡単な例です。
import smbus
import time
# I2Cバスの指定(Raspberry Piのモデルによって異なる可能性がある)
bus = smbus.SMBus(1)
# SHT35のI2Cアドレス
sht35_address = 0x44
def read_sht35():
# 温湿度データの取得コマンド送信
bus.write_i2c_block_data(sht35_address, 0x2C, [0x06])
# 読み取り待ち
time.sleep(0.5)
# データの読み取り
data = bus.read_i2c_block_data(sht35_address, 0x00, 6)
# 温度と湿度の計算
temp = ((data[0] << 8) + data[1]) * 175.0 / 65535.0 - 45.0
humidity = ((data[3] << 8) + data[4]) * 100.0 / 65535.0
return temp, humidity
try:
while True:
temperature, humidity = read_sht35()
print(f'Temperature: {temperature:.2f}°C, Humidity: {humidity:.2f}%')
time.sleep(2)
except KeyboardInterrupt:
pass
finally:
print("Program stopped.")
4. コードの実行と動作確認
コードを実行する前に、Raspberry PiにPythonの smbus
ライブラリがインストールされていることを確認してください。必要であれば、以下のコマンドでインストールできます。
sudo apt-get install python3-smbus
sudo apt-get install i2c-tools
コードを実行し、温湿度が正しく表示されることを確認します。これで、Raspberry PiにSHT35を接続し、Pythonを用いて温湿度センシングを行う基本的な手順が完了しました。
※ センサー類を安く買うなら → AliExpress 🛒 早く届くのが良ければ → Amazon 🚚