- ハードウェア要件
- Raspberry PiGoogleアシスタント用のGoogleAPIの設定
- Raspberry Pi GoogleHome用のGoogleアシスタントの設定
- Googleアシスタント用のRaspberryPiの承認
- RaspberryPiでのGoogleアシスタントの使用
自分の声で操作できるスピーカーを考えたことはありますか!!!はい、Amazon Echoは最も人気のある音声制御スピーカーの1つですが、それと競合してGoogleHomeも人気を集めています。 AIベースのシステムの時代に向かっているため、音声アシスタントの人気が高まっています。 Googleアシスタント、Apple Siri、AmazonAlexaについて聞いたことがあるでしょう。これらはすべて音声ベースのAIシステムであり、これらが互いに異なるのはエコシステムであり、これがGoogleアシスタントが最も際立っているところです。グーグル、アップル、アマゾン、これらすべての企業はすでにスマートスピーカーを発売しています。 Googleスマートスピーカーも市場で入手可能です。 RaspberryPiベースのAmazonEchoについてはすでに説明しましたが、今回はRaspberryPiをGoogleホームスピーカーに変えます。
Googleは、オープンソースでGithubで利用できる音声サービスを使用するためのAPIを提供しています。Google Voiceサービスを使用すると、音楽の再生、天気に関する情報の取得、チケットの予約などを行うことができます。あなたがしなければならないのは尋ねるだけです。このチュートリアルでは、GoogleアシスタントとRaspberryPiを使用して音声制御のスマートスピーカーを構築する方法を見てみましょう。
ハードウェア要件
- Raspberry Pi3またはRaspberryPi 2モデルBおよびSDカード(8GB以上)
- 3.5mmAUXケーブル付き外部スピーカー
- WebカメラまたはUSB2.0マイク
また、RaspberrypiはすでにRaspbianOSでセットアップされており、インターネットに接続されていることを前提としています。これらを配置したら、チュートリアルを進めましょう。Raspberry Piを初めて使用する場合は、最初にRaspberrypiの使用を開始してください。
注: ウェブカメラにはマイクが組み込まれているため、USB2.0マイクの代わりにこれを使用します。
HDMIケーブルを使用してラズベリーパイを接続するには、キーボード、マウス、モニターも必要です。
Raspberry Piを使用したWebカメラマイクの確認:
1. Raspberry Piターミナルを開き、arecord-lコマンドを入力します。これにより、以下に示すように、RaspberryPiに接続されているハードウェアデバイスが表示されます。
カード1は、これから使用するWebカメラのマイクです。表示されない場合は、Webカメラに欠陥がある可能性があります。
2.次に、次のようにrecord audioコマンドを実行して、マイクが機能しているかどうかを確認します。
arecord /home/pi/Desktop/test.wav -D sysdefault:CARD = 1
3.録音したオーディオを再生するには、次のコマンドを入力します。
omxplayer -p -o local /home/pi/Desktop/test.wav
Raspberry PiをHDMIケーブルを使用してモニターに接続している場合、デフォルトでは、オーディオ出力はモニターのスピーカーを介して行われます(スピーカーが内蔵されている場合)。したがって、3.5mmに変更するには、次のコマンドを入力する必要があります。
sudo raspi-configを実行し、Advanceオプションに移動します。
リストから[オーディオ]を選択し、[Force 3.5mm]を選択し、[OK]を選択して、RaspberryPiを再起動します。
これで、3.5mmジャックから音が聞こえるはずです。
注:マイクの入力音声ラウドネスを増減する場合は、端末のタイプ アルサミキサー を使用します。F6を押して、端末からサウンドカードを選択します。
F4を押してマイクdBゲインを変更し、必要に応じて設定します。
USB 2.0マイクを使用している場合は、マイクを確認する手順は同じです。ここでは、USBマイクロフォンにWebカメラを使用しました。
Raspberry PiGoogleアシスタント用のGoogleAPIの設定
1.まず、Googleコンソールのアクションダッシュボードでプロジェクトを登録して設定する必要があります。
2. Googleアカウントにログインすると、次のウィンドウが表示されます。
[ プロジェクトの追加/インポート]を クリックします。
3.次の画面で、 プロジェクト名 を入力し、[ プロジェクトの作成 ] をクリックする必要があります 。
4.次に、新しいタブでGoogle Developers Consoleに移動し、Google AssistantAPIを検索します。先に進んで[有効にする]ボタンを押す前に、プロジェクトが選択されていることを確認してください。次に、[有効にする]をクリックします。
5.次に、Googleコンソールの前のタブを開き、画面の一番下までスクロールします。
[ デバイス登録 ]オプションがありますので、それをクリックします。
6.次の画面で、[モデルの登録]をクリックします。この後、製品名、メーカー名、デバイスタイプを設定する必要があります。これらの名前は、任意の名前にすることができます。
プロセスの後半で必要になるため、デバイスモデルIDを書き留めます。
次に、[モデルの登録]をクリックします。
7.次の画面は、資格情報のダウンロード用です。この認証情報ファイルを取得するには、[ OAuth2.0認証情報のダウンロード ]をクリックし ます 。このファイルは非常に重要なので、安全な場所に保管してください。
次に、[次へ]をクリックします。
8.必要な特性を選択できますが、この場合はこれらのいずれも必要ないため、以下に示すように[ スキップ ]ボタンをクリックしました。
9.すべてが完了すると、次の画面が表示されます。
10.次に、[アクティビティコントロール]ページに移動します。ここで、GoogleアシスタントAPIが正常に機能するようにするには、次のアクティビティコントロールをアクティブにする必要があります。
Webとアプリのアクティビティ、ロケーション履歴、デバイス情報、音声とオーディオのアクティビティ
11.もう一度、Google DevelopersConsoleに移動します。ダッシュボードの左側にある[資格情報]をクリックします。OAuth同意画面をクリックします。
12. Gmail IDと任意の名前を製品名に入力し、保存します。
これで、GoogleAPIのセットアップが完了しました。
Raspberry Pi GoogleHome用のGoogleアシスタントの設定
このパート以降では、SSH経由ではなく、Raspbianデスクトップでチュートリアルを直接完了する必要があることに注意してください。これは、組み込みのWebブラウザーを使用する必要があるためです。
1.まず、次のコマンドを使用してRaspberryPiのパッケージリストを更新します
sudo apt-get update
2.次に、以前にダウンロードした資格情報を保存できるファイルを作成します。このために、次の2つのコマンドを実行します
mkdir ~/googleassistant
nano ~/googleassistant/credentials.json
3.このファイルでは、ダウンロードした資格情報ファイルの内容をコピーする必要があります。お気に入りのテキストエディターで.jsonファイルを開き、ctrl + A、ctrl + Cの順に押して内容をコピーします。
コンテンツをコピーした後、Ctrl + X 、 Yの 順に押してファイルを保存し、 最後にEnterキーを押し ます。
4.認証情報ファイルを保存した後、Googleアシスタントの実行に必要ないくつかの依存関係のインストールを開始します。
次のコマンドを実行して、Python3とPython3仮想環境をRPiにインストールします。
sudo apt-get install python3-dev python3-venv
5.次のコマンドを使用して、仮想環境としてpython3を有効にします。
python3 -m venv env
6.最新バージョンのpipとsetuptoolsをインストールします 。次のコマンドを実行して更新を取得します
env/bin/python -m pip install --upgrade pip setuptools --upgrade
7. Python環境に入るには、このコマンドを実行する必要があります
source env/bin/activate
8.次に、Googleアシスタントライブラリをインストールします。次のコマンドを1つずつ実行して、更新されたライブラリを取得します。
python -m pip install --upgrade google-assistant-library
python -m pip install --upgrade google-assistant-sdk
これで、必要なすべての依存関係とライブラリのインストールが完了しました。
Googleアシスタント用のRaspberryPiの承認
1.まず、次のコマンドを実行して、Google認証ツールをRaspberrypiにインストールします。
python -m pip install --upgrade google-auth-oauthlib
2.次に、Google認証ライブラリを実行する必要があります。このコマンドを実行して、ライブラリを実行します。
google-oauthlib-tool --client-secrets〜 / googleassistant / credentials.json \ --scope https://www.googleapis.com/auth/assistant-sdk-prototype \ --scope https://www.googleapis。 com / auth / gcm \ --save –headless
このコマンドはURLを生成し、このURLをコピーして、Webブラウザーに貼り付けます。
3.ブラウザでGoogleアカウントにログインします。複数のアカウントがある場合は、APIキーを設定したアカウントのみを選択します。
ログイン後、長い認証コードが表示されます。このコードをコピーしてターミナルウィンドウに貼り付け、Enterキーを押します。認証が確認されると、上の画像に示すように、コマンドラインに次の行が表示されます。
保存された認証情報:/home/pi/.config/google-oauthlib-tool/credentials.json
4.認証認証情報が確認されましたが、Googleは引き続きポップディスプレイで確認したいと考えています。ただし、ポップアップはCORS(クロスオリジンリソースシェアリング)によってブロックされているため、最初に以下のコマンドを使用してこれを無効にします。
このコマンドを使用するには、クロムブラウザが閉じていることを確認し、新しいターミナルウィンドウを開いてコマンドを入力します。このコマンドは、CORSセキュリティを無効にしてクロムブラウザを起動します。これを無効にしてインターネットを閲覧しないでください。
chromium-browser --disable-web-security --user-data-dir "/home/pi/
ブラウザを開いた後、Googleアシスタントのサンプルを設定した前のターミナルウィンドウに移動します。
5.次のコマンドを実行して、Googleアシスタントを初めて起動します。このコマンドで置換
プロジェクトIDを忘れた場合は、Googleのアクションコンソールに移動し、作成したプロジェクトをクリックしてから、左上隅にある歯車のアイコンをクリックしてから、[プロジェクト設定]をクリックします。
また、交換してください
googlesamples-assistant-pushtotalk --project-id
このコマンドは、Chromiumブラウザで新しいタブを起動します。
6.ターミナルウィンドウでEnterキーを押してトリガーし、質問をします。
最初の質問をすると、ブラウザに以下の画面が表示される場合があります。[続行]-> [理解しました]-> [許可]をクリックします。
この 続行 画面が表示されない場合は問題ありません。
7.これで、プッシュを使用してGoogleアシスタントのサンプルを話し、出力応答を取得できます。
ターミナルでEnterキーを押してアクションを話すと、口頭での応答が聞こえ、別のタブが開いて、呼び出したばかりのアクションが表示されます。
コマンドから–display引数を削除すると、タブを開くことができなくなります 。認証画面を取得するためにこれが必要でした。
RaspberryPiでのGoogleアシスタントの使用
RaspberryPiを承認しました。Googleアシスタントを起動するときはいつでも、環境に入り、以下の手順に従ってください。
1.環境に入るときに次のコマンドを実行します
ソースenv / bin / activate
あなたは見れます (ENV) 各行の先頭に表示されます。
2.プッシュツートークサンプルを起動するには、次のコマンドを実行します
googlesamples-assistant-pushtotalk
今回は、製品IDとデバイスIDは必要ありません。
3.プッシュツートーク機能に加えて、「OKGoogle」と発声してGoogleアシスタントをトリガーすることもできます。このためには、無効なデバイスIDを入力する必要があります。不正なデバイスIDは、aaaa、abcdのようなものである可能性があります。
ここで、次のコマンドを実行します。
googlesamples-assistant-hotword --device-model-id
これで、独自のGoogleアシスタントを使用して、「OKGoogle」と言うだけで何でも質問できます。
これが、Raspberry PiにGoogleアシスタントをインストールし、スピーカーとマイクを接続してGoogleホームに変える方法です。