<Gravioユースケース>Google Nest Hubのディスプレイで様々な通知を行ってみよう!―CATTを活用した、センシングデータに基づくわかりやすい「表示・通知」の実現―
この記事は1年以上前に書かれた内容です。
Gravioの機能・画面キャプチャーなどの情報が古い可能性があります。
最新情報は、Gravioオンラインマニュアルをご参考ください。
こんにちは、Gravio事業部のタルミです。
CO2濃度の通知や、人の「密」情報につながる、Gravioに内蔵されているAIを使った人数カウントの結果の通知など、今までLINE・slack・MS Teamsなどのメッセージツールや可視化を行なうBIツール、また、Gravioライトによる点灯色の変更など、様々な方法をご紹介してまいりましたが、本日、更にパワーアップした「通知」をご紹介したいと思います。
今回ご紹介するのは、Google Nest HubやChromecastというデバイスを駆動して、接続または搭載されているディスプレイに、CATTというアプリケーションを利用して、予め作成した動画や、Webサイトを表示する、というものです。
具体的にどんなことが出来るか、手順を追ってご紹介していきます。
想定利用例
Case 1 お客様来社を検知し、“いらっしゃいませ”や“手を消毒してください”などの案内画面を表示する
ちなみに、この仕組みを応用すれば、GravioのAIとカメラで推論・生成される“人数情報”から、●人以上になったら”部屋への入室を制限する“画像を表示するなどもできます。
待合スペースや喫煙スペースなどで効果的でしょう。
CO2情報との連動も面白そうです。特定の閾値を超えたら、注意喚起する動画を流すなど、様々なことが実現可能です。
用意するもの
- Gravioが動作するハードウェア一式(Windows 10、Mac、Raspberry Pi 4など)
- Gravioでお貸し出し可能な人感センサー、開閉センサー、CO2センサーなど
- ネットワーク環境(GravioがインストールされているPCとGoogle Nest/Chromecastが接続できていること)
- Google Nest Hub/Chromecastなど表示用のデバイス
実装方法
“人が来た”というデータを収集するために必要な設定は、Gravioの過去ブログをご確認ください。人感センサーをGravioで利用できるようにする、それだけですね。
同じように、開閉センサーを使えば“扉が開いた、閉じた”のデータが収集できますし、押し釦スイッチを使えば、ボタンを押した際に信号が出ます。
ようはセンサーデータが、Google Nest HubやChromecastが“動画を再生”するためのきっかけとなります。
カメラを使って“●人以上”、というデータの場合も同様です。
さて、本日のメインとなる作業は「CATT」と呼ばれるアプリケーションの導入です。
CATTはGitHubでシェアされています。
CATTの利用にはPythonが必要です。
Windows版、Linux版それぞれQiitaに情報が記載されていますので、そちらを参考にしながらPythonの環境と、CATTそのものをインストールしてください。
※Macでも同様にCATTをインストールおよび利用することが可能です。
CATTが無事にインストールされると、コマンドプロンプト(ターミナル)から
catt scan
を実行すると、下記のようにネットワーク上に存在するGoogle Nest HubやChromecast、またはAndroid TVを探してきてくれます。
私の検証環境(自宅です)では、2つのGoogle製ハードウェアを拾ってきました。
そのまま、CATTを使って、コンテンツの再生をテストしてみましょう。
ローカルに予めmp4動画ファイルを用意しておくと良いですね。
CATT上で
catt -d xxx.xxx.xxx.xxx(IPもしくはGoogle機材名)cast hogehoge.mp4(絶対パス)
実行すると、指定した動画が指定したIP(もしくはGoogle機材名)で再生されます。
hogehoge.mp4 のところを、YouTubeのリンクにすることもできます。
例)catt -d xxx.xxx.xxx.xxx cast https://youtu.be/FD9X71Y3XxA
緑色が満載の環境動画が指定したデバイスで自動再生されますねw
この機能を使えば、製品デモ動画などをYouTubeにアップロードしておき、
お客様がボタンを押したり、製品の前に立ったら、人感センサーが反応し動画が自動再生する、
などという仕組みを作ることができそうですね。
また
catt -d xxx.xxx.xxx.xxx cast_site https://www.hogehoge.com
とサイトそのものを投げることもできます。
こちらを実行すると、Web上にあるサイトを表示することが可能です。BIツールなどとの連携に良さそうですね。
これでYouTubeのサイトを指定すると、自動再生はせずに、動画選択をした状態の画面がキャストされます。
その他コマンド詳細は
catt -h
で確認できます。
ここまでの動作が確認できれば、あとはGravio側から、このコマンドを実行できるようにし、最後にセンサーとの紐付けを行えば完了です。
Gravio側でCATTを実行させる場合のヒントは
先程紹介した各ページに記載がありますので、もう一度読んでみてください。
重要なのは、バッチを作成する(Win)、シェルスクリプトを作成する(Linux)、あとは引数の設定あたりです。
それら作成したものをGravioのアクションとして設定することになります。
私は今回Windows環境で作成してみました。
Mac/Linuxの場合は作成し保存したシェルそれぞれに実行権限をつけてあげる必要があるので、ちょっと難しくなります。
Windowsの場合はそのあたりを気にしないでOKですので、いくばくか楽です。
バッチファイルをアップロードしたら、アクションはこんな感じで作ります。
YouTube再生であれば、Arguments の中身は https://で始まる共有リンクです。
この中身は、私が事前に作成した案内用の動画ファイルです。
ローカルのPCに保存してあるものを、CATTを使って、同一ネットワークにあるGoogle Nest Hubに送り込むわけですね。
で、最後に、トリガーを設定しなければなりません。
今回はわかりやすく、押し釦スイッチを押すと動画が流れる、という仕組みにしました。もちろん人感センサーをトリガーにしても問題ありません。
これで、すべての設定は終了です。
- ボタンを押す
- ローカルに保存されている動画がネットワークを経由してGoogleNest Hubに送り込まれる
- 再生される
という仕組みになります。
実際の動作シーンがこちら。
実は、Gravioそのものはタイマー動作も設定可能なので、「決められた日時に特定の動画を流したい」という場合、センサーが無くても実現できるのですが、これだけですとGravioの売上に繋がりませんので(笑)できればセンサーやカメラとの連動を是非行っていただければ、と思います。
さいごに
IoTやAIを現場が上手に活用し、その価値を享受していただく際に、改めて「通知」の仕組みは重要だと思います。データは利用されてこそ意味があります。多種多様な情報の受け手に対して、リテラシーに依存しない、いわば「スッとわかる」通知を簡単に構築できるのは重要です。弊社では今までもライトの色や、LINEメッセージなどによるわかりやすい通知を実装、提供してきましたが、CATTを使ったデジタルサイネージ的利用法が加わることで、更にわかりやすい表示が可能になるでしょう。
社会の要請でもありますが、ニューノーマルへの対応を加速させていく上で、今まで人が情報収集や通知をしていたような作業を自動化するニーズが非常に高まってきています。当然、通知方法は今までの知識で理解しうるもの(=簡単にわかるもの)が求められます。見慣れたデジタルサイネージ的通知をセンサーデータとあわせて簡単に実装できるGravioとCATT、更に入手可用性の高いGoogle製品との組み合わせは、このような要望にお答えできるものだと考えております。是非、身近な情報を表示することで、様々な自動化を実現していただければと思います。