Top/Devel/電子工作/GoogleHome/赤外線学習リモコンR2-D2

赤外線学習リモコンR2-D2はてなブックマーク

r2-d2_01.jpg

旧 赤外線学習リモコンR2-D2では音声認識にJuliusを使っていたが、チューニングの問題なのか、精度が出なかった。


そこで、今回は音声認識にGoogle Home Miniを使うように変更する。


また、ついでなので、下記も実施する。

  • 外装をよりいいものに交換する。
  • 頭部が回転するようにする。
  • テレビについては、赤外線ではなく、ネットワークで操作するように変更する。
    r2-d2_09.jpg
    r2-d2_08.jpg
    r2-d2_07.jpg
    r2-d2_06.jpg
    r2-d2_05.jpg
    r2-d2_04.jpg
    r2-d2_03.jpg
    r2-d2_02.jpg


r2-d2_components_diagram.png

必要なもの

ハードウェア

項目説明
Raspberry Pi名刺サイズの超小型コンピュータ。
今回は手元にあったRaspberry Pi 2 Model Bを使用しました。
これから用意する方は、Raspberry Pi 3 Model Bがよいと思います。
irMagicianWindows、Mac OS X、Linux、Androidなどで使える小型赤外線リモコンアダプタ。
フレキシブル型USBケーブル TM-microUSB-FRaspberry PiとirMagicianを接続するために使用しました。
USB延長ケーブル スタンド付 BSUC05EDBKフレキシブル型USBケーブルを立てるために使用しました。
Google Home音声コマンドで操作できるようにするため。
今回はGoogle Home Miniを使用しました。
Bluetoothアダプター USB-BT40LEGoogle Home MiniからBluetooth経由で音声を出力するために使用しました。
フルカラーシリアルLEDテープWS2812S(NeoPixel)というマイコン内蔵LEDをテープ上にしたものです。つながったままでも、1個ずつ切り離しても使えて便利です。
秋月電子通商などでも同様のものを販売しています。
TXB0104搭載電圧レベルシフタ信号の電圧レベルを変換するもの。Raspberry PiのGPIOは3.3V、WS2812Sの動作電圧は5Vのため、使用します。
目的が果たせれば他の製品でも構いません。
ブレッドボード用マイクロBメスUSBコネクタDIP化キットWS2812Sを光らせるための5V電源を手軽に得るために今回はUSBハブから電源を取ることにしました。
サーボモータ MiniS RB303cR2-D2の頭部を回転させるため。
すきまテープサーボモータの回転を受け止めてR2-D2の頭部に伝えるレールとして使用しました。
R2-D2型ポップコーンバケットディズニーランドで売っているもの。回路全体を格納するために使用しました。

利用したソフトウェアなど

  1. Google Home内蔵ソフトウェア
  2. IFTTT
  3. Python2のSimpleHTTPServerをベースに開発した専用HTTPサーバ。
    • HTTPでのリクエストを受け付け、サーボモータの制御、音声の出力、LEDの点灯、テレビ(BRAVIA)の操作(SOAPリクエスト)、他家電の操作(赤外線の送信)を行います。

手順

次の手順で進めました。

  1. Raspberry PiへのOS(Raspbian)のインストール
    こちらをご覧ください。
  2. irMagicianのセットアップと動作確認
    こちらをご覧ください。
  3. Raspberry PiからGoogle HomeへのBluetooth接続、音声出力確認
  4. SOAPリクエストによってテレビ(BRAVIA)を操作できることの確認
  5. 外装(R2-D2型ポップコーンバケット)の加工(切断、穴あけ加工)
    こちらこちらをご覧ください。
  6. マイコン内蔵LEDの回路の製作、RaspberryPiへの接続、外装への固定、動作確認
    こちらをご覧ください。
  7. サーボモータのRaspberry Piへの接続、外装への固定、動作確認
    こちらをご覧ください。
  8. 専用HTTPサーバの開発
    こちらをご覧ください。
  9. ポートの開放
  10. IFTTTの設定
    こちらをご覧ください。

関連

参考

Amazon

差分 一覧