M5StackでGrove温湿度・気圧センサを使う

M5StackにはGroveポートが付いているので、これを使ってセンサをつないでみたいと思います。


今回使うのは「GROVE – 温湿度・気圧センサ(BME280)」です。
このセンサでは、温度、湿度、気圧を測定することができ、気圧を元に高度を簡易計算することもできます。


まずは、このセンサを使うためのライブラリをインストールします。

  • Arduino IDEを起動し、「ツール」>「ライブラリを管理…」を選択して、ライブラリマネージャを開きます。
  • 「grove bme280」で検索すると、「Grove – Barometer Sensor BME280 by Seeed Studio」が見つかるので、「インストール」をクリックします。

  • インストールが終わったら、ライブラリマネージャを閉じます。

スケッチは以下のとおりです。

#include <M5Stack.h>
#include "Seeed_BME280.h"
#include <Wire.h>

BME280 bme280;

void setup() {
  M5.begin();
  M5.Lcd.setTextSize(3);
  if(!bme280.init()){
    while(true);
  }
}

void loop() {
  uint32_t pres = bme280.getPressure();
  M5.Lcd.setCursor(0, 100);
  M5.Lcd.printf("Temp:%5.1fC\n", bme280.getTemperature());
  M5.Lcd.printf("Humi:%5d%%\n", bme280.getHumidity());
  M5.Lcd.printf("Pres:%5dhPa\n", pres/100 );
  M5.Lcd.printf("Alti:%5.1fm\n", bme280.calcAltitude(pres));
  delay(1000);
}

液晶画面に温度、湿度、気圧、高度が表示されます。値は1秒ごとに更新されます。

なお、私がM5Stack、M5StickCの使い方を習得するのにあたっては、以下の書籍を参考にさせていただきました。


ごく基本的なところから、かなり複雑なスケッチや、ネットワーク接続など、比較的高度なものまで、つまづかずに読み進めていけるような構成になっており、大変わかりやすい本です。


このサイトで書いている、M5Stackシリーズ(M5Stack、M5StickCなど)に関するブログ記事を、「さとやまノート」という別のブログページに、あらためて整理してまとめました。

他のM5Stackシリーズの記事にも興味のある方は「さとやまノート」をご覧ください。