PIC赤外線リモコンキー(IrKey)操作マニュアル 第2.5版
「はじめに」
「IrKey」とは、RS232Cに繋ぐ外付けハードウェアと組み合わせる事により、TV等に付属している赤外線
リモコンを使ってWindowsの操作を行うためのソフトウェアです。
外付けハードウェアが無くても、ホットキーでアプリケーションを起動したり、操作の自動化
を行う事ができます。
会社で使用する場合は、プレゼンテーションソフトの操作に最適です。自宅ではパソコンTVの操作や、良く使うアプリケーションの一発起動、定型処理の実行等に威力を発揮します。
また、Version
2.00からブラウザによる操作ができるようになりましたので、事務所内で各人のパソコン端末から共用のTVを操作したりする事ができます。
更に追加で、Version
2.10からはメールで操作できるようになりました。留守録を忘れた時や、TVを消し忘れた時(そんな事覚えてないと思うけど)外出先から操作する事ができます。(定期的にメールチェックできる常時接続環境が望ましいです)
「概要」
|
リモコンからの赤外線をPIC16F84による赤外線受信部で受信して、RS232C経由でパソコンに送り込みます。最近のノートパソコンではRS232Cを装備していない場合もありますが、そんな時は市販のUSB-RS232C変換アダプタを使って接続します。
パソコン側ソフトでは、どのボタンが押されたか判定して内部コード(CH1などの文字列)を生成します。
生成された内部コードでテーブルを検索して、マッチしたテーブル内容に従った処理を行います。
PIC側の電源はRS232Cの信号線から取っていますのでACアダプターも不要です。(給電能力が低いパソコンでは別に電源が必要です)
ブラウザからの操作では、以下の様な画面がブラウザに表示されますので簡単にTVを操作する事ができます。
また、IrKeyは簡易Webサーバーとして動作するので、かなり自由な画面を作る事ができます。
|
「ハードウェアの作成」
とりあえず「PIC赤外線リモコン&I/Oターミナル」(Ver1.30以上)を接続して動作させる事ができます。
4種類有ってどれでも使えるのですが、もっとも簡単な
Type
C をお薦めします。
私は小さく作るのが好きなので、
Type
C
から赤外線送信部分と電池を省いて(拡張用ジャックで対応)9ピンD-SUBのケースに納めてみました。「PIC赤外線リモコン」のページをご覧下さい。
「パソコン側ソフト」
・メニュー
File |
Edit Data |
・IrKey.datを直接編集します。 |
Edit Inf |
・IrKey.infを直接編集します。 |
|
Edit Nw |
・IrKey.nwを直接編集します。 |
|
Make html |
・登録されている情報で赤外線送信用HTMLファイルを生成します。 |
|
Exit |
・終了します。 |
|
Help |
Contents |
・いま見ているファイルを表示します。 |
Command |
・コマンド一覧を表示します。 |
・コマンドボタンエリア
Connect |
・常駐プログラムにLANで接続します。 |
Disc |
・常駐プログラムとの接続を切断します。 |
Write |
・編集したデータをファイルに書き込みます。 |
hostname |
・接続する端末のホスト名を入力します。 |
DebugMode |
・コマンドのデバッグ用メッセージを表示します(LAN接続時に有効)。 |
Reload |
・IrKeyを再起動しなくてもデータを再読み込みさせます。 |
・Application
この画面でアプリケーションの操作に関する設定を行います。
|
Code1 |
・比較するキーコードを設定します。 |
Code2 |
・2つ連続して比較する場合はこちらも設定します。 |
Page |
・現在のページがここの記述と一致しているデータのみ比較対象とします。 |
Comment |
・データ編集用の説明やメニュー表示する時のタイトルを記述します。 |
ID |
・通常はNormalにします。 |
TIMER |
・タイマー動作させたい時にクリックするとタイマー設定画面が表示されます。 |
Command |
・実行させたい処理を記述します。 |
Cursor Check |
・画面上でのマウス座標とClassNameを調べたい時にチェックします。 |
Add/Update |
・一覧で、空白を選択している場合はデータを追加します。 |
Cancel |
・更新や削除した直前のデータを元に戻します。 |
Execute |
・チェック用にコマンドを実行します。常駐部に接続している必要があります。 |
右クリックメニュー |
・データを削除する時に右クリックします。 |
・Macro
実行ファイル名等の長い文字列をマクロ登録して使えます。
|
Macro Name |
・マクロ名を入力します。必ず@で始まる文字列にします。 |
Macro Contents |
・内容を入力します。 |
reference |
・プログラムを参照して、「Macro Contents」に設定します。 |
Add/Update |
・一覧で、空白を選択している場合はデータを追加します。 |
Cancel |
・更新や削除した直前のデータを元に戻します。 |
右クリックメニュー |
・データを削除する時に右クリックします。 |
・AutoPageChange
ここににこの画面でアプリケーションの操作に関する設定を行います。
|
Title[:ClassName] |
・チェックしたいアプリケーションのタイトル文字を指定します。 |
Command |
・実行させたい処理を記述します。 |
Add/Update |
・一覧で、空白を選択している場合はデータを追加します。 |
Cancel |
・更新や削除した直前のデータを元に戻します。 |
Execute |
・チェック用にコマンドを実行します。常駐部に接続している必要があります。 |
右クリックメニュー |
・データを削除する時に右クリックします。 |
・IR
data
赤外線リモコンの信号を学習します。学習時は常駐部と接続している必要があります。
|
Learn |
・チェックした状態で赤外線信号を受信すると、受信内容でデータを追加します。 |
Code |
・赤外線信号に対応するコードを設定します。 |
Alias |
・コードの別名を設定します。Applicationで設定したデータを検索する時は、CodeとAliasどちらでも比較されます。 |
Comment |
・リモコンのメーカー名等、何のデータか判るように設定します。 |
Compare |
・受信データをどれだけの長さで比較するかを設定します。 |
Update |
・一覧で選択したデータの赤外線信号データ以外を修正できます。 |
Cancel |
・更新した直前のデータを元に戻します。 |
右クリックメニュー |
・データを削除したり、Compareの部分を変更する時に右クリックします。 |
一覧のダブルクリック |
・赤外線信号を送信します。 |
・HotKey
ホットキーで実行するコマンドを設定します。
CommandにSendKeys()が含まれていない場合は即座に実行しますが、含まれている場合は誤動作を防止するためキーが離されるまで実行しません。
|
Shift,Ctrl,Alt,Win |
・使用するキーをチェックします。 |
Virtual-key code |
・このエリアをマウスで選択して使用するキーをクリックします。 |
Comment |
・ホットキーの内容が判るように名称を記述します。 |
Command |
・実行させたい処理を記述します。 |
Add/Update |
・一覧で、空白を選択している場合はデータを追加します。 |
Cancel |
・更新や削除した直前のデータを元に戻します。 |
Execute |
・チェック用にコマンドを実行します。常駐部に接続している必要があります。 |
右クリックメニュー |
・データを削除する時に右クリックします。 |
・Value
変数を設定します。if文と組み合わせてちょっとした処理の分岐等を行います。
$statusについては組み込み変数として定義されていますのでここでの設定は不要です。
|
Name |
・変数名を入力します。必ず$で始める必要があります。 |
Start |
・変数の初期値を設定します。 |
Min |
・Value関数で増減した時、変数の最小値チェックで使用します。 |
Max |
・Value関数で増減した時、変数の最大値チェックで使用します。 |
Add/Update |
・一覧で、空白を選択している場合はデータを追加します。 |
Cancel |
・更新や削除した直前のデータを元に戻します。 |
右クリックメニュー |
・データを削除する時に右クリックします。 |
・Mail(1)
メールに関する各種設定を行います。
|
Type |
・「Dialup」にするとダイヤルアップ接続されている時だけメールチェックします。 |
Dialup Provider |
・上記のTypeが「Dialup」の場合、複数の接続先があって特定のプロバイダで接続している時だけメールチェックしたい場合に、接続名の一部を記入します。記入した内容が接続名に含まれている場合にメールチェックします。 |
Enabled |
・メールチェック機能の有効/無効を設定します。 |
Delete |
・正常に処理できたメールを削除します。 |
Error stop |
・メールをチェックする時に連続して指定された回数失敗すると、メールチェックを停止します。 |
Server(POP3) |
・POP3サーバー名を設定します。 |
UserID |
・POP3サーバー用のユーザーIDを設定します。 |
Password |
・POP3サーバー用のパスワードを設定します。 |
Server(SMTP) |
・SMTPサーバー名を設定します。 |
Mail address |
・自分のメールアドレスを設定します。 |
Keyword |
・IrKey操作メールである事を示すキーワードを設定します。 |
TOP Enabled |
・ほとんどのプロバイダで対応していると思われますが、POP3のTOPコマンドでメールタイトル等を取得します。この場合、メールを全て読み出す必要が無いため、下記の「Check
size」に関りなく処理できます。 |
Check size |
・メール内容を確認する最大サイズを指定します。不要メールを削除する場合は、このサイズまでのメールが削除可能です。 |
Sender |
・特定の送信元からのメールでのみ操作できるように、「From」行に含まれる内容の一部を設定します。 |
Write Mail |
・設定を変更したらボタンをクリックして内容を書き込みます。 |
・Mail(2)
メールに関する各種設定を行います。
|
Save |
・削除しないメールを「Save」としておきます。 |
Delete Account |
・メールアカウント(@以前)が一致するメールを削除します。大文字/小文字は区別しません。 |
Delete Domain |
・メールドメイン(@以降)が一致するメールを削除します。大文字/小文字は区別しません。 |
Delete Match |
・メールアドレスが一致するメールを削除します。大文字/小文字は区別しません。 |
Add/Update |
・メールアドレスの修正/追加を行います。 |
CheckMailDelete |
・迷惑メール削除機能のON/OFFを設定します。 |
Delete Days | ・削除指定されているメールがここで指定した日数を経過するとIrKeyMnt起動時に一覧から削除されます。ゼロ指定で無効となりますが、データ量を抑えるためになるべく指定して下さい。 |
Account |
・アカウントの追加/修正時に編集するためのエリアです。 |
Domain |
・ドメインの追加/修正時に編集するためのエリアです。 |
Delete Subject |
・ここに記述した文字列がSubjectに含まれている場合、「Save」指定されていてもメールを削除します。 |
String Grid |
・右クリックで、選択している行の削除やソート、Subjectのコピーが行えます。 |
Write List |
・設定を変更したらボタンをクリックして内容を書き込みます。 |
・Setup
各種動作設定を行います。
|
RS232C Mode |
・接続するハードウェアに合わせて設定します。できればConnectの方が良いです。 |
ComPort |
・ハードウェアを接続しているポート番号を設定します。 |
AutoPageChange |
・初期起動時の自動ページ変更処理が有効か無効かを設定します。起動後に専用関数でも変更できます。 |
HotKeyEnabl |
・初期起動時のホットキーが有効か無効かを設定します。起動後に専用関数でも変更できます。 |
Timer |
・初期起動時のタイマー処理が有効か無効かを設定します。起動後に専用関数でも変更できます。 |
IrSend Retry |
・赤外線送信で失敗した時のリトライ回数を設定します。 |
Encription |
・RemoteControlの暗号化キーワードまたはファイルを設定します。 |
LanAccept |
・LANを使用する場合はONにします。 |
RemoteControl |
・LANで接続されている他のパソコンからの操作が有効か無効かを設定します。起動後に専用関数でも変更できます。 |
Port |
・LAN通信に使用するポート番号を設定します。 |
Free |
・ブラウザやIrKeyMnt、IrConから自由にアクセスできる端末のIPアドレスを指定します。 |
Refuse |
・アクセスを拒否する端末のIPアドレスを指定します。入力方法はFreeと同様です。Freeと両方に記述してある場合はこちらを先にチェックしますのでこちらが優先です。 |
UserID+Password |
・ブラウザからアクセスする時にFree、Refuseどちらにも記述していない場合、Basic認証を行う事により使えるようにできるユーザー名とパスワードを設定します。 |
Write Setup |
・設定を変更したらボタンをクリックして内容を書き込みます。 |
・Menu画面
起動ファイルやアクティブにするウィンドウ等をメニュー表示します。
|
・タスクトレイからの右クリックメニュー
Start |
・データのページに「Start」と記述されている項目のメニューを表示します。 |
Accept |
・LANの接続可否を設定します。 |
RemoteControl |
・LAN内の別端末からのWindows操作の可否を設定します。 |
|
・メールチェック動作の可否を設定します。 |
Timer |
・タイマー動作の可否を設定します。 |
Reload |
・データを再読み込みします。 |
Open |
・データ設定プログラムを起動します。 |
Exit |
・常駐プログラムを終了します。 |
「データ登録方法」
使い方次第で千差万別なので、ここでは私が基本的にどのように登録しているかを簡単に記述します。
・メニューの表示はページに関りなく電源ボタンを2回連続して押すと表示されるようにしています。
・ページ自動切り替えのON/OFFもページに関りなく変更できるようにしています。
・よく使うプログラムの起動は、電源ボタンの後にチャンネルボタンを押します。
・ページ指定されていない状態では、「Win」、「Tab」、「Esc」、「Alt」、「Enter」、「Alt+F4」、カーソル移動ができるようにしています。
詳細は添付のデータファイル(IrKey.def)を参照して頂ければ理解できると思います。
「コマンドと内部変数」
コマンドと内部変数はこちらにをご覧下さい。
「ブラウザからの使用について」
ブラウザから使用する場合は以下の様なURLを指定して下さい。
・端末ホスト名「desk1」、ポート番号「1024」で、「maker.html」が準備されている場合
http://desk1:1024/maker.html |
なお、HTMLファイルの作成等についてはこちらをご覧下さい。
「メールでの操作について」
外部からメールで操作する方法についてはこちらをご覧下さい。
「ブラウザでの操作について(各種コマンド等)」(New)
外部からブラウザで簡単な操作ができるようになりました。設定方法についてはこちらをご覧下さい。
「メール削除機能について」(注意)
設定間違いやバグにより必要なメールが削除されても責任をおえませんので、自己責任でご利用願います。もちろん私の環境では問題無く動作することを確認しています。
「リモートコントロールについて」
制御側のパソコンに相手パソコンの画面を表示しながらマウス操作したりキーボード操作する事ができます。こういったソフトウェアはフリーでも多く存在していますが、本ソフトウェアでは会社内のProxy経由でアクセスできますので非常時に重宝します。
「データファイル」
IrKey.infには通信ポート等が設定されています。
IrKey.datに赤外線信号等の各種情報が設定されています。
IrKey.defはIrKey.datが存在しない場合に、IrKey.datに変わって読み込まれます。(サンプル用)
IrKey.nwはLAN関連で使用するIPアドレスやユーザーID等が記述されています。
RefuseIP.txtはブラウザからのアクセスで3回認証に失敗した端末のIPアドレスが格納されています。
複数のデータファイルで使い分けたい場合は、IrKey.exe/IrKeyMnt.exeの起動パラメータでxxx.datと指定します。その他のファイルは内部で拡張子を変更して対応しています。
「IrKey.Inf」ファイルの補足説明
このファイルにはエディターで設定可能なタイマー関連の情報があります。これらはIrKeyMntでは設定できませんので、直接編集する必要があります。(通常は編集する必要が無いため、編集する方法を準備していません)
表示が不要な場合はゼロにしておきます。
またPerlを使用する場合で、Perlにパスが通っていない環境では下記の様に[Inf]の中にPerlのパスを記述する必要があります。
[Inf] |
「使用できる赤外線信号」
家電協会フォーマットといわれる信号に類似したものであれば認識可能です。
「2つ連続して比較する場合の動作について」
Application画面でCode1,Code2を設定している場合は、Code1を受信した時にCode1のページ名が表示されます。Code2はページ名が表示されている間に入力しないと、Code1の入力は解除されてしまいます。なお、ほぼ同時に押した場合はCode2を入力したと認識されます。(画面消去から0.5秒以内なら正常に入力された事になるようタイミングを取っています)
「仕様や機知の問題点」
各種情報を設定する時に、関数のパラメータを区切っているカンマ以外のカンマは使用できません。ファイル格納時にセパレータとして使用しています。
タイマーの登録数に制限は付けていませんが、実行する時は最大50件分しか動作しません。あまり多く登録しておくとシステムのパフォーマンスに影響を与える恐れがあります。また、タイマー登録エリアはメールでの予約や、各種タイムアウトチェックでも使用していますので、必要最小限の登録にする必要があります。(全体では最大60件分確保しています)
外部からのLAN接続に当たっては十分セキュリティに注意して下さい。
コマンドを実行する場合、最大5系統をパラレルに実行できます。従って同一時分秒で5つを越えるタイマー予約はできません。また、赤外線送出については、送出回路が1つのため複数の要求が有った場合は待ち合わせが発生します。
「インストール」
格納したいフォルダに解凍ファイルを一式置いて下さい。
バージョンアップする場合は以前のデータファイルを待避しておき、解凍後に上書きして下さい。その後IrKeyMnt.exeで必要な項目を再設定して下さい。
IrKeyMnt.exeがデータ設定プログラムです。起動してRS232C関連の設定を行い、保存したら一旦終了します。
次にIrKey.exeを起動します。タスクトレーにアイコンが表示されますので、そこからOpenあるいはアイコンをダブルクリックするとデータ設定画面が起動するようになります。この状態で赤外線信号を学習したり、信号受信時の動作を設定して下さい。
動作の設定が終わったら、データを保存して、IrKey.exeを再起動して下さい。
赤外線を受信させて動作確認が正常であれば、IrKey.exeがWindows起動時に常に起動されるようにショートカットをスタートアップに入れて置きます。
「アンインストール」
レジストリ等は使用していませんので、プログラムを置いたフォルダにある内容を削除するだけです。
「利用に関する注意事項」
本ソフトウェアは非営利目的であれば自由にご利用頂いて構いませんが、本ソフトウェアの利用により何らかの不利益が発生しても作者は責任を負いません。利用者の責任でご利用願います。同意頂けない場合は本ソフトウェアの利用を禁止致します。
Copyright (C) 2001-2004 T.Sagae All Rights Reserved.