Arduino
linebot
enebular
M5stack
enebularDay 14

enebularで布センサーからLINEに通知できるようにしたよ

こんにちは
どたてつや(@tendots)と申します。

先日のLINE BOOT AWARD賞金につられて応募したところ
光栄なことにenebular賞をいただきました。
これを機に人生初のqiita投稿を行いたいと思います。

45770972_2320432417984865_6769684145799954432_n.jpg
(BOOT AWARD授賞式でウフルの山崎さんと2ショット)

LINE BOOT AWADのときの作品ページはこちら→ Care Thing

Care Thing について

ConceptLogo_アートボード 1.png

Care Thingは介護向けに考えたサービスです。
ベッドに設置した導電布センサーおよびClovaと連携して、介護を過ごしやすいものにしたいと考えています。
以下のムービーで雰囲気はわかってもらえるかと思います。

https://youtu.be/gkjSOdanRZE

もともとスワイプエプロン という作品や別のプロジェクトでも導電布を使っており、
この素材の別の切り口の使い方ができないかと考えて制作しました。

超高齢化社会と言われる中で、30年後自分も介護される側に回った時に少しでもその時間が快適になってほしい、そのきっかけにしたいなと思っています。

導電布センサーについて

DSC_0780.png

「nüno」(ニューノ)というタッチコントローラ搭載基板と導電布がセットになっているモジュールです。
導電布経由で静電容量を読み取り、触れている場所が一軸で検知でき、センサー部と基板部分がスナップホックで接続されているので、外して洗濯も可能。
色んな人に協力してもらい作成したデバイスで、Maker Fair Tokyo 2018でテスト頒布をおこないました。

こちらのgithubにサンプルコードを上げています。
https://github.com/tendots/nuno

今回のCare Thingでもこのnünoの中に入っている基板を使って制作しています。

システム構成

こんな感じ

Construction.png

シンプルですね。
Cloudと書いている部分がenebular。
Sensor側のマイコンにはM5Stackを使用しています。
LINEはLINE Developers(https://developers.line.biz/) からMessaging APIを登録します。

M5Stack

M5Stack側では
- ベッドの上に人がいるか
- ベッドの上の人が動いているか
の検知を行っています。
その上で、異常がある場合はenebular宛にPOSTします。

値のとり方は移動平均ぽいものを取りながら、一定以下の値が続いた場合に異常検知のフラグを立てています。
このへんはまだまだ改善の余地アリ。

enebular

enebularのフローは下の画像のとおりです。
postされた値で場合分けを行い、状態に応じたテキストをLINEにPUSHしています。

余談ですが、最近リリースされたenebular editorが非常に便利でした。

スクリーンショット 2018-12-13 3.51.46.png

メッセージのPUSHには、LINE messaging APIのアクセストークンが必要ですので、次のステップで取得します。

LINE messaging API

チャネル管理画面

LINE Developers(https://developers.line.biz/ja/) から登録して、Messaging APIチャンネルを作成します。
スクリーンショット 2018-12-15 1.31.43.png

Messaging APIの管理画面

スクリーンショット 2018-12-13 3.22.12.png

ここで取得したアクセストークンをenebularのfunctionノードに記載して設定完了です。

実際の動作テストの様子は下記の動画にあります。
布の上で動かしている手がとまって、数値が一定以下の状態が続くことで、LINEにメッセージを送信しています。

https://www.youtube.com/watch?v=tCNyIzT-JRg&feature=youtu.be

今後したいこと

ハードウェアのブラッシュアップ

ハードウェアもまだまだ分厚くなってしまっているので、実際のベッドで使用できる薄さにして、動作検証を行いたいです。

データを貯めてビジュアライズ

データの可視化ができるInfomotionに一度トライしたのですが、
ちょっと僕にはハードルが高くできていないのでそこを再トライしたいです。教えてくれる人大募集です。

機械学習を使って姿勢判断ロジックの精度アップ

今はM5Stack内でしかデータを持っていませんが、
ネットワーク側にデータを貯めていけば、より制度の高い姿勢判断のロジックが作れると思うので、
そこも鋭意やってみたいです。というか一緒にやってくれる人欲しい。

まとめ

そんな感じで、今回ははとりあえず動くプロトタイプを作ったという感じですが、
来年はどんどんブラッシュアップして再度LINE Boot Awardにもリベンジしたいと思っています。
(うえぞうさんのいもうとBOT みたいな感じで)

もし面白そうだなーと思った人がいたら是非声かけてください。

では皆様、良き enebular ライフを!

追伸

32275881798_66f0c2e057_k.jpg

Mashup Awards 2018 でもAutodesk賞いただきました!