ちょっと話題の記事

パパ、お花とお話しできればいいのにね ~子育テック的な何か~

子どもの自由な発想や質問にIoTっぽいアプローチで真面目に答える家庭内プロジェクト
2022.03.29

IoT事業部の作間です。今回は子どもの疑問をIoT的なアプローチで解決してみます。

どんな課題?

「パパは何でお花が喉乾いたってわかるの?お花とお話しできるの?」

自宅にある花や観葉植物に水を与えていたときに、4才になる娘が真面目に花を見つめながら、発せられた言葉。単純な疑問なのか、親が根拠なく適当に水をあげていることを見透かした上で、どんな回答をするのかと試しているのか。いずれにしてもなかなか鋭い質問だ。相手が誰であれ、良い質問ができるというのは、長い人生を華麗に生き抜くための重要スキルで、早いうちに身に着けておくのはよいこと。

ならばこちらも根拠を持った解をだそうではないか。テクノロジー全開で。

解決

いきなりだけど、今回は完成品から。本当は子どもが好きなマリーゴールドにしようと思ったけど若干季節が外れているので、観葉植物で。

全体の構成としては観葉植物の植木鉢に接続されている土壌センサーの水分量値を読み取ってディスプレイに表示するだけというシンプル仕様。プランター的なものはLEGOで子どもと一緒に作った。

お世辞にもきれいなつくりとは言えないけど、必要十分で、使い方も簡単。水分量を数値で表示しても、状態がわかりにくいので、水分量が十分な時は、表示された植物の根が青くなる。逆に減るにつれて根が白く表示させることにした。数段階で表示されるので、子どもでもわりと理解しやすいのでは?という想定。

実際「朝起きてここの色が白くなったら喉が渇いたってことだから、お水あげようね」というだけで理解している様子。会話まではいかないけど、一応植物の状態は見えるようになったのではないか。

使ったエッジデバイス、センサーとか

エッジデバイス

最初は使い慣れたにRaspberryPiを採用しようと思ったけど、半導体不足の影響か、あらゆる場所で購入できない。厳密にいうと購入はできるけど高額だったり、納期が数週間だったりといった状況。ということで、比較的安価で在庫もある、M5Stackを使ってみることに。

DevelopersIOでもM5Stackの記事が上がっているけど、個人的に使うのは初めて。ざっと調べてみるとOSも最初から入っているし、M5Stack専用のセンサーも豊富に用意されていて、かつコネクタで接続すれば自動的に認識してくれるという素敵仕様。見た目の通り小型のディスプレイも搭載されているので、エッジ側で可視化するのも簡単。Wi-FiもBluetoothも内蔵、充電もUSB-Cという全部盛りなやつ。

RaspberryPiではエッジ > クラウド > スマートフォンとしてデータを可視化したり、連携したりするけど、子どもはスマートフォンを持ってないから全てエッジ側で完結するのは良い。

他にも、LEGOとの相性が良く簡単にスタックできるので、ケースを工夫したり、3Dプリンタでごちゃごちゃしたりというのも不要。ソフトウェア的な観点だとコードを書かなくても、Webブラウザを使ったUiFlowと呼ばれる開発環境も提供されており、ノーコードで、センサー値を取得したり、データ計算したり、クラウド連携もできる。環境を整える必要がないというのもありがたい。

もちろんちゃんとした開発環境を整てArduinoでコードを書けばより高度なこともできるので、結構懐は広い。

センサー

当初は土壌水分センサーだけを使おうと思ったけど、ついでなのでCO2と気温、湿度も測れるように3種類のサンサーを取り付けた。といってもコネクタに挿すだけなので、特に難しいことはない。土壌センサーはプラスチックの植木鉢に穴を開けて差し込む。

LEGO

これは子どものおもちゃ箱から拝借。子どもと一緒にワイワイやりながら作れるのが良い。ガムテープや両面テープ、段ボール、粘土など家にあるものを見繕って使ってもいいかも。

Cloud

今回のプロジェクトではほとんど意味をなさないけど、一応クラウド側にもデータを上げて履歴を残しておく。M5Stackは標準でAWSのIoT Coreをサポートしているので、構成は以下の通りにした。

M5Stackでセンサー取得したセンサー情報をIoT Coreに連携するまで1行もコードは書いていない。 上がってきたデータを誰かとシェアしたり、書き換えたりする必要もなさそうなので、データベースまではいらないかな、と思い代わりにGoogleのSpreadsheetに書き込むことにする。

実際上がってきたデータはほとんど見ないけど、外出先からスマートフォンでCO2や温度の変化を見ていると、今帰ってきたんだな、とか部屋に3人いそう、みたいなことは遥か遠い場所にいても繋がっていることで、数値から読み取ることが出来るようになってくる。だからなんだ?って話ではあるけど。

所感

子どもと一緒に電子工作ができるというのは両者にとって結構面白い体験になると思う。一歩進んで、水分量が閾値を下回ったら、M5Stackやスマートスピーカーから水やりを促すような拡張もできると思う。

今回は家庭内のプロジェクトだったけど、ビジネス的な観点でいえば「Quick & Dirty」っぽい進め方をするには最適といえそう。

やる前にちゃんと議論して、何枚もPowerPoint書いて、詳細な設計をして、きちんとしたものを作ろうというやり方をして、なんなら起きてもいない課題を勝手に作り出して、やっぱりやめておこうみたいなこともありがち。ビジネスとしてやるのだから仕方がない部分もあるけど、IoTのプロジェクトを見ていると、とにかく雑に作ってみて、少しずつ完成度を上げていくというやり方の方が成功する確率は高い印象。

じゃあどうやって雑にやろうかという議論から始められると辛いものがあるけど。