地元川越でホームページ制作、ITサポートの実績70社以上
イー・レンジャー株式会社 電話
イー・レンジャー株式会社 > ラズベリーパイで温度・湿度・大気圧を測定する

ラズベリーパイで温度・湿度・大気圧を測定する

最終更新日: 2017/08/18 1:18pm

カテゴリー: Amazon Web Services, IoT, お知らせ, 先進技術

こんにちは。経理の小高です。

弊社も夏休みが終わりました。夏休みの自由研究に先日初期設定したラズベリーパイ(Raspberry Pi 3 Model B)にセンサーを取り付けてみました。
ラズパイの初期設定については、ブログ「Raspberry Pi3 Model Bを初期設定する」を参照ください。

インターネットを調べてみると、BME280というセンサーで温度と湿度、大気圧が測定できると書いてあります。雑誌「インターフェイス2017/9号」の「センサー辞典」にも出ていました。電気・電子はずぶの素人ですが、IoTっぽいのでこれを使ってみることにしました。

参考にさせていただいたサイト:

DEVICE PLUS :IT女子のラズベリーパイ入門奮闘記、第39回「ラズベリーパイで温度・湿度・気圧をまとめて取得!AE-BME280でIC2通信」

Karaage:Raspberry Pi + BME280モジュールで自動で温度・湿度・気圧を測定してグラフ化する

 

Amazon.comでHiLetgoのBME280を購入しました。これがセンサーがくっついている側。

BME280 センサー側 イーレンジャー株式会社

裏側はこんな感じです。

BME280 裏側 イーレンジャー株式会社

ピンをはんだ付けしなくてはなりません。以下が用意したはんだ付けセットです。はんだ、はんだごて、台、フラックス、ラジペン。

半田づけセット イーレンジャー株式会社

頑張ってはんだ付けしてピンにジャンパー線を指したところです。はんだが玉になっていて素人感丸出しですが、とりあえずなんとかくっつきました。

BME280 半田をつけてジャンパー線をつけた イーレンジャー株式会社

これがつないだところです。なんとも不安定な感じ。

BME280 をRaspberryPi3 Model Bに取り付けたところ イーレンジャー株式会社

センサーとラズパイの間はI2Cというシリアル通信で通信します。Raspberry Piの設定でI2Cを有効にします。

Raspberry Pi3 Model BのI2C通信を許可する

ここまでくれば、スイッチサイエンスさんのサンプルコード(Python)で温度と湿度と大気圧が取得できます。

git clone https://github.com/SWITCHSCIENCE/BME280.git

ここで「あれっ」と思ったのが湿度。取得した数値は50%くらい。こんなに低いはずはありません。キャリブレーションをどうしたもんかと思いましたが、温度と湿度はシンプルにタニタさんの温湿度計に合わせました。大気圧はSiriに聞けば教えてくれます。

 

BME280 をRaspberryPi3 Model Bに取り付けたところ タニタの温湿度計で校正 イーレンジャー株式会社

 

ラズパイにurl3のpythonライブラリーが入っていたので、即席に下のような仕組みを作ってみました。ラズパイからは1分間隔でクラウド(Amazon Web Services)にデータを飛ばしてデータベースに格納。それをChart.jsでグラフ化します。

BME280 とRaspberryPi3 Model Bで温度・湿度・大気圧を測定するシステム イーレンジャー株式会社

 

即席のWebアプリはCakePHP3で制作したので、「RaspberryCake(ラズベリーケーキ)」というアプリ名にしました。

「温度と湿度は逆に動く」のですね。相対湿度をいうそうですが、初めてしりました。

BME280とRaspberryPi3 Model Bで測定した温度・湿度・大気圧 イーレンジャー株式会社

なかなか面白いものですね。

大学生の息子がいるのですが、「学校ではんだ付けをした」という話を聞いたことがありません。
小学生もパソコンの授業があるようですから、夏休みの課題にちょうどいいと思います。
この例ではクラウドをつかってグラフを表示しましたが、ラズパイに軽いHTTPサーバー(Pythonが入っているのでBottleとか)をいれれば、ラズパイだけで完結する構成もできそうです。

雑誌「インターフェイス2017/9号」にいろいろなセンサーが出ているので、いろいろ試してみようと思います。

 

←「」前の記事へ   次の記事へ「」→