見出し画像

刺すだけ簡単! M5Stackで環境監視システムをつくる!(Co2・TVOC・温度・湿度・気圧)

まいどM5Stackで空気の測定をいろいろしているわたくしなわけです。
で、また例によってカタログをぺらぺら見ていたら、公式センサーのGROVEにはHUBという複数のセンサーを同居させるユニットがあることを発見!

拡張ハブユニットみっけ!

https://www.switch-science.com/catalog/5696/

↑こんなんですね~。

3つまでセンサーを同居できる模様。じゃ、これを使ってENV-IIユニットとCO2センサーを両方接続したら、いろいろ測れていいじゃない♪

とゆーかんじのやつを今回作ってみようとおもいます。

センサ

今回使うセンサは

これと、

これの2本。それと最初に用意した拡張ハブユニットです。

今回の本体はFIRE!

センサーがバラバラになるのも嫌んだし、LEGOの穴が各センサーについてるので今回はLEGOでやってみよう~って思いまして、

↑このM5StackFIREというやつをチョイス。LEGOと簡単につなげられるベースが付いていて、磁石でくっついてくれます。

さらに、よく見ると、このFIREというやつ、GROVEのポートが3つもついてるじゃないですか!

画像1

これ使えば、こんな風 ↓ にできて、HUBなんてもともといらないんじゃん?

画像2

なんて、思っていた時がワタシにもありました><

ダメでした🙅

画像3

これ、できません><

詳しくは ↑ こちら参照。

M5GO / M5Stack FIRE
GROVE端子数:3
・PORT A:I2C
 ポート詳細:SCL(G22), SDA(G21), 5V, GND
・PORT B:I/O
 ポート詳細:ADC(G36), DAC(G26), 5V, GND
・PORT C:UART2
 ポート詳細:RXD2(G16), TXD2(G17), 5V, GND

このように、おんなじ形のGROVEポートなのだけれど、3つとも違う役目なのです><

今回使ってるセンサはどちらもI2C接続なので、PORT Aです。電源コネクタのそばの赤い口じゃないといけません。

そちらにHUBをつけて、HUBから2つのセンサを接続する形になりますネ。

画像4

↑こういうふうにすればOK

※なので、LEGOをつかわないならM5StackFIREである必要はありません。

I2C接続って?

I2Cって何かっていうのは

こちら参照。

今回使うセンサは

・TVOC/eCO2 ガスセンサユニット(SGP30)
   →I2Cアドレス 0x58
・M5Stack用環境センサユニットENV II
  SHT30(高精度デジタル温湿度センサ)
   →I2Cアドレス 0x44
  BMP280 (絶対大気圧センサ)
   →I2Cアドレス 0x76

こんなかんじ。0xなんとかってところがI2Cアドレス。これが被ってると通信が喧嘩してしまうのでダメなんですが、それぞれ違うので大丈夫です♪

でもって、いままで何の説明もなくすっ飛ばしていましたが 

GROVEシステムについて

全般的な説明は

↑こちら参照。

詳しいのはあんまり日本語の説明ってないんですよねー><

そもそも、

↑が本家のページなんですけど、右上の

画像5

で日本語にしようとしたら

画像6

ぎゃーす><

ないじゃんおー><

英語のページを頑張って読むか、自動翻訳で読んだ方がよいようです><

↑で接続方式の詳細ナドが出ています。だいたいいろんなものがつながるんですが、

・Digital
・Analog
・UART
・I2C

とそれぞれ別種類なので注意が必要。とのこと。

※M5Stack系はDigitalとAnalogは同じI/Oってコネクタになってるようです。それと、公式とケーブルの色が違うんだって(!)このあたり要注意ですね!><

ここらへんがちゃんとわかっていないと、さっき張った

画像7

こんなかんじのことをしてしまうので危険が危ないそうです><

(このセンサは平気ですけれども、場合によってはモジュールや本体を壊してしまうので超要注意だそうー><)

LEGOる!

FIREさんはLEGOの穴があるので

画像8

画像9

こうして

画像10

こんなかんじにしてみました(^^)v☆

なんかかっこいい!☆

プログラムる!

スケッチプログラムは、公式でだしてくれているサンプルの

画像11

ファイルー>スケッチ例ー>M5Stackー>Unitー>ENVII_SHT30_BMP280

と、

画像12

ファイルー>スケッチ例ー>M5Stackー>Unitー>TVOC_SGP30

を合体!

せっかくなので、気温やCO2濃度が高まると色がかわるようにしたり、Ambientにも出力するようにしてみました☆

画像13

↑動かしてみたところ☆

CO2濃度が高くなると大きい字のeCO2の行事が黄色くなったり赤くなったりします。

M5StackFIREには本体の左右にカラーLEDがついていたりするので、そこの色で表現するようにしてもよいかもですねー♪

プログラムソースは、また長くなるので、漏洩がコワイ(風評被害)GitHubにいれときました。

↑こちら参照ー☆

Ambientさんの出力結果

画像14

2つのセンサユニットで5つの値をひろってくるので、これまたAmbientさんが得意なところ。こんなんが簡単にできちゃうのはうれしいですねー♪

まとめ

とゆーわけで、今回はハードウェアはコネクタをつないでLEGOで形を作るだけで、プログラムもサンプルを合体させるだけの簡単電子工作でしたが、簡単なくせにかなーり実用的な形になったんじゃないかなと思うのでアリマス☆

これだけで、けっこうしっかりしたセンサーシステム(っていってもいい?w)が作れてしまうのは驚きですねー。

ただまあGROVEとかI2Cとか知らないとわけわからなくなるので、そのあたりはぐぐる先生にお伺いをたてないといけないかんじですが、分からない事を調べながらやれば初心者でも簡単にできちゃいます。

お部屋の空気の汚れ具合を測定する電子工作、ひきこもり推奨の今こそ、みなさんでやってみるとよいかと思います。可視化たのしいですw

※コーヒー淹れるとTVOCめっちゃあがりますね!><

#M5Stack #TVOC #CO2 #電子工作 #環境監視システム #らせん工房

この記事が参加している募集

おうち時間を工夫で楽しく

よろしければサポートお願いします!いただいたサポートはクリエイターとしての活動費にさせていただきます!感謝!,,Ծ‸Ծ,,