【LIVA】【Ubuntu server14.04】赤外線学習リモコンを使う

家電を音声を操る、という目標に向けて着々と準備しています。

赤外線学習リモコンが必要になるわけですが、iRemoconは高いため、別の手段を取ります。

で、買ったのが、

■大宮技研社のirMagician(http://www.omiya-giken.com/?page_id=837

■ビット・トレード・ワン社のUSB接続 赤外線リモコンKIT(http://bit-trade-one.co.jp/BTOpicture/Products/005-RS/

f:id:engetu21:20141123165809j:plain

 

1.irMagicianを試す

本機は日経Linux2014年12月号でも紹介されていますが、LinuxにUSB接続すれば簡単に認識され、赤外線の学習と送出は記事の著者がインターネットで提供しているpythonプログラムで簡単に実現できます。

https://github.com/netbuffalo/irmcli

 

以下、python実行環境とプログラムの取得

$sudo apt-get install python-pip

$sudo pip install  pyserial

$sudo apt-get install git-core

$git clone https://github.com/netbuffalo/irmcli.git

※2018/12/3追記
ラズパイ3で手順通りにやった結果。

$ sudo pip install pyserial
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: pyserial in /usr/local/lib/python3.5/dist-packages (3.4)

pipでインストールできているようだけど、python3に紐付いているようなので、実際に動かしてみるとエラーが発生します。

$ sudo python irmcli.py -h
Traceback (most recent call last):
File "irmcli.py", line 4, in <module>
import serial
ImportError: No module named serial

 

python2への紐付けがよくわからないので、以下のコマンドでインストールすることでとりあえずは動きます。

$ sudo apt install python-serial

※なお、python3-serialとすることでpython3向けにインストールできる

  ※追記終わり

 

実行してみます。

$ cd irmcli/

$ sudo python irmcli.py -h
usage: irmcli.py [-h] [-c] [-p] [-s] [-f FILE]

irMagician CLI utility.

optional arguments:
  -h, --help            show this help message and exit
  -c, --capture         capture IR data
  -p, --play            play IR data
  -s, --save            save IR data
  -f FILE, --file FILE  IR data file (json)

 

$ sudo python irmcli.py -c
Capturing IR...
... 192

 

 照明リモコンの赤外線(照明オン)を取得してみました。

以下のコマンドで実行可能です。

$ sudo python irmcli.py -p
Playing IR...
... Done !

 

取得した情報をファイルに保存するには以下のようにします。

$ sudo python irmcli.py -s -f right_light_start.json
Saving IR data to right_light_start.json ...
Done !

我が家は約10畳の縦長の部屋内に2つ照明がぶら下がっているため(真ん中に配線してくれよと思ったことは幾度となくあったが)、ファイル名も右を意味するrightとlightをかけてみた(かつ韻も踏んでみた)次第。

 

まぁ、そんなことはどうでもよく、以下のようにすればファイル指定で実行可能です。

$ sudo python irmcli.py -p -f  right_light_start.json 

Playing IR...
... Done !

 

2.赤外線リモコンKITで実行

実はLinuxでまだ実現できていません。

ツールとしては、こちら(http://a-desk.jp/modules/forum_hobby/index.php?topic_id=44githubはこちらGitHub - kjmkznr/bto_ir_cmd: Bit Trade One IR Remocon tool for Linux)で展開されているlibusbを使ったツールか、こちら(http://a-desk.jp/modules/forum_hobby/index.php?post_id=382)で展開されているツールが使えるっぽいです。

Windowsように展開されているツールで試して見ると、物によって認識されたりされなかったりするようです。

 

【2016/1/30追記】

bto_ir_cmdで動くことは確認しています。ただし、makeした時にコンパイルエラーにあるので、以下のコマンドでlibusbを事前にインストールしましょう。

sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev libusb-dev

あとは、githubに書かれているにコマンドを実行すればOK

 

3.双方の比較(というわけでもないけど)

赤外線リモコンKITでは、我が家では照明はダメでしたが、エアコンはうまく動作しそうです。irMagicianでは照明はOKでしたが、エアコンがダメそう。なので、一長一短といった感じ。(たぶんエアコンは送り出す信号が長いので、irMagicianでは全データを送りきれないって感じなんじゃないかと推測)

両方使っていくのもありかな、というのが現状の考えている作戦です。