記事の詳細

ADRSIR “ラズベリー・パイ専用学習リモコン基板”の配布ツール「コマンドラインツール」について、外部ファイルの読み込み方法について解説します。

ADRSIR_RPC2

これにより、現在公開中のリモコンコードcsvファイルからの直接読み込みや、別のボードへの設定移行などが出来るようになり、活用の幅が大きく広がります。

使い方

対応するファイルは、中身に赤外線コードの情報のみが一行だけ格納されているものです。

テスト用などに作成する場合は、

$ ./IR-remocon02-commandline.py r (0-9の番号) > hoge.data

として出力できます。

このときファイル名や拡張子について制約はありませんが、

  • ファイル名は半角英数字のもの
  • 拡張子については.txtや.data、あるいは拡張子なし

によるファイル作成をお勧めします。

リダイレクトによる方法

外部ファイルからは、リダイレクトを用いてツールに赤外線コードを渡します。

ボタンへの登録を行う場合は

$ ./IR-remocon02-commandline.py w (0-9の番号) < hoge.data

というようにします。これにより、任意のボタンに任意のコードを登録することが可能になります。

保存されたファイル内のコードを直接出力したい場合は、

$ ./IR-remocon02-commandline.py t < hoge.data

とします。ボタンに登録しきれないコードを出力させたい場合も、このように手軽に行うことができます。

パイプによる方法

$ cat hoge.data | ./IR-remocon02-commandline.py t

としても外部ファイルからの入力を受け取り、内部への保存または赤外線の出力をすることができます。

これを利用し、

  1. catコマンドによりcsvなどの大きな外部ファイルを読み込む
  2. grepコマンドで特定の行を読み込む
  3. awkコマンドやcutコマンドなどで赤外線コードのみを取り出す
  4. ツールにパイプで流しこむ

といった流れで、赤外線コードをまとめた巨大な外部ファイルから赤外線コードを読み込み、発信するといったことができ、遠隔操作する場合などに非常に大きな効果を発揮します。

若干”シェル芸”気味ではありますが、一例として、弊社が公開している各社リモコンコード表から読み込みを行う時のコマンドを示します。

リモコンコード表にはメーカー、機器、機能の組み合わせに対する赤外線コードが以下のような形で大量に収録されています。

“メーカー名”,”対象機器”,”対象機器”,”赤外線コード”

その中からお目当ての赤外線コードが収録されている一行を引き出し、赤外線コードだけを切り出す必要があります。これらの操作をシェルコマンドで行い、ツールに入力するには以下のようにコマンドを入力します。

$ cat 赤外線データ20171225.csv | grep メーカー名 | grep 対象機器 | grep 利用機能 | rev | awk ‘{sub(“,.*”,””);print $0}’ | cut -c 3- | rev | cut -c 2- | sudo ./IR-remocon02-commandline.py t

…ちょっと長いですね、順番に説明していきます。

$ cat 赤外線データ20171225.csv | grep メーカー名 | grep 対象機器 | grep 利用機能

まず外部ファイルを読み込み、欲しい赤外線コードの絞り込みを行います。条件指定のgrep節は順番を問わないので、わかりやすく並べてもらっても構いません。

注意点として、ツールに流し込める赤外線コードは一つだけなので、条件を適切に設定しないと複数のコードがヒットし、適切でないものが読み込まれる可能性があります。

基本的にはメーカー名、機器、機能を指定すれば大丈夫ですが、同じメーカーの同じ機器でも複数パターンがあることがあるので、事前にgrepで検索するといいでしょう。

| rev | awk ‘{sub(“,.*”,””);print $0}’ | cut -c 3- | rev | cut -c 2-

抽出された文字列から赤外線コードを切り出しています。

| sudo ./IR-remocon02-commandline.py t

切り出された赤外線コードをそのまま発信しています。

このようにして、外部ファイルからの赤外線コード読み込みを行うことができます。また、このコマンドの例では読み込んだコードをそのまま発信していますが、もちろんボタンに登録することも可能です。


いかがでしたか?今回のアップデートにより、この基板の活用範囲がぐんと広がり、使いやすくなったんじゃないかな、と思っております。

今後も皆様が便利に使っていただけるようアップデートを重ねて参ります。

ラズパイ専用学習リモコン対応ソフトウェア

ライセンス: ADL(Assembly Desk License)

*raspbian 2018/3/14版にて動作確認を行っています。以降のバージョン対応は未定です。

 

WP-製品紹介M31-ADRSIR

関連記事

ページ上部へ戻る