Takahiro Today

なんとなくね、ログってみるさね

IT Raspberry Pi

Raspberry Pi で赤外線送受信

投稿日:2014年10月08日 更新日:

赤外線学習リモコンのサイトと日経LINUXを参考にさせていただき、Raspberry Piで家電の制御をテストしてみた。
本当にやりたかったのは【部屋に入ったときに部屋の明かりがつく】だ。
基本的にはほぼ同じだけど、参考サイトと違うのは以下。

  • LED拡散キャップがない
  • GPIOのピン番号が違う
  • 赤外線受信は PL-IRM2161-XD1
  • 赤外線LEDは OSI5LA5113A
  • 抵抗が 2.4kΩ と 51Ω を利用

パッケージの導入して、GPIOピン番号を指定

$ sudo apt-get install lirc
$ sudo modprobe lirc_rpi gpio_in_pin=4 gpio_out_pin=17

リモコンを学習

$ irrecord -n -d /dev/lirc0 ~/control.conf

上記コマンドを打つと「Press Return to Continue」と表示されるのでエンターを押す。
次に「Press Return now to start recording」と表示されるので、さらにエンターを押す。
覚えたいリモコンを持って、赤外線受信モジュールに向けてボタンを押す。
ガンガンすべてのボタンを押していく。

すると、画面上のドットが増えていき、2行分埋まると「Prease enter the name for the next button」とメッセージが表示されるので、登録したいボタン名を入力し、エンターを押す。
ちなみこ俺は power と入力して、リモコンの電源を押した。
この作業を繰り返すことで、ボタンを登録してくようだ。
学習したリモコンの設定ファイルを、以下コマンドで正しい格納場所に追記する。

$ sudo cat ~/control.conf » /etc/lirc/lircd.conf

lirc設定ファイルを編集

設定ファイル「/etc/lirc/hardware.conf」の以下4項目を修正する。

$ sudo vi /etc/lirc/hardware.conf
  • LIRCD_ARGS=”—uinput”
  • DRIVER=”default”
  • DEVICE=”/dev/lirc0”
  • MODULES=”lirc_rpi”

lircサービスの起動

以下コマンドでサービスを起動する

$ sudo /etc/init.d/lirc start

リモコン制御

以下コマンドでリモコンの制御

$ irsend SEND_ONCE control.conf power

結果的には

部屋のオーディオの電源の制御は全然問題なかったけど、部屋の電気はできなかった。
リモコンを学習させるところで、いくらやってもドットが増えなかったのだ(厳密には増えたけど、5分やって1つとか・・・)。
何がいけないのかわからないけど、また後日、いろいろやってみるかな。
電気は上手くできなかったけど、オーディオは動いたわけだし、ワクワクしてきたなぁ。

Raspberry Pi で赤外線送受信

-IT, Raspberry Pi
-,

執筆者:

関連記事

ubuntu 14.04 LTS にログインできなくなった

【ubuntu 14.04 LTS で EP-802A を使いたい】からUbuntuを利用しているんだけど、ログイン画面でパスワードを入れてもログインできなくなった。 心当たりはある。軽量なデスクトッ …

出退勤の仕組みを作ってみた

SONY の RC-S380 を使って出退勤システムを設置した。 まずはNFCを使った単純なタイムカードみたいなもんで、Webのシステムと連動する程度。とりあえず今のところ Raspberry Pi …

CentOSのファイルサーバが起動しない

事務所にあるファイルサーバの一つが起動しなくなっていた。 仲間から「ファイルが閲覧できないよ~」と指摘を受けて調査したところ、確かにアクセスできない状態だった。 ちなみにファイルサーバは CentOS …

サーバがクラッシュ?

借りているレンタルサーバの一つに、ソフトウェアをインストールした。 CentOSに phpmyadmin を yum を使ってインストールしたのだ。 # yum install phpmyadmin …

Raspberry Pi で無線LAN

電子工作に憧れて、いろいろ参考にしながら遊んでいるわけだけど、LANケーブルがとても邪魔に感じる瞬間ってあるんだよね。 LANケーブルが届かなかったり、LANケーブルの重さで傾いたり台から落ちたり・・ …