Raspberry PiにふられたIPアドレスをHDMIディスプレイ以外で知る方法 (1) 音声

IPアドレスを知る方法

 Raspberry Piでは、HDMIのディスプレイを接続していると、画面右上のPCのアイコンの上にマウスを持っていくと、IPアドレスを表示します。2016年9月23日版ではアイコンが矢印に変わっています。

 HDMIディスプレイを接続していないときにDHCPサーバからふられたIPアドレスを知るには、次の方法があります。

  • 音声でIPアドレスをアナウンス
  • LCDディスプレイなどに表示

 IPアドレスを知るにはいくつかコマンドがあります。

  • ifconfig
  • ip addr
  • hostname -I

 この中で返事の文字数が少ないのが三つ目です。Linuxのコマンド・リファレンスでは-iが紹介されていますが、/etc/hostsに書かれたIPアドレス127.0.1.1が返ります。DHCPサーバからeth0やwan0にふられたIPアドレスを知るには、Rasipberry Piでは-I を使います。

 hostname -I

 192.168.xxx.xxx  Macアドレス

音声でIPアドレスを知らせる

 AquesTalkPiという個人で使用するときには無償で提供されているソフトウェアをインストールして使います。このソフトウェアは、Raspberry Piで音声合成をします。これ以外にも利用できる音声合成ソフトはあります。

 ダウンロードは下記のURLから行います。

  http://www.a-quest.com/products/aquestalkpi.html

 「Download」の項目にある「同意してDownload」を押し、AquesTalk Pi Ver.1.00 (aquestalkpi-20130827.tgz 3,880,822 byte)をダウンロードします。

 ダウンロードが完了すると、圧縮ファイルを展開(解凍)するユーティリティが起動します。

 ファイルメニューのアクションから展開を選びます。

 展開する場所は、ダウンロードしたディレクトリなので、一つ上の/home/piに変更して、右下の「展開」ボタンをクリックします。

 ファイルマネージャで、ホームフォルダに作られたaquestalkpiフォルダをダブルクリックして内容を見ます。ダウンロードした圧縮ファイルは解凍されてアプリケーションや辞書が入っています。

 ターミナルを起動し、

cd aquestalkpi  #aquestalkpiのフォルダに入る

./AquesTalkPi "IP" | aplay  # IP(アイ・ピー)としゃべらす

 HDMIディスプレイのスピーカから「アイ・ピー」と声が出ます。これで、音声の読み上げのテストが完了しました。HDMIディスプレイをつないでいないときは、イヤホン・ジャックから音声が出るはずですが、確認していません。

 次に、IPアドレスを取得し、しゃべらします。メニューのアクセサリからTextEditorを起動します。次のシェル・プログラムを入力します。保存名はiptalk.shで、保存先はpiフォルダです。

#!/bin/bash
echo 'IPアドレスは' | /home/pi/aquestalkpi/AquesTalkPi -f - | aplay
hostname -I | /home/pi/aquestalkpi/AquesTalkPi -f - | aplay

 ターミナルで、ホームに戻り、

ls -l

 作成したテキスト・ファイルを確認します。そして、chmodコマンドで実行権をつけます。lsコマンドで、実行権のxがついているのを確認します。

sudo chmod 755 iptalk.sh

 実行して、IPアドレスがアナウンスされることを確認します。

./iptalk.sh

 これを、OSが立ちがる途中に実行するように設定します。ターミナルで、エディタnanoを起動します。編集するファイルは/etcフォルダにあるrc.localです。このファイルは、OSが立ち上がる流れの最後のほうで呼び出されます。

sudo nano /etc/rc.local

 exit 0と書かれた最後の行の一つ上の行に /home/pi/iptalk.sh と追加し、CTRL+oで保存し、CTRL-xで終了します。

 再起動します。しかし、「IPアドレスは」としかしゃべらず、IPアドレスは聞こえてきません。この理由は、IPアドレスがまだDHCPサーバからふられていないためと思われます。時間稼ぎをするため、「IPアドレスは」を3回繰り返しました。