Japanese Stable CLIP を試してみた

センサーを使って Orange Pi で部屋の温度・湿度を測る

 センサーは定番の BME280。こちらも aliexpress で購入しました。

https://www.aliexpress.com/item/32817812439.html


前回の続きということにして、Orange Pi の OS やピンヘッダについてはそちらを参照してください。

i2c も有効化済みであるとして進めます。


物理的に接続する


こちらは別途購入したブレッドボードを使って接続します。aliexpress だと 1.8-5V となっているのですが、日本語で説明しているブログなどでは 3.3V 用、5V をつなげると壊れる、となっているので、一応 3.3V をつなげました。


センサーから値を読み取ってみる

こちらも、まずはセンサーを認識しているか確認します。

  1. sudo i2cdetect -y 0
  2. 0 1 2 3 4 5 6 7 8 9 a b c d e f
  3. 00: -- -- -- -- -- -- -- -- -- -- -- -- --
  4. 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  5. 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  6. 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  7. 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  8. 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  9. 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  10. 70: -- -- -- -- -- -- 76 --

「76」と出力されていれば、何かを認識しています。

こちらはスクリプトは smbus2 を使用するので、まずは pip を導入します。

  1. sudo apt install python3-pip

続けて、pip で smbus2 をインストールします。

  1. sudo pip3 install smbus2

スクリプトをダウンロードします。

  1. wget https://github.com/SWITCHSCIENCE/samplecodes/raw/master/BME280/Python27/bme280_sample.py

このスクリプトは python2.7 用のため、そのままでは python3 では動作しないようです。python2.7 を用意して実行でもいいですが、今回はスクリプトのエラーが出る箇所を修正して実行しました。

修正するのは print 文(3か所)で、文字列を () で囲むだけです。

修正したうえで、実行します。

  1. sudo python3 bme280_sample.py
  2. temp : 27.01
  3. pressure : 1008.61 hPa
  4. hum : 64.63

ちゃんと温度、気圧、湿度が取得できたようです。

コメント