Raspberry Pi & iBeaconハンズオンを介護系ベンチャー企業でやってみた

# はじめに

はじめまして、名古屋市にある[メグラス](https://www.meglus.co.jp/)という介護系ベンチャー企業で社内SEをしております、@ktshnと申します。

介護業界は非常にIT/ICT/IoTの活用が遅れている業界だと思っていますが、同様の課題意識をお持ちの方も多くおられると理解しております。少しでもそんな方のお役に立てればというのと、名古屋市にこんなハンズオンを社内でやっちゃう介護の会社があるというのを知っていただきたいという思いから、弊社内で開催したハンズオンについて、事前に準備したことおよび当日のレジュメを勇気を出して公開させていただきます。

※本記事は全体のまとめのみになります。手っ取り早くレジュメを見たい方は別記事([Raspberry Pi & iBeacon ハンズオン レジュメ](https://qiita.com/ktshn/items/29abb960b537d529fbc6))へどうぞ。

# やることになった経緯

上で偉そうな事書きましたが、最初は完全に思いつきです。思いつきで全職員約180名へ向けて参加を募ったら、想像以上の反響(参加希望2名、閲覧希望4名)がありましたので、開催の運びとなりました。
\# まさか本当にやることになるとは思っていなかったので正直焦ったというのは秘密


# 事前準備
### 1. ゴール設定
ここが一番悩みましたが、まずは触れてもらうのが大事というのと、参加された方が今後自分で色々とやってみようと思えることが大切だと考えましたので、

- 自分自身でRaspberry Piの最低限のセットアップを体験する
- **コードをほとんど書かなくても**モノとモノの大まかな距離を検知できるということを体験する

を最低ラインにもし上手く行けば

- Raspberry PiにiBeaconが近づいたらなにか起きるというのを自分自身で作り出す

というとこまで行けたらいいかなというところにゴールを置きました。

### 2. ツールの選定

#### セットアップまわり

Raspberry Piのセットアップで一番苦労するのがWi-Fiの設定だと思ってます。とくにCUIでやろうと思うとなれない人にはかなりハードル高い。でも苦労するからこそやってほしい。ということで諸々探してたところQiita内に素晴らしい記事を発見。

- [Raspberry Pi セットアップ(書き込み～SSH設定まで)](https://qiita.com/Halhira/items/1da2ae543217be26988a)

PiBakeryをこちらで知り、採用させていただくことにしました。Wi-Fiの設定だけでなく、とにかく今回はセットアップでハードルを感じさせたくなかったため、必要な情報や必要な処理は全部PiBakeryのブロックにしたりやrecipe.xmlに書いてしまって、それをインポートする形でセットアップを進めることにしました。参考にした記事はこちら。

- [PiBakeryの固定IPアドレス設定ブロックを自作する](https://qiita.com/mochimo/items/b3f7c2f7d77283baa7b8)

#### 実際の処理まわり

とにかく**コードを可能な限り書かずに**やりたかったので、Node-REDを選択。合わせてNode-REDでBLE信号を扱えるようにするための[Bleacon](https://github.com/sandeepmistry/node-bleacon)と、[node-red-contrib-bleacon](https://www.npmjs.com/package/node-red-contrib-bleacon)を選択。

### 3. レジュメ作成

自分で手を動かしながら手順書を作るイメージでやってみました。躓きそうなところは注意を加えたり、そもそも初期設定でできるものはPiBakeryのブロックにしちゃったり。結局5回くらい通しで見直しをしたので、これが一番時間かかった印象ですが、ここを怠ると当日不測の事態に対応できないし、ゴールまでたどり着けずに参加者にも失敗体験として印象づけてしまうので気合い入れてやりました。
Node-REDでBLE信号をデバッグウィンドウに出せるようになったところからは敢えてレジュメに詳細は書かず、自分で調べてもらったり、わからないところを聞いて貰う形にしています。

そうしてできたのがこちら。(長くなったので別記事にて公開します。)

[Raspberry Pi & iBeacon ハンズオン レジュメ](https://qiita.com/ktshn/items/29abb960b537d529fbc6)

# 当日の準備

参加者に自分で用意してもらったのは下記の通り。

- [ ] Raspberry Pi 3 Model B+本体
- [ ] 上記を動作させるために必要な電源
- [ ] キーボード
- [ ] iOSが動作する何らかしらの端末

こちら(主催者)で用意したのは下記の通り。

- [ ] 十分な電源容量と口数の100V電源
- [ ] 無線LAN(社内既設のものを利用)
- [ ] HDMI接続のディスプレイとHDMIケーブル
- [ ] マウス(GUIでなにかしなきゃいけなくなった時用)
- [ ] 主催者用の機材ワンセット(参加者と同じ)
- [ ] 説明用の大型ディスプレイ
- [ ] レジュメを印刷したものワンセット
- [ ] ハンズオン完了後にそうなっているであろう状態のSDカードイメージファイル

# やってみて

#### 全体
驚くほどスムーズに何事もなく進行することができました。所要時間的には13時〜17時くらいを予定していましたが、時間的にも問題なく完了することができました。むしろスムーズに行き過ぎてもうちょっと介護の現場で活かせるプロトタイプにつながるような例を用意しとけばよかったと思ったくらいです。

#### 参加者からの声

- 今まで難しいと思って興味はあったがやれていなかったので、実際にやってみることができてよかったし、思ったより簡単だった。レジュメを見ながらもう一度復習してみようと思う。
- 趣味でやっている農業に活かせるものがないか興味があったので見学させてもらった。センサーの情報を取り出し、そこからNode-REDを使うことでその数値を他の処理と連携させられることが理解できたので、実際にやってみたいと思う。
- 人の動きの分析による業務効率化や、看護師がいる場所を探さずに済むようになるなどいろいろと応用が考えられてよかった。これがシステムベンダーの手を借りずにできる可能性に驚いた。

# さいごに
現場からシステム(IT/ICT/IoT)を利用した業務改善や業務効率化の声が上がるようになればと思い日々業務をしていますが、やはり百聞は一見にしかずで実際に自分の手を動かしてやってみていただくことの大切さを非常に感じました。
日常の業務をきっちりやることはもちろんですが、こういった技術に介護職含めた社員が触れる機会を多く作っていくことで介護業界全体としてIT/ICT/IoT活用がもっともっと進むように微力ですが貢献していければと思います。

最後まで閲覧ありがとうございました。レジュメ含めてツッコミ/コメント大歓迎ですのでよろしくお願いいたします。


# 参考にした記事まとめ

- [Raspberry Pi セットアップ(書き込み～SSH設定まで)](https://qiita.com/Halhira/items/1da2ae543217be26988a)
- [PiBakeryの固定IPアドレス設定ブロックを自作する](https://qiita.com/mochimo/items/b3f7c2f7d77283baa7b8)
- [たった5行!最も簡単にiBeaconの電波を「受信」する方法](https://qiita.com/kpkpkp/items/c2899e548da1c5e2c28e)
- [自己発電＋BLE BeaconスイッチのSmart Button SwitchをRaspberry Pi Node-REDでBLE受信してみたメモ](https://www.1ft-seabass.jp/memo/2017/10/07/node-red-meets-smart-button-switch/)
- [Node-RED+IFTTTでセンサー・データをGoogleドライブ(スプレッドシート)に収集する](http://denshibu.blog.fc2.com/blog-entry-28.html)