Raspberry Piのソフトのインストール

1.Raspberry Piのアップグレード、アップデート
環境設定を行うために、まずはRaspberry Piのアップデート、アップグレードをして最新の状態にします。
$sudo apt-get update
$sudo apt-get upgrade

upgradeは30分以上かかることがあります。
途中で続けるかを尋ねられるので、「y」と入力し、Enterを押します。

Raspberry PiのType BでRaspberry Piを使用していてそのイメージファイルをB+で使用するときはカーネルレベルでアップグレードするdist-upgradeをしてください。
$sudo apt-get dist-upgrade

2.Apacheのインストール
Apacheをインストールします。
$sudo apt-get install apache2
途中で続けるかを尋ねられるので、「y」と入力し、Enterを押します。

Raspberry Piが起動するときにApacheも自動起動するようにします。
$sudo update-rc.dapache2 defaults

3.Ruby、Rubygems、ruby-devのインストール
最新のRaspberry PiにはRubyとRubyGemsはすでにインストーされています。
インストールされているかを以下のコマンドで確認します。
$ruby-v
ruby1.9.3p194(2012-04-20revision35410)[arm-linux-eabihf]
$gem-v
1.8.23
でRubyとRubyGemsのバージョンが表示されます。

ruby-devをインストールします。
$sudo apt-get install ruby-dev
途中で続けるかを尋ねられるので、「y」と入力し、Enterを押します。

4.Ruby EventMachineをインストール
EventMachineをインストールします。(5分ほどかかります。)
$sudo gem install eventmachine

5. Rubyシリアルポートのインストール
シリアルポートをインストールします。
$sudo gem install serialport

6.EM-websocketのインストール
websocketサーバーをインストールします。
$sudo gem install em-websocket

7. Open Jtalkのインストール
Open Jtalkをインストールし、設置します。(全て完了するのに数十分かかります。)

まず「temp」というディレクトリを作ります。
$mkdir temp

「temp」ディレクトリに移動します。
$cd temp

ファイルをダウンロードします。
$wget http://downloads.sourceforge.net/hts-engine/hts_engine_API-1.08.tar.gz

ファイルを解凍します。
$tar zxvf hts_engine_API-1.08.tar.gz

「hts_engine_API-1.08」に移動します。
$cd hts_engine_API-1.08

Makefileを生成します。
$./configure

コンパイルなどの処理を行います。
$make

インストールします。
$sudo make install

「temp」ディレクトリに戻ります。
$cd..

ファイルをダウンロードします。
$wget http://downloads.sourceforge.net/open-jtalk/open_jtalk-1.07.tar.gz

ファイルを解凍します。
$tar zxvf open_jtalk-1.07.tar.gz

「open_jtalk-1.07」に移動します。
$cd open_jtalk-1.07

Makefileを生成します。
$./configure--with-charset=UTF-8

コンパイルなどの処理を行います。(30分ほどかかります。)
$make

インストールします。
$sudo make install

「temp」ディレクトリに戻ります。
$cd..

ファイルをダウンロードします。
$wget http://downloads.sourceforge.net/project/open-jtalk/Dictionary/open_jtalk_dic-1.07/open_jtalk_dic_utf_8-1.07.tar.gz

ファイルを解凍します。
$tar zxvf open_jtalk_dic_utf_8-1.07.tar.gz

「temp」というディレクトリを作ります。
$sudo mkdir/usr/local/share/open_jtalk

ファイルを移動させます。
$sudo mv./open_jtalk_dic_utf_8-1.07/usr/local/share/open_jtalk/

ファイルをダウンロードします。
$wget http://downloads.sourceforge.net/open-jtalk/hts_voice_nitech_jp_atr503_m001-1.05.tar.gz

ファイルを解凍します。
$tar zxvf hts_voice_nitech_jp_atr503_m001-1.05.tar.gz

「hts_voice」というディレクトリを作ります。
$sudo mkdir/usr/local/share/hts_voice

ファイルを移動させます。
$sudo mv./hts_voice_nitech_jp_atr503_m001-1.05 /usr/local/share/hts_voice/

ファイルをダウンロードします。
$wget http://downloads.sourceforge.net/project/mmdagent/MMDAgent_Example/MMDAgent_Example-1.4/MMDAgent_Example-1.4.zip

ファイルを展開します。
$unzip MMDAgent_Example-1.4.zip

ファイルをコピーします。
$sudo cp-RMMDAgent_Example-1.4/Voice/*/usr/local/share/hts_voice/

実行します。
$bash

「pi」ディレクトリに戻ります。
$cd..

「bin」というディレクトリを作ります。
$ sudo mkdir bin

「bin」に移動します。
$cd bin

「jsay」というソースをnanoエディタで作ります。(当初jsay.shと書いていましたが、jsayに訂正します。2015年10月16日)
$sudo nano jsay
すると何も書かれていないnanoエディタが開くので以下の内容を入力します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/bin/sh
TMP="/tmp/jsay.wav"
echo"1ドル"|/usr/local/bin/open_jtalk\
-x/usr/local/share/open_jtalk/open_jtalk_dic_utf_8-1.07\
-m/usr/local/share/hts_voice/mei/mei_happy.htsvoice\
-r1.0\
-s48000\
-p240\
-a0.58\
-u0.0\
-jm0.7\
-jf0.5\
-z48000\
-ow$TMP&&\
aplay--quiet$TMP
rm-f$TMP

「jsay」(当初jsay.shと書いていましたが、jsayに訂正します。2015年10月16日)-r の値を変更することでマグボットの発話スピードを変更することが出来ます。(標準のスピードは1.0です。)

そのままではしゃべらせることが出来ないので、実行権を付与します。
$sudo chmod+x~/bin/jsay

実際にしゃべらせてみます。
$jsayはじめまして

(以上の情報は山梨英和大学の杉浦先生からご提供いただきました。)

8.DHCPサーバーのインストール
(1)DHCPサーバーをインストールします。
$sudo apt-get install isc-dhcp-server
(2)DHCPの設定をします。
「dhcpd.conf」の内容を変更します。
$sudo nano/etc/dhcp/dhcpd.conf

以下の内容を変更します。
(option domain-nameとoption domain-name-serverに#をつけてコメントアウトし、authoritativeの#を外します。)

1
2
3
4
5
6
7
8
..........
#option domain-name "exanple.org";
#option domain-name-server ns1.example.org, ns2.example.org;
#If this DHCP server is the official DHCP server for the local
#network, the authoritative directive should be uncommented.
authoritative;
..........

最後に以下の内容を追加します。

1
2
3
4
5
6
7
8
9
subnet192.168.42.0netmask255.255.255.0{
range192.168.42.10192.168.42.50;
option broadcast-address192.168.42.255;
option routers192.168.42.1;
default-lease-time600;
max-lease-time7200;
option domain-name"local";
option domain-name-servers8.8.8.8,8.8.4.4;
}

内容の変更、追加が完了したら、「cont + O → Enter」で保存し、「cont + X」でnanoエディタを終了します。
「isc-dhcp-server」の内容を変更します。
$sudo nano/etc/default/isc-dhcp-server

最後の「INTERFACES=""」を「INTERFACES="eth0"」に変更します。
内容の変更、追加が完了したら、「cont + O → Enter」で保存し、「cont + X」でnanoエディタを終了します。

変更が終わったら再起動します。
$sudo reboot

9. jQuery、jQuery Mobileのインストール
jQueryとjQuery Mobileをインストールします。

「jQuery」と「jQuery Mobile」をPCにダウンロードします。

http://jquery.com/ にアクセスし、「Download jQuery」をクリックします。スクリーンショット 2014年10月29日 16.03.38

すると以下のようなソースコードがダウンロードできます。
(2014年10月30日現在の最新版はjquery-1.11.1.min.js)
141030-0005

次に「jQuery Mobile」をダウンロードします。
http://jquerymobile.com/download/ にアクセスし、「Zip File: jquery.mobile-1.4.4.zip」をクリックします。スクリーンショット 2014年10月29日 16.36.34

するとzipファイルがダウンロードできるので、展開すると以下のようになります。
(2014年10月30日現在の最新版はjquery.mobile-1.4.4.min.cssとjquery.mobile-1.4.4.min.js)
141030-0007

自分のPCの「jquery-1.11.1.min.js」と「jquery.mobile-1.4.4.min.css」と「jquery.mobile-1.4.4.min.js」を「Cyberduck」でRaspberry Piに送ります。
「Macのプログラミング環境の設定」で説明した手順で「Cyberduck」をRaspberry Piに接続し、「/var/www」に上記の3つを設置します。

以上で マグボットのためのRaspberry Piの環境設定を終了します。