スマート家電 を自作してgoogle home から音声入力できるようにしよう

2017年10月28日 0 投稿者: Toshiaki Matsuyama
Pocket
LINEで送る

スマート家電を自作して 音声入力させるよ

前回 raspberry pi と連携させてAmazon Echoで音声入力に対応し始めた我が家の スマート家電 ですが、新しく届いたgoogle home miniでさらに音声入力が楽になったのでその方法をメモしておきます。

概要

前回の記事はこちら基本的にはこの記事と同じです。
今家にある赤外線リモコンに対応した家電を音声で入力できるようにします。
今回試して分かったのですがAlexaと比べてIFTTT連携がかなり秀逸で、OK,googleに続いたコマンドを作れるので短く済みます。
Alexaの場合は”Alexa,Alexa trigger”に続いたコマンドなのでかなり長くなります。

また、google homeは2017年10月28日現在ですでに日本語に対応しており日本語によるボイスコマンドが作れるのでかなり楽です。
アレクサは英語のみとなっており、日本語英語でも反応してくれるもののちょっと気疲れする点がありました。

 

製作

今回も同じく

  • google home(音声認識)
  • IFTTT
  • slack
  • USB赤外線リモコン
  • 家電

の流れで行きます。

この中でslack自体の設定やraspberry piから赤外線リモコン家電までの接続は前回記事を参考にしてください。
簡単に言いますと赤外線リモコンキットアドバンスを用いて
受信
bto_advanced_USBIR_cmd -r
受信停止
bto_advanced_USBIR_cmd -s
書き込み
bto_advanced_USBIR_cmd -g | tee tvon.txt
送信
bto_advanced_USB_cmd -d `cat ./tvon.txt`

です。slackはHubotでやってます。
今回はIFTTTとgoogle homeの連携について書きます。

google homeとslackの連携

IFTTTのアプリなりブラウザなりから編集します。
今回は画像を使って説明するので誰でもできるんじゃないですかね
まずはNew Appletを選択します。

こんな画面が出てきます。まずはIFの内容を打つためにthisをクリックします。
すると下の画面が出てきます。

googleまで打つとgoogle Assistantの設定が出てきます。
Google AssistantやGoogle homeによる音声入力はこれを使います。ちなみにAndroidのgoogle assistant(Allo)の音声入力にも反応するようになるのでgoogle homeを買いたくない人はAlloをスマホに入れて試してみるといいのではないでしょうか。起動の手間はありますが…

トリガーはSay a simple phraseを選択します。
他のを選ぶ事もできますが必要ないので今回はこれ

What do you want say? にボイスコマンドを入力します。
ただし、単なる電気付けてなどはすでに使われているので別のフレーズを用意してください。
また、少しでも違うフレーズだと認識しない上にgoogleの音声認識は半角スペースが適当な文節で入ったりするのでgoogle homeアプリのマイアクティビティやAlloの音声入力に音声コマンドを入力してどのように認識しているか調べる必要があります。

これ見るとわかる通り、例のカラスちゃん電気つけてのフレーズの間に二か所スペースが入っています。
これに気を付ければ問題ありません。

で、続いてthatを設定します。slackを選択して

Hubotが常駐しているチャンネルに家電を動かすコマンドを送りつけます。

ここまで設定したら最後にalloのgoogle assistantに対して動作確認を行います。キーボード入力で行ってください。

なぜかこれを行わないと音声コマンドを認識するようにならないので確実に行ってください。
最初の一回目はかなり時間がかかるのでIFTTTの連携を確かめているようです。
せっかく設定したのにgoogle homeがIFTTTの音声コマンドを認識してくれない人はこれを試してみてください。

以上で設定が終わってgoogle homeからslack経由で家電を動かす事ができるようになりました。

Ok Goolge,  カラスちゃん電気つけて と言うだけで電気がつくようになりました。
よかったですね。