ロボットにお話しをさせるための口を作ります。
※お話をするプログラムはすでに「ロボットの頭脳を作る」で作成済みです。
口と言ってもロボットにとっての口はスピーカーになるのですが、市販のスピーカー程高機能である必要もなく、また、小さいものが使い勝手がいいことから、Raspberry Piで利用できるスピーカーを自作します。
ただし、本方式はpwm制御を行うサーボモータと制御がバッティングを起こすことから同時に利用することができません。よって、今回用意するものは今後利用するための準備として作成します。(今回のロボットのプロトタイプではUSB接続タイプのスピーカーを用意して利用することとします。)
1)用意するもの
・スピーカー ダイナミックスピーカー 8Ω0.3W66mmΦ NA202C
アンプ TPA2006使用 超小型D級アンプキット
ジャンパー線(オス/メス5本、オス/オス2本)
ブレッドボード
2)作成手順
[配線]
①スピーカに電線とジャンパー線のオス/オスを半田付けします。
➁アンプにPinを半田付けします。また、下記のように背面の➂の部分を半田付けします。
➂アンプをブレッドボードに差し、配線図通りにジャンパー線を利用して配線します。
3)Raspberry Piの設定
①下記コマンドでGPIOのmodeを変更します。
sudo gpio -g mode 13 pwm
sudo gpio -g mode 18 pwm
また、「gpio readall」のコマンドで、設定状態を確認します。
Modeの部分がそれぞれ、ALT0,ALT5となっていれば設定完了です。
➁音がなることを確認します。
音声ファイル等で音が鳴るか確認してください。
➂起動時にGPIOのmodeが自動的に変更されるように設定します。下記のコマンドにて、設定ファイルを変更して、起動時に自動的に上記の設定変更が行われるようにします。
sudo nano /etc/rc.local
④Raspberry piを再起動し、GPIOの設定を確認(gpio readall)。音がなることが確認できれば完了です。
※USBスピーカーへ戻した時、カード番号とデバイス番号が変わっている事があります。デバイスを戻した時は、aplay -lで確認し、下記のプログラムで設定しているカード番号、デバイス番号を修正してください。
・TextToSpeech_Jtalk.py
・TextTospeech_eSpeak.py