ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

IoTに挑戦!実装に使える便利ツールとその活用事例の紹介

f:id:mbaasdevrel:20171117092238p:plain

植物の水分が足りていなかったらお知らせしてくれる、『植物の気持ちまるわかり君』 植物の水分が足りていないときに、Twitterでお知らせしてくれます。また、植物の土の水分状況がどのように推移しているのか、アプリからグラフとして見ることが出来ます。 センサーを使ったり、データベースサーバーを使ったりと、実装にはなんだか時間がかかりそうですね。ですが、このコンテンツ、たった2週間で完成しました! どうして短期間で開発することが出来たのでしょうか?今回活用した便利ツールを紹介致します。

生活を便利にするIoT

今流行のIoT。センサーをたった1つ取り付けるだけで、生活をとても便利にすることが出来ます。最近では様々な種類のセンサーが世の中に出回っていますね。例えば、水分センサーを例に挙げてみます。水分センサーは、土の水分量を取得できるセンサーです。取得した情報を元に、水分が足りていなかったらスマホでお知らせしたり、自分があげた水の量が適切か知ることが出来たりと、活用方法は様々です。「センサー」と「取得したデータの使い方」の組み合わせはアイディア次第で無限に広がります。IoTで何が出来るのか、考えてみるとワクワクしてきませんか?

f:id:mbaasdevrel:20171117092026p:plain

IoTを実現するのは難しい!?

では、思いついたアイディアを実際に形にしてみましょう。試しに「植物の水分が足りていなかったら、スマホでお知らせする」というアイディアについて考えてみます。まずは使用するセンサーを検討するところから始まります。水分センサー1つをとっても様々な種類のものが売られています。したがってどれが最も適しているか考える必要があります。センサーが用意出来たら、センサーから取得したデータを元に、どうやってスマホでお知らせするか考えます。センサーからデータを取得する部分では、取得したデータを保存するデータベースサーバーも必要になってくるでしょう。そして、普段自分で操作しているLINEやTwitterなど、自動で通知するとなるとどうすれば良いのでしょうか?なんだか考えることが多く、とても難しそうですね・・・。途中で挫折してしまいそうです。

f:id:mbaasdevrel:20171117092128p:plain

考えているだけでは始まらない!IoTコンテンツ作っちゃいました!

とても難しそうなIoTですが、考えているだけでは結局何も始まりません!そこで今回は、水分センサーを使って、こんなIoTコンテンツを1つ作成してみました。

f:id:mbaasdevrel:20171117092204p:plain

その名も、「植物の気持ちまるわかり君」です!

▼資料はこちらです▼

https://github.com/NIFCloud-mbaas/WaterSensorMythingsApp

「植物の気持ちまるわかり君」は、植物に水分が足りていない時に、Twitterでお知らせしてくれます。最適なタイミングで植物に水をあげることが出来ますね。また、植物の水分量の推移をグラフで見ることも出来ます。自分のあげている水分量が適切なのか、といったことを知ることができ、植物に寄り添うことが出来ます。

この「植物の気持ちまるわかり君」は、なんと、開発期間たったの2週間で作成しました。実現が難しそうなIoTでしたが、どうして2週間で完成させることが出来たのでしょうか。それは、サーバー部分と通知部分を簡単にすることが出来る、ある2つのツールを使ったからです。

2週間で完成!?それを実現させたツールとは?

f:id:mbaasdevrel:20171117092238p:plain

「植物の気持ちまるわかり君」は植物に水分が足りていない時、Twitterでお知らせをしてくれるように作っています。一見、実現が難しそうですよね。ですが、「myThings」というサービスを使うと、「水が足りていないとき、Twitterでつぶやく」という処理を自動実行できるんです!

myThingsとは?

実は、myThingsは弊社のバックエンドサービスである「ニフクラ mobile backend」(以下mobile backend) と連携しています。「mobile backend にデータを保存する」という動作をトリガー(きっかけ)にして、Twitterなどのサービスを動作をさせることができます。

ニフクラ mobile backendとは?

したがって今回の場合は、「水が足りていない」という情報データを mobile backend に保存したタイミングをトリガーとすることで、いとも簡単に植物の気持ちをつぶやくことができたわけです!さらに mobile backend は本来の用途であるクラウドデータベースとしても活用できます。保存したデータを使って、植物の状態をアプリで可視化出来れば、一石二鳥ですね。

「植物の気持ちまるわかり君」での各ツールの使い方

まず、mobile backend に水分センサーから取得したデータを保存する部分です。下図のように、たった3行のコードで、データの保存が出来てしまいました!

f:id:mbaasdevrel:20171117092316p:plain

次に、Twitterでつぶやいてもらう部分に関しては、なんとコーディングは一切不要でした!myThingsのスマホアプリからタップしていくだけで、自動ツイートが実現したのです!

f:id:mbaasdevrel:20171117092429p:plain

最後に、mobile backendをクラウドデータベースとして活用したことで、植物の水分量可視化も簡単に行うことが出来ました。データ取得に関しても、保存時同様数行のコードで実装出来たからです。データが取得できれば、後はグラフ化するだけですね!

f:id:mbaasdevrel:20171117092449p:plain

以上、2つのツールを使うことで簡単にIoTコンテンツを作成することが出来ました。また、mobile backendを活用したことで、データの可視化まで簡単に行うことが出来てしまいました。

まとめ

少し長くなりましたが、IoTの面白さ、難しさ、そしてそんな難しいIoT実現の手助けとなる便利ツールを、サンプルコンテンツと共に紹介しました。サンプルコンテンツ「植物の気持ちまるわかり君」の作成では、ツールを用いたおかげで、好きな部分・重要な部分に時間を割くことが出来ました。例えば、mobile backendの活用によって、データベースサーバーの構築時間が不要になりました。これにより、植物の水分量を可視化するアプリ作成では、グラフの表示方法・デザインに凝る時間を作ることが出来ました。コンテンツをより良いものにする時間を確保することが出来たのです!

今回のIoTに限らず、コンテンツ制作の際は、是非便利なツールを駆使してより良いコンテンツを作ることを心がけてみてください。

まずは手初めに、今回紹介した「植物まるわかり君」を通して、便利ツールを試してみましょう!

▼資料はこちらです▼

https://github.com/NIFCloud-mbaas/WaterSensorMythingsApp

f:id:mbaasdevrel:20171121093954p:plain

山上慶子

ニフクラ mobile backend 技術担当。 mobile backendを多くの人に使っていただけるよう、頑張ります!