(57)【要約】【課題】複数の周辺機器と無線通信する際の接続を効率化することを目的とする。【解決手段】アプリケーションレイヤにおいて周辺機器との通信のセッションを確立するセッション確立部と、他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続中の周辺機器との接続を切断し、該アクセス要求された他の周辺機器に接続を切り替える接続切替部と、を有し、前記接続切替部は、アプリケーションレイヤにおいて前記確立したセッションを保持した状態で、所定時間経過後に物理レイヤにおいて前記他の周辺機器の接続を切断し、所望の周辺機器に接続を切り替える、端末装置が提供される。【選択図】図７
2015192210.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションレイヤにおいて周辺機器との通信のセッションを確立するセッション確立部と、
他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続中の周辺機器との接続を切断し、該アクセス要求された他の周辺機器に接続を切り替える接続切替部と、を有し、
前記接続切替部は、
アプリケーションレイヤにおいて前記確立したセッションを保持した状態で、所定時間経過後に物理レイヤにおいて前記他の周辺機器の接続を切断し、所望の周辺機器に接続を切り替える、
端末装置。
【請求項２】
前記確立したセッションにおける周辺機器との通信のタスク情報を管理する管理部を有し、
前記接続切替部は、
前記通信のタスク情報に基づき特定される前記所望の周辺機器に接続を切り替える、
請求項１に記載の端末装置。
【請求項３】
前記通信のタスク情報には、周辺機器との通信の優先度を示す情報が含まれ、
前記接続切替部は、
前記優先度を示す情報に基づき特定される前記所望の周辺機器に接続を切り替える、
請求項２に記載の端末装置。
【請求項４】
アプリケーションレイヤにおいて周辺機器との通信のセッションを確立するセッション確立部と、
他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続中の周辺機器との接続を切断し、該アクセス要求された他の周辺機器に接続を切り替える接続切替部と、を有する端末装置と、
前記アクセス要求に応じて前記端末装置にデータを送信する複数の周辺機器と、を備え、
前記接続切替部は、
アプリケーションレイヤにおいて前記確立したセッションを保持した状態で、所定時間経過後に物理レイヤにおいて前記他の周辺機器の接続を切断し、所望の周辺機器に接続を切り替える、
通信制御システム。
【請求項５】
前記複数の周辺機器のそれぞれは、
前記端末装置から受信したコマンドの実行状況を示すステータスを記憶し、
前記ステータスに応じて移行時間経過後にスリープモードへ移行するかを管理する、
請求項４に記載の通信制御システム。
【請求項６】
前記複数の周辺機器のそれぞれは、
前記端末装置へのデータの送信準備が完了したことを、前記セッションを確立した通信手段と異なる通信手段を用いて通知する、
請求項４又は５に記載の通信制御システム。
【請求項７】
アプリケーションレイヤにおいて周辺機器との通信のセッションを確立し、
他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続中の周辺機器との接続を切断し、該アクセス要求された他の周辺機器に接続を切り替える処理をコンピュータが実行し、
前記接続を切り替える処理は、
アプリケーションレイヤにおいて前記確立したセッションを保持した状態で、所定時間経過後に物理レイヤにおいて前記他の周辺機器の接続を切断し、所望の周辺機器に接続を切り替える、通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末装置、通信制御システム及び通信制御方法に関する。
【背景技術】
【０００２】
近年、Ｂｌｕｅｔｏｏｔｈ（登録商標、以下同じ）やＷｉ−Ｆｉ（登録商標、以下同じ）等のネットワークを介して電子機器同士が無線通信可能なシステムが構築されている（例えば、特許文献１参照）。スマートフォン等の端末装置と周辺機器とを接続するとき、周辺機器が無線ＬＡＮのアクセスポイント（ＡＰ）の機能を有する場合がある。周辺機器がアクセスポイントになる接続形態では、周辺機器がマスター側、スマートフォンがスレーブ側となって接続が行われる。そのため、スマートフォンは、周辺機器にポーリングを送り、周辺機器の接続の状態を問い合わせ、可能であれば周辺機器と接続し、他の周辺機器との接続を切断することで、複数の周辺機器との無線ＬＡＮの接続及び切断の切り替えが行われる。つまり、スマートフォンは、随時無線ＬＡＮを切り替えて複数の周辺機器と通信する。これにより、時分割での擬似的な周辺機器への同時アクセスが可能となる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−８０２８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ある周辺機器との通信における処理負荷等から、他の周辺機器との接続に遅延が生じてしまう場合がある。例えば、周辺機器の一つであるカメラで撮影したデータをスマートフォンに送信する場合、カメラで撮影したデータが膨大であると、カメラからスマートフォンにデータを転送し、スマートフォン上に撮影された画像を表示するのに時間が掛かってしまう。そうすると、その間、スマートフォンと他の周辺機器との接続ができなくなり、他の周辺機器との間での通信処理に遅延が発生してしまう。
【０００５】
そこで、一つの側面では、複数の周辺機器と無線通信する際の接続を効率化することが可能な、端末装置、通信制御システム及び通信制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
一つの態様では、
アプリケーションレイヤにおいて周辺機器との通信のセッションを確立するセッション確立部と、
他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続中の周辺機器との接続を切断し、該アクセス要求された他の周辺機器に接続を切り替える接続切替部と、を有し、
前記接続切替部は、
アプリケーションレイヤにおいて前記確立したセッションを保持した状態で、所定時間経過後に物理レイヤにおいて前記他の周辺機器の接続を切断し、所望の周辺機器に接続を切り替える、
端末装置が提供される。
【発明の効果】
【０００７】
一つの側面として、複数の周辺機器と無線通信する際の接続を効率化することができる。
【図面の簡単な説明】
【０００８】
【図１】複数の周辺機器と無線通信する際の処理遅延例を示す図。
【図２】無線通信時の接続切替処理の一例を示すフローチャート。
【図３】一実施形態にかかる通信制御システムの一例を示す図。
【図４】一実施形態にかかるスマートフォンのハードウェア構成例を示す図。
【図５】一実施形態にかかるスマートフォンの機能構成例を示す図
【図６】一実施形態にかかるタスクテーブルの一例を示す図。
【図７】第１実施形態にかかる通信制御処理の一例を示すフローチャート。
【図８】第１実施形態にかかる通信制御処理の一例を示すタイムチャート。
【図９】第１実施形態にかかる通信制御システムの構成例を示す図。
【図１０】第２実施形態にかかる通信制御システムの構成例を示す図。
【図１１】第２実施形態にかかるデバイス制御処理の一例を示すフローチャート。
【図１２】第３実施形態にかかる通信制御システムの構成例を示す図。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
【００１０】
＜はじめに＞
例えば、周辺機器の一つであるカメラで撮影したデータをスマートフォンに送信する処理について、図１及び図２を参照して説明する。図１は、複数の周辺機器と無線通信する際の処理遅延が生じる場合の一例を示す。図２は、無線通信時の接続の切替処理の一例を示すフローチャートである。
【００１１】
まず、スマートフォンはカメラ（ＡＰ１）とセッション１を開始（Session1 start）する。次に、スマートフォンは、アクセス要求のコマンド（command）をカメラに送信する。アクセス要求のコマンドを受信したカメラは、カメラで撮影したデータ（data）を送信する。データの送信が終了すると、セッション１を終了（Session1 end）する。
【００１２】
このとき、カメラで撮影したデータが膨大であると、カメラからスマートフォンにデータを転送し、スマートフォン上に撮影された画像を表示するまでに時間が掛かってしまう。そうすると、その間、スマートフォンと他の周辺機器ＡＰ２，ＡＰ３との接続ができなくなり、他の周辺機器ＡＰ２，ＡＰ３との間で通信処理の遅延（応答なし）が発生する。
【００１３】
図２は、スマートフォンのアプリケーションが実行する処理の一例である。カメラ（ＡＰ１）で撮影したデータを受信する場合、アクセス要求（データ要求）のコマンドが送信されたかが判定される（ステップＳ１００）。送信された場合、スマートフォンは、他の周辺機器の接続を切断して、無線ＬＡＮ（WLAN:Wireless Local Area Network）を周辺機器ＡＰ１に接続する接続切替を行う（ステップＳ１０１）。次に、スマートフォンは、周辺機器ＡＰ１にデータ送信命令のコマンドを送信し（ステップＳ１０２）、データを受信するまで待機する（ステップＳ１０３）。次に、スマートフォンは、データを受信し（ステップＳ１０４）、データの受信が完了したらステップＳ１００に戻って次のアクセス要求を待つ。
【００１４】
一方、スマートフォンが周辺機器ＡＰ２からデータを取得する場合、アクセス要求のコマンドが送信されたかが判定される（ステップＳ１００）。送信された場合、スマートフォンは、現在接続されている周辺機器ＡＰ１の接続を切断して、無線ＬＡＮを周辺機器ＡＰ２に接続する接続切替を行う（ステップＳ１０１）。次に、スマートフォンは、周辺機器ＡＰ２にデータ送信命令のコマンドを送信し（ステップＳ１０２）、データを受信したと判定するまで待機する（ステップＳ１０３）。ところが、周辺機器ＡＰ１からのデータ送信に時間が掛かると、周辺機器ＡＰ２は、周辺機器ＡＰ１のデータ送信が完了するまで接続切替ができず、セッションを確立できない。その結果、スマートフォンは、周辺機器ＡＰ２からデータを受信（ステップＳ１０４）するのに時間が掛かる。周辺機器ＡＰ３も同様にデータを受信（ステップＳ１０４）するのに時間が掛かる。
【００１５】
これに対して、以下に説明する本発明の一実施形態にかかる通信制御システムでは、複数の周辺機器と無線通信する際の接続を効率化し、複数の周辺機器の通信の接続及び切断をスムーズに行うことができる。以下、本実施形態にかかる通信制御システムについて説明する。
【００１６】
［システムの全体構成］
まず、本発明の第１実施形態にかかる通信制御システムについて、図３を参照しながら説明する。図３は、本発明の第１実施形態にかかる通信制御システムの一例を示す。
【００１７】
本実施形態にかかる通信制御システム５は、周辺機器ＡＰ１、ＡＰ２，ＡＰ３及びスマートフォン４を有する。
【００１８】
周辺機器ＡＰ１、ＡＰ２，ＡＰ３は、無線ＬＡＮのアクセスポイント（ＡＰ）となる機能を有する。以下、周辺機器ＡＰ１、ＡＰ２，ＡＰ３を総称して周辺機器ＡＰとも表記する。周辺機器ＡＰの一例としては、ＨＤＤ（Hard Drive Disk）、カメラ、プリンタ、複写機、スキャナ、ＳＴＢ（セットトップボックス）が挙げられる。ただし、周辺機器ＡＰは、これに限られず、Ｗｉ−Ｆｉ等の無線ＬＡＮによりスマートフォン４と接続可能な機器であればよい。
【００１９】
スマートフォン４は、Ｗｉ−Ｆｉ等の無線ＬＡＮにより複数の周辺機器ＡＰと無線通信する端末装置の一例である。端末装置の他の例としては、タブレット端末、携帯電話、電子書籍、ゲーム機器、電子辞書、音楽再生機器等が挙げられる。
【００２０】
［スマートフォンのハードウェア構成］
次に、本実施形態にかかるスマートフォン４のハードウェア構成の一例について、図４を参照しながら説明する。図４は、本実施形態にかかるスマートフォンのハードウェア構成の一例を示す。
【００２１】
一実施形態にかかるスマートフォン４は、ＣＰＵ（Central Processing Unit）１０、メモリ１１、カメラ１３、タイマ１４、２次記憶装置１５、無線通信Ｉ／Ｆ（Interface）１７及び外部Ｉ／Ｆ１８を有する。
【００２２】
ＣＰＵ１０は、スマートフォン４が備える各部を統括して制御する。メモリ１１には、スマートフォン４が備える機能を実現するためのプログラムが記憶されている。また、２次記憶装置１５にＣＰＵ１０が実行する制御プログラム、ＯＳプログラム、及びＣＰＵ１０が、スマートフォン４が有する各種機能を実行するためのアプリケーションプログラムが記憶されてもよい。ＣＰＵ１０は、メモリ１１や２次記憶装置１５に記憶されたプログラムを読み出して実行することでスマートフォン４の各種機能を実現する。例えば、ＣＰＵ１０は、アプリケーションプログラムの命令（コマンド）を逐次取り込んで解読し、その内容、演算、データ転送、制御などを実行する。その際、ＣＰＵ１０は、アプリケーションプログラムからの要求に応じて周辺機器ＡＰと通信を行い、周辺機器ＡＰと連携してアプリケーションを実行する。
【００２３】
カメラ１３は、レンズ及び撮像素子を有し、被写体を印刷した印刷物や文書を撮影してその画像データをスマートフォン４に取り込む。タイマ１４は、所定時間を計時する。メモリ１１は、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）等で構成され得る。２次記憶装置１５は、ＥＥＰＲＯＭ、フラッシュメモリ、ＨＤＤ（Hard Disk Drive）等の記憶装置で構成され得る。
【００２４】
無線通信Ｉ／Ｆ１７は、外部の装置と無線通信するためのインターフェースである。例えば、無線通信Ｉ／Ｆ１７は、ＩｒＤＡ、ＩｒＳＳなどの赤外線通信、Ｂｌｕｅｔｏｏｔｈによる通信、Ｗｉ−Ｆｉによる通信、非接触型ＩＣカードのいずれかの無線通信手段を実現するためのインターフェースである。
【００２５】
外部Ｉ／Ｆ１８は、外部の装置をスマートフォン４に接続するためのインターフェースである。例えば、外部Ｉ／Ｆ１８は、外付けの記録媒体（メモリカード等）を挿し込むためのソケット、ＨＤＭＩ(登録商標)（High Definition Multimedia Interface）端子、ＵＳＢ（Universal Serial Bus）端子等で実現される。この場合、ＣＰＵ１０は、外部Ｉ／Ｆ１８を介して、外部の装置からデータを取得する。
【００２６】
［スマートフォンの機能構成］
次に、本実施形態にかかるスマートフォン４の機能構成の一例について、図５を参照しながら説明する。図５は、本実施形態にかかるスマートフォンの機能構成の一例を示す。
【００２７】
一実施形態にかかるスマートフォン４は、撮像部１００、アプリケーション実行部１０１、管理部１０２、タスクテーブル１０３、セッション確立部１０４、接続切替部１０６、計時部１０７、データ送信部１０８及びデータ受信部１０９を有する。
【００２８】
撮像部１００は、所望の被写体を撮影した画像データを取り込む。撮像部１００は、例えばカメラ１３により実現される。アプリケーション実行部１０１は、スマートフォン４に搭載されたアプリケーションを実行する。アプリケーション実行部１０１は、アプリケーション実行中に周辺機器ＡＰからデータを取得する処理が発生すると、周辺機器ＡＰとの通信接続を要求する。
【００２９】
セッション確立部１０４は、アプリケーションレイヤにおいて周辺機器ＡＰとの通信のセッションを確立する。
【００３０】
管理部１０２は、確立したセッションにおいて生じる周辺機器との通信のタスク情報をタスクテーブル１０３に記憶して管理する。図６は、一実施形態にかかるタスクテーブル１０３の一例を示す。タスクテーブル１０３には、タスクＮＯ．１３０、周辺機器名１３１、周辺機器のアドレス１３２、スリープモードへの移行時間１３３、デフォルト値１３４、タスクの種類１３５及びタスクの状態１３６が記憶されている。これらの情報は、確立したセッション中に生じる周辺機器との通信のタスク情報の一例である。例えば、セッション確立後に生じるアクセス要求やデータ送信等のタスクが発生するとその際の通信のタスク情報が保存される。アクセス要求やデータ送信等の周辺機器との通信が終了すると、タスクテーブル１０３から自動消去される。つまり、タスクテーブル１０３は、ＦＩＦＯ（First In First Out）の機能を有する。
【００３１】
タスクＮＯ．１３０は、周辺機器ＡＰ１、ＡＰ２，ＡＰ３へのアクセス要求（データ要求やその他の命令を指示）や周辺機器ＡＰ１、ＡＰ２，ＡＰ３からのレスポンス（データ送信、Ｗｉａｔ通知）が発生し、タスクテーブル１０３に記憶した順番である。周辺機器名１３１は、周辺機器ＡＰ１、ＡＰ２，ＡＰ３の識別名である。周辺機器のアドレス１３２は、周辺機器ＡＰ１、ＡＰ２，ＡＰ３と通信する際の周辺機器ＡＰ１、ＡＰ２，ＡＰ３のアドレスである。周辺機器のアドレス１３２には、例えば、マックアドレスを用いてもよい。
【００３２】
スリープモードへの移行時間１３３は、周辺機器ＡＰ１、ＡＰ２，ＡＰ３の電源がオフになるまでの時間を示す。周辺機器ＡＰ１、ＡＰ２、ＡＰ３は、スリープモードへの移行時間経過後に周辺機器毎に設定された省エネルギーモード（いわゆるスリープモード）に移行する。
【００３３】
デフォルト値１３４は、実行中のアプリケーションがバックグラウンドで動作しているアプリケーションの場合に「０」に設定され、フロントアプリケーション（バックグラウンドで動作するアプリケーション以外）の場合に「１」に設定される。
【００３４】
タスクの種類１３５には、コントロール系「Ｃｏｎｔｒｏｌ」又はデータ系「Ｄａｔａ」が設定される。タスクの種類１３５は、周辺機器ＡＰを制御するタスクの場合にはコントロール系、周辺機器ＡＰとデータ通信するタスクの場合にはデータ系となる。コントロール系のタスクの一例としては周辺機器ＡＰの電源のオン及びオフを制御するコマンドの送信が挙げられる。データ系のタスクの一例としては画面を構成する画像データの送信が挙げられる。
【００３５】
タスクの状態１３６は、タスクの進捗状況を示す。「処理中」は、タスクが現在処理されていることを示す。「suspend」は、タスクが途中で中断していることを示す。「completed」は、タスクが処理済みであることを示す。タスクの状態１３６が「completed」になると、そのタスク情報はタスクテーブル１０３から自動消去される。
【００３６】
以上に説明したように、タスクテーブル１０３に記憶される通信のタスク情報には、周辺機器ＡＰとの通信の優先度を示す情報が含まれてもよい。たとえば、周辺機器ＡＰとの通信の優先度を示す情報には、各タスクが発生した順番を示すタスクＮＯ．１３０が含まれてもよい。この場合、タスクＮＯ．１３０が小さいほど古いタスクであり、優先的に処理されるタスクと判定してもよい。
【００３７】
周辺機器ＡＰとの通信の優先度を示す情報には、スリープモードへの移行時間１３３が含まれてもよい。この場合、スリープモードへの移行時間１３３が短いほど優先的に処理されるタスクと判定してもよい。
【００３８】
周辺機器ＡＰとの通信の優先度を示す情報には、デフォルト値１３４が含まれてもよい。この場合、デフォルト値１３４が「１」に設定されているときには、フロントアプリケーションが動作しているため、「０」に設定されているバックグラウンドアプリケーションよりも優先的に処理されるタスクと判定してもよい。
【００３９】
周辺機器ＡＰとの通信の優先度を示す情報には、タスクの状態１３６が含まれてもよい。この場合、タスクの状態１３６が「suspend」の場合、タスクの処理は途中の状態であり、タスクの状態１３６が「処理中」のタスクよりも優先度が低いと判定してもよい。
【００４０】
接続切替部１０６は、アプリケーションレイヤにおいて確立したセッションを保持した状態で、物理レイヤにおいて複数の周辺機器ＡＰの接続及び切断を切り替える。例えば、接続切替部１０６は、他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続していた周辺機器との接続を切断し、該アクセス要求がされた他の周辺機器に接続を切り替える。その場合、接続切替部１０６は、タスクテーブル１０３に記憶された通信のタスク情報に基づき、アプリケーションレイヤにおいて確立したセッションを保持した状態で、物理レイヤにおいて次に接続の切り替えを行う周辺機器を特定する。
【００４１】
データ送信部１０８は、接続されている周辺機器ＡＰに所望のデータを送信する。データ受信部１０９は、接続されている周辺機器ＡＰから所望のデータを受信する。
【００４２】
以上、第１〜第３実施形態にかかるスマートフォン４のハードウェア構成及び機能構成について説明した。次に、第１〜第３実施形態にかかるスマートフォンの動作について順に説明する。
【００４３】
＜第１実施形態＞
［スマートフォンの動作（通信制御処理）］
第１実施形態にかかるスマートフォン４が実行する通信制御処理の一例について、図７を参照しながら説明する。図７は、第１実施形態にかかる通信制御処理の一例を示すフローチャートである。
【００４４】
前提として、セッション確立部１０４により周辺機器ＡＰ１、ＡＰ２、ＡＰ３との通信のセッションは既に確立され、確立したセッションの保持が管理されている（図８のSession1,2,3 startの状態）。
【００４５】
例えば、実行中のアプリケーションからの命令で周辺機器ＡＰ１へアクセス要求のコマンドが送信されると（図８のCommand１）、図６に示したように、タスクテーブル１０３には周辺機器ＡＰ１へのコントロール系のタスク（タスクＮＯ．１）が記憶される。このようにして発生するタスクに関する情報は、確立したセッション中に生じる周辺機器との通信のタスク情報として管理部１０２により管理される。なお、タスクテーブル１０３に記憶されたタスクは、そのタスクが処理済みになったときにタスクテーブル１０３から消去される。
（通信制御処理：データ送信側の処理）
さて、図７の通信制御処理（データ送信側の処理）が開始され、周辺機器ＡＰにデータ要求（アクセス要求）がされると（ステップＳ２００）、接続切替部１０６は、そのデータ要求がコントロール系の要求かデータ系の要求かを判定する（ステップＳ２０１）。
【００４６】
データ系の要求の場合、接続切替部１０６は、要求されたデータがすでにキャッシュ済みかを判定する（ステップＳ２０２）。例えば、ブラウザ上の画像等のデータがすでにスマートフォン４のメモリ１１や２次記憶装置１５に取得済みのとき、データはキャッシュ済みであると判定される。データがキャッシュ済みであると判定された場合、接続切替部１０６は、データはキャッシュ済であることの応答、及び自動更新（データ受信）をスタートさせる指示を送信する（ステップＳ２０３）。この通知及び指示を受けて、後述される通信制御処理（データ受信側の処理）が開始される。
【００４７】
ステップＳ２０２にてキャッシュ済みでない場合、又は、ステップＳ２０１にてコントロール系の要求の場合、接続切替部１０６は、データ受信部１０９で実行中のデータの自動更新をストップさせる（ステップＳ２０４）。
【００４８】
次に、接続切替部１０６は、他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続していた周辺機器との接続を切断し、該アクセス要求がされた他の周辺機器に接続を切り替える（ステップＳ２０５）。このとき、アプリケーションレイヤにおいて確立したセッションは保持された状態で物理レイヤにおいて周辺機器の接続が切り替えられる。
【００４９】
次に、フロントアプリケーションからのアクセス要求である場合、管理部１０２は、タスクテーブル１０３のデフォルト値に「１」を設定する（ステップＳ２０６）。次に、データ送信部１０８は、データ送信命令及び自動更新（データ受信）をスタートさせる指示を送信する（ステップＳ２０７）。
【００５０】
なお、ステップＳ２００においてデータ要求（アクセス要求）がされない場合、データ送信部１０８は、アクセスが終了したかを判定する（ステップＳ２０８）。アクセスが終了していない場合にはステップＳ２００に戻り、アクセスが終了した場合には、終了したタスクのデフォルト値を「０」にセットし、デフォルト値を解除する（ステップＳ２０９）。
【００５１】
例えば、図８には、スマートフォン４で実行するアプリケーションが切り替えられて、アプリケーションレイヤにおいて周辺機器ＡＰ１、ＡＰ２、ＡＰ３とのセッションが確立されている状態である（Session1,2,3 start）。この状態で周辺機器ＡＰ１にアクセス要求のコマンド１（command1）が送信された後に、周辺機器ＡＰ２にアクセス要求のコマンド２（command2）が送信される場合を例に挙げる。この場合、アプリケーションレイヤにおいて周辺機器ＡＰ１、ＡＰ２、ＡＰ３との間で確立したセッションを保持した状態で、接続切替部１０６は、物理レイヤにおいて周辺機器の接続を切り替える。
【００５２】
図８では、接続切替部１０６は、周辺機器ＡＰ２へのアクセス要求に応じて物理レイヤにおいて接続していた周辺機器ＡＰ１との接続を切断し、該アクセス要求がされた他の周辺機器ＡＰ２に接続を切り替える。そして、データ送信部１０８は、周辺機器ＡＰ２にアクセス要求のコマンド２（command2）を送信する。これにより、周辺機器ＡＰ２にデータ送信命令が通知される。
【００５３】
その後、周辺機器ＡＰ３にアクセス要求のコマンド３（command3）が送信された場合、接続切替部１０６は、物理レイヤにおいて周辺機器ＡＰ２の接続を切断し、周辺機器ＡＰ３に接続を切り替える。このとき、アプリケーションレイヤにおいて確立したセッションは保持された状態で物理レイヤにおいて周辺機器の接続が切り替えられる。データ送信部１０８は、周辺機器ＡＰ３にアクセス要求のコマンド３（command3）を送信する。これにより、周辺機器ＡＰ３にデータ送信命令が通知される。
（通信制御処理：データ受信側の処理）
上記データ送信側の処理とは非同期に、所定時間経過後、図７の通信制御処理（データ受信側の処理）が開始される。接続切替部１０６は、タスクテーブル１０３を更新する（ステップＳ３００）。
【００５４】
次に、接続切替部１０６は、データの自動更新（データ受信）が可能かを判定する（ステップＳ３０１）。データの自動更新が可能でない場合、ステップＳ３００、Ｓ３０１の処理を繰り返す。データの自動更新が可能な場合、接続切替部１０６は、タスクテーブル１０３のコマンド１のタスク情報に含まれるデフォルト値が「１」に設定されているかを判定する（ステップＳ３０２）。デフォルト値が「１」に設定されている場合、接続切替部１０６は、フロントアプリケーションからの要求であるため、優先度が高いタスクであると判定し、処理中の周辺機器ＡＰからのデータを読み出す（ステップＳ３０３）。例えば、図６では、デフォルト値１３４が「１」のタスクＮｏ．１が実行され、周辺機器ＡＰ１からのデータが読み出され、データ受信部１０９により受信される。
【００５５】
一方、デフォルト値１３４が「０」の場合、接続切替部１０６は、サスペンド中、或いは１分以内に電源がオフになる周辺機器からのデータを読み出す（ステップＳ３０４）。例えば、接続切替部１０６は、タスクテーブル１０３のコマンド２のタスク情報に含まれるタスクの状態１３６が「suspend」の周辺機器ＡＰからデータを読み出すようにしてもよい。又は、接続切替部１０６は、スリープモードへの移行時間１３３が短い周辺機器ＡＰからデータを読み出すようにしてもよい。接続切替部１０６は、タスクテーブル１０３に記憶したタスクの優先度を判定する情報のうち、デフォルト値１３４、タスクの状態１３６、スリープモードへの移行時間１３３、タスクＮｏ．１３０のうちの少なくともいずれの情報に基づき、データを読み込む周辺機器の優先順位を決定することができる。
【００５６】
次に、接続切替部１０６は、タスクテーブル１０３のタスク情報に基づき、ステップＳ３０４で優先順位が最も高いと判定された周辺機器ＡＰに物理レイヤにおいて接続を切り替える（ステップＳ３０５）。例えば、ステップＳ３０４において周辺機器ＡＰ２の優先順位が最も高いと判定された場合、接続切替部１０６は、周辺機器ＡＰ１の接続を切断し、周辺機器ＡＰ２を接続する。このとき、セッションは確立されたままの状態で物理レイヤの接続のみが切り替えられる。データ受信部１０９は、接続された周辺機器ＡＰ（ここでは、周辺機器ＡＰ２）にデータ受信を要求し、所望のデータを受信する（ステップＳ３０６）。これにより、スマートフォン４は、データを受信するか、応答待ちを受信するか、エラー情報を受信する。例えば、図８では、スマートフォン４からのコマンド１に対して、周辺機器ＡＰ１から応答待ち(Wait response)が送信されている。
【００５７】
次に、ステップＳ３００〜Ｓ３０４の処理が実行され、ステップＳ３０４において周辺機器ＡＰ３の優先順位が最も高いと判定された場合、接続切替部１０６は、周辺機器ＡＰ２の接続を切断し、周辺機器ＡＰ３を接続するように物理レイヤの接続を切り替える。データ受信部１０９は、接続された周辺機器ＡＰ３にデータ受信要求し、所望のデータを受信する（ステップＳ３０６）。これにより、スマートフォン４は、図８に示されるｄａｔａ２のデータ及びｄａｔａ３のデータを受信する。ｄａｔａ２のデータ及びｄａｔａ３のデータの受信が完了すると、タスクテーブル１０３の周辺機器ＡＰ２（タスクＮｏ．２），周辺機器ＡＰ３（タスクＮｏ．３）タスクの状態１３６が処理済となり、タスクテーブル１０３から消去される。その結果、次に実行されるタスクは、タスクテーブル１０３に記憶されている周辺機器ＡＰ１（タスクＮｏ．１）となる。よって、接続切替部１０６は、周辺機器ＡＰ１と物理レイヤの接続を行い、データ受信部１０９は、図８のｄａｔａ１のデータを受信する。なお、すべてのタスクが処理済になったとき、セッション確立部１０４は、確立したセッションを終了する（図８のSession1,2,3 end）。
【００５８】
以上に説明したように、第１実施形態にかかる通信制御処理によれば、セッションを確立した状態で、周辺機器ＡＰ１から送信されるデータ量が多いｄａｔａ１のタスクをｄａｔａ２、３のタスクよりも後に処理することができる。これにより、周辺機器ＡＰ２、ＡＰ３との間での通信処理に遅延が生じることを回避できる。
【００５９】
また、本実施形態では、物理レイヤにおいて各周辺機器ＡＰとの接続の切り替えが制御され、各周辺機器とのセッションは確立した状態が保持される。これにより、複数の周辺機器と無線通信する際の接続を効率化することができる。
【００６０】
（構成例）
第１実施形態にかかる通信制御システム５としては、例えば、図９に示したように、スマートフォン４がローカルＷｅｂサーバと連携し、周辺機器ＡＰ（周辺機器（デバイス）がアクセスポイントとしても機能）がＷｅｂサーバと連携する構成例が挙げられる。スマートフォン４上で動作するアプリケーションは、ローカルＷｅｂサーバにアクセスし、ローカルＷｅｂサーバは、アプリケーションからの要求に応じて無線ＬＡＮの物理レイヤの接続及び切断の切り替えを制御する。その際、ローカルＷｅｂサーバは、図７のフローに示されるデータ送信側の接続切替及びデータ受信側の接続切替のロジックを用いて周辺機器の切り替えを行う。つまり、ローカルＷｅｂサーバは、タスクテーブル１０３（ＦＩＦＯ）の各タスクの状態に基づき、データ通信を行う周辺機器ＡＰを特定し、物理レイヤにおいて周辺機器ＡＰの接続を切り替える。そして、ローカルＷｅｂサーバは、接続された周辺機器ＡＰへのデータ送信及びデータ受信をそれぞれ別々に制御する。
【００６１】
接続された周辺機器ＡＰのＷｅｂサーバは、データ送信の要求に応じて周辺機器に保存された所望のデータを送信する。同様にして、Ｗｅｂサーバは、データ受信の要求に応じて周辺機器に保存された所望のデータを受信する。
【００６２】
以上に説明したように、本実施形態では、スマートフォン４がデータ送信側の接続切替及びデータ受信側の接続切替を非同期に行うことで、スマートフォン４と複数の周辺機器ＡＰとの同時接続を擬似的に実現する。これにより、スマートフォン４を使用するユーザへの応答性を高めることができる。
【００６３】
以上は、第１実施形態にかかる通信制御システム５の一例であって、通信制御システム５の適用形態はこれに限らない。例えば、図９に示した通信制御システム５の構成では、物理レイヤの接続切替は、スマートフォン４のアプリケーションからの指示に応じてローカルＷｅｂサーバで実行された。しかしながら、物理レイヤの接続切替の機能は、ローカルＷｅｂサーバ以外のサーバやスマートフォン４で実行されてもよい。また、タスクテーブル１０３は、スマートフォン４内の記憶領域に記憶されてもよいし、それ以外の記憶領域であってスマートフォン４やローカルＷｅｂサーバがアクセス可能な記憶領域に記憶されてもよい。
【００６４】
＜第２実施形態＞
（構成例）
次に、第２実施形態にかかる通信制御システム５について、図１０を参照しながら説明する。第２実施形態にかかる通信制御システム５は、図１０に示したように、Ｗｅｂサーバにてデバイス制御を行う（デバイス制御ロジック）。第２実施形態にかかる通信制御システム５では、Ｗｅｂサーバにてデバイス制御を行うこと以外は、第１実施形態にかかる通信制御システム５と同じである。このため、以下ではデバイス制御ロジックを中心に説明し、それ以外の説明を省略する。
【００６５】
第２実施形態では、周辺機器ＡＰと連携するＷｅｂサーバは、スマートフォン４から送信されるコマンドを管理する機能を有する。例えば、Ｗｅｂサーバは、スマートフォン４から送信されるコマンドを記憶する。また、Ｗｅｂサーバは、記憶されたコマンドの実行状況を示すステータスをコマンドに対応させて記憶する。コマンド及びコマンドのステータスが記憶される記憶領域は、周辺機器内外のいずれも記憶領域であってもよい。
【００６６】
Ｗｅｂサーバは、コマンドの実行状況に基づき周辺機器（デバイス）を制御する。Ｗｅｂサーバのデバイス制御について、図１１のデバイス制御処理のフローチャートを参照しながら説明する。
【００６７】
デバイス制御処理が開始されると、Ｗｅｂサーバは、アクセス要求を受信したかを判定し（ステップＳ４００）、受信したと判定するとアクセス要求に応じたコマンドを記憶する（ステップＳ４０１）。次に、Ｗｅｂサーバは、コマンドに応じたデータの読み出しが実行されたかを判定する（ステップＳ４０２）。データの読み出しが実行されていない場合、ステップＳ４００に戻り、ステップＳ４００の処理を繰り返す。
【００６８】
一方、データの読み出しが実行された場合、Ｗｅｂサーバは、データの読み出しが完了したかを判定する（ステップＳ４０３）。完了した場合、Ｗｅｂサーバは、コマンドのステータスに完了を記憶する（ステップＳ４０４）。一方、完了していない場合、Ｗｅｂサーバは、コマンドのステータスに未完了を記憶する（ステップＳ４０５）。
【００６９】
次に、Ｗｅｂサーバは、ステータスが完了かを判定する（ステップＳ４０６）。完了の場合、Ｗｅｂサーバは、スリープモードの移行時間経過後にスリープモードに移行する（ステップＳ４０７）。一方、未完了の場合、Ｗｅｂサーバは、スリープモードの移行時間経過後であってもスリープモードに移行しない（ステップＳ４０８）。
【００７０】
以上に説明したように、第２実施形態にかかる通信制御システム５によれば、周辺機器によりコマンドの実行状況を示すステータスが記憶され、管理される。これにより、第２実施形態では、接続が切断され、データの読み取りが途中で中断した状態の周辺機器は、移行時間経過後であってもスリープモードへ移行しないように制御できる。これによれば、スリープモードへ移行してデータが消去されることを防ぐことができる。よって、ある周辺機器においてデータの読み取りが途中で中断しても、その周辺機器が再接続されたときに、データの読み取りを中断された途中のデータから始めることができる。
【００７１】
＜第３実施形態＞
（構成例）
最後に、第３実施形態にかかる通信制御システム５について、図１２を参照しながら説明する。図１２に示したように、第３実施形態にかかる通信制御システム５は、第１実施形態の接続切替ロジック及び第２実施形態のデバイス制御ロジックによる制御に加えて、周辺機器がコールバックの通知を行う構成を有する。
【００７２】
第３実施形態にかかる通信制御システム５では、コールバックの通知を行うこと以外は、第２実施形態にかかる通信制御システム５と同じである。このため、以下ではコールバックの通知を中心に説明し、それ以外の説明を省略する。
【００７３】
第３実施形態では、周辺機器は、データ送信準備が完了したら、コールバックの通知を行う。このコールバックの通知は、データの通信に用いる無線ＬＡＮとは異なる通信手段を用いて実行される。例えば、データの通信に用いる無線ＬＡＮがＷｉ−Ｆｉの場合、それ以外の通信手段、例えば、ＢＬＥ（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）等の通信手段を用いてコールバックの通知がブロードキャスト送信される。周辺機器とデータ通信可能な位置にあるスマートフォン４は、このコールバックの通知を受信する。
【００７４】
コールバックで通知される情報には、周辺機器を特定するための情報（例えば、ＷＬＡＮ  ＳＳＩＤ：Service Set Identifier）が含まれる。これにより、スマートフォン４は、どの周辺機器がデータ送信準備を完了したかを知ることができ、スマートフォン４側からの無駄なポーリングを減らすことができる。
【００７５】
以上、端末装置、通信制御システム及び通信制御方法を上記実施形態により説明したが、本発明は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。
【００７６】
以上の説明に関し、更に以下の項を開示する。
（付記１）
アプリケーションレイヤにおいて周辺機器との通信のセッションを確立するセッション確立部と、
他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続中の周辺機器との接続を切断し、該アクセス要求された他の周辺機器に接続を切り替える接続切替部と、を有し、
前記接続切替部は、
アプリケーションレイヤにおいて前記確立したセッションを保持した状態で、所定時間経過後に物理レイヤにおいて前記他の周辺機器の接続を切断し、所望の周辺機器に接続を切り替える、
端末装置。
（付記２）
前記確立したセッションにおける周辺機器との通信のタスク情報を管理する管理部を有し、
前記接続切替部は、
前記通信のタスク情報に基づき特定される前記所望の周辺機器に接続を切り替える、
付記１に記載の端末装置。
（付記３）
前記通信のタスク情報には、周辺機器との通信の優先度を示す情報が含まれ、
前記接続切替部は、
前記優先度を示す情報に基づき特定される前記所望の周辺機器に接続を切り替える、
付記２に記載の端末装置。
（付記４）
アプリケーションレイヤにおいて周辺機器との通信のセッションを確立するセッション確立部と、
他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続中の周辺機器との接続を切断し、該アクセス要求された他の周辺機器に接続を切り替える接続切替部と、を有する端末装置と、
前記アクセス要求に応じて前記端末装置にデータを送信する複数の周辺機器と、を備え、
前記接続切替部は、
アプリケーションレイヤにおいて前記確立したセッションを保持した状態で、所定時間経過後に物理レイヤにおいて前記他の周辺機器の接続を切断し、所望の周辺機器に接続を切り替える、
通信制御システム。
（付記５）
前記複数の周辺機器のそれぞれは、
前記端末装置から受信したコマンドの実行状況を示すステータスを記憶し、
前記ステータスに応じて移行時間経過後にスリープモードへ移行するかを管理する、
付記４に記載の通信制御システム。
（付記６）
前記複数の周辺機器のそれぞれは、
前記端末装置へのデータの送信準備が完了したことを、前記セッションを確立した通信手段と異なる通信手段を用いて通知する、
付記４又は５に記載の通信制御システム。
（付記７）
前記確立したセッションにおける周辺機器との通信のタスク情報を管理する管理部を有し、
前記接続切替部は、
前記通信のタスク情報に基づき特定される前記所望の周辺機器に接続を切り替える、
付記４〜６に記載の通信制御システム。
（付記８）
前記通信のタスク情報には、周辺機器との通信の優先度を示す情報が含まれ、
前記接続切替部は、
前記優先度を示す情報に基づき特定される前記所望の周辺機器に接続を切り替える、
付記７に記載の通信制御システム。
（付記９）
アプリケーションレイヤにおいて周辺機器との通信のセッションを確立し、
他の周辺機器へのアクセス要求に応じて物理レイヤにおいて接続中の周辺機器との接続を切断し、該アクセス要求された他の周辺機器に接続を切り替える処理をコンピュータが実行し、
前記接続を切り替える処理は、
アプリケーションレイヤにおいて前記確立したセッションを保持した状態で、所定時間経過後に物理レイヤにおいて前記他の周辺機器の接続を切断し、所望の周辺機器に接続を切り替える、通信制御方法。
（付記１０）
前記確立したセッションにおける周辺機器との通信のタスク情報を管理し、
前記接続を切り替える処理は、
前記通信のタスク情報に基づき特定される前記所望の周辺機器に接続を切り替える、
付記９に記載の通信制御方法。
（付記１１）
前記通信のタスク情報には、周辺機器との通信の優先度を示す情報が含まれ、
前記接続を切り替える処理は、
前記優先度を示す情報に基づき特定される前記所望の周辺機器に接続を切り替える、
付記１０に記載の通信制御システム。
【符号の説明】
【００７７】
１：画像形成装置
４：スマートフォン
５：通信制御システム
１０：ＣＰＵ
１１：メモリ
１３：カメラ
１５：２次記憶装置
１７：無線通信Ｉ／Ｆ
１８：外部Ｉ／Ｆ
１００：撮像部アプリケーション
１０１：実行部
１０２：管理部
１０３：タスクテーブル
１０４：セッション確立部
１０６：接続切替部
１０８：データ送信部
１０９：データ受信部
１３０：タスクＮｏ．
１３３：スリープモードへの移行時間
１３４：デフォルト値
１３５：タスクの種類
１３６：タスクの状態
ＡＰ、ＡＰ１，ＡＰ２、ＡＰ３：周辺機器
【図１】
2015192210.tif 000003
【図２】
2015192210.tif 000004
【図３】
2015192210.tif 000005
【図４】
2015192210.tif 000006
【図５】
2015192210.tif 000007
【図６】
2015192210.tif 000008
【図７】
2015192210.tif 000009
【図８】
2015192210.tif 000010
【図９】
2015192210.tif 000011
【図１０】
2015192210.tif 000012
【図１１】
2015192210.tif 000013
【図１２】
2015192210.tif 000014