Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
たぶん世界初…?Google Assistant搭載〇〇〇を作ってみた
Search
田中みそ
June 26, 2018
Programming
3
2k
たぶん世界初…?Google Assistant搭載〇〇〇を作ってみた
「スマートスピーカーを遊びたおす会」で発表したスライドです。
■デモ動画
https://youtu.be/nQVJRvZ0TEE
田中みそ
June 26, 2018
Tweet
Share
More Decks by 田中みそ
See All by 田中みそ
プラレールのめちゃくちゃ良く折れるアレをできる限り手抜きして3Dプリンターでなんとかしようとした
miso
0
35
子どもの写真からデフォルメフィギュアを作ってみた
miso
1
240
LINE x IoT 入門ハンズオン
miso
0
220
M5ATOMでNintendo Switchを自動化してみた
miso
0
510
ngrokを使ったLINE Bot開発を超絶楽ちんにする「linegrok」のご紹介
miso
0
440
opnizのご紹介
miso
0
840
ルービックキューブスクランブラーが欲しかったので作ってみた
miso
0
850
MineCraftのレッドストーンを現実世界まで拡張してみた
miso
0
180
TypeScriptでIoT開発できるらしいDeviceScriptのご紹介
miso
0
650
Other Decks in Programming
See All in Programming
Amazon ECS Managed Instances が リリースされた!キャッチアップしよう!! / Let's catch up Amazon ECS Managed Instances
cocoeyes02
0
110
CSC509 Lecture 07
javiergs
PRO
0
250
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
240
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
190
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
1
140
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
Google Opalで使える37のライブラリ
mickey_kubo
3
170
ボトムアップの生成AI活用を推進する社内AIエージェント開発
aku11i
0
1.3k
Inside of Swift Export
giginet
PRO
1
250
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
3
890
品質ワークショップをやってみた
nealle
0
660
SwiftDataを使って10万件のデータを読み書きする
akidon0000
0
250
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Practical Orchestrator
shlominoach
190
11k
A designer walks into a library…
pauljervisheath
209
24k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Producing Creativity
orderedlist
PRO
348
40k
Visualization
eitanlees
150
16k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
The Cult of Friendly URLs
andyhume
79
6.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Docker and Python
trallard
46
3.6k
Transcript
たぶん世界初…? Google Assistant搭載 〇〇〇を作ってみた 田中 みそ (田中 大樹)
自己紹介 田中 みそ (田中 大樹) Qiita: miso_develop Twitter: miso_develop Facebook:
田中みそ GitHub: miso-develop
自己紹介 田中 みそ (田中 大樹) Qiita: miso_develop Twitter: miso_develop Facebook:
田中みそ GitHub: miso-develop
リリースしたアプリ/スキル  クロマチックチューナー(Google Assistant/Alexa)  指定の音の正弦波を流す楽器のチューニングアプリ  相対音感クイズ(Google Assistant/Alexa) 
Cの次に鳴るコードが何のコードか当てるクイズアプリ  マルバツゲーム(Alexa)  まんまマルバツゲームのスキル  ギタースケール辞典(Alexa)  知りたいギタースケールをキーと一緒に話しかけると スケール音を教えてくれるスキル
None
Google Homeでつくるスマートホーム
None
もっと自分に合ったスマートスピーカーが あるんじゃないか…?
Google Assistant搭載 バナナパンツ
つくりかた(ハードウェア)
つくりかた(ハードウェア)  バナナパンツ … 1,382円  Raspberry Pi Zero W
… 1,296円  スピーカー(Speaker pHAT) … 1,566円  マイク(USB) … 145円  モバイルバッテリー … 1,399円  SDカード … 618円  ケーブル、コネクタ … 約1,000円  合計 … 約7,406円 いるもの
Raspberry Pi Zero W Speaker pHAT モバイルバッテリー micro SD USBマイク
USB L字変換コネクタ USBケーブル USB延長ケーブル
None
None
None
None
完 成
つくりかた(ソフトウェア)
つくりかた(ソフトウェア)  Google Assistant SDK  Google Assistant Library 
Google Assistant Service ラズパイZeroは Library非対応 ServiceはgRPCが使えれば どの言語でもOK (主要言語は大体対応) Serviceはウェイクワード が使えない…!
つくりかた(ソフトウェア)  Snowboy  好きなウェイクワードを登録して使えるサービス  様々なプログラミング言語に対応
つくりかた(ソフトウェア)  Snowboyでウェイクワードを検出  「OK バナナ」 ↓  Google Assistantをマイクオープン
 それぞれNode.jsパッケージを使用して実装  snowboy  https://github.com/kitt-ai/snowboy  google-assistant  https://github.com/endoplasmic/google-assistant
つくりかた(ソフトウェア)  Snowboy  Webページからオリジナルウェイクワードを登録し、 定義ファイルをDLして参照  感度やマイク音量を変数でいじれるので調整  ウェイクワード検知でGoogle
Assistantを マイクオープンさせる
 Google Assistant SDK  GCPコンソールでGoogle Assistant SDKを 有効化し、認証ファイルをDLして参照 
初回起動時に接続アカウント指定  Google Assistantの音声検知イベントを拾って ローカルコマンドを実行 つくりかた(ソフトウェア)
つくりかた(ソフトウェア) ハマりどこ  突然マイクが死ぬ  録音デバイスの優先順位定義configを作成  突然Speaker pHATのLEDが死ぬ 
↑の定義configを削除すると直る  マイクは何故か再び死ぬことはなかった  google-assistantが、ラズパイZeroじゃ スペックが低いっぽくて動かない  Issueでも上がっててプルリクまで投げられてるけど マージされてない修正を適用したらとりあえずいけた
性能評価
性能評価  マイク  Snowboyは感度調節できるけど認識がイマイチ…  タイピング音に良く反応する  Google Assistantの認識は本家と遜色ない
 スピーカー  音量はわりと出る  バナナパンツとしては十分  音質は見た目通りな感じ  音楽聴くには微妙だけど、音声のやりとりには十分
性能評価
性能評価  動作(速度、安定性)  反応はそこそこ遅い  所詮バナナ  応答の音声再生が不安定 
改善の余地はありそうだけど反応速度と トレードオフっぽいかも
 Google Assistant性能  天気とかは普通に聞ける  ピカチュウトークは利用できない  「使用中のアカウントではピカチュウを利用できません」 
バナナパンツとしては妥当  自作アプリや個人リリースのアプリは普通に使える  IFTTT連携も問題なし 性能評価
性能評価  消費電力(稼働時間)  待機時: 約0.61Wh(約120mAh)  音楽再生時: 約1.02Wh(約200mAh) 
ピーク時: 約1.53Wh(約300mAh)
性能評価  消費電力(稼働時間)  待機時: 約0.61Wh(約120mAh)  音楽再生時: 約1.02Wh(約200mAh) 
ピーク時: 約1.53Wh(約300mAh)  今回使用したモバイルバッテリーの容量は6700mA  待機状態を単純計算で56時間稼働  実際はロスが発生し一般的なモバイルバッテリーのロス率は4割ほどらしい  となると33.6時間ほど  丸一日は持ちそう  一ヶ月ノンストップ稼働した場合の電気代は20円~25円ほど
課題  音声出力動作の安定化  音声データの通信、復元部をいじってみる  LEDをカラフルにチカチカさせたい  Speaker pHATはカッコイイけどGPIO全部埋まっちゃう
 Speaker pHATをやめてスピーカー部を自分で実装  マイク感度を改善  USBマイクじゃなくてGPIO実装  小型化  ついでに電源もGPIO給電にすればもっと小型化できそう
さいごに  ウェアラブル音声アシストって案外いいですね  1部屋1台 → 1人1台  場所にとらわれない 
今あるもの  ヘッドフォン  音楽聴く時以外も着けてるのはきつい  首掛けスピーカー  いい感じっぽいけど、常に着けてる感はなさそう  スマートウォッチ  やっぱこれが本命
おわり ご清聴ありがとうございました