M5Stackで気温・気圧・湿度を計測する

※この記事は2020年2月14日に更新されました。

前回の記事ではM5Stackを使って、気温と湿度を計測しました。

今回は気圧センサーを追加して、気温・湿度・気圧計を作ってみたいと思います。

1、まずは、気圧センサーを用意

GROVE – 気圧センサ(BMP280)というセンサーなのですが、こちらもスイッチサイエンスさんで2020年2月14日現在は在庫切れとなっています。

こちらはGROVEケーブルでM5Stackと接続するだけで設置完了です。

ミニ四駆より簡単です。

2、プログラムを書く

前回の記事で開発環境は整っているかと思いますので、今回もArduino IDEを使います。

→前回の記事「M5Stackで温湿度計を作る5つの手順」

本日の記事も下島先生のみんなのM5Stack入門という書籍を参考にさせていただいています。

最初にGROVE – 気圧センサ(BMP280)のライブラリをインストールします。

Arduino IDE 「ツール」→「ライブラリを管理」をクリック。

ライブラリマネージャーを立ち上げて

「grove bmp280」と入力し、「Grove – Barometer Sensor BMP280 by Seeed Studio」というライブラリをインストールします。

#include <M5Stack.h>
#include "Adafruit_Si7021.h"
#include "Seeed_BMP280.h"
#include <Wire.h>

Adafruit_Si7021 sensor = Adafruit_Si7021();
BMP280 bmp280;

void setup(){
    M5.begin();

    if(!sensor.begin()){
       Serial.println("not find Si7021");
       while (true);
    }
    if(!bmp280.init()){
       Serial.println("broken!");
       while (true);
    }    
    M5.Lcd.setTextSize(3);
}   
 
void loop(){
  float temp = sensor.readTemperature();
  float humid = sensor.readHumidity();
  float bmp280temp = bmp280.getTemperature();
  uint32_t pressure = bmp280.getPressure();
  float altitude = bmp280.calcAltitude(pressure);

  M5.Lcd.setCursor(40,30);
  M5.Lcd.printf("Temp: %5.1f'C", temp);
  M5.Lcd.setCursor(40,70);
  M5.Lcd.printf("Humid: %5.1f%%", humid);

  M5.Lcd.setCursor(40,110);
  M5.Lcd.printf("Temp: %5.1f'C", bmp280temp);
  M5.Lcd.setCursor(40,150);
  M5.Lcd.printf("Preess: %dhPa", pressure / 100);
  M5.Lcd.setCursor(40, 190);
  M5.Lcd.printf("Alti: %5.2fm", altitude);

  delay(1000);
}  
  

↑↑↑みんなのM5Stack入門(P110)引用

さて、実行結果はどうなったでしょうか?

このように、上から前回で使ったセンサーでのSi7021の温度。

次にSi7021の湿度。

3段目は今回使用したBMP280の温度。

4段目にBMP280で計測した気圧。

5段目は気圧から計算した高度が表示されています。

筆者は集合住宅の9階に住んでいるので、高度はだいたいこんなもんでしょうか。

まとめ

気圧計に関しては正直いらないかな~と思ったのですが、一応下島先生の書籍で紹介されていたので、試してみたくなり購入しました。

ここから何を創るかはアイディア次第だと思います。

筆者はとりあえず気圧に関してはまだイメージができないため、温度湿度で進めていきたいと思います。

次の記事では、特定の条件下でLEDランプを光らせるプログラムを創るため、まずはLEDを光らせなければいけません。

LEDとブレッドボードを紹介したいと思います。

M5Stackで温湿度計を作る5つの手順
M5Stack でLEDライト点灯までの3ステップ