以下に、本願の開示する機器接続システム、管理装置、機器接続方法及び機器接続プログラムの実施例について、図面を参照しながら詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
図1は、実施例1に係る機器接続システムの構成を示す図である。図1に示す機器接続システムは、管理端末装置100、IoT端末装置200、GW装置300及びサーバ装置400を有する。この機器接続システムは、IoT端末装置200が設置される際に、IoT端末装置200によるGW装置300への無線接続を認証する。
管理端末装置100は、例えばスマートフォンやパーソナルコンピュータなどの情報処理装置であり、種々の入出力部や通信部を有する。そして、管理端末装置100は、IoT端末装置200に対する複数の操作の組合せを表す操作パターンを生成する。具体的には、管理端末装置100は、IoT端末装置200が有するボタンに対する押下操作及び解放操作の組合せを操作パターンとして生成する。そして、管理端末装置100は、生成した操作パターンを、無線接続の認証用の認証情報であるPINコードに変換し、PINコードをGW装置300に登録させる。管理端末装置100は、管理装置の一例である。
IoT端末装置200は、例えばセンサと通信モジュールを有し、センサによって測定された測定結果を通信モジュールからGW装置300へ無線送信する。IoT端末装置200は、例えば、センサや通信モジュールが予め組み込まれた家電製品等である。IoT端末装置200は、GW装置300との無線接続の認証を受ける際に、操作者から複数の操作の組合せを表す操作パターンを受け付ける。具体的には、IoT端末装置200は、自身が有するボタンに対する押下操作及び解放操作の組合せを操作パターンとして受け付ける。そして、IoT端末装置200は、受け付けた操作パターンを、無線接続の認証用の認証情報であるPINコードに変換し、PINコードをGW装置300へ送信する。IoT端末装置200は、無線子機の一例である。
GW装置300は、認証されたIoT端末装置200と無線通信し、例えばIoT端末装置200からセンサの測定結果を受信し、ネットワークを介してサーバ装置400へ送信する。また、GW装置300は、IoT端末装置200を認証する際には、管理端末装置100によって登録されたPINコードと、IoT端末装置200から送信されたPINコードとが一致するか否かを判定する。GW装置300は、無線親機の一例である。
サーバ装置400は、IoT端末装置200のセンサによる測定結果をGW装置300から取得し、種々のアプリケーションに応じた処理を実行する。例えば、サーバ装置400は、IoT端末装置200のセンサによって測定された家電製品の消費電力を取得し、家庭ごとの家電製品の消費電力を集計する。
図2は、実施例1に係る管理端末装置100の構成を示すブロック図である。図2に示す管理端末装置100は、プロセッサ110、ディスプレイ120、操作キー130、通信モジュール140及びメモリ150を有する。
プロセッサ110は、例えばCPU(Central Processing Unit)、FPGA(Field Programmable Gate Array)又はDSP(Digital Signal Processor)などを備え、メモリ150を使用して管理端末装置100の各部を制御する。特に、プロセッサ110は、IoT端末装置200とGW装置300の接続を開始する際に、IoT端末装置200に対する複数の操作の組合せを表す操作パターンを生成し、生成した操作パターンを、IoT端末装置200の認証のためのPINコードに変換する。そして、プロセッサ110は、PINコードを含む登録要求を通信モジュール140を介してGW装置300へ送信する。プロセッサ110の機能については、後に詳述する。
ディスプレイ120は、例えば液晶ディスプレイなどの出力デバイスであり、プロセッサ110における処理の結果生成される画像を表示する。具体的には、ディスプレイ120は、プロセッサ110によって生成される操作パターンを表示する。
操作キー130は、例えばキーボードなどの入力デバイスであり、操作者による様々な操作を受け付ける。
通信モジュール140は、例えば無線LANなどによってGW装置300との間の無線接続を確立し、アンテナを介してGW装置300と無線通信する。具体的には、通信モジュール140は、IoT端末装置200の認証のためのPINコードを含む登録要求をGW装置300へ送信する。また、通信モジュール140は、GW装置300によるPINコードの登録が完了した旨を示す登録完了通知をGW装置300から受信する。また、通信モジュール140は、IoT端末装置200の認証が成功したか否かを示す接続結果通知をGW装置300から受信する。
メモリ150は、例えばRAM(Random Access Memory)又はROM(Read Only Memory)などを備え、プロセッサ110が用いる種々の情報を記憶する。具体的には、メモリ150は、パターン変換テーブルを保持する。
パターン変換テーブルは、例えば図3に示すように、PINコードに変換されるべき操作パターンを構成する要素となる操作に対応付けて、PINコードを構成する番号であるPINを記憶する。なお、図3は、実施例1におけるパターン変換テーブルの一例を示す図である。図3に示す例では、PINコードに変換されるべき操作パターンを構成する要素となる操作が、IoT端末装置200のボタンに対する押下操作及び解放操作であるものとする。図3に示す例において、操作パターンにおいて「奇数回目に現れる1秒間の押下操作」は、PIN「1」に変換されることが分かる。
図4は、実施例1に係る管理端末装置100のプロセッサ110の機能を示すブロック図である。図4に示すプロセッサ110は、操作パターン生成部111、PINコード変換部112、認証情報登録部113、接続結果表示部114及び表示制御部115を有する。なお、プロセッサ110は、メモリ150に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図4に示した各種機能部として構成する。
操作パターン生成部111は、操作者によって操作キー130が操作されることによりIoT端末装置200の接続指示が受け付けられた場合に、このIoT端末装置200に関する操作パターンを生成する。具体的には、操作パターン生成部111は、IoT端末装置200のボタンに対する押下操作及び解放操作の組合せを操作パターンとして生成する。例えば、操作パターン生成部111は、IoT端末装置200のボタンに対する押下操作及び解放操作をランダムに組み合わせることにより、操作パターンを生成する。
PINコード変換部112は、操作パターン生成部111によって生成された操作パターンを、メモリ150のパターン変換テーブルを用いてPINコードに変換する。具体的には、PINコード変換部112は、操作パターン生成部111によって生成された操作パターンを、この操作パターンを構成する要素となる操作に分離する。そして、PINコード変換部112は、分離された各操作に対応付けて記憶されたPINをパターン変換テーブルから取得することにより、操作パターンをPINコードに変換する。
図5は、操作パターンからPINコードへの変換の一例を示す図である。図5の例において、操作パターンが、「1秒間の押下操作」、「1秒間の解放操作」、「1秒間の押下操作」及び「2秒間の解放操作」を構成要素として含むものとする。この場合、操作パターンにおいて1回目に現れる「1秒間の押下操作」は、パターン変換テーブルから取得されたPIN「1」に変換される。また、操作パターンにおいて1回目に現れる「1秒間の解放操作」は、パターン変換テーブルから取得されたPIN「3」に変換される。また、操作パターンにおいて2回目に現れる「1秒間の押下操作」は、パターン変換テーブルから取得された「5」に変換される。また、操作パターンにおいて1回目に現れる「2秒間の解放操作」は、パターン変換テーブルから取得されたPIN「4」に変換される。これにより、「1秒間の押下操作」、「1秒間の解放操作」、「1秒間の押下操作」及び「2秒間の解放操作」を構成要素として含む操作パターンは、PINコード「1354」に変換される。
なお、上記の説明では、PINコード変換部112は、操作パターン生成部111によって生成された操作パターンを、メモリ150のパターン変換テーブルを用いてPINコードに変換する例を示したが、開示技術はこれには限られない。例えば、PINコード変換部112は、所定の規則に従って操作パターンに応じたハッシュ関数を生成し、生成したハッシュ関数で複数のPINをハッシュ化することにより、操作パターンをPINコードに変換しても良い。
図4の説明に戻る。認証情報登録部113は、PINコード変換部112によって操作パターンから変換されたPINコードの登録をGW装置300に対して要求する登録要求を生成する。そして、認証情報登録部113は、生成した登録要求を通信モジュール140を介してGW装置300へ送信する。
また、認証情報登録部113は、GW装置300から送信され通信モジュール140によって受信される登録完了通知を取得する。すなわち、認証情報登録部113は、登録要求の送信後に登録完了通知の受信を待機し、GW装置300に対するPINコードの登録が完了した旨を示す登録完了通知を通信モジュール140から受信する。
接続結果表示部114は、GW装置300から送信され通信モジュール140によって受信される接続結果通知を取得し、取得した接続結果通知の内容をディスプレイ120等に表示する。この接続結果通知が、IoT端末装置200の認証が成功し、IoT端末装置200とGW装置300との接続が許可されたことを示す場合には、管理端末装置100を用いたIoT端末装置200の接続処理が完了する。一方、接続結果通知が、IoT端末装置200の認証が成功せず、IoT端末装置200とGW装置300との接続が許可されなかったことを示す場合には、接続結果表示部114は、再度同じPINコードを含む登録要求をGW装置300へ送信する旨を認証情報登録部113へ指示する。
表示制御部115は、登録完了通知が通信モジュール140によって受信された場合に、操作パターン生成部111によって生成された操作パターンをディスプレイ120に表示する。ディスプレイ120に表示された操作パターンを確認した操作者は、認証を受けるIoT端末装置200に対する複数の操作を、表示された操作パターンに従って行う。
図6は、実施例1に係るIoT端末装置200の構成を示すブロック図である。図6に示すIoT端末装置200は、プロセッサ210、操作ボタン220、センサユニット230、通信モジュール240及びメモリ250を有する。
プロセッサ210は、例えばCPU、FPGA又はDSPなどを備え、メモリ250を使用してIoT端末装置200の各部を制御する。特に、プロセッサ210は、操作ボタン220を介して操作者から複数の操作の組合せを表す操作パターンを受け付け、受け付けた操作パターンを、IoT端末装置200の認証のためのPINコードに変換する。そして、プロセッサ210は、PINコードを含む接続要求を通信モジュール240を介してGW装置300へ送信する。プロセッサ210の機能については、後に詳述する。
操作ボタン220は、操作者によって押下可能なボタンであり、IoT端末装置200に対する複数の操作として押下操作及び解放操作を操作者から受け付ける。
センサユニット230は、例えば消費電力を測定する電力センサを有する。電力センサは、例えば、IoT端末装置200を搭載する家電製品などの消費電力を測定する。電力センサによる測定結果は、IoT端末装置200がGW装置300に認証された後、GW装置300を介してサーバ装置400へ送信される。
また、センサユニット230は、電力センサの他に、IoT端末装置200に対する複数の操作を検出することができるセンサを有しても良い。このようなセンサとしては、例えば、加速度センサ、照度センサ又はジャイロセンサが利用される。加速度センサは、振動を検出することができるので、IoT端末装置200に対する複数の操作として、IoT端末装置200に対して振動を与えるタップ操作及びその時間間隔を検出することができる。照度センサは、明暗を判別することができるので、IoT端末装置200に対する複数の操作として、IoT端末装置200を遮蔽物で遮蔽する暗操作及びIoT端末装置200を遮蔽物で遮蔽しない明操作を検出することができる。ジャイロセンサは、基準位置からのIoT端末装置200の傾きを検出することができるので、IoT端末装置200を基準位置から傾ける傾斜操作及びIoT端末装置200を基準位置に戻す非傾斜操作を検出することができる。
通信モジュール240は、例えば無線LANやBluetooth(登録商標)などの近距離無線通信によってGW装置300との間の無線接続を確立し、アンテナを介してGW装置300と無線通信する。具体的には、通信モジュール240は、IoT端末装置200の認証のためのPINコードを含む接続要求をGW装置300へ送信する。また、通信モジュール240は、IoT端末装置200の認証が成功したか否かを示す接続結果通知をGW装置300から受信する。
メモリ250は、例えばRAM又はROMなどを備え、プロセッサ210が用いる種々の情報を記憶する。具体的には、メモリ250は、メモリ150が保持するパターン変換テーブルと同一のパターン変換テーブルを保持する。
図7は、実施例1に係るIoT端末装置200のプロセッサ210の機能を示すブロック図である。図7に示すプロセッサ210は、操作パターン受付部211、PINコード変換部212、接続・認証要求処理部213、及び通信制御部215を有する。なお、プロセッサ210は、メモリ250に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図7に示した各種機能部として構成する。
操作パターン受付部211は、操作ボタン220を介して操作者から複数の操作の組合せを表す操作パターンを受け付ける。具体的には、操作パターン受付部211は、操作ボタン220に対する押下操作及び解放操作の組合せを操作パターンとして受け付ける。
PINコード変換部212は、操作パターン受付部211によって受け付けられた操作パターンを、メモリ250のパターン変換テーブルを用いてPINコードに変換する。具体的には、PINコード変換部212は、操作パターン受付部211によって受け付けられた操作パターンを、この操作パターンを構成する要素となる操作に分離する。そして、PINコード変換部212は、分離された各操作に対応付けて記憶されたPINをパターン変換テーブルから取得することにより、操作パターンをPINコードに変換する。このPINコードは、操作パターン受付部211によって受け付けられた操作パターンと、管理端末装置100によって生成された操作パターンとが一致していれば、管理端末装置100がGW装置300に登録するPINコードに一致する。すなわち、管理端末装置100によって生成された操作パターンが操作ボタン220によって正しく受け付けられていれば、PINコード変換部212によって操作パターンから変換されたPINコードは、GW装置300に登録されたPINコードに一致する。
なお、上記の説明では、PINコード変換部212は、操作パターン受付部211によって受け付けられた操作パターンを、メモリ250のパターン変換テーブルを用いてPINコードに変換する例を示したが、開示技術はこれには限られない。例えば、PINコード変換部212は、所定の規則に従って操作パターンに応じたハッシュ関数を生成し、生成したハッシュ関数で複数のPINをハッシュ化することにより、操作パターンをPINコードに変換しても良い。
接続・認証要求処理部213は、認証処理部213a及び接続制御部213bを有する。認証処理部213aは、PINコード変換部212によって操作パターンから変換されたPINコードを含み、GW装置300への接続を要求する接続要求を生成する。そして、認証処理部213aは、生成した接続要求を通信モジュール240を介してGW装置300へ送信する。
また、認証処理部213aは、GW装置300から送信され通信モジュール240によって受信される接続結果通知を取得する。すなわち、認証処理部213aは、接続要求の送信後に接続結果通知の受信を待機し、IoT端末装置200の認証が成功したか否かを示す接続結果通知を通信モジュール240から取得する。
接続制御部213bは、IoT端末装置200の認証が成功した場合に、GW装置300との間の接続設定を実行し、さらにGW装置300を介してサーバ装置400との間の接続設定を実行する。
通信制御部215は、GW装置300及びサーバ装置400との間の接続設定が完了すると、通信モジュール240を制御して、例えばセンサユニット230の電力センサによって測定された消費電力を定期的にサーバ装置400へ送信する。
図8は、実施例1に係るGW装置300の構成を示すブロック図である。図8に示すGW装置300は、プロセッサ310、通信モジュール320及びメモリ330を有する。
プロセッサ310は、例えばCPU、FPGA又はDSPなどを備え、メモリ330を使用してGW装置300の各部を制御する。特に、プロセッサ310は、管理端末装置100から登録要求を受け付けると、登録要求に含まれるPINコードを登録し、その後、IoT端末装置200から接続要求を受け付けると、登録されたPINコードと接続要求に含まれるPINコードとを比較する。そして、2つのPINコードが一致する場合には、プロセッサ310は、IoT端末装置200によるGW装置300への接続を許可する。プロセッサ310の機能については、後に詳述する。
通信モジュール320は、例えば無線LAN及び種々の近距離無線通信によって管理端末装置100及びIoT端末装置200との間の無線接続を確立し、アンテナを介して無線通信する。具体的には、通信モジュール320は、登録要求及び登録完了通知を管理端末装置100との間で送受信する。また、通信モジュール320は、接続要求をIoT端末装置200から受信する。また、通信モジュール320は、接続結果通知を管理端末装置100及びIoT端末装置200へ送信する。
メモリ330は、例えばRAM又はROMなどを備え、プロセッサ310が用いる種々の情報を記憶する。
図9は、実施例1に係るGW装置300のプロセッサ310の機能を示すブロック図である。図9に示すプロセッサ310は、登録要求受付部311、PINコード登録部312、登録結果通知部313、接続・認証要求処理部314、接続可否判定部315、及び通信制御部317を有する。なお、プロセッサ310は、メモリ330に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図9に示した各種機能部として構成する。
登録要求受付部311は、管理端末装置100から送信され通信モジュール320によって受信された登録要求を受け付け、登録要求に含まれるPINコードをPINコード登録部312へ出力する。
PINコード登録部312は、登録要求受付部311から出力されたPINコードを接続可否判定部315に一時的に登録する。
登録結果通知部313は、PINコード登録部312によるIoT端末装置200のPINコードの登録が完了した旨を示す登録完了通知を生成し、生成した登録完了通知を通信モジュール320を介して管理端末装置100へ送信する。
接続・認証要求処理部314は、認証処理部314a及び接続制御部314bを有する。認証処理部314aは、IoT端末装置200から送信され通信モジュール320によって受信された接続要求を受け付け、接続要求に含まれるPINコードを接続可否判定部315へ出力する。
接続制御部314bは、接続が許可されたIoT端末装置200との間の接続設定を行う。また、接続制御部314bは、接続可否判定部315における判定結果を含む接続結果通知を生成し、生成した接続結果通知を通信モジュール320を介して、接続要求の送信元のIoT端末装置200へ送信する。
接続可否判定部315は、認証処理部314aから出力されるPINコードがPINコード登録部312によって一時的に登録されたPINコードに一致するか否かを判定することにより、IoT端末装置200がGW装置300に接続することを許可するか否かを判定する。すなわち、接続可否判定部315は、PINコード登録部312によって一時的に登録されたPINコードが接続要求に含まれるPINコードと一致するか否かを判定する。この判定の結果、PINコードが一致する場合は、接続可否判定部315は、IoT端末装置200のGW装置300への接続を許可すると判定する。一方、PINコードが一致しない場合は、接続可否判定部315は、IoT端末装置200によるGW装置300への接続を許可しないと判定する。
通信制御部317は、接続が許可されたIoT端末装置200との間の接続設定が完了すると、このIoT端末装置200とサーバ装置400との間の通信を中継する。
次に、実施例1に係る機器接続システムの動作について、図10を参照しながら説明する。図10は、実施例1に係る機器接続システムの動作を示すシーケンス図である。
まず、IoT端末装置200とGW装置300の接続を希望する操作者が管理端末装置100を操作して接続指示を行うと、この接続指示は、管理端末装置100のプロセッサ110によって受け付けられる(ステップS101)。そして、操作パターン生成部111によって操作パターンが生成される(ステップS102)。すなわち、認証を受けるIoT端末装置200の操作ボタン220に対する押下操作及び解放操作の組合せが操作パターン生成部111によって操作パターンとして生成される。生成された操作パターンは、PINコード変換部112によってPINコードに変換される(ステップS103)。
そして、操作パターンから変換されたPINコードを含む登録要求が認証情報登録部113からGW装置300へ送信される(ステップS104)。
登録要求には、例えば図11に示すように、認証を受けるIoT端末装置200の登録を要求することにより、IoT端末装置200との間の接続の開始を指示する部分P1と、PINコードを記述する部分P2とが含まれる。なお、図11は、登録要求の一例を示す図である。
図10の説明に戻り、登録要求は、GW装置300のプロセッサ310によって受け付けられ、PINコード登録部312によって、登録要求に含まれるPINコードが接続可否判定部315に一時的に登録され、PINコードによる接続モードが開始される(ステップS105)。PINコードの登録が完了すると、PINコードの登録が完了した旨を示す登録完了通知が登録結果通知部313から管理端末装置100へ送信される(ステップS106)。
登録完了通知を受信した管理端末装置100においては、ステップS102にて生成された操作パターンが表示制御部115によってディスプレイ120に表示される(ステップS107)。
ディスプレイ120に表示された操作パターンを確認した操作者は、認証を受けるIoT端末装置200の操作ボタン220に対する複数の操作(つまり、押下操作及び解放操作)を、表示された操作パターンに従って行う。操作ボタン220に対する複数の操作が行われると、操作ボタン220に対する押下操作及び解放操作の組合せがプロセッサ210の操作パターン受付部211によって操作パターンとして受け付けられる(ステップS108)。受け付けられた操作パターンは、PINコード変換部212によってPINコードに変換される(ステップS109)。このPINコードは、管理端末装置100によって生成された操作パターンが操作ボタン220によって正しく受け付けられていれば、ステップS105においてGW装置300に登録されたPINコードと一致する。
そして、操作パターンから変換されたPINコードを含む接続要求が接続・認証要求処理部213からGW装置300へ送信される(ステップS110)。接続要求は、GW装置300のプロセッサ310によって受け付けられ、接続可否判定部315によって、接続要求に含まれるPINコードが登録済みのPINコードと一致するか否かが判定される。換言すれば、接続可否判定部315によって、IoT端末装置200によるGW装置300への接続を許可するか否かが判定される(ステップS111)。ここでの判定は、PINコードが一致すれば接続を許可し、PINコードが一致しなければ接続を許可しないと判定するものである。
接続可否判定部315による判定の結果、接続が許可された場合には(ステップS111Yes)、その旨を示す接続結果通知が接続・認証要求処理部314から管理端末装置100及びIoT端末装置200へ送信される(ステップS112、S113)。そして、IoT端末装置200の接続・認証要求処理部213とGW装置300の接続・認証要求処理部314との間で接続設定が行われる(ステップS114)。
一方、接続可否判定部315による判定の結果、接続が許可されない場合には(ステップS111No)、その旨を示す接続結果通知が接続・認証要求処理部314から管理端末装置100及びIoT端末装置200へ送信される(ステップS115、S116)。すなわち、接続が許可されない場合には、IoT端末装置200の接続・認証要求処理部213とGW装置300の接続・認証要求処理部314との間で接続設定が行われない。なお、ステップS112からステップS114までの処理と、ステップS115からステップS116までの処理とは、互いに排他的であり、一方の処理が実行される場合には、他方の処理が実行されない。
接続結果通知には、例えば図12に示すように、接続が許可されたか否か、すなわち、接続が成功か否かを示す接続結果を記述する部分P3と、PINコードの不一致等の接続失敗の理由を記述する部分P4が含まれる。なお、図12は、接続結果通知の一例を示す図である。
図10の説明に戻り、接続結果通知は、管理端末装置100のプロセッサ110によって受け付けられる。この接続結果通知が、接続が許可されたこと(つまり、接続が成功であること)を示す場合(ステップS117Yes)、管理端末装置100を用いたIoT端末装置200の接続処理が終了する。一方、接続結果通知が、接続が許可されなかったこと(つまり、接続が失敗であること)を示す場合(ステップS117No)、IoT端末装置200の接続処理を中断する中断指示を受け付けたか否かがプロセッサ110によって判定される(ステップS118)。中断指示が受け付けられた場合には(ステップS118Yes)、管理端末装置100を用いたIoT端末装置200の接続処理が終了する。一方、中断指示が受け付けられなかった場合には(ステップS118No)、再度同じPINコードを含む登録要求が認証情報登録部113からGW装置300へ送信され(ステップS104)、上記したステップS105〜S117の処理が繰り返される。
以上のように、本実施例によれば、管理端末装置100がIoT端末装置200の認証時にIoT端末装置200に対する複数の操作の組合せを表す操作パターンを生成し、生成した操作パターンをIoT端末装置200の認証用のPINコードに変換する。そして、管理端末装置100がGW装置300にPINコードを登録した後、IoT端末装置200が操作パターンを受け付け、受け付けた操作パターンをPINコードに変換し、PINコードを含む接続要求をGW装置300へ送信する。接続要求を受信したGW装置300は、接続要求に含まれるPINコードが管理端末装置100によって登録されたPINコードと一致するか否かを判定し、2つのPINコードが一致する場合に、IoT端末装置200の接続を許可する。このため、IoT端末装置200が十分な表示機能や入力機能を備えていない場合でも、認証を希望するIoT端末装置200に対する複数の操作の組合せを表す操作パターンから変換されたPINコードによって、IoT端末装置200の認証を実行することができる。結果として、簡易な操作で高いセキュリティを確保することができる。
また、本実施例によれば、管理端末装置100がIoT端末装置200のボタンに対する押下操作及び解放操作の組合せを操作パターンとして生成する。このため、IoT端末装置200とGW装置300の接続を希望する操作者による操作の負担を低減することができ、IoT端末装置200とGW装置300の接続に伴う作業の効率を向上しつつ高いセキュリティを確保することができる。
実施例2の特徴は、IoT端末装置200のセンサによって検出される複数の操作の組合せを操作パターンとして生成し、生成した操作パターンをPINコードに変換する点である。なお、実施例2の管理端末装置100及びIoT端末装置200の基本構成は、実施例1の管理端末装置100及びIoT端末装置200と同様であるので、図2及び図6を参照して説明する。ただし、図6に示したIoT端末装置200において、操作ボタン220が存在しないものとする。実施例2では、IoT端末装置200が操作ボタン220を有さない場合に、IoT端末装置200のボタンに代えて、IoT端末装置200のセンサを利用して、IoT端末装置200の認証のためのPINコードを得る。
実施例2の管理端末装置100において、メモリ150のパターン変換テーブルは、例えば図13に示すように、IoT端末装置200のセンサの種別毎に、変換テーブルを保持する。各変換テーブルは、PINコードに変換されるべき操作パターンを構成する要素となる操作に対応付けて、PINを記憶する。なお、図13は、実施例2におけるパターン変換テーブルの一例を示す図である。図13に示す例では、PINコードに変換されるべき操作パターンを構成する要素となる操作が、センサユニット230の照度センサに対する暗操作及び明操作であるものとする。図13に示す例において、操作パターンにおいて「奇数回目に現れる1秒間の暗操作」は、PIN「1」に変換されることが分かる。なお、IoT端末装置200のメモリ250には、図13に示したパターン変換テーブルと同一のパターン変換テーブルが保持されている。
図14は、実施例2に係る管理端末装置100のプロセッサ110の機能を示すブロック図である。図14において、図4と同じ部分には同じ符号を付し、その説明を省略する。図14に示すプロセッサ110は、センサ特定部161、操作パターン生成部162、PINコード変換部163、認証情報登録部113、接続結果表示部114及び表示制御部115を有する。なお、プロセッサ110は、メモリ150に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図14に示した各種機能部として構成する。
センサ特定部161は、操作者によって操作キー130が操作されることによりIoT端末装置200の接続指示が受け付けられた場合に、このIoT端末装置200のセンサの種別を特定する。例えば、センサ特定部161は、IoT端末装置200のセンサ(つまり、センサユニット230に含まれる加速度センサ、照度センサ又はジャイロセンサ)の種別をディスプレイ120に表示させ、操作キー130からの入力を用いて、該センサの種別を特定する。また、例えば、センサ特定部161は、図示しないカメラなどの撮影デバイスを利用してIoT端末装置200の外観を撮影し、撮影データとIoT端末装置200のセンサの種別との対応テーブルを用いて、IoT端末装置200のセンサの種別を特定しても良い。
操作パターン生成部162は、IoT端末装置200のセンサによって検出される複数の操作の組合せを操作パターンとして生成する。具体的には、操作パターン生成部162は、センサ特定部161によって特定されたセンサの種別に応じた操作パターンを生成する。例えば、IoT端末装置200のセンサが照度センサである場合を想定する。この場合、センサ特定部161によってセンサの種別として照度センサが特定されるので、操作パターン生成部162は、照度センサによって検出される暗操作及び明操作の組合せを操作パターンとして生成する。
また、例えば、IoT端末装置200のセンサが加速度センサである場合を想定する。この場合、センサ特定部161によってセンサの種別として加速度センサが特定されるので、操作パターン生成部162は、加速度センサによって検出されるタップ操作及び非タップ操作の組合せを操作パターンとして生成する。
また、例えば、IoT端末装置200のセンサがジャイロセンサである場合を想定する。この場合、センサ特定部161によってセンサの種別としてジャイロセンサが特定されるので、操作パターン生成部162は、ジャイロセンサによって検出される傾斜操作及び非傾斜操作の組合せを操作パターンとして生成する。
PINコード変換部163は、操作パターン生成部162によって生成された、センサの種別に応じた操作パターンを、メモリ150のパターン変換テーブルを用いてPINコードに変換する。具体的には、PINコード変換部163は、メモリ150のパターン変換テーブルを参照して、IoT端末装置200のセンサの種別に対応付けられた変換テーブルを特定する。そして、PINコード変換部163は、操作パターン生成部162によって生成された操作パターンを、この操作パターンを構成する要素となる操作に分離する。そして、PINコード変換部163は、分離された各操作に対応付けて記憶されたPINを特定された変換テーブルから取得することにより、操作パターンをPINコードに変換する。
図15は、実施例2に係るIoT端末装置200のプロセッサ210の機能を示すブロック図である。図15において、図7と同じ部分には同じ符号を付し、その説明を省略する。図15に示すプロセッサ210は、操作パターン受付部261、PINコード変換部262、接続・認証要求処理部213、及び通信制御部215を有する。なお、プロセッサ210は、メモリ250に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図15に示した各種機能部として構成する。
操作パターン受付部261は、IoT端末装置200のセンサによって検出される複数の操作の組合せを操作パターンとして受け付ける。
PINコード変換部262は、操作パターン受付部261によって受け付けられた操作パターンを、メモリ250のパターン変換テーブルを用いてPINコードに変換する。具体的には、PINコード変換部262は、メモリ250のパターン変換テーブルを参照して、IoT端末装置200のセンサの種別に対応付けられた変換テーブルを特定する。PINコード変換部262は、操作パターン受付部261によって受け付けられた操作パターンを、この操作パターンを構成する要素となる操作に分離する。そして、PINコード変換部262は、分離された各操作に対応付けて記憶されたPINを特定された変換テーブルから取得することにより、操作パターンをPINコードに変換する。
以上のように、本実施例によれば、管理端末装置100がIoT端末装置200のセンサによって検出される複数の操作の組合せを操作パターンとして生成し、生成した操作パターンをPINコードに変換する。そして、IoT端末装置200がIoT端末装置200のセンサによって検出される複数の操作の組合せを操作パターンとして受け付け、受け付けた操作パターンをPINコードに変換する。このため、IoT端末装置200が操作ボタン220を有さない場合であっても、PINコードによって、IoT端末装置200の認証を実行することができ、簡易な操作で高いセキュリティを確保することができる。
実施例3の特徴は、GW装置300の周辺に存在するIoT端末装置200の数に応じて、生成されるべき操作パターンのパターン長を適応的に決定する点である。
図16は、実施例3に係るGW装置300の構成を示すブロック図である。図16において、図8と同じ部分には同じ符号を付し、その説明を省略する。図16に示すGW装置300は、プロセッサ310、通信モジュール320、メモリ330及び電波モニタ340を有する。
電波モニタ340は、GW装置300が通信可能な範囲のIoT端末装置200から定期的に送信される所定の電波をモニタする。電波モニタ340のモニタ結果は、プロセッサ310へ出力される。
図17は、実施例3に係るGW装置300のプロセッサ310の機能を示すブロック図である。図17において、図9と同じ部分には同じ符号を付し、その説明を省略する。図17に示すプロセッサ310は、登録要求受付部311、PINコード登録部312、登録結果通知部313、接続・認証要求処理部314、接続可否判定部315、通信制御部317及び周辺子機数検出部351を有する。なお、プロセッサ310は、メモリ330に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図17に示した各種機能部として構成する。
周辺子機数検出部351は、GW装置300の周辺に存在するIoT端末装置200の数である周辺子機数を検出する。具体的には、周辺子機数検出部351は、電波モニタ340のモニタ結果に含まれる所定の電波の数を計測することにより、周辺子機数を定期的に検出する。
また、周辺子機数検出部351は、管理端末装置100から送信され通信モジュール320によって受信される送信要求を取得する。この送信要求は、管理端末装置100がGW装置300に対して周辺子機数の送信を要求するための信号である。周辺子機数検出部351は、送信要求が受信された場合には、検出した周辺子機数を管理端末装置100へ通知する周辺子機数通知を生成する。具体的には、周辺子機数検出部351は、周辺子機数を含む周辺子機数通知を生成する。そして、周辺子機数検出部351は、生成した周辺子機数通知を通信モジュール320を介して管理端末装置100へ送信する。
図18は、実施例3に係る管理端末装置100の構成を示すブロック図である。図18において、図2と同じ部分には同じ符号を付し、その説明を省略する。図18に示す管理端末装置100において、メモリ150は、パターン変換テーブル及びパターン長データベース(以下「パターン長DB」と略記する)を保持する。
パターン長DBは、例えば図19に示すように、GW装置300の周辺に存在するIoT端末装置200の数である周辺子機数に対応付けて、生成されるべき操作パターンを構成する要素となる操作の数を示すパターン長を記憶する。なお、図19は、実施例3におけるパターン長DBの一例を示す図である。図19に示す例において、周辺子機数が0以上でかつ3以下である場合には、生成されるべき操作パターンのパターン長が「2」であることがわかる。これに対して、周辺子機数が4以上でかつ10以下である場合には、生成されるべき操作パターンのパターン長が「4」であり、周辺子機数が多いほど、生成されるべき操作パターンのパターン長が増大することが分かる。
図20は、実施例3に係る管理端末装置100のプロセッサ110の機能を示すブロック図である。図20において、図4と同じ部分には同じ符号を付し、その説明を省略する。図20に示すプロセッサ110は、操作パターン生成部164、PINコード変換部112、認証情報登録部113、接続結果表示部114及び表示制御部115を有する。なお、プロセッサ110は、メモリ150に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図20に示した各種機能部として構成する。
操作パターン生成部164は、操作者によって操作キー130が操作されることによりIoT端末装置200の接続指示が受け付けられた場合に、このIoT端末装置200に関する操作パターンを生成する。具体的には、操作パターン生成部164は、周辺子機数に基づいて、生成すべき操作パターンのパターン長(つまり、生成されるべき操作パターンを構成する要素となる押下操作及び解放操作の数)を決定する。そして、操作パターン生成部164は、決定したパターン長を用いて、IoT端末装置200のボタンに対する押下操作及び解放操作の組合せを操作パターンとして生成する。
ここで、生成すべき操作パターンのパターン長は、以下のようにして決定される。すなわち、操作パターン生成部164は、周辺子機数の送信を要求する送信要求を生成し、生成した送信要求を通信モジュール140を介してGW装置300へ送信する。そして、操作パターン生成部164は、GW装置300から送信され通信モジュール140によって受信される周辺子機数通知を取得する。すなわち、操作パターン生成部164は、送信要求の送信後に周辺子機数通知の受信を待機し、周辺子機数を含む周辺子機数通知を通信モジュール140から取得する。そして、操作パターン生成部164は、取得した周辺子機数通知に含まれる周辺子機数に対応付けて記憶されたパターン長をメモリ150のパターン長DBから取得し、取得したパターン長を、生成すべき操作パターンのパターン長として決定する。すなわち、操作パターン生成部164は、GW装置300の周辺に存在するIoT端末装置200の数に応じて変化するパターン長を決定する。例えば、メモリ150のパターン長DBが図19に示したパターン長DBである場合には、操作パターン生成部164は、GW装置300の周辺に存在するIoT端末装置200の数が多いほど増大するパターン長を決定する。
本実施例においては、GW装置300の周辺に存在するIoT端末装置200の数が変化することがある。GW装置300の周辺に存在するIoT端末装置200の数が相対的に少ない場合には、意図しないIoT端末装置200がGW装置300に接続する可能性が低いと言える。この場合、十分なセキュリティが確保されるので、生成されるべき操作パターンのパターン長が減少しても良い。これに対して、GW装置300の周辺に存在するIoT端末装置200の数が多いほど、意図しないIoT端末装置200がGW装置300に接続する可能性が高くなる。すなわち、GW装置300の周辺に存在するIoT端末装置200の数が相対的に多い場合には、セキュリティが低下してしまうので、生成されるべき操作パターンのパターン長が増大することが好ましい。このため、操作パターン生成部164は、GW装置300の周辺に存在するIoT端末装置200の数に応じて変化するパターン長を決定する。
次に、実施例3に係る機器接続システムの動作について、図21を参照しながら説明する。図21は、実施例3に係る機器接続システムの動作を示すシーケンス図である。なお、図21において、ステップS207〜S222は、それぞれ、図10に示したステップS103〜S118と同一であるので、その詳しい説明を省略する。また、図21において、ステップS216からステップS218までの処理と、ステップS219からステップS220までの処理とは、互いに排他的であり、一方の処理が実行される場合には、他方の処理が実行されない。
GW装置300の周辺子機数検出部351によって、GW装置300の周辺に存在するIoT端末装置200の数である周辺子機数が定期的に検出される(ステップS201)。このような状況の下で、IoT端末装置200とGW装置300の接続を希望する操作者が管理端末装置100を操作して接続指示を行うと、この接続指示は、管理端末装置100のプロセッサ110によって受け付けられる(ステップS202)。接続指示が受け付けられると、周辺子機数の送信を要求する送信要求が操作パターン生成部164からGW装置300へ送信される(ステップS203)。
送信要求には、例えば図22に示すように、周辺子機数の送信(取得)を要求する旨を記述する部分P5が含まれる。なお、図22は、送信要求の一例を示す図である。
図21の説明に戻り、送信要求は、GW装置300のプロセッサ310によって受け付けられ、周辺子機数を含む周辺子機数通知が周辺子機数検出部351から管理端末装置100へ送信される(ステップS204)。
周辺子機数通知には、例えば図23に示すように、周辺子機数を記述する部分P6が含まれる。なお、図23は、周辺子機数通知の一例を示す図である。
図21の説明に戻る。周辺子機数通知は、管理端末装置100のプロセッサ110によって受け付けられ、操作パターン生成部164によって、周辺子機数通知に含まれる周辺子機数に対応付けて記憶されたパターン長がメモリ150のパターン長DBから取得される。これにより、取得されたパターン長が、生成すべき操作パターンのパターン長として決定される(ステップS205)。すなわち、操作パターン生成部164によって、GW装置300の周辺に存在するIoT端末装置200の数に応じて変化するパターン長が決定される。そして、決定されたパターン長を用いて、操作パターン生成部164によって操作パターンが生成される(ステップS206)。
以上のように、本実施例によれば、GW装置300の周辺に存在するIoT端末装置200の数に応じて、生成されるべき操作パターンのパターン長を決定し、決定したパターン長を用いて操作パターンを生成する。つまり、GW装置300の周辺に存在するIoT端末装置200の数が相対的に少ない場合には、操作パターンのパターン長を減少させ、GW装置300の周辺に存在するIoT端末装置200の数が相対的に多い場合には、操作パターンのパターン長を増大させる。これにより、IoT端末装置200とGW装置300の接続を希望する操作者の作業効率とセキュリティとを両立することができる。
実施例4の特徴は、認証を受けるIoT端末装置200に対する複数の操作を行う操作者の熟練度に応じて、生成されるべき操作パターンを構成する要素となる操作を適応的に決定する点である。
図24は、実施例4に係る管理端末装置100の構成を示すブロック図である。図24において、図2と同じ部分には同じ符号を付し、その説明を省略する。図24に示す管理端末装置100において、メモリ150は、パターン変換テーブル、熟練度データベース(以下「熟練度DB」と略記する)及びパターン要素データベース(以下「パターン要素DB」と略記する)を保持する。
熟練度DBは、例えば図25に示すように、IoT端末装置200に対する複数の操作を行う操作者の識別情報となる操作者IDに対応付けて、IoT端末装置200の認証に伴う作業に関する熟練度を示す累積回数及び成功回数を記憶する。ここで、累積回数は、IoT端末装置200に対する複数の操作を行う操作者がIoT端末装置200の認証に伴う作業を行った回数である。また、成功回数は、IoT端末装置200の認証に伴う作業が行われた結果、IoT端末装置200の認証に成功した回数である。なお、図25は、実施例4における熟練度DBの一例を示す図である。図25に示す例において、操作者IDが「O1」の操作者は、IoT端末装置200の認証に伴う作業を過去に70回行い、IoT端末装置200の認証に40回成功していることが分かる。
パターン要素DBは、例えば図26に示すように、IoT端末装置200の認証に伴う作業に関する熟練度の一つである累積回数に対応付けて、生成されるべき操作パターンを構成する要素となる操作(以下「パターン要素」と呼ぶ)を記憶する。なお、図26は、実施例4におけるパターン要素DBの一例を示す図である。図26に示す例において、累積回数が0回以上でかつ50回以下である場合には、パターン要素「2秒間の押下操作,1秒間の解放操作」を用いて操作パターンが生成されることが分かる。これに対して、累積回数が51回以上でかつ100回以下である場合には、パターン要素「1秒間の押下操作,2秒間の押下操作,1秒間の解放操作,2秒間の解放操作」を用いて操作パターンが生成されることが分かる。つまり、累積回数が多いほど、パターン要素が複雑化することが分かる。なお、パターン要素DBは、累積回数に代えて、上記の成功回数に対応付けて、パターン要素を記憶していても良い。
図27は、実施例4に係る管理端末装置100のプロセッサ110の機能を示すブロック図である。図27において、図4と同じ部分には同じ符号を付し、その説明を省略する。図27に示すプロセッサ110は、熟練度管理部165、操作パターン生成部166、PINコード変換部112、認証情報登録部113、接続結果表示部114及び表示制御部115を有する。なお、プロセッサ110は、メモリ150に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図27に示した各種機能部として構成する。
熟練度管理部165は、操作者によって操作キー130が操作されることによりIoT端末装置200の接続指示が受け付けられた場合に、IoT端末装置200の認証に伴う作業に関して、操作者の熟練度を取得する。具体的には、熟練度管理部165は、IoT端末装置200に対する複数の操作を行う操作者の識別情報である操作者IDを操作キー130から受け付ける。そして、熟練度管理部165は、受け付けられた操作者IDに対応付けて記憶された累積回数を操作者の熟練度としてメモリ150の熟練度DBから取得する。
また、熟練度管理部165は、GW装置300から送信され通信モジュール140によって受信される接続結果通知を検知する。そして、熟練度管理部165は、IoT端末装置200とGW装置300との接続が許可されたか否かを示す接続結果通知が通信モジュール140によって受信されたことを検知すると、メモリ150の熟練度DBに記憶された熟練度を更新する。すなわち、受信された接続結果通知の内容に関わらず、熟練度管理部165は、操作者IDに対応する累積回数を1だけ増加させる。さらに、熟練度管理部165は、受信された接続結果通知が、接続が許可されたこと(つまり、接続が成功であること)を示す場合には、操作者IDに対応する成功回数を1だけ増加させる。
操作パターン生成部166は、IoT端末装置200に関する操作パターンを生成する。具体的には、操作パターン生成部166は、熟練度管理部165によって取得された熟練度に基づいて、生成されるべき操作パターンを構成する要素となる操作、すなわち、パターン要素を決定する。そして、操作パターン生成部166は、決定したパターン要素を用いて、IoT端末装置200のボタンに対する押下操作及び解放操作の組合せを操作パターンとして生成する。
ここで、パターン要素は、以下のようにして決定される。操作パターン生成部166は、熟練度管理部165によって操作者の熟練度として取得された累積回数に対応するパターン要素をメモリ150から取得する。つまり、操作パターン生成部166は、累積回数に対応付けて記憶されたパターン要素をパターン要素DBから取得することによって、パターン要素を決定する。すなわち、操作パターン生成部166は、操作者の熟練度に応じて変化するパターン要素を決定する。例えば、メモリ150のパターン要素DBが図26に示したパターン要素DBである場合には、操作パターン生成部166は、操作者の熟練度の一つである累積回数が多いほど増大するパターン要素を決定する。
本実施例においては、IoT端末装置200の認証に伴う作業に関して、操作者の個々の熟練度が異なることがある。熟練度が低い操作者は、IoT端末装置200に対する複数の操作を表す操作パターンが複雑である場合には、IoT端末装置200に対する複数の操作を誤る可能性がある。これに対して、熟練度が高い操作者は、IoT端末装置200に対する複数の操作を表す操作パターンが複雑である場合であっても、IoT端末装置200に対する複数の操作を誤ることはない。そこで、操作パターン生成部166は、IoT端末装置200に対する複数の操作を行う操作者の熟練度に応じて変化するパターン要素を決定する。
次に、実施例4に係る機器接続システムの動作について、図28を参照しながら説明する。図28は、実施例4に係る機器接続システムの動作を示すシーケンス図である。なお、図28において、ステップS305〜S318、S320、S321は、それぞれ、図10に示したステップS103〜S116、S117、S118と同一であるので、その詳しい説明を省略する。また、図28において、ステップS314からステップS316までの処理と、ステップS317からステップS318までの処理とは、互いに排他的であり、一方の処理が実行される場合には、他方の処理が実行されない。
IoT端末装置200とGW装置300の接続を希望する操作者が管理端末装置100を操作して接続指示を行うと、この接続指示は、管理端末装置100のプロセッサ110によって受け付けられる(ステップS301)。接続指示が受け付けられると、熟練度管理部165によって、IoT端末装置200の認証に伴う作業に関して、操作者の熟練度がメモリ150の熟練度DBから取得される(ステップS302)。ここでは、操作者の熟練度として、累積回数が取得されるものとする。
そして、操作パターン生成部166によって、累積回数に対応付けて記憶されたパターン要素がメモリ150のパターン要素DBから取得される。これにより、パターン要素が決定される(ステップS303)。すなわち、操作パターン生成部166によって、IoT端末装置200に対する複数の操作を行う操作者の熟練度に応じて変化するパターン要素が決定される。そして、決定されたパターン要素を用いて、操作パターン生成部166によって操作パターンが生成される(ステップS304)。
また、接続結果通知を受け付けた管理端末装置100においては、熟練度管理部165によって、メモリ150の熟練度DBが参照され、熟練度が更新される(ステップS319)。すなわち、接続結果通知の内容に関わらず、操作者IDに対応する累積回数が1だけ増加される。さらに、接続結果通知が、接続が許可されたこと(つまり、接続が成功であること)を示す場合には、操作者IDに対応する成功回数が1だけ増加される。
以上のように、本実施例によれば、IoT端末装置200に対する複数の操作を行う操作者の熟練度に応じて、生成されるべき操作パターンを構成する要素となる操作、つまり、パターン要素を決定し、決定したパターン要素を用いて操作パターンを生成する。つまり、操作者の熟練度に応じて、操作パターンの複雑さを変化させることができる。これにより、熟練度の低い操作者に対して簡素な操作パターンを提供することができるので、操作者がIoT端末装置200に対する複数の操作を誤る可能性を低減することができる。結果として、IoT端末装置200とGW装置300の接続を希望する操作者の作業効率をより向上することができる。
実施例5の特徴は、IoT端末装置200の認証が成功しなかった回数に応じて、生成されるべき操作パターンのパターン長を適応的に決定する点である。
図29は、実施例5に係る管理端末装置100のプロセッサ110の機能を示すブロック図である。図29において、図4と同じ部分には同じ符号を付し、その説明を省略する。図29に示すプロセッサ110は、失敗回数計測部167、操作パターン生成部168、PINコード変換部112、認証情報登録部113、接続結果表示部114及び表示制御部115を有する。なお、プロセッサ110は、メモリ150に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図29に示した各種機能部として構成する。
失敗回数計測部167は、操作者によって操作キー130が操作されることによりIoT端末装置200の接続指示が受け付けられた場合に、IoT端末装置200の認証が成功しなかった回数(以下「失敗回数」と呼ぶ)を計測する。具体的には、失敗回数計測部167は、IoT端末装置200の接続指示が受け付けられた場合に、失敗回数を示すカウンタ値をカウントするためのカウンタ(以下「失敗カウンタ」と呼ぶ)を起動する。そして、失敗回数計測部167は、失敗カウンタのカウンタ値に初期値0をセットする。そして、失敗回数計測部167は、IoT端末装置200の認証が成功しなかったことを示す接続結果通知が通信モジュール140によって受信された場合に、失敗カウンタのカウンタ値を1インクリメントさせる。
操作パターン生成部168は、IoT端末装置200に関する操作パターンを生成する。具体的には、操作パターン生成部168は、失敗回数計測部167によって計測された失敗回数に基づいて、生成されるべき操作パターンのパターン長を決定する。そして、操作パターン生成部168は、決定したパターン長を用いて、IoT端末装置200のボタンに対する押下操作及び解放操作の組合せを操作パターンとして生成する。
ここで、パターン長は、以下のようにして決定される。操作パターン生成部168は、失敗回数計測部167における失敗カウンタのカウンタ値を取得し、取得したカウンタ値を予め定められたパターン長に加算することにより、生成されるべき操作パターンのパターン長を決定する。すなわち、操作パターン生成部168は、IoT端末装置200の認証が成功しなかった回数に応じて変化するパターン長を決定する。
次に、実施例5に係る機器接続システムの動作について、図30を参照しながら説明する。図30は、実施例5に係る機器接続システムの動作を示すシーケンス図である。なお、図30において、ステップS405〜S420は、それぞれ、図10に示したステップS103〜S118と同一であるので、その詳しい説明を省略する。また、図30において、ステップS414からステップS416までの処理と、ステップS417からステップS418までの処理とは、互いに排他的であり、一方の処理が実行される場合には、他方の処理が実行されない。
IoT端末装置200とGW装置300の接続を希望する操作者が管理端末装置100を操作して接続指示を行うと、この接続指示は、管理端末装置100のプロセッサ110によって受け付けられる(ステップS401)。接続指示が受け付けられると、失敗回数計測部167によって失敗カウンタが起動され、失敗カウンタのカウンタ値に初期値0がセットされる(ステップS402)。そして、失敗回数計測部167における失敗カウンタのカウンタ値が操作パターン生成部168によって取得される。そして、操作パターン生成部168によって、失敗カウンタのカウンタ値が予め定められたパターン長に加算されることにより、IoT端末装置200の認証失敗回数に応じて変化するパターン長が決定される(ステップS403)。そして、決定されたパターン長を用いて、操作パターン生成部168によって操作パターンが生成される(ステップS404)。
また、接続結果通知を受け付けた管理端末装置100においては、この接続結果通知が、接続が許可されなかったこと(つまり、IoT端末装置200の認証が成功しなかったこと)を示す場合に(ステップS419No、S420No)、以下の処理が行われる。すなわち、失敗回数計測部167によって、失敗カウンタのカウンタ値が1インクリメントされる(ステップS421)。この結果、ステップS403において決定されるパターン長が増大し、増大したパターン長を用いて操作パターンが生成される(ステップS404)。
以上のように、本実施例によれば、IoT端末装置200の認証が成功しなかった回数に応じて、生成されるべき操作パターンのパターン長を決定し、決定したパターン長を用いて操作パターンを生成する。つまり、IoT端末装置200の認証が成功しなかった回数に応じて操作パターンのパターン長を増大させる。このため、IoT端末装置200の認証が成功しなかった回数に応じて増大するパターン長を持つ操作パターンから変換されるPINコードによって、IoT端末装置200の認証を繰り返すことができ、より高いセキュリティを確保することができる。
実施例6の特徴は、管理端末装置100において生成された操作パターンを、IoT端末装置200に対する複数の操作を支援する支援情報とともに表示する点である。
図31は、実施例6に係る管理端末装置100のプロセッサ110の機能を示すブロック図である。図31において、図4と同じ部分には同じ符号を付し、その説明を省略する。図31に示すプロセッサ110は、操作パターン生成部111、PINコード変換部112、認証情報登録部113、接続結果表示部114及び表示制御部169を有する。なお、プロセッサ110は、メモリ150に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図31に示した各種機能部として構成する。
表示制御部169は、登録完了通知が通信モジュール140によって受信された場合に、操作パターン生成部111によって生成された操作パターンを、IoT端末装置200に対する複数の操作を支援する支援情報とともにディスプレイ120に表示する。支援情報は、例えばIoT端末装置200のボタンに対する押下操作及び解放操作が行われるタイミングを、音声、動画及びメッセージの少なくともいずれか一つを用いて操作者に提供する。ディスプレイ120に表示された操作パターンを確認した操作者は、認証を受けるIoT端末装置200に対する複数の操作を、表示された操作パターンに従って行う。
図32は、ディスプレイ120の表示態様の一例を示す図である。ディスプレイ120には、例えば図32に示すように、IoT端末装置200のボタンに対する押下操作及び解放操作の組合せを表す操作パターン501が、押下操作及び解放操作を支援する支援情報502、503とともに表示される。操作パターン501の実線は、押下操作に相当し、操作パターン501の破線は、解放操作に相当する。また、操作パターン501は、最初に第1の色で表示され、時間の経過に従って第1の色から第2の色に変化する。支援情報502は、押下操作及び解放操作が行われるタイミングを、時間の経過に従って移動するカーソルの動画を用いて操作者に提供する。支援情報503は、押下操作又は解放操作のために残された時間がどれだけあるかをメッセージによって操作者に提供する。
以上のように、本実施例によれば、管理端末装置100において生成された操作パターンを、IoT端末装置200に対する複数の操作を支援する支援情報とともに表示する。これにより、操作者がIoT端末装置200に対する複数の操作を直感的に確認することができるので、操作者がIoT端末装置200に対する複数の操作を誤る可能性を低減することができる。結果として、IoT端末装置200とGW装置300の接続を希望する操作者の作業効率をより向上することができる。
実施例7の特徴は、GW装置300が互いに異なる複数の無線通信方式に対応する複数の通信モジュールを有し、IoT端末装置200に実際に適用された無線通信方式に対応する通信モジュールに関して、IoT端末装置200の認証が成功か否かを判定する点である。なお、本実施例では、IoT端末装置200に適用可能な無線通信方式が複数存在するものとする。IoT端末装置200に適用可能な無線通信方式としては、例えば、無線LANやBluetooth(登録商標)などの近距離無線通信方式がある。
図33は、実施例7に係るGW装置300の構成を示すブロック図である。図33において、図8と同じ部分には同じ符号を付し、その説明を省略する。図33に示すGW装置300は、プロセッサ310、通信モジュール320−1〜320−n(nは2以上の自然数)及びメモリ330を有する。
通信モジュール320−1〜320−nは、IoT端末装置200に適用される無線通信方式であって、互いに異なる無線通信方式とそれぞれ対応している。例えば、通信モジュール320−1は、無線LANに対応し、通信モジュール320−2は、Bluetooth(登録商標)に対応している。以下では、通信モジュール320−1〜320−nを特に区別しない場合、総称して通信モジュール320と呼ぶことがある。
各通信モジュール320は、例えば無線LAN又はBluetooth(登録商標)などの近距離無線通信方式によって管理端末装置100及びIoT端末装置200との間の無線接続を確立し、アンテナを介して無線通信する。具体的には、各通信モジュール320は、登録要求及び登録完了通知を管理端末装置100との間で送受信する。また、各通信モジュール320は、IoT端末装置200との間の無線接続が確立された場合に、接続要求をIoT端末装置200から受信する。つまり、各通信モジュール320の無線通信方式が、IoT端末装置200に実際に適用された無線通信方式に対応していない場合には、各通信モジュール320は、IoT端末装置200との間の無線接続が確立されないので、接続要求を受信することはない。また、各通信モジュール320は、接続結果通知を管理端末装置100及びIoT端末装置200へ送信する。
図34は、実施例7に係るGW装置300のプロセッサ310の機能を示すブロック図である。図34において、図9と同じ部分には同じ符号を付し、その説明を省略する。図34に示すプロセッサ310は、登録要求受付部311、PINコード登録部312、登録結果通知部313、接続・認証要求処理部352、接続可否判定部353、及び通信制御部354を有する。なお、プロセッサ310は、メモリ330に記憶された機器接続プログラムを読み出し、読み出された機器接続プログラムに基づき各種プロセスを図34に示した各種機能部として構成する。
接続・認証要求処理部352は、認証処理部352a及び接続制御部352bを有する。認証処理部352aは、複数の通信モジュール320のうち、IoT端末装置200に実際に適用された無線通信方式に対応する通信モジュール320によって受信された接続要求を受け付け、接続要求に含まれるPINコードを接続可否判定部353へ出力する。以下では、IoT端末装置200に実際に適用された無線通信方式に対応する通信モジュール320を「対応通信モジュール320」と表記するものとする。
接続制御部352bは、接続が許可されたIoT端末装置200との間の無線接続を行う。また、接続制御部352bは、接続可否判定部353における判定結果を含む接続結果通知を生成し、生成した接続結果通知を対応通信モジュール320を介して、接続要求の送信元のIoT端末装置200へ送信する。
接続可否判定部353は、認証処理部352aから出力されるPINコードがPINコード登録部312によって一時的に登録されたPINコードに一致するか否かを判定することにより、IoT端末装置200がGW装置300に接続することを許可するか否かを判定する。すなわち、接続可否判定部353は、対応通信モジュール320に関して、PINコード登録部312によって一時的に登録されたPINコードが接続要求に含まれるPINコードと一致するか否かを判定する。この判定の結果、PINコードが一致する場合は、接続可否判定部353は、IoT端末装置200のGW装置300への接続を許可すると判定し、対応通信モジュール320以外の他の通信モジュール320に関するPINコード認証を中断する。
一方、PINコードが一致しない場合は、接続可否判定部353は、全ての通信モジュール320の中に対応通信モジュール320が含まれるか否かを判定する。この判定の結果、全ての通信モジュール320の中に対応通信モジュール320が含まれない場合は、接続可否判定部353は、IoT端末装置200によるGW装置300への接続が失敗であると判定する。
通信制御部354は、接続が許可されたIoT端末装置200との間の接続設定が完了すると、このIoT端末装置200とサーバ装置400との間の通信を中継する。
次に、実施例7に係る機器接続システムの動作について、図35を参照しながら説明する。図35は、実施例7に係る機器接続システムの動作を示すシーケンス図である。なお、図35において、ステップS501〜S510、S513〜S515、S517〜S520は、それぞれ、図10に示したステップS101〜S110、S112〜S114、S115〜S118と同一であるので、その詳しい説明を省略する。また、図35において、ステップS513からステップS515までの処理と、ステップS517からステップS518までの処理とは、互いに排他的であり、一方の処理が実行される場合には、他方の処理が実行されない。
操作パターンから変換されたPINコードを含む接続要求が接続・認証要求処理部213からGW装置300へ送信される(ステップS510)。GW装置300の通信モジュール320−1〜320−nのうちのいずれか一つの通信モジュール320が対応通信モジュール320である場合、接続要求は、対応通信モジュール320によって受信される。なお、GW装置300の通信モジュール320−1〜320−nの中に対応通信モジュール320が含まれない場合には、接続要求は受信されない。
そして、プロセッサ310の接続可否判定部353によって、対応通信モジュール320に関して、接続要求に含まれるPINコードが一時的に登録されたPINコードと一致するか否かが判定される。換言すれば、接続可否判定部353によって、対応通信モジュール320に関して、IoT端末装置200によるGW装置300への接続を許可するか否かが判定される(ステップS511)。ここでの判定は、PINコードが一致すれば接続を許可し、PINコードが一致しなければ接続を許可しないと判定するものである。
接続可否判定部353による判定の結果、接続が許可された場合には(ステップS511Yes)、接続可否判定部353によって、対応通信モジュール320以外の他の通信モジュール320に関するPINコードによる接続モードが解除される(ステップS512)。そして、接続が許可された旨を示す接続結果通知が接続・認証要求処理部352から管理端末装置100及びIoT端末装置200へ送信される(ステップS513、S514)。そして、IoT端末装置200の接続・認証要求処理部213とGW装置300の接続・認証要求処理部352との間で接続設定が行われる(ステップS515)。
一方、接続可否判定部353による判定の結果、接続が許可されない場合には(ステップS511No)、接続可否判定部353によって、全ての通信モジュール320の中に対応通信モジュール320が含まれるか否かが判定される(ステップS516)。この判定の結果、対応通信モジュール320が含まれる場合は(ステップS516Yes)、処理がステップS511に戻される。一方、対応通信モジュール320が含まれない場合は(ステップS516No)、接続可否判定部353によって、IoT端末装置200によるGW装置300への接続が失敗であると判定される。そして、IoT端末装置200によるGW装置300への接続が失敗である旨を示す接続結果通知が接続・認証要求処理部352から管理端末装置100及びIoT端末装置200へ送信される(ステップS517、S518)。
以上のように、本実施例によれば、GW装置300が互いに異なる複数の無線通信方式に対応する複数の通信モジュールを有し、IoT端末装置200に実際に適用された無線通信方式に対応する通信モジュールに関して、IoT端末装置200の認証が成功か否かを判定する。このため、IoT端末装置200に適用された無線通信方式を操作者に意識させることなく、IoT端末装置200に対する複数の操作を操作者に実行させることができる。結果として、IoT端末装置200の認証に伴う作業の効率を向上することができる。