Raspberry Pi Zero で動かしてみた

Raspberry Pi Zero (以後ラズパイZero)が日本でも発売になりましたが、ベゼリーはラズパイZeroでも動かすことができます。ラズパイZeroは安価で小さいですが、ラズパイ3とはいろいろ違うところもありますので、ここで使いかたをまとめておこうと思います。

せっかく小型のラズパイZeroを使うのですから、台座も小型化したいですよね。上の写真の赤い箱は、ダイソーで100円で売っているトリュフチョコレート用の紙箱で、幅10cm、奥行14.5cm、高さ4.5cmです。上面にカッターナイフで5cm✕5cmの穴を開けて、ベゼリーを取り付けます。どうせ100円ですし(笑)、思い切って切っちゃいましょう。

ラズパイZeroはUSB端子がひとつしかありませんが、ベゼリーに使う場合、少なくともwifiとマイクは刺したいので、3個以上拡張できるUSBハブを買ったほうがよいでしょう。上の写真ではタッチパネルつき無線キーボードのアダプタを刺してますが、マウスとキーボードを個別に刺したい場合は4ハブないと足りないですね。あとラズパイZero側はmicroUSB端子なので、microUSBに直接刺せるタイプがよいです。

ラズパイZeroのHDMI端子はminiHDMIなので、ディスプレイをつなぎたい場合はmini→通常HDMIの変換アダプタを購入したほうがよいでしょう。ちなみに上の写真はminiHDMIをVGAとミニジャックに分割するアダプタです。

ラズパイZeroは音声出力ミニジャックがないので、スピーカーを接続する方法は4つあります。①上の写真のようにHDMI端子から音声を分離してミニジャックにスピーカーをつなぐ、②USBハブにUSBスピーカーを刺す、③USBハブにBlueToothアダプタを刺してBlueToothスピーカーにつなぐ、④GPIOにオーディオモジュールをつなぐ。お勧めは①か②です。③は無線化できますが、USBハブを1つ消費してしまいますし、③は小型化が可能ですが、プログラムの修正が必要になります。

初代ラズパイZeroにはカメラ端子がありませんでしたが、日本で発売されたVer 1.3にはカメラがつながります。ただし他のラズパイよりも幅が狭い端子なので、専用のケーブルを別途購入しなければなりません。しかも16cmのものしか売られていないため、延長したい場合はさらに延長アダプタを買うことになります。そこで上の写真のように台座の後部にラズパイZeroを立てるようなスタイルはどうでしょう。これなら16cmのケーブルでも足ります。

台座の中はこんな感じです。スピーカーは箱の外に出してもいいかもしれませんね。

OS(Raspbian)やプログラムはラズパイ3と同じものが使えますが、USBステレオスピーカーを使う場合は、下記をお読みください。

USBステレオスピーカーを使う場合

・ベゼリーのサンプルプログラムでは、AquesTalkPiを使って喋らせていることが多いのですが、AquesTalkPiが発生する声はモノラルなので、USBステレオスピーカーで再生しようとすると、「Channels count non available」あるいは「チャネル数が使用不可能」というエラーメッセージが表示されてしまうことがあります。その場合はサンプルプログラムの中の「aplay」に「-D plughw」オプションを書き加えてください。

所感

・今回はwifiUSBアダプタ「GW-USNano2」を使ったのですが、通信が不安定になることが多いです。バスパワーのUSBハブを使っているので無線LANアダプタに供給される電流が不足しているのでしょう。別に電源を供給できるセルフパワーのUSBハブを使ったほうがよいかもしれません。

・Juliusによる音声認識はsampleJulius2.pyのような固定語認識なら問題ありませんが、sampleJulius1.pyやsampleNDAdialog1.pyのような自然言語認識では認識に時間がかかってしまい実用的ではありません。自然言語認識をやりたい場合はdocomo音声認識やGoogle Speech APIなど、Web APIを使うほうがよいでしょう。

TIPS

・3ポートのUSBハブThree Port USB Hub with Ethernet – microB connector は、Pimoroniで10ドルぐらいで買えます。

・ラズパイZeroのカメラケーブルを延長するためのCamera Adapter Board for Raspberry Pi ZeroeBayで700円ぐらいで購入できます。