Raspberry PiでBME280センサーを活用!温湿度・気圧データの取得とPython実装ガイド

目次

はじめに

DHT11でも温度/湿度を計測することができますが、BME280はより正確で気圧も計測できる非常に優秀なセンサです。
今回はあえてRaspberryPi4/5で計測してみましょう。

DHT11とBME280の性能差

性能比較

用途に応じて使い分けましょう

項目BME280DHT11
温度範囲(℃)-40~850~50
温度精度(℃)±0.5±2
湿度範囲(%)0~10020~90
湿度制度(%)±3±5
気圧センサ有 (300~1100hPa ±1hPa)
応答時間(データ更新)1秒以下約2秒
価格高価安価
性能比較

気圧センサー

気圧センサは、大気の圧力を測定しています。主にピエゾ抵抗式センサや静電容量式センサといった技術が使われています。BME280は静電容量式センサが使われています。

静電容量式センサは、圧力の変化によって静電容量(コンデンサの容量)が変化する原理を利用しています。

圧力変化によってダイアフラム(弾性のある薄い膜状の金属)が変形。ダイアフラムの片側は固定され、もう片側が圧力に応じて動く構造になっています。
ダイアフラムの変形により、コンデンサのプレート間の距離が変化します。この距離の変化により、静電容量が変化します。
静電容量の変化をセンサが検知し、それを電気信号に変換して気圧の変化を計測する。

配線

I2Cで接続します。「J3」部分にはんだを流し込むことでI2C接続が可能になります。また下図のようにSDOをGNDに接続するとアドレスは0x76、電源に接続すると0x77に設定されます。
詳細は、秋月電子のマニュアルを参照ください。

RaspberryPi 4/5BME280
3.3V (1)VDD
GND (6)GND
GPIO2 (3)SDI
GND (9)SDO
GPIO3 (5)SCL
()内はピン番号

気温/湿度/気圧をコンソールに表示する

ラズベリーパイ4/5を使用していますので、簡単にコンソールに表示してみます。

非常に便利なライブラリをIndooCorgiが作成してくれています。コンソールに以下を入力し、インストールします。

sudo python3 -m pip install -U cgsensor --break-system-packages

次に以下を入力します。センサの接続に問題なければ取説が表示されます。

cgsensor -h

問題なければ以下を入力すれば現在のセンサ値が表示されます。

cgsensor bme280
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次