目次
はじめに
DHT11でも温度/湿度を計測することができますが、BME280はより正確で気圧も計測できる非常に優秀なセンサです。
今回はあえてRaspberryPi4/5で計測してみましょう。
リンク
DHT11とBME280の性能差
性能比較
用途に応じて使い分けましょう
項目 | BME280 | DHT11 |
温度範囲(℃) | -40~85 | 0~50 |
温度精度(℃) | ±0.5 | ±2 |
湿度範囲(%) | 0~100 | 20~90 |
湿度制度(%) | ±3 | ±5 |
気圧センサ | 有 (300~1100hPa ±1hPa) | 無 |
応答時間(データ更新) | 1秒以下 | 約2秒 |
価格 | 高価 | 安価 |
気圧センサー
気圧センサは、大気の圧力を測定しています。主にピエゾ抵抗式センサや静電容量式センサといった技術が使われています。BME280は静電容量式センサが使われています。
静電容量式センサは、圧力の変化によって静電容量(コンデンサの容量)が変化する原理を利用しています。
圧力変化によってダイアフラム(弾性のある薄い膜状の金属)が変形。ダイアフラムの片側は固定され、もう片側が圧力に応じて動く構造になっています。
ダイアフラムの変形により、コンデンサのプレート間の距離が変化します。この距離の変化により、静電容量が変化します。
静電容量の変化をセンサが検知し、それを電気信号に変換して気圧の変化を計測する。
配線
I2Cで接続します。「J3」部分にはんだを流し込むことでI2C接続が可能になります。また下図のようにSDOをGNDに接続するとアドレスは0x76、電源に接続すると0x77に設定されます。
詳細は、秋月電子のマニュアルを参照ください。
RaspberryPi 4/5 | BME280 |
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
リンク
コメント