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 をつなげました。


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

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

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

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

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

sudo apt install python3-pip

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

sudo pip3 install smbus2

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

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

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

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

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

sudo python3 bme280_sample.py
temp : 27.01 ℃
pressure : 1008.61 hPa
hum : 64.63 %

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

コメント