LoginSignup
9
10

More than 5 years have passed since last update.

日本語Alexaをラズパイに導入する

Posted at

Raspberry Piでアレクサのサンプルアプリがありますが、12月19日頃のインストールスクリプトで日本語に対応していました。ただ、現在配布されているRaspbianのStretchはJava8のインストールスクリプトが対応していないので、それに対応させる必要があります。

事前準備

 事前準備としては以下のものを準備します。
- ラズパイ:(とそれを動作させるために必要なもの一式: OSはRaspbian Stretch-liteを使用します)
- ステレオジャックのスピーカー(USB給電等)
- USBマイク

アマゾンの開発者アカウント

アマゾンのAlexa開発ページにアクセスして、日本のアマゾンのアカウントでサインアップする(海外のamazonアカウントを持っている人は多くないと思いますが、日本語のスキルを使うためには日本のアマゾンに登録しているメールアドレスとパスワードを使います。developer.amazon.comですが、日本のアカウントでサインアップできます)。

手順に従って登録し、ProductID, ClientID, ClientSecurityを記録します(日本語のページでできます)。

OS: Stretch(lite)の設定

 ラズパイを起動したらロケールやネットワークの設定をします。

 Alexaでは、Javaクライアントで最初に端末の認証が必要となるので、GUIが必要となります。なので、Desktop GUIをliteに導入します。
- sudo apt-get update
- sudo apt-get upgrade
- sudo apt-get install raspberrypi-ui-mods fonts-vlgothic chromium-browser git (liteの場合)
- (お好みで)rc-gui lxterminal leafpad

Alexa-avs-sample-appをダウンロード

 以下のコマンドでプログラムをダウンロードします。

  • git clone https://github.com/alexa/alexa-avs-sample-app.git
  • エディタで、automated_install.shを開き、以下の項目について、開発者ページで取得した内容を記述

    ProductID
    ClientID
    ClientSecret

  • alexa-avs-sample-appに移動

  • samples/javaClient/install-java8.shを編集する。 jessieと書いてある場所を見つけて、その上に以下の記述を追加し、ifの前にelをつけてelifとする。


if [ "$VERSION" == "jessie" ]; then
    UBUNTU_VERSION="trusty"  
...


if [ "$VERSION" == "stretch" ]; then
    UBUNTU_VERSION="xenial"
    sudo apt-get -y install dirmngr
elif [ "$VERSION" == "jessie" ]; then
    UBUNTU_VERSION="trusty"
...

に変える。アプリのトップで、以下のコマンドを入力

  • bash automated_install.sh (で実行する)

Setting Localeに6)ja-JPがあるので6を入力

 後はインストールが終わるのを待つ。環境に寄りますが1時間から2時間ほど。

スピーカー等の調整

 amixer cset numid=3 1   # ステレオジャックの場合
 amixer cset numid=3 2   # HDMIの音声出力を使う場合
 amixer cset numid=1 100%  # スピーカーのボリュームを最大
 amixer sset Mic 16 -c 1   # マイクの感度を最大(カード番号1の場合)

起動する

USBマイクはC-Mediaのものであれば、特に設定なく使える。

  • samples/companionAppで npm start
  • samples/javaClientでmvn exec:exec

(初回起動時に認証ページにアクセスするよう出てくるのでブラウザからURLにアクセスして、アマゾンのアカウントで認証する)

  • samples/wakeWordAgent/srcで./wakeWordAgent -e sensory もしくは、./wakeWordAgent -e kitt_aiで「アレクサ」で起動できるようにする。

動作確認

 Raspberry Pi 3 Model B (JP)で確認しています。Rapberry Pi Zero Wでは、javaClientまでは動作しますが、wakeWordAgentはエラーで動作しませんでした。

9
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
10