モノづくりエンジニアのための情報ポータルサイト|エンジニアピット

CAREER LAB自宅のTVリモコンで、Raspberry Piを「リモートコントロール」してみよう!(実施編)

自宅のTVリモコンで、Raspberry Piを
「リモートコントロール」してみよう!
(実施編)
DATE2015/07/09
前編では、赤外線受信モジュールを使って、リモコンボタンのデータを取得するところまで挑戦しました。

今回は、いよいよ取得したボタンデータから、Raspberry Piをリモートコントロールしてみたいと思います!
自宅のTVリモコンで、Raspberry Piを「リモートコントロール」してみよう!実行編

TVリモコンを認識させてみよう!

前編で作成した「lircd.conf」ファイルによって、リモコンのボタンデータは取得できました。今度は、このデータが正しく認識できるかを確認するために、事前準備をしていきましょう!

$ sudo mv lircd.conf /etc/lirc/

現在の「lircフォルダ」内は、以下の通り。
etc      
   |--- lirc   
   |--- hardware.conf   
   |--- lircmd.conf   
次に、設定ファイルを修正します。

$ sudo vim /etc/lirc/hardware.conf

※ファイルが開いたら、以下の内容に書き換えます。

LIRCD_ARGS="--uinput"
LOAD_MODULES=true

DRIVER="default"

DEVICE="/dev/lirc0"
MODULES="lirc_rpi"

LIRCD_CONF=""
LIRCMD_CONF=""

修正が完了したら、「LIRC」を再起動しておきましょう!

$ sudo /etc/init.d/lirc restart

これで準備は完了です。

次のコマンドを入力後に、TVリモコンをRaspberry Piの赤外線受信モジュールに向けて、ボタンを押してみてください!

$ irw

緊張の瞬間っ!
TVリモコンのボタンを押す度に、登録した「ボタン名」が表示されたら、正しく認識していることになります!

0000000000ffd02f 00 power lircd.conf
0000000000ff827d 00 ch1 lircd.conf
0000000000ff807f 00 ch2 lircd.conf
0000000000ff40bf 00 ch3 lircd.conf
0000000000ff52ad 00 ch4 lircd.conf
0000000000ff20df 00 ch5 lircd.conf

リモコンボタンと、Raspberry Piを連動させよう!

ようやく、TVリモコンを認識させることができたので、あとはRaspberry Piにリモートコントロールさせたい内容を命令するだけです。

そこで、TVリモコンの電源ボタンを押したら、Raspberry Piの電源がOFFになるようにしてみましょう!

Raspberry PiとTVリモコンのボタンを連動させるために、「lircフォルダ」内に「lircrc」というファイルを作成します。

$ sudo vim /etc/lirc/lircrc

ファイルの中身は、以下の通り。
begin      
   remote = lircd.conf   
   button = power   
   config = sudo shutdown -h now   
end      
【remote】は、「lircd.conf」ファイルに記載されている「name」と同じ名前にしておきます。
【prog】は、使用するプログラム名のことで、「irexec」としておいてください。
【button】は、登録する際に決めた「ボタン名」です。
【config】は、Raspberry Piにさせたい内容を書いておきます。
※設定詳細は、公式サイトが参考になります。
http://www.lirc.org/html/configure.html

これで、必要な準備が整いました!

リモートコントロールの実践!

「lircrc」ファイルを作成したら、「LIRC」を再起動しておきます。

$ sudo /etc/init.d/lirc restart

あとはこの状態のまま、Raspberry Piの「赤外線受信モジュール」に向けて、TVリモコンの電源ボタンを押してみましょう!
TVリモコンの「電源ボタン」を押します
すると、見事にRaspberry Piの電源がOFFになったのが分かります!
電源がOFF
おめでとうございます!
これで、Raspberry Piをリモートコントロールできるようになりました。

「lircrc」ファイルには、任意のボタンをどんどん追加できるので、例えばネットラジオの「MPlayer」をインストールして…、

$ sudo apt-get install mplayer

「lircrc」ファイルに、リモコンの「1ch」を押したらプレイヤーを再生するような設定も可能です。
begin      
   remote = lircd.conf   
   prog = irexec   
   button = power   
   config = sudo shutdown -h now   
end      
begin      
   remote = lircd.conf   
   prog = irexec   
   button = ch1   
   config = mplayer -playlist http://yp.shoutcast.com/sbin/tunein-station.pls?id=156103   
end      
ファイルを修正したあとは、「LIRC」を再起動するのを忘れないようにしましょう。

まとめ

今回は、Raspberry PiをTVリモコンでリモートコントロールしてみましたが、いかがだったでしょうか?

初期設定に少し時間が掛かりますが、初回だけに必要な作業のため、一度設定が済んでしまえばあとは「lircrc」ファイルを編集するだけなので簡単です。

ぜひ、みなさんも自宅にある家電リモコンを利用して、自分だけのリモートコントロールを楽しんでみてください!

エンジニアピット キャリアラボ一覧へ戻る