(57)【特許請求の範囲】
【請求項１】
デバイスに接続される中継装置であって、
前記中継装置の識別情報、前記デバイスの識別情報、前記デバイス及び前記中継装置の少なくとも一方の物理的なスイッチの設定情報を取得する取得部と、
取得された前記中継装置の識別情報、前記デバイスの識別情報及び前記設定情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするインストール部と、
を備える中継装置。
【請求項２】
前記インストール部は、記憶された前記中継装置の識別情報、前記デバイスの識別情報及び前記アプリケーションを関連付けるテーブルに基づいて決定された、取得された前記中継装置の識別情報及び前記デバイスの識別情報に対応する前記アプリケーションをインストールすることを特徴とする請求項１に記載の中継装置。
【請求項３】
前記取得部は、前記中継装置の識別情報及び複数の前記デバイスの識別情報を取得し、
前記インストール部は、取得された前記中継装置の識別情報及び複数の前記デバイスの識別情報に基づいて決定された前記アプリケーションをインストールすることを特徴とする請求項１または２に記載の中継装置。
【請求項４】
前記インストール部は、前記デバイスが前記中継装置に接続されると、前記アプリケーションをインストールすることを特徴とする請求項１〜３のいずれか一項に記載の中継装置。
【請求項５】
前記アプリケーションがインストールされた後に、前記デバイスと同一の識別情報を有する他のデバイスが前記中継装置に接続された場合に、前記インストール部は前記アプリケーションをさらにインストールしないことを特徴とする請求項１〜４のいずれか一項に記載の中継装置。
【請求項６】
デバイスに接続される中継装置と通信するサーバであって、
前記中継装置の識別情報、前記デバイスの識別情報、前記デバイス及び前記中継装置の少なくとも一方の物理的なスイッチの設定情報を受信する受信部と、
受信された前記中継装置の識別情報、前記デバイスの識別情報及び前記設定情報に基づいて、前記中継装置にインストールすべき前記デバイスを制御するアプリケーションを決定する決定部と、
を備えるサーバ。
【請求項７】
前記決定部は、記憶された前記中継装置の識別情報、前記デバイスの識別情報及び前記アプリケーションを関連付けるテーブルに基づいて、受信された前記中継装置の識別情報及び前記デバイスの識別情報に対応する前記アプリケーションを決定することを特徴とする請求項６に記載のサーバ。
【請求項８】
デバイスに接続される中継装置の設定方法であって、
前記中継装置の識別情報、前記デバイスの識別情報、前記デバイス及び前記中継装置の少なくとも一方の物理的なスイッチの設定情報を取得するステップと、
取得された前記中継装置の識別情報、前記デバイスの識別情報及び前記設定情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするステップと、
を有する設定方法。
【請求項９】
デバイスに接続される中継装置を設定する設定プログラムであって、
コンピュータに、
前記中継装置の識別情報、前記デバイスの識別情報、前記デバイス及び前記中継装置の少なくとも一方の物理的なスイッチの設定情報を取得するステップと、
取得された前記中継装置の識別情報、前記デバイスの識別情報及び前記設定情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするステップと、
を実行させる設定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中継装置、サーバ及び該中継装置を設定するための設定方法及び記録媒体に関する。
【背景技術】
【０００２】
近年、ＩｏＴ（Internet  of  Things）が注目されている。ＩｏＴでは、センサ、アクチュエータ等の様々なデバイスをインターネット等のネットワークに接続し、デバイスから取得されるデータの監視及び分析やデバイスの動作の制御をネットワーク経由で行うことができる。【０００３】
デバイスは、該デバイスが接続されるゲートウェイ等の中継装置上で実行されるアプリケーション（ソフトウェア）によって制御されることが多い。デバイスを制御するアプリケーションはデバイスの種類ごとに異なるため、中継装置には接続されるデバイスに応じて適切なアプリケーションがインストールされる必要がある。【０００４】
特許文献１には、サーバが端末ごとにインストールすべきアプリケーションをインストールするための実行モジュールを生成し、端末が実行モジュールをサーバから受信して実行することによってアプリケーションのインストールを含む設定を行う技術が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第２０１５／１３６６４３号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の技術では、管理者は接続されるデバイスに応じて端末ごとにインストールすべきアプリケーションを手動で設定する必要がある。そのため、端末に接続されるデバイスが変わる場合には、その度にデバイスに応じたアプリケーションを設定して改めてキッティングを行う必要があり、管理者の負担が大きい。【０００７】
本発明は、上述の問題に鑑みて行われたものであって、デバイスの接続に必要な設定の負担を軽減できる中継装置、サーバ、中継装置の設定方法及び設定プログラムの記録媒体を提供することを目的とする。【０００８】
本発明の第１の態様は、デバイスに接続される中継装置であって、前記中継装置の識別情報、前記デバイスの識別情報、前記デバイス及び前記中継装置の少なくとも一方の物理的なスイッチの設定情報を取得する取得部と、取得された前記中継装置の識別情報、前記デバイスの識別情報及び前記設定情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするインストール部と、を備える。
【０００９】
本発明の第２の態様は、デバイスに接続される中継装置と通信するサーバであって、前記中継装置の識別情報、前記デバイスの識別情報、前記デバイス及び前記中継装置の少なくとも一方の物理的なスイッチの設定情報を受信する受信部と、受信された前記中継装置の識別情報、前記デバイスの識別情報及び前記設定情報に基づいて、前記中継装置にインストールすべき前記デバイスを制御するアプリケーションを決定する決定部と、を備える。
【００１０】
本発明の第３の態様は、デバイスに接続される中継装置の設定方法であって、前記中継装置の識別情報、前記デバイスの識別情報、前記デバイス及び前記中継装置の少なくとも一方の物理的なスイッチの設定情報を取得するステップと、取得された前記中継装置の識別情報、前記デバイスの識別情報及び前記設定情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするステップと、を有する。
【００１１】
本発明の第４の態様は、デバイスに接続される中継装置を設定する設定プログラムであって、コンピュータに、前記中継装置の識別情報、前記デバイスの識別情報、前記デバイス及び前記中継装置の少なくとも一方の物理的なスイッチの設定情報を取得するステップと、取得された前記中継装置の識別情報、前記デバイスの識別情報及び前記設定情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするステップと、を実行させる。
【００１２】
本発明によれば、中継装置の識別情報及びデバイスの識別情報の組み合わせに基づいてインストールすべきアプリケーションを決定するため、中継装置に接続されたデバイスに応じて自動的に設定を行うことができ、中継装置の設定の負担を低減することができる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施形態に係る中継装置の設定方法の模式図である。
【図２】第１の実施形態に係る中継装置を含むシステムのブロック図である。
【図３】第１の実施形態に係るアプリケーション定義記憶部に記録されているアプリケーション定義テーブルの模式図である。
【図４】第１の実施形態に係る中継装置の機器構成を示す概略構成図である。
【図５】第１の実施形態に係る中継装置の設定方法のフローチャートを示す図である。
【図６】第２の実施形態に係る中継装置を含むシステムのブロック図である。
【図７】第３の実施形態に係る中継装置を含むシステムのブロック図である。
【図８】第３の実施形態に係るアプリケーション定義記憶部に記録されているアプリケーション定義テーブルの模式図である。
【図９】第３の実施形態に係る中継装置の設定方法のフローチャートを示す図である。
【図１０】第４の実施形態に係るアプリケーション定義記憶部に記録されているアプリケーション定義テーブルの模式図である。
【図１１】第４の実施形態に係る中継装置の設定方法のフローチャートを示す図である。
【図１２】各実施形態に係る中継装置の概略構成図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照して、本発明の実施形態を説明するが、本発明は本実施形態に限定されるものではない。なお、以下で説明する図面で、同機能を有するものは同一符号を付け、その繰り返しの説明は省略することもある。
【００１５】
（第１の実施形態）
図１は、本実施形態に係る中継装置１０の設定方法の模式図である。中継装置１０は、ゲートウェイとも呼ばれ、デバイス２０とサーバ３０との間の信号の受け渡しを中継する通信装置である。サーバ３０は、中継装置１０にネットワークを介して接続される機器である。サーバ３０は、例えば単一のコンピュータ、又はコンピュータ資源の集合であるクラウドである。
【００１６】
デバイス２０は、サーバ３０に所定の信号を送信し、あるいはサーバ３０からの信号を受けて所定の動作を行う機器である。例えばデバイス２０は温度、圧力、音等を測定するセンサであり、この場合にはデバイス２０は測定結果を示す信号をサーバ３０に送信する。例えばデバイス２０は所定の動作を行うアクチュエータであり、この場合にはデバイス２０はサーバ３０から受信した制御内容を示す信号に従って動作する。デバイス２０は、中継装置１０上で動作するアプリケーション１１によって制御される。
【００１７】
中継装置１０には、物理的な接続部である１つ以上の接続ポート１２が設けられ、接続ポート１２にはデバイス２０が接続され得る。接続ポート１２は、ケーブル、コネクタ等の接続部材を介してデバイス２０を物理的に接続するためのインターフェースである。接続ポート１２として、例えばＲＳ−２３２Ｃ規格、ＲＳ−４２２規格、ＲＳ−４８５規格等のシリアルポート（ＣＯＭポート）、ＩＥＥＥ１２８４規格のパラレルポート、ＵＳＢ（Universal  Serial  Bus）ポート、その他任意の物理インターフェースを用いてよい。
【００１８】
アプリケーション１１は、デバイス２０を制御し、サーバ３０への通信を可能にするソフトウェアである。中継装置１０とサーバ３０との間の通信は、例えばＴＣＰ／ＩＰ等の一般的なプロトコルに従う。一方、デバイス２０は、その種類や製造者ごとに異なる通信プロトコルに従って通信を行う。デバイス２０が従う通信プロトコルとしては、例えばＴＣＰ／ＩＰ等の一般的なプロトコル、あるいはデバイス２０の種類や製造者によって異なる独自のプロトコルがある。アプリケーション１１は、デバイス２０とサーバ３０との間で送受信される信号を、デバイス２０及びサーバ３０が従う通信プロトコルに応じて変換する。そのため、中継装置１０は、接続されるデバイス２０によって異なるアプリケーション１１をインストールして実行する必要がある。
【００１９】
制御部１００は、中継装置１０に接続されているデバイス２０に対応するアプリケーション１１をインストールし、中継装置１０内で実行する制御を行う。該制御において、制御部１００は、接続されているデバイス２０の識別情報と中継装置１０の識別情報との組み合わせに基づいて、インストールすべきアプリケーション１１を決定する。本実施形態においてインストールされるアプリケーション１１のデータはサーバ３０から受信されるが、中継装置１０内の記録部から読み出されてもよい。制御部１００の詳細な構成については図２を用いて説明する。
【００２０】
図２は、本実施形態に係る中継装置１０を含むシステムのブロック図である。図２において、矢印は主なデータの流れを示しており、図２に示したもの以外のデータの流れがあってよい。図２において、各ブロックはハードウェア（装置）単位の構成ではなく、機能単位の構成を示している。そのため、図２に示すブロックは単一の装置内に実装されてよく、あるいは複数の装置内に別れて実装されてよい。ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてよい。
【００２１】
中継装置１０は、処理部である制御部１００、及び記憶部であるシステム情報記憶部１３を備える。制御部１００は、デバイス識別情報取得部１１０、中継装置識別情報取得部１２０、アプリケーション決定部１３０及びインストール部１４０を含む。また、中継装置１０は、デバイス２０とサーバ３０との間の通信を制御するアプリケーション１１を実行する。また、サーバ３０は、記憶部であるアプリケーション定義記憶部３１及びアプリケーション記憶部３２を備える。
【００２２】
デバイス識別情報取得部１１０は、中継装置１０に接続されているデバイス２０の識別情報であるデバイスＩＤをデバイス２０から取得する。中継装置１０に複数のデバイス２０が接続されている場合には、それぞれのデバイス２０について以降の処理を行う。デバイスＩＤは、デバイス２０から取得可能な値であり、デバイス２０を識別可能な文字列、数値、バイナリ値等、任意の表現方法で定義される。デバイス２０がＵＳＢ接続の機器である場合に、デバイスＩＤとして例えばベンダ（製造者）ＩＤ、プロダクトＩＤ、又はそれらの組み合わせを用いることができる。
【００２３】
本実施形態では、同じ通信プロトコルに従う複数のデバイス２０（例えば同じ種類及び製造者のデバイス２０）には、同じ識別情報が割り振られる。このような構成により、同じ識別情報を有する複数のデバイス２０は、同じアプリケーション１１によって制御されるため、後述のアプリケーション定義テーブルにおける管理が簡便である。別の方法として、デバイス２０の個体ごとに固有の識別情報が割り振られてもよい。
【００２４】
中継装置識別情報取得部１２０は、中継装置１０の識別情報である中継装置ＩＤをシステム情報記憶部１３から取得する。中継装置ＩＤは、中継装置１０のシステム（より具体的にはオペレーティングシステム）から取得可能な値であり、中継装置１０を識別可能な文字列、数値、バイナリ値等、任意の表現方法で定義される。中継装置ＩＤとして、例えば中継装置１０のＢＩＯＳに記録されたシリアル番号を用いることができる。
【００２５】
本実施形態では、中継装置１０の個体ごとに、固有の識別情報が割り振られる。このような構成により、中継装置１０の個体ごとに異なる設定を適用することができ、利用者の求めに応じて中継装置１０の設定をカスタマイズすることができる。換言すると、同じ種類の中継装置１０に同じ種類のデバイス２０が接続される場合であっても、中継装置１０の設置先や所有者によって異なるアプリケーション１１を配信することができるため、より細やかな設定を行うことができる。別の方法として、複数の中継装置１０に、同じ識別情報が割り振られてもよい。
【００２６】
アプリケーション決定部１３０は、アプリケーション定義記憶部３１に予め記録されているアプリケーション定義テーブルに基づいて、デバイス識別情報取得部１１０により取得されるデバイスＩＤ及び中継装置識別情報取得部１２０により取得される中継装置ＩＤに対応するアプリケーション１１を決定する。本実施形態ではアプリケーション定義記憶部３１はサーバ３０内に設けられるが、中継装置１０内に設けられてもよい。ただし、中継装置１０にアプリケーション定義記憶部３１を設ける場合にはサーバ３０から各中継装置１０に定期的にアプリケーション定義テーブルを配信する必要があるため、通信量を低減するためにはサーバ３０にアプリケーション定義記憶部３１を設けることが望ましい。
【００２７】
図３は、例示的な本実施形態に係るアプリケーション定義記憶部３１に予め記録されているアプリケーション定義テーブルの模式図である。アプリケーション定義記憶部３１には、デバイス２０の識別情報であるデバイスＩＤと、中継装置１０の識別情報である中継装置ＩＤと、インストール対象のアプリケーション１１（具体的にはファイル名）との組み合わせを関連付けて、アプリケーション定義テーブルとして予め記録されている。具体的には、アプリケーション決定部１３０は、アプリケーション定義テーブルから、デバイス識別情報取得部１１０により取得されるデバイスＩＤ及び中継装置識別情報取得部１２０により取得される中継装置ＩＤに対応する行を抽出する。そして、アプリケーション決定部１３０は、抽出された行に含まれるアプリケーション１１（ファイル名）を、中継装置１０にインストールすべきアプリケーション１１として決定する。
【００２８】
図３のアプリケーション定義テーブルにはアプリケーション１１のファイル名が記録されているが、インストール対象のアプリケーション１１を識別することが可能なその他の識別情報（ＩＤ、アプリケーション名等）が記録されてもよい。
【００２９】
図３において、アプリケーション定義テーブルは視認性のために文字列の表で表されているが、任意のデータ形式（ファイル形式）で表されてよく、例えばバイナリデータ又はテキストデータでよい。また、アプリケーション定義テーブルはデータベースのテーブルとしてアプリケーション定義記憶部３１に記録されてよく、あるいはバイナリファイル又はテキストファイルとしてアプリケーション定義記憶部３１に記録されてよい。
【００３０】
インストール部１４０は、アプリケーション決定部１３０によって決定されたアプリケーション１１を、アプリケーション記憶部３２から読み出して中継装置１０にインストールするインストーラーである。アプリケーション１１のインストールとは、アプリケーション１１を中継装置１０内に導入して実行可能な状態にすることである。すなわちアプリケーション１１のインストールは、アプリケーション１１の実行ファイルを中継装置１０内に配置すること、及び中継装置１０のシステムにアプリケーション１１を実行するための設定を行うことを含む。本実施形態ではアプリケーション記憶部３２はサーバ３０内に設けられるが、中継装置１０内に設けられてもよい。ただし、中継装置１０にアプリケーション記憶部３２を設ける場合にはサーバ３０から各中継装置１０に定期的に全てのアプリケーション１１を配信する必要があるため、通信量を低減するためにはサーバ３０にアプリケーション記憶部３２を設けることが望ましい。
【００３１】
アプリケーション記憶部３２にはアプリケーション１１の実行ファイルが記録されてもよく、あるいはアプリケーション１１のプログラム（ソースコード）が記録されてもよい。アプリケーション１１の実行ファイルが記録される場合には、インストール部１４０はアプリケーション記憶部３２から読み出した実行ファイルを中継装置１０に複写することによって、中継装置１０にインストールする。アプリケーション１１のプログラムが記録される場合には、インストール部１４０はアプリケーション記憶部３２から読み出したプログラムをコンパイルして実行可能な状態にすることによって、中継装置１０にインストールする。
【００３２】
ここで示した中継装置１０による具体的な処理は一例であり、中継装置１０の識別情報及び中継装置１０に接続されているデバイス２０の識別情報に基づいて、中継装置１０にインストールすべきアプリケーション１１を決定できれば、中継装置１０は任意の処理を行ってよい。
【００３３】
図４は、本実施形態に係る中継装置１０の例示的な機器構成を示す概略構成図である。中継装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０ａと、メモリ１０ｂと、記憶装置１０ｃと、インターフェース１０ｄとを備える。中継装置１０は独立した装置でよく、あるいは他の装置と一体に構成されてよい。
【００３４】
インターフェース１０ｄは、データの送受信を行う通信部であり、有線通信及び無線通信の少なくとも一方の通信方式を実行可能に構成される。インターフェース１０ｄは、該通信方式に必要なプロセッサ、電気回路、アンテナ、接続端子等を含む。インターフェース１０ｄは、ＣＰＵ１０ａからの信号に従って、該通信方式を用いて通信を行う。インターフェース１０ｄは、図１に示す接続ポート１２を含む。
【００３５】
記憶装置１０ｃは、中継装置１０が実行するプログラムや、プログラムによる処理結果のデータ等を記憶する。記憶装置１０ｃは、読み取り専用のＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）や、読み書き可能のハードディスクドライブ又はフラッシュメモリ等を含む。また、記憶装置１０ｃは、ＣＤ−ＲＯＭ等のコンピュータ読取可能な可搬記憶媒体を含んでもよい。メモリ１０ｂは、ＣＰＵ１０ａが処理中のデータや記憶装置１０ｃから読み出されたプログラム及びデータを一時的に記憶するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等を含む。
【００３６】
ＣＰＵ１０ａは、処理に用いる一時的なデータをメモリ１０ｂに一時的に記録し、記憶装置１０ｃに記録されたプログラムを読み出し、該プログラムに従って該一時的なデータに対して種々の演算、制御、判別などの処理動作を実行するプロセッサである。また、ＣＰＵ１０ａは、記憶装置１０ｃに処理結果のデータを記録し、またインターフェース１０ｄを介して処理結果のデータを外部に送信する。
【００３７】
本実施形態においてＣＰＵ１０ａは、記憶装置１０ｃに記録されたプログラムを実行することによって、図２のデバイス識別情報取得部１１０、中継装置識別情報取得部１２０、アプリケーション決定部１３０及びインストール部１４０、及びアプリケーション１１として機能する。また、本実施形態において記憶装置１０ｃは、図２のシステム情報記憶部１３として機能する。
【００３８】
中継装置１０は、図４に示す具体的な構成に限定されない。中継装置１０は、１つの装置に限られず、２つ以上の物理的に分離した装置が有線又は無線で接続されることにより構成されていてもよい。中継装置１０に含まれる各部は、それぞれ電気回路構成により実現されていてもよい。ここで、電気回路構成とは、単一のデバイス、複数のデバイス、チップセット又はクラウドを概念的に含む文言である。
【００３９】
また、中継装置１０の少なくとも一部がＳａａＳ（Software  as  a  Service）形式で提供されてよい。すなわち、中継装置１０を実現するための機能の少なくとも一部が、ネットワーク経由で実行されるソフトウェアによって実行されてよい。
【００４０】
図５は、本実施形態に係る中継装置１０の設定方法のフローチャートを示す図である。図５のフローチャートは、例えば中継装置１０に新たなデバイス２０が接続されたこと、あるいは利用者が中継装置１０に対して所定の操作を行ったことに応じて開始される。
【００４１】
まず、デバイス識別情報取得部１１０は、中継装置１０に接続されているデバイス２０の識別情報であるデバイスＩＤをデバイス２０から取得する（ステップＳ１０１）。次に、中継装置識別情報取得部１２０は、中継装置１０の識別情報である中継装置ＩＤをシステム情報記憶部１３から取得する（ステップＳ１０２）。ステップＳ１０１及びＳ１０２は逆の順番で行われてもよく、あるいは並行して行われてもよい。中継装置１０に複数のデバイス２０が接続されている場合には、それぞれのデバイス２０について以降の処理を行う。
【００４２】
アプリケーション決定部１３０は、アプリケーション定義記憶部３１に予め記録されているアプリケーション定義テーブルにおいて、ステップＳ１０１で取得されたデバイスＩＤ及びステップＳ１０２で取得された中継装置ＩＤに対応するアプリケーション１１を、中継装置１０にインストールすべきアプリケーション１１として決定する（ステップＳ１０３）。ここで決定されるアプリケーション１１は、アプリケーション１１のファイル名等の任意の識別情報によって識別される。
【００４３】
最後に、インストール部１４０は、ステップＳ１０３で決定されたアプリケーション１１を、アプリケーション記憶部３２から読み出して中継装置１０にインストールする（ステップＳ１０４）。
【００４４】
中継装置１０のＣＰＵ１０ａは、図５に示す設定方法に含まれる各ステップ（工程）の主体となる。すなわち、ＣＰＵ１０ａは、図５に示す設定方法を実行するためのプログラムをメモリ１０ｂ又は記憶装置１０ｃから読み出し、該プログラムを実行して中継装置１０の各部を制御することによって図５に示す設定方法を実行する。
【００４５】
本実施形態に係る中継装置１０は、中継装置１０の識別情報及びデバイス２０の識別情報の組み合わせに基づいて、デバイス２０を制御するためにインストールすべきアプリケーション１１を決定する。したがって、管理者は予め中継装置１０及びデバイス２０の組み合わせの条件をアプリケーション定義テーブルに登録しておくことによって、中継装置１０に新たにデバイス２０が接続される際に、対応するアプリケーション１１が自動的にインストールされる。そのため、管理者は中継装置１０に実際に接続されるデバイス２０に応じていちいちアプリケーション１１を取捨選択する必要がなく、中継装置１０を設定する負担を低減することができる。
【００４６】
（第２の実施形態）
第１の実施形態ではアプリケーション決定部１３０は中継装置１０に設けられるのに対して、本実施形態ではサーバ３０に設けられる。それ以外の構成及び処理は第１の実施形態と同様である。
【００４７】
図６は、本実施形態に係る中継装置１０を含むシステムのブロック図である。本実施形態において、アプリケーション決定部１３０は、サーバ３０に設けられる。さらに、サーバ３０は、識別情報受信部３３を備える。それ以外の構成は図２と同様である。
【００４８】
識別情報受信部３３は、デバイス識別情報取得部１１０により取得されるデバイスＩＤ及び中継装置識別情報取得部１２０により取得される中継装置ＩＤを中継装置１０から受信する。そして、アプリケーション決定部１３０は、識別情報受信部３３によって受信されたデバイスＩＤ及び中継装置ＩＤに基づいて、アプリケーション定義記憶部３１に予め記録されているアプリケーション定義テーブルに基づいて、中継装置１０にインストールすべきアプリケーション１１を決定する。
【００４９】
インストール部１４０は、アプリケーション決定部１３０によって決定されたアプリケーション１１の識別情報（例えばファイル名）を、サーバ３０から受信する。そして、インストール部１４０は、受信されたアプリケーション１１の識別情報に基づいて、アプリケーション記憶部３２からアプリケーション１１を読み出して中継装置１０にインストールする。
【００５０】
なお、図６ではアプリケーション決定部１３０、アプリケーション定義記憶部３１及びアプリケーション記憶部３２は１つのサーバ３０に設けられているが、異なる複数のサーバ３０に分けられて設けられてよい。
【００５１】
本実施形態に示すように、アプリケーションを決定する主体（アプリケーション決定部１３０）は中継装置１０に限られず、サーバ３０でもよい。
【００５２】
（第３の実施形態）
第１及び第２の実施形態はアプリケーション１１の決定のために中継装置１０の識別情報及びデバイス２０の識別情報を用いるのに対して、本実施形態はさらに中継装置１０又はデバイス２０の設定情報を用いる。このような構成により、利用者が中継装置１０又はデバイス２０に対して所定の設定を行うことによって、中継装置１０にインストールされるアプリケーション１１を切り替えることができる。
【００５３】
図７は、本実施形態に係る中継装置１０を含むシステムのブロック図である。本実施形態において、中継装置１０の制御部１００中に、設定情報取得部１５０がさらに設けられる。それ以外の構成は図２と同様である。
【００５４】
設定情報取得部１５０は、中継装置１０及びデバイス２０の少なくとも一方の設定情報を取得する。本実施形態において、設定情報は、中継装置１０及びデバイス２０の少なくとも一方に設けられる物理的なスイッチ（例えばＤＩＰスイッチ）の設定情報である。スイッチは少なくとも２つの状態（例えばＯＦＦなら「０」、ＯＮなら「１」）のいずれかに設定され、設定されている情報は信号として中継装置１０及びデバイス２０の少なくとも一方から取得される。スイッチは、ＯＮ及びＯＦＦを組み合わせることによって２つより多い状態をとり得てもよい。設定情報として、物理的なスイッチの設定に限られず、記憶装置に配置される設定データの設定等、利用者が中継装置１０又はデバイス２０に設定できる任意の情報を用いてよい。
【００５５】
図８は、例示的な本実施形態に係るアプリケーション定義記憶部３１に予め記録されているアプリケーション定義テーブルの模式図である。アプリケーション定義記憶部３１には、デバイス２０の識別情報であるデバイスＩＤと、中継装置１０の識別情報である中継装置ＩＤと、中継装置１０又はデバイス２０の設定情報であるスイッチ設定（０又は１）と、インストール対象のアプリケーション１１（具体的にはファイル名）との組み合わせを関連付けて、アプリケーション定義テーブルとして予め記録されている。具体的には、アプリケーション決定部１３０は、アプリケーション定義テーブルから、デバイス識別情報取得部１１０により取得されるデバイスＩＤ、中継装置識別情報取得部１２０により取得される中継装置ＩＤ及び設定情報取得部１５０により取得される設定情報に対応する行を抽出する。そして、アプリケーション決定部１３０は、抽出された行に含まれるアプリケーション１１（ファイル名）を、中継装置１０にインストールすべきアプリケーション１１として決定する。
【００５６】
図８において、アプリケーション定義テーブルは視認性のために文字列の表で表されているが、任意のデータ形式（ファイル形式）で表されてよく、例えばバイナリデータ又はテキストデータでよい。また、アプリケーション定義テーブルはデータベースのテーブルとしてアプリケーション定義記憶部３１に記録されてよく、あるいはバイナリファイル又はテキストファイルとしてアプリケーション定義記憶部３１に記録されてよい。
【００５７】
アプリケーション決定部１３０は第１の実施形態のように中継装置１０に設けられてもよく、あるいは第２の実施形態のようにサーバ３０に設けられてもよい。
【００５８】
図９は、本実施形態に係る中継装置１０の設定方法のフローチャートを示す図である。図９のフローチャートは、例えば中継装置１０に新たなデバイス２０が接続されたこと、あるいは利用者が中継装置１０に対して所定の操作を行ったこと、あるいは中継装置１０又はデバイス２０の設定（ここではスイッチ）が変更されたことに応じて開始される。
【００５９】
ステップＳ２０１〜Ｓ２０２は、図５のステップＳ１０１〜Ｓ１０２と同様である。次に、設定情報取得部１５０は、中継装置１０及びデバイス２０の少なくとも一方の設定情報を取得する（ステップＳ２０３）。
【００６０】
アプリケーション決定部１３０は、アプリケーション定義記憶部３１に予め記録されているアプリケーション定義テーブルにおいて、ステップＳ２０１で取得されたデバイスＩＤ、ステップＳ２０２で取得された中継装置ＩＤ及びステップＳ２０３で取得された設定情報に対応するアプリケーション１１を、中継装置１０にインストールすべきアプリケーション１１として決定する（ステップＳ２０４）。ここで決定されるアプリケーション１１は、アプリケーション１１のファイル名等の任意の識別情報によって識別される。
【００６１】
最後に、インストール部１４０は、ステップＳ２０４で決定されたアプリケーション１１を、アプリケーション記憶部３２から読み出して中継装置１０にインストールする（ステップＳ２０５）。
【００６２】
中継装置１０のＣＰＵ１０ａは、図９に示す設定方法に含まれる各ステップ（工程）の主体となる。すなわち、ＣＰＵ１０ａは、図９に示す設定方法を実行するためのプログラムをメモリ１０ｂ又は記憶装置１０ｃから読み出し、該プログラムを実行して中継装置１０の各部を制御することによって図９に示す設定方法を実行する。
【００６３】
本実施形態は、第１の実施形態と同様の効果を奏するとともに、さらに利用者が中継装置１０又はデバイス２０に対して所定の設定（例えばスイッチのＯＮ／ＯＦＦ）を行うことによって、中継装置１０にインストールされるアプリケーション１１を切り替えることができる。そのため、中継装置１０により柔軟かつ多様な設定を行うことができる。
【００６４】
（第４の実施形態）
第１〜第３の実施形態はアプリケーション１１の決定のために中継装置１０に接続された１つのデバイス２０の識別情報を用いるのに対して、本実施形態は２つ以上のデバイス２０の識別情報を用いる。このような構成により、複数のデバイス２０の組み合わせに対応するアプリケーション１１を中継装置１０にインストールすることができる。
【００６５】
本実施形態は図２と同様の構成を用いるが、アプリケーション決定部１３０によって行われる処理が異なる。本実施形態では、アプリケーション決定部１３０は、複数のデバイス２０の識別情報（デバイスＩＤ）に基づいて、中継装置１０にインストールすべきアプリケーション１１を決定する。すなわち、アプリケーション決定部１３０は、中継装置１０に接続されている１つのデバイス２０についてインストールすべきアプリケーション１１を判定する際に、それ以前に既にアプリケーション１１が中継装置１０にインストールされている既存のデバイス２０の識別情報も用いる。
【００６６】
図１０は、例示的な本実施形態に係るアプリケーション定義記憶部３１に予め記録されているアプリケーション定義テーブルの模式図である。アプリケーション定義記憶部３１には、デバイス２０の識別情報である第１デバイスＩＤ及び第２デバイスＩＤと、中継装置１０の識別情報である中継装置ＩＤとの組み合わせを関連付けて、アプリケーション定義テーブルとして予め記録されている。ここで、インストールすべきアプリケーション１１を判定中のデバイス２０を対象のデバイス２０といい、既にアプリケーション１１が中継装置１０にインストールされたデバイス２０を既存のデバイス２０という。第１デバイスＩＤは、対象のデバイス２０の識別情報である。第２デバイスＩＤは、既存のデバイス２０の識別情報である。図１０の例では簡略化のために１つの対象のデバイス２０に対して１つの既存のデバイス２０を用いているが、１つ以上の任意の数の既存のデバイス２０を用いてよく、用いられる既存のデバイス２０の数に応じた欄（例えば第３デバイスＩＤ欄、第４デバイスＩＤ欄等）をアプリケーション定義テーブルに設ければよい。
【００６７】
具体的には、アプリケーション決定部１３０は、アプリケーション定義テーブルから、対象のデバイス２０の第１デバイスＩＤ、既存のデバイス２０の第２デバイスＩＤ、及び中継装置識別情報取得部１２０により取得される中継装置ＩＤに対応する行を抽出する。第１デバイスＩＤ及び第２デバイスＩＤの組み合わせに対応する行がない場合、あるいは既存のデバイス２０が接続されていない場合には、第２デバイスＩＤが空欄であり第１デバイスＩＤのみに対応する行を抽出する。そして、アプリケーション決定部１３０は、抽出された行に含まれるアプリケーション１１（ファイル名）を、中継装置１０にインストールすべきアプリケーション１１として決定する。
【００６８】
また、アプリケーション決定部１３０は、中継装置１０に接続されている１つのデバイス２０についてアプリケーション１１を決定する際に、同一の識別情報を有する既存のデバイス２０についてアプリケーション１１が既に中継装置１０にインストールされている場合に、新たにアプリケーション１１をインストールしないことを決定する。これは、同一の識別情報のデバイス２０であれば既にインストールされているアプリケーション１１によって制御できるためである。
【００６９】
図１０において、アプリケーション定義テーブルは視認性のために文字列の表で表されているが、任意のデータ形式（ファイル形式）で表されてよく、例えばバイナリデータ又はテキストデータでよい。また、アプリケーション定義テーブルはデータベースのテーブルとしてアプリケーション定義記憶部３１に記録されてよく、あるいはバイナリファイル又はテキストファイルとしてアプリケーション定義記憶部３１に記録されてよい。
【００７０】
アプリケーション決定部１３０は第１の実施形態のように中継装置１０に設けられてもよく、あるいは第２の実施形態のようにサーバ３０に設けられてもよい。
【００７１】
図１１は、本実施形態に係る中継装置１０の設定方法のフローチャートを示す図である。図１１のフローチャートは、例えば中継装置１０に新たなデバイス２０が接続されたこと、あるいは利用者が中継装置１０に対して所定の操作を行ったことに応じて開始される。
【００７２】
まず、デバイス識別情報取得部１１０は、中継装置１０に接続されているデバイス２０の識別情報であるデバイスＩＤをデバイス２０から取得する（ステップＳ３０１）。次に、中継装置識別情報取得部１２０は、中継装置１０の識別情報である中継装置ＩＤをシステム情報記憶部１３から取得する（ステップＳ３０２）。ステップＳ３０１及びＳ３０２は逆の順番で行われてもよく、あるいは並行して行われてもよい。中継装置１０に複数のデバイス２０が接続されている場合には、それぞれのデバイス２０について以降の処理を行う。ここで、インストールすべきアプリケーション１１を判定中のデバイス２０を対象のデバイス２０といい、既にアプリケーション１１が中継装置１０にインストールされたデバイス２０を既存のデバイス２０という。
【００７３】
１つ目の対象のデバイス２０が中継装置１０に接続された場合、すなわち中継装置１０に接続された既存のデバイス２０がない場合に（ステップＳ３０３のＹＥＳ）、図５のステップＳ１０３と同様に、アプリケーション決定部１３０は、アプリケーション定義記憶部３１に予め記録されているアプリケーション定義テーブルにおいて、対象のデバイス２０のデバイスＩＤ（第１デバイスＩＤ）及びステップＳ３０２で取得された中継装置ＩＤに対応するアプリケーション１１を、中継装置１０にインストールすべきアプリケーション１１として決定する（ステップＳ３０４）。
【００７４】
２つ目以降のデバイス２０が中継装置１０に接続された場合、すなわち中継装置１０に接続された既存のデバイス２０がある場合に（ステップＳ３０３のＮＯ）、対象のデバイス２０のデバイスＩＤと既存のデバイス２０のデバイスＩＤとが同じか否かを判定される。既存のデバイス２０とは異なるデバイスＩＤを有する対象のデバイス２０が接続された場合に（ステップＳ３０５のＹＥＳ）、アプリケーション決定部１３０は、アプリケーション定義記憶部３１に予め記録されているアプリケーション定義テーブルにおいて、対象のデバイス２０のデバイスＩＤ（第１デバイスＩＤ）、既存のデバイス２０のデバイスＩＤ（第２デバイスＩＤ）及びステップＳ３０２で取得された中継装置ＩＤに対応するアプリケーション１１を、中継装置１０にインストールすべきアプリケーション１１として決定する（ステップＳ３０６）。
【００７５】
既存のデバイス２０と同じデバイスＩＤを有する対象のデバイス２０が接続された場合に（ステップＳ３０５のＮＯ）、アプリケーション１１のインストールを行わずに処理を終了する。
【００７６】
最後に、インストール部１４０は、ステップＳ３０４又はＳ３０６で決定されたアプリケーション１１を、アプリケーション記憶部３２から読み出して中継装置１０にインストールする（ステップＳ３０７）。
【００７７】
中継装置１０のＣＰＵ１０ａは、図１１に示す設定方法に含まれる各ステップ（工程）の主体となる。すなわち、ＣＰＵ１０ａは、図１１に示す設定方法を実行するためのプログラムをメモリ１０ｂ又は記憶装置１０ｃから読み出し、該プログラムを実行して中継装置１０の各部を制御することによって図１１に示す設定方法を実行する。
【００７８】
本実施形態は、第１の実施形態と同様の効果を奏するとともに、さらに複数のデバイス２０の組み合わせに応じたアプリケーション１１を中継装置１０にインストールすることができる。そのため、複数の種類のデバイス２０を制御するアプリケーション１１のインストール等、より複雑な設定を行うことができる。また、同じ識別情報を有するデバイス２０が接続された場合には、アプリケーション１１を新たにインストールしないため、通信容量等の資源を削減することができる。
【００７９】
（その他の実施形態）
図１２は、上述の各実施形態に係る中継装置１０の概略構成図である。図１２には、中継装置１０がデバイス２０を制御するためのアプリケーション１１を決定する装置として機能するための構成例が示されている。デバイスに接続される中継装置１０は、前記中継装置の識別情報及び前記デバイスの識別情報を取得する取得部１１０、１２０と、取得された前記中継装置の識別情報及び前記デバイスの識別情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするインストール部１４０と、を備える。
【００８０】
本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。
【００８１】
上述の実施形態の機能を実現するように該実施形態の構成を動作させるプログラム（より具体的には、図５、９、１１に示す処理をコンピュータに実行させる設定プログラム）を記録媒体に記録させ、該記録媒体に記録されたプログラムをコードとして読み出し、コンピュータにおいて実行する処理方法も各実施形態の範疇に含まれる。すなわち、コンピュータ読取可能な記録媒体も各実施形態の範囲に含まれる。また、上述のプログラムが記録された記録媒体はもちろん、そのプログラム自体も各実施形態に含まれる。
【００８２】
該記録媒体としては例えばフロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性メモリカード、ＲＯＭを用いることができる。また該記録媒体に記録されたプログラム単体で処理を実行しているものに限らず、他のソフトウェア、拡張ボードの機能と共同して、ＯＳ上で動作して処理を実行するものも各実施形態の範疇に含まれる。
【００８３】
上述の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００８４】
（付記１）
デバイスに接続される中継装置であって、
前記中継装置の識別情報及び前記デバイスの識別情報を取得する取得部と、
取得された前記中継装置の識別情報及び前記デバイスの識別情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするインストール部と、
を備える中継装置。
【００８５】
（付記２）
前記インストール部は、記憶された前記中継装置の識別情報、前記デバイスの識別情報及び前記アプリケーションを関連付けるテーブルに基づいて決定された、取得された前記中継装置の識別情報及び前記デバイスの識別情報に対応する前記アプリケーションをインストールすることを特徴とする付記１に記載の中継装置。
【００８６】
（付記３）
前記取得部は、前記中継装置の識別情報及び前記デバイスの識別情報に加えて、前記デバイス及び前記中継装置の少なくとも一方の設定情報を取得し、
前記インストール部は、取得された前記中継装置の識別情報、前記デバイスの識別情報及び前記設定情報に基づいて決定された前記アプリケーションをインストールすることを特徴とする付記１又は２に記載の中継装置。
【００８７】
（付記４）
前記取得部は、前記中継装置の識別情報及び複数の前記デバイスの識別情報を取得し、
前記インストール部は、取得された前記中継装置の識別情報及び複数の前記デバイスの識別情報に基づいて決定された前記アプリケーションをインストールすることを特徴とする付記１〜３のいずれか一項に記載の中継装置。
【００８８】
（付記５）
前記インストール部は、前記デバイスが前記中継装置に接続されると、前記アプリケーションをインストールすることを特徴とする付記１〜４のいずれか一項に記載の中継装置。
【００８９】
（付記６）
前記アプリケーションがインストールされた後に、前記デバイスと同一の識別情報を有する他のデバイスが前記中継装置に接続された場合に、前記インストール部は前記アプリケーションをさらにインストールしないことを特徴とする付記１〜５のいずれか一項に記載の中継装置。
【００９０】
（付記７）
デバイスに接続される中継装置と通信するサーバであって、
前記中継装置の識別情報及び前記デバイスの識別情報を受信する受信部と、
受信された前記中継装置の識別情報及び前記デバイスの識別情報に基づいて、前記中継装置にインストールすべき前記デバイスを制御するアプリケーションを決定する決定部と、
を備えるサーバ。
【００９１】
（付記８）
前記決定部は、記憶された前記中継装置の識別情報、前記デバイスの識別情報及び前記アプリケーションを関連付けるテーブルに基づいて、受信された前記中継装置の識別情報及び前記デバイスの識別情報に対応する前記アプリケーションを決定することを特徴とする付記７に記載のサーバ。
【００９２】
（付記９）
デバイスに接続される中継装置の設定方法であって、
前記中継装置の識別情報及び前記デバイスの識別情報を取得するステップと、
取得された前記中継装置の識別情報及び前記デバイスの識別情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするステップと、
を有する設定方法。
【００９３】
（付記１０）
デバイスに接続される中継装置を設定するプログラムを記録した記録媒体であって、
コンピュータに、
前記中継装置の識別情報及び前記デバイスの識別情報を取得するステップと、
取得された前記中継装置の識別情報及び前記デバイスの識別情報に基づいて決定された、前記デバイスを制御するアプリケーションをインストールするステップと、
を実行させるプログラムを記録した記録媒体。
【００９４】
この出願は、２０１７年３月８日に出願された日本出願特願２０１７−０４３７８４を基礎とする優先権を主張し、その開示のすべてをここに取り込む。
【図１】
0006756400.tif 000002
【図２】
0006756400.tif 000003
【図３】
0006756400.tif 000004
【図４】
0006756400.tif 000005
【図５】
0006756400.tif 000006
【図６】
0006756400.tif 000007
【図７】
0006756400.tif 000008
【図８】
0006756400.tif 000009
【図９】
0006756400.tif 000010
【図１０】
0006756400.tif 000011
【図１１】
0006756400.tif 000012
【図１２】
0006756400.tif 000013