Slide 1

Slide 1 text

たぶん世界初…? Google Assistant搭載 〇〇〇を作ってみた 田中 みそ (田中 大樹)

Slide 2

Slide 2 text

自己紹介 田中 みそ (田中 大樹) Qiita: miso_develop Twitter: miso_develop Facebook: 田中みそ GitHub: miso-develop

Slide 3

Slide 3 text

自己紹介 田中 みそ (田中 大樹) Qiita: miso_develop Twitter: miso_develop Facebook: 田中みそ GitHub: miso-develop

Slide 4

Slide 4 text

リリースしたアプリ/スキル  クロマチックチューナー(Google Assistant/Alexa)  指定の音の正弦波を流す楽器のチューニングアプリ  相対音感クイズ(Google Assistant/Alexa)  Cの次に鳴るコードが何のコードか当てるクイズアプリ  マルバツゲーム(Alexa)  まんまマルバツゲームのスキル  ギタースケール辞典(Alexa)  知りたいギタースケールをキーと一緒に話しかけると スケール音を教えてくれるスキル

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

Google Homeでつくるスマートホーム

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

もっと自分に合ったスマートスピーカーが あるんじゃないか…?

Slide 9

Slide 9 text

Google Assistant搭載 バナナパンツ

Slide 10

Slide 10 text

つくりかた(ハードウェア)

Slide 11

Slide 11 text

つくりかた(ハードウェア)  バナナパンツ … 1,382円  Raspberry Pi Zero W … 1,296円  スピーカー(Speaker pHAT) … 1,566円  マイク(USB) … 145円  モバイルバッテリー … 1,399円  SDカード … 618円  ケーブル、コネクタ … 約1,000円  合計 … 約7,406円 いるもの

Slide 12

Slide 12 text

Raspberry Pi Zero W Speaker pHAT モバイルバッテリー micro SD USBマイク USB L字変換コネクタ USBケーブル USB延長ケーブル

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

完 成

Slide 18

Slide 18 text

つくりかた(ソフトウェア)

Slide 19

Slide 19 text

つくりかた(ソフトウェア)  Google Assistant SDK  Google Assistant Library  Google Assistant Service ラズパイZeroは Library非対応 ServiceはgRPCが使えれば どの言語でもOK (主要言語は大体対応) Serviceはウェイクワード が使えない…!

Slide 20

Slide 20 text

つくりかた(ソフトウェア)  Snowboy  好きなウェイクワードを登録して使えるサービス  様々なプログラミング言語に対応

Slide 21

Slide 21 text

つくりかた(ソフトウェア)  Snowboyでウェイクワードを検出  「OK バナナ」 ↓  Google Assistantをマイクオープン  それぞれNode.jsパッケージを使用して実装  snowboy  https://github.com/kitt-ai/snowboy  google-assistant  https://github.com/endoplasmic/google-assistant

Slide 22

Slide 22 text

つくりかた(ソフトウェア)  Snowboy  Webページからオリジナルウェイクワードを登録し、 定義ファイルをDLして参照  感度やマイク音量を変数でいじれるので調整  ウェイクワード検知でGoogle Assistantを マイクオープンさせる

Slide 23

Slide 23 text

 Google Assistant SDK  GCPコンソールでGoogle Assistant SDKを 有効化し、認証ファイルをDLして参照  初回起動時に接続アカウント指定  Google Assistantの音声検知イベントを拾って ローカルコマンドを実行 つくりかた(ソフトウェア)

Slide 24

Slide 24 text

つくりかた(ソフトウェア) ハマりどこ  突然マイクが死ぬ  録音デバイスの優先順位定義configを作成  突然Speaker pHATのLEDが死ぬ  ↑の定義configを削除すると直る  マイクは何故か再び死ぬことはなかった  google-assistantが、ラズパイZeroじゃ スペックが低いっぽくて動かない  Issueでも上がっててプルリクまで投げられてるけど マージされてない修正を適用したらとりあえずいけた

Slide 25

Slide 25 text

性能評価

Slide 26

Slide 26 text

性能評価  マイク  Snowboyは感度調節できるけど認識がイマイチ…  タイピング音に良く反応する  Google Assistantの認識は本家と遜色ない

Slide 27

Slide 27 text

 スピーカー  音量はわりと出る  バナナパンツとしては十分  音質は見た目通りな感じ  音楽聴くには微妙だけど、音声のやりとりには十分 性能評価

Slide 28

Slide 28 text

性能評価  動作(速度、安定性)  反応はそこそこ遅い  所詮バナナ  応答の音声再生が不安定  改善の余地はありそうだけど反応速度と トレードオフっぽいかも

Slide 29

Slide 29 text

 Google Assistant性能  天気とかは普通に聞ける  ピカチュウトークは利用できない  「使用中のアカウントではピカチュウを利用できません」  バナナパンツとしては妥当  自作アプリや個人リリースのアプリは普通に使える  IFTTT連携も問題なし 性能評価

Slide 30

Slide 30 text

性能評価  消費電力(稼働時間)  待機時: 約0.61Wh(約120mAh)  音楽再生時: 約1.02Wh(約200mAh)  ピーク時: 約1.53Wh(約300mAh)

Slide 31

Slide 31 text

性能評価  消費電力(稼働時間)  待機時: 約0.61Wh(約120mAh)  音楽再生時: 約1.02Wh(約200mAh)  ピーク時: 約1.53Wh(約300mAh)  今回使用したモバイルバッテリーの容量は6700mA  待機状態を単純計算で56時間稼働  実際はロスが発生し一般的なモバイルバッテリーのロス率は4割ほどらしい  となると33.6時間ほど  丸一日は持ちそう  一ヶ月ノンストップ稼働した場合の電気代は20円~25円ほど

Slide 32

Slide 32 text

課題  音声出力動作の安定化  音声データの通信、復元部をいじってみる  LEDをカラフルにチカチカさせたい  Speaker pHATはカッコイイけどGPIO全部埋まっちゃう  Speaker pHATをやめてスピーカー部を自分で実装  マイク感度を改善  USBマイクじゃなくてGPIO実装  小型化  ついでに電源もGPIO給電にすればもっと小型化できそう

Slide 33

Slide 33 text

さいごに  ウェアラブル音声アシストって案外いいですね  1部屋1台 → 1人1台  場所にとらわれない  今あるもの  ヘッドフォン  音楽聴く時以外も着けてるのはきつい  首掛けスピーカー  いい感じっぽいけど、常に着けてる感はなさそう  スマートウォッチ  やっぱこれが本命

Slide 34

Slide 34 text

おわり ご清聴ありがとうございました