はじめに
ペットヘルスケアについて
皆さん、ご自宅のワンちゃん、ニャンちゃんの健康が心配になることはないでしょうか。
外出中に具合が悪くなっていないか、家にいる時でも具合悪いのを我慢していないか、など。特に急性の病気の場合、少しでも早く気がついてあげて病院に連れていきたいところです。
ネコの場合、特に尿路系の病気は1~2日で命に関わることもあり、大変心配です。突発性膀胱炎、膀胱結石、尿道結石、etc・・・。いろいろな要因がありますが、うちの子はなりやすさの要素にヒットする部分が多く(♂ネコ、純血種、ドライフード、肥満!)、より心配です。ご飯にはかなり気を配って(日によっては私より高い物食べてます!w)いるものの、それ以外にも要因があるということです。
まずはこのあたりのクリティカルなところを早期発見できれば・・・というのがモチベーションです。
IoTやAI関連について
丁度1年ほど前にIoTのお勉強も兼ねてAWS IoTやRaspberryPiを利用して、ちょっとしたものを作成したのですが、この1年で同じサービスでも使いやすさがグッと向上しているようです。分野として期待されていることもあり、大変進歩が早いので情報をまとめてもすぐに陳腐化する懸念も否めないのですが、現時点でのベストプラクティスとまでは行かなくても便利な使い方や、構築の一通りの流れをご紹介できればいいな、と思います。AI系のサービスはできれば取り込みたいです。
取り扱う技術的な要素
以下を利用する予定ですので、ご興味のあるかたは是非。ただし、個別の要素について深掘りすると言うよりは、どう組み合わせて使うかという観点でご紹介します。そのため、それぞれについて詳しく知りたい方は別の記事や、マニュアル(本記事からも参照する予定)をご覧いただくほうが良いと思います。
- Amazon Web Services(AWS)
- IoT、Lambda、CloudWatch、SNS、Rekognition、etc
- RaspberryPi
- Raspberry Pi 3 Model B、GrovePi+、各種センサー類
- LINE bot
- Messaging API
実現したいこと
尿路系の症状をいち早く検知
病気についてはこちらが詳しいので割愛しますが、多くの病気では症状の一つとしてトイレの利用状況に現れます。
- おしっこの回数が増える(or 1分以上かかる)
- おしっこが少ない
- おしっこするとき声を出して痛がる
- トイレ以外で粗相する(つまりトイレを使っていない)
などなどです。特に、回数については多くの病気で共通した症状として現れます。これらを検知して飼い主 召使いへ連絡することで早期発見・治療へとつなげること、また検知の仕組みがあること自体で召使いも安心できるようにすることです。そのために、まずは日頃から普通の状態を観測しておき、なにか変化があった際に異常だと分かるようにしていきます。
アーキテクチャ概要(全体)
以下の図のようなアーキテクチャを想定しています。ゆくゆくは色んなネコ様に使っていただきたく、スケールもし易いようにサーバレスなアーキテクチャにします。
- ネコさん用トイレ(Cat's Restroom)に設置したセンサからデータを取得し、Raspberry Pi 3からAWS IoTへ送信します。
- AWS IoTから各種AWSサービスに連携し、必要な処理を行った上で召使いへ通知します。
- CloudWatch
- トイレ利用履歴を保存します。
- グラフ化機能を利用して、直近の利用履歴を確認できるようにします。
- SNS
- トイレ利用を検知し、召使いへメールやSMSで連絡します
- Lambda
- LINEを経由してメッセージ送信を行います。
- 召使いがLINE botを登録したら、メッセージ送信に必要な情報を取得します。
- より複雑な条件判定を行い、召使へ通知を行います。
- 例:トイレの回数が異常に多い場合には、会社携帯へもSMS!(召使いは早退します)
- LINEを経由してメッセージ送信を行います。
- (Rekognition)
- トイレの画像から状況を判断して通知します。(仮)
- CloudWatch
書いていたらちょっと複雑になってきたきもしますが、仕組みは単純で、AWS IoTにデータを一旦集めたのち、必要な処理へ分岐できるようになっています。分岐後は、あの手この手で召使いへ連絡します。
Rekognitionはできれば使いたいところですが、ウ○チへの砂の賭け方などにムラがあり、結構厳しいのでは・・・と思っています。匂い(ガス)センサーのほうが確実だとは思うのですが、センサー自体の取扱いが少々難しいため、後回しです。
今後
以下の記事に分割して作成予定です。
- IoTでペットヘルスケア[実装編:センサデータの取得~AWS IoT連携]
- IoTでペットヘルスケア[実装編:AWSサービス間の連携]
#それぞれが長くなりそうな場合、更に分割するかもしれません。
おわりに
本当はずっと家にいてネコ様の召使い業務に勤しみたいところを苦肉の策で・・・というのが本音ですが、ご奉仕のためにも稼がねばなりませんので仕方ないです。できることをやらねば、ということで!
#リモートワークしたいなぁ・・・田舎の広い家で盛大にキャットウォークを作ってあげたい!(これが真の本音)