RAPIRO(ラピロ)にマイクを組み込む

th_rapiro_speaker_mic_14

前回、ラピロのスピーカーの音質を向上させるために、USBオーディオデバイスをラピロの頭に組み込んだのですが、結果として、ラピロを使った遠隔コミュニケーションシステムの課題としてあげていた「ラピロにマイクが組み込まれていない」という課題も解決することになりました(マイクからの入力をどう扱うか、のソフトの問題はまだ解決していませんが)。

余談ですが、自分は「尊敬する人物の名前を挙げろ」と言われたら、宮本茂横井軍平岩田聡と答えるような任天堂好きなのですが、その宮本さんの言葉の中で、アイデアというのは複数の問題を一気に解決するものであるというのがありまして(正確には、岩田さんが解釈して広めた言葉ですが)。自分はこの言葉がすごく好きというか、すごく大事に思っていて、今回、それに近いことがほんのちょっとだけできたかな?と思っていて、一人で勝手に嬉しく思っております。まあ、狙ってやったわけではなくて、完全に結果論なんですけれども。

さて、実は前回のときは、マイクは頭の中に組み込んでいました。

th_rapiro_speaker_mic_10

こんな感じですね。ちなみにマイクにはこれを使っています。

USBマイクですが、スタンドから取り外すと3.5mmステレオミニプラグのマイクとしても使えるので便利です。

これはこれでちゃんと頭も閉じるのですが、この後マイクの録音テストをしてみると、ちゃんと録音はされるのですが、音はこもるし、スピーカーが常時発している「サー」という音も結構拾ってしまうのです。

やっぱりマイクは頭の中じゃなくてどこかに露出させた方がよいのですが、頭の中に良い場所がありません。おデコの穴はカメラで塞がっていますし、マイクの頭をUSBの穴のところに持っていくと気持ち軽減される気はしますが、あんまり改善効果はありません。

 

で、他に良い場所ないかなーと探してみたところ。

 

th_rapiro_speaker_mic_16

ラピロの胴体、ど真ん中の部分。ここは元々近接センサを取り付けるためのスペースで、組み立て前にArduinoボードにピンを半田付けしておけばセンサを取り付けることができるのですが、自分はそれを知らずにラピロを組み立ててしまったので、Arduinoボードにピンがなくて、近接センサを取り付けられずにいたのです(←もちろん、組み立てた後にもう一回ボードを外して半田付けすればいいだけの話なのですが、ちょっとその元気はなく)。

ここなら露出しているし、ラピロの頭のスピーカーとも離れているので良さ気な感じです。ここまで頑張ってマイクを引っ張ってくることにします。

 

th_rapiro_speaker_mic_13

というわけで、ダイソーで108円の延長ケーブルを買ってきました。「ステレオヘッドホン」と書いていますが、普通にマイクの延長用にも使えます。短すぎると頭から胸まで届かないし、かといって長過ぎるとラピロの体内(?)にケーブルが収まらないので、比較的短めの75cmを買ってきました。リールの部分は邪魔なので破壊します。

th_rapiro_speaker_mic_18

ラピロの胴体を開けて、マイクを入れてみます。露出する部分にマイクのアームを収めるために、ちょっと部品をカットして、ラピロの右脇下を通して後ろに流します。ここで先ほどの延長ケーブルに接続して、可能な限り、ここでケーブルを束ねてしまいます。あとは他の白黒ケーブルと同様、ケーブルを頭の中に引っ張ってきて、USBオーディオのマイク入力に接続します。

外側からみると、こんな感じ。

th_rapiro_speaker_mic_15

うん、良い感じです。ちゃんと胴体も閉じました。

これで音声の録音テストをしてみたところ、頭の中にマイクがあるときに比べて、だいぶ周辺ノイズが減りました(すみません、今回はBefore/Afterのサンプルはなしです)。ちなみにマイクの感度はMax 16設定の12〜13ぐらいにしています。

というわけで、ラピロの中にマイクを組み込むことができました。昔やったJuliusと組み合わせれば、おそらくより自然な形でラピロとコミュニケーションが取れると思います。

ただ、ラピロのサーボに通電していない(=サーボの「ジー」という音が鳴っていない)ときの話なので、実際にラピロが動いている状態で音声認識できるかど うかはわかりません。それについては、マイクが頭にあろうが胴にあろうが影響する話なので、また別の解決策がいるかもしれません。