JP2018007073A - 情報処理装置、その制御方法、及びプログラム - Google Patents
情報処理装置、その制御方法、及びプログラム Download PDFInfo
- Publication number
- JP2018007073A JP2018007073A JP2016132776A JP2016132776A JP2018007073A JP 2018007073 A JP2018007073 A JP 2018007073A JP 2016132776 A JP2016132776 A JP 2016132776A JP 2016132776 A JP2016132776 A JP 2016132776A JP 2018007073 A JP2018007073 A JP 2018007073A
- Authority
- JP
- Japan
- Prior art keywords
- wireless communication
- communication
- packet
- unit
- information processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
【課題】複数の通信方式による並行動作を行う場合であっても、一方の通信方式による通信のスループットの低下を軽減する仕組みを提供する。【解決手段】本情報処理装置1は、第1の無線通信(BLE通信)と、第1の無線通信と通信規格の異なる第2の無線通信(無線LAN通信)とを順に動作させることにより、第1の無線通信及び第2の無線通信を並行して動作可能である。また、本情報処理装置は、第2の無線通信におけるデータの転送レートを計測し、計測結果に基づき、第1の無線通信による送信の間隔を決定する。【選択図】 図4
Description
本発明は、複数の異なる方式による無線通信を利用可能な情報処理装置、その制御方法、及びプログラムに関する。
近年、無線通信技術の進歩により携帯端末装置の利便性が飛躍的に向上しており、これまで利用されてきたパーソナルコンピュータ等に代わり、携帯端末装置の普及が急激に進んでいる。その使われ方も個人的な連絡ツールからビジネス用途に用いられるようになり、パーソナルコンピュータに代わる勢いで利用が拡大している。
また、これに伴って、携帯端末装置と無線通信を用いて連携することにより、文書の印刷やスキャン、各種データの転送などを行う情報処理装置もビジネス用途を中心に一般的になりつつある。現在、これらの装置に用いられる無線通信として2.4GHz帯のISM(Industrial Scienctific and Medical)バンドを使用する無線通信技術の普及が特に進んでいる。例えば、IEEE802.11規格に基づく無線LANは、すでに携帯端末装置をはじめとする各種装置における無線通信方式として、最も標準的に採用されているものである。
また、他の無線通信方式として、同じくISMバンドの利用により、携帯端末装置等との近距離での無線通信を目的とする、Bluetooth(登録商標)もその採用が進んでいる。近年、Bluetoothにおいてはその消費電力の低減を目的としたBluetooth Low Energy(以下、BLEと略記する。)の規格が追加され、さらに普及が進むことが期待されている。これらの無線通信方式はそれぞれに特徴があり、ユーザによる使われ方も異なることから、近年の傾向として、1台の装置でなるべく多くの無線通信方式に対応することが求められている。
そこで、ISMバンドを使用した複数の異なる無線通信方式に対応する装置の場合、同じ周波数帯を用いながら、異なる無線通信方式を同時に動作させなければならないため、さまざまな設計上の考慮が必要になる。例えば、特許文献1には、無線LANとBluetoothを同時に使用する際の互いの通信の干渉を回避する技術が提案されている。特許文献1によれば、無線LANによる無線通信とBluetoothによる無線通信を時分割的に制御し、無線LANのユーザデータのパケットサイズに応じて、Bluetoothの制御データの送信間隔を変更している。そして、Bluetoothの制御データの送信間隔の間隙を利用して無線LANのユーザデータのパケット通信を行うことにより、Bluetoothの制御データの送信が無線LANによる無線通信の干渉源になることを防止している。
しかしながら、上記従来技術には以下に記載する課題がある。例えば、近年、携帯端末装置のビジネス用途での使用の拡大に応じて、情報処理装置においても携帯端末装置との連携機能の拡充が求められている。このため、情報処理装置における無線通信機能として、従来から一般的となっている無線LANのみならず、BLEへの対応が進みつつある。
一方で、携帯端末装置を使用したアプリケーションとして、BLEによるビーコンを用いて携帯端末装置の位置検出を行う技術が提案されている。これは、一定の時間間隔で送信されるビーコンを携帯端末装置で受信することにより、ビーコンの受信電波強度(RSSI:Received Signal Strength Indicator)に基づき、ビーコンの送信源と携帯端末装置の相対的な距離を求めるものである。
従って、情報処理装置においてもBLEに対応することにより、ビーコンを送信して、連携する携帯端末装置との距離を求めて様々なサービスを提供することが考えられている。このため、情報処理装置は、BLEによるビーコンを一定の間隔で送信しつつ、無線LANによるデータ通信を行う並行動作に対応する必要がある。そして、この対応として情報処理装置は、BLEによるビーコンの送信と無線LANによるデータ通信を時分割的に切り換えて制御を行うことで並行動作に対応することが考えられる。しかし、この場合、BLEと、無線LANを択一的に切り換えて通信制御を行うため、BLEによるビーコン送信中は、無線LANのデータ通信は停止せざるを得ない。このため、BLEと、無線LANの並行動作時は、並行動作を行わずに無線LANのデータ通信のみを行っている場合と比較して、無線LANのスループットが低下してしまうという問題がある。
本発明は、上述の問題に鑑みて成されたものであり、複数の通信方式による並行動作を行う場合であっても、一方の通信方式による通信のスループットの低下を軽減する仕組みを提供することを目的とする。
本発明は、第1の無線通信と、該第1の無線通信と通信規格の異なる第2の無線通信とを順に動作させることにより並行して動作可能な情報処理装置であって、前記第1の無線通信を行う第1の無線通信手段と、前記第2の無線通信を行う第2の無線通信手段と、前記第2の無線通信手段による前記第2の無線通信におけるデータの転送レートを計測する計測手段と、前記計測手段による計測結果に基づき、前記第1の無線通信による送信の間隔を決定する決定手段とを備えることを特徴とする。
本発明によれば、複数の通信方式による並行動作を行う場合であっても、一方の通信方式による通信のスループットの低下を軽減することができる。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
<情報処理装置>
以下では、本発明の第1の実施形態について説明する。まず、図1及び図2を参照して、本実施形態に係る情報処理装置について説明する。図1は情報処理装置の外観を示し、図2は情報処理装置の内部構成を示す。本実施形態に係る情報処理装置1は、例えば、コピー機能、スキャン機能、FAX機能及び印刷機能など各種機能を備える一般的な複合機(画像処理装置)である。
以下では、本発明の第1の実施形態について説明する。まず、図1及び図2を参照して、本実施形態に係る情報処理装置について説明する。図1は情報処理装置の外観を示し、図2は情報処理装置の内部構成を示す。本実施形態に係る情報処理装置1は、例えば、コピー機能、スキャン機能、FAX機能及び印刷機能など各種機能を備える一般的な複合機(画像処理装置)である。
情報処理装置1は、ユーザによる操作指示を入力する操作パネル2と、ユーザが所持する携帯端末装置5や無線LANアクセスポイント(AP)6等と無線通信行うための無線通信部3と、情報処理装置1を統括的に制御する制御部4とを備える。無線通信部3は、少なくとも2つの通信規格(Bluetooth Low Energy規格及びIEEE802.11規格)による無線通信を行うことができる。制御部4は、インタフェースを介して、操作パネル2及び無線通信部3と接続され、それらを制御する。
携帯端末装置5は、ユーザが所持するも端末であり、これを使用して情報処理装置1と通信を行い、情報処理装置1を使用して各種処理を実行させることができる。無線LANアクセスポイント6は、情報処理装置1が無線LANによる通信を行う際の基地局となるものであり、有線LANと相互接続する機能を有する。PC7は、ユーザが使用するコンピュータ端末であり、有線LANを介して無線LANアクセスポイント6に接続される。
<ハードウェア構成>
次に、図3を参照して、情報処理装置1のハードウェア構成の一例について説明する。情報処理装置1は、ハードウェア構成として、操作パネル2、無線通信部3、及び制御部4に加えて、さらに、印刷処理部10、読取部11、及び記憶装置12を備える。印刷処理部10は、画像データに基づき印刷処理を実行する。読取部11は、原稿を読み取って画像データを生成する。記憶装置12は、各種情報を記憶する。これらのコンポーネントは、バス14を介して接続されることにより相互に通信可能に構成される。
次に、図3を参照して、情報処理装置1のハードウェア構成の一例について説明する。情報処理装置1は、ハードウェア構成として、操作パネル2、無線通信部3、及び制御部4に加えて、さらに、印刷処理部10、読取部11、及び記憶装置12を備える。印刷処理部10は、画像データに基づき印刷処理を実行する。読取部11は、原稿を読み取って画像データを生成する。記憶装置12は、各種情報を記憶する。これらのコンポーネントは、バス14を介して接続されることにより相互に通信可能に構成される。
また、上述したように、無線通信部3は、インタフェースを介してこの情報処理装置1の動作を制御する制御部4と通信可能に構成される。なお、インタフェースの具体例としてはUSB(Universal Serial Bus)が挙げられる。
制御部4は、CPU8とメモリ9とを備えており、各部の動作を統括的に制御する。CPU8は、記憶装置12に記憶されているプログラム13をメモリ9に読み出して実行する。プログラム13は、制御部4を後述する各種処理を行うために機能させるプログラムである。メモリ9は、CPU8がプログラムを実行することに伴う一時的なデータなどを記憶するワーク領域である。
操作パネル2は、上述したようにユーザによる操作指示を入力する構成を備える。例えば、操作パネル2は、液晶パネルなどで構成され、各種情報を表示する表示部2aと、その表示部2aに対する操作を検知することでユーザによる操作指示を入力する操作入力部2bで構成される。
無線通信部3は、無線通信の規格に基づいて外部機器との通信処理を行い、外部機器と制御部4との間で行われるデータ入出力を行う。本情報処理装置1における無線通信部3は、第1の無線通信としてBluetooth Low Energy(以下では、BLEと略記する。)規格に準拠した通信、及び第2の無線通信として無線LAN規格による通信を行うものとする。もちろん、本発明はこれに限定されず、他の無線通信を適用してもよい。
印刷処理部10は、画像データに基づき印刷処理を実行することで印刷物を出力する処理部である。例えば、印刷処理部10は、1枚ずつ給紙された用紙等の記録材に対して、画像データに基づき画像形成を行う画像形成部と、画像形成部によって形成されるトナー像(画像)を用紙に転写させる転写部と、用紙に転写されたトナー像を定着させる定着部とを備える。また、印刷処理部10は、印刷された印刷物を排出する搬送部なども備える。
読取部11は、原稿画像を読み取って画像データを生成する処理部である。例えば、原稿載置台に載置された複数の原稿を先頭から1枚ずつ搬送する原稿搬送部や、読み取った原稿画像を画像データに変換して生成する画像データ出力部などを備える。記憶装置12は、上述したプログラム13等を記憶する。
<無線通信部>
次に、図4を参照して、情報処理装置1における、無線通信部3のハードウェア構成の一例について説明する。無線通信部3は、無線LAN通信部15、BLE通信部16、無線制御部17、切換部19、及びアンテナ20を備える。無線LAN通信部15は、第2の無線通信手段として機能し、無線LAN規格に基づき無線LAN通信(第2の無線通信)の処理を行うものであり、具体的には無線LAN通信手順に従って、データパケットの送信及び受信の処理を行う。BLE通信部16は、第1の無線通信手段として機能し、Bluetooth規格に基づきBLE通信(第1の無線通信)の処理を行うものであり、具体的にはBLE通信手順に従って、BLEビーコンパケットの送信、データパケットの送信及び受信の処理を行う。
次に、図4を参照して、情報処理装置1における、無線通信部3のハードウェア構成の一例について説明する。無線通信部3は、無線LAN通信部15、BLE通信部16、無線制御部17、切換部19、及びアンテナ20を備える。無線LAN通信部15は、第2の無線通信手段として機能し、無線LAN規格に基づき無線LAN通信(第2の無線通信)の処理を行うものであり、具体的には無線LAN通信手順に従って、データパケットの送信及び受信の処理を行う。BLE通信部16は、第1の無線通信手段として機能し、Bluetooth規格に基づきBLE通信(第1の無線通信)の処理を行うものであり、具体的にはBLE通信手順に従って、BLEビーコンパケットの送信、データパケットの送信及び受信の処理を行う。
無線制御部17は、無線LAN通信部15とBLE通信部16の通信の処理を制御するものである。無線制御部17は、無線LAN通信部15と、BLE通信部16とを順に動作させることにより、当該2つの通信を並行して動作可能である。以下では、無線制御部17の制御により実現される2つ以上の異なる通信規格による無線通信の実行を「並行動作」と称する。また、無線制御部17は、タイマ18を備えており、タイマ18により所定時間を計時することができる。さらに、無線制御部17は、インタフェースを介して制御部4と接続され、無線LAN通信部15、及びBLE通信部16により行われる無線通信に関する各種のデータを制御部4とやりとりすることができる。
切換部19は、無線LAN通信部15及びBLE通信部16による通信処理の駆動を切り換える。具体的には、切換部19は、無線LAN通信部15及びBLE通信部16による、それぞれの送信信号及び受信信号とアンテナ20との接続を切り換え、通信経路の切り換えを行うスイッチである。なお、上述した切換部19の通信経路の切換制御は無線制御部17により行われる。
アンテナ20は、外部機器から到来する電波を受信し、また、外部機器に対して電波を送信するためのアンテナである。アンテナ20は、電波として受信した信号を、切換部19を介して無線LAN通信部15又はBLE通信部16に伝達し、さらに、無線LAN通信部15又はBLE通信部16から送信された信号を電波として送信する。本実施形態では、無線通信部3は、無線LAN規格及びBLE規格に対応しており、いずれの規格も2.4GHz帯を使用しているため、前述したように、一つのアンテナを切り換えて共用することが可能である。
<携帯端末装置>
次に、図5を参照して、携帯端末装置5のハードウェア構成の一例について説明する。携帯端末装置5は、制御部21、無線LAN通信部24、記憶装置25、BLE通信部26、及び操作パネル27を備える。
次に、図5を参照して、携帯端末装置5のハードウェア構成の一例について説明する。携帯端末装置5は、制御部21、無線LAN通信部24、記憶装置25、BLE通信部26、及び操作パネル27を備える。
制御部21は、携帯端末装置5を統括的に制御するものであり、CPU22、及びメモリ23から構成される。CPU22は、記憶装置25に記憶されている各種プログラムをメモリ23に読み出して実行する。メモリ23は、CPU22がプログラムを実行することに伴う一時的なデータなどを記憶するものである。
無線LAN通信部24は、無線LAN規格に基づいて外部機器との通信処理を行い、外部機器と制御部21の間で行われるデータ入出力処理を行う。また、BLE通信部26は、Bluetooth規格に基づいて外部機器とのBLE通信処理を行い、外部機器と制御部21の間で行われるデータ入出力処理を行う。
操作パネル27は、ユーザによる操作指示を入力する構成を備える。即ち、操作パネル27は、液晶パネルにより構成され各種情報を表示する表示部27aと、その表示部27aに対する操作を検知することでユーザによる操作指示を入力する操作入力部27bで構成される。また、図示していないが、携帯端末装置5はバッテリや電源制御部など携帯端末装置として必要な電源供給の構成を備えている。
<切換制御>
次に、図4で示した無線通信部3における切換部19の切換制御について詳述する。上述したように、無線通信部3は、無線LAN通信部15とBLE通信部16とから構成されており、それぞれ、無線LAN規格に基づいた無線LAN通信(第2の無線通信)とBluetooth規格に基づいたBLE通信(第1の無線通信)とが可能である。なお、このように異なる複数の機能を1つのICに搭載したものをコンボチップと称する。本実施形態では、無線LAN通信とBLE通信のコンボチップを用いる。また、無線LAN通信とBLE通信のコンボチップは、無線周波数が同じ2.4GHz帯のため、1つのアンテナを切り換えて使用できるという特徴を有する。
次に、図4で示した無線通信部3における切換部19の切換制御について詳述する。上述したように、無線通信部3は、無線LAN通信部15とBLE通信部16とから構成されており、それぞれ、無線LAN規格に基づいた無線LAN通信(第2の無線通信)とBluetooth規格に基づいたBLE通信(第1の無線通信)とが可能である。なお、このように異なる複数の機能を1つのICに搭載したものをコンボチップと称する。本実施形態では、無線LAN通信とBLE通信のコンボチップを用いる。また、無線LAN通信とBLE通信のコンボチップは、無線周波数が同じ2.4GHz帯のため、1つのアンテナを切り換えて使用できるという特徴を有する。
これに対して、アンテナ20は、無線LAN通信とBLE通信で共用されるため、切換部19により、それぞれの通信状態に応じて、通信経路を切り換えながら通信を行う必要がある。このため、各通信状態に応じた通信経路の切り換えにおいて優先順位が発生する。図4に示すように、切換部19は、切り換え用の接点19a、19b、19cと共通接点からなるスイッチから成り、共通接点はアンテナ20に接続されている。
一方、接点19aは、無線LAN通信部15から送信される無線LAN送信信号に接続される。接点19bは、無線LAN通信部15にもたらされる無線LAN受信信号、及び、BLE通信部16にもたらされるBLE受信信号に並列的に接続される。接点19cは、BLE通信部16から送信されるBLE送信信号に接続される。なお、このBLE送信信号に関しては、Bluetooth規格で規定される、BLEのビーコンパケットの送信、及びBLEのデータ通信におけるデータパケットの送信の各状態を含んでいるものとする。
図6は、切換部19における通信経路の切換制御の優先順位を示す。まず、BLE通信部16による、BLEのパケット送信状態が優先順位1(最優先)であり、このとき切換部19の切換接点は19cに設定される。次に、BLE通信部16による、BLEのパケット受信状態が優先順位2となり、切換部19の切換接点は19bに設定される。次に、無線LAN通信部15による、無線LANのパケット送信状態が優先順位3となり、切換部19の切換接点は19aに設定される。次に、無線LAN通信部15による、無線LANのパケット受信状態が優先順位4となり、切換部19の切換接点は19bに設定される。いずれの無線通信も行っていないアイドル状態においては、切換部19の切換接点は19bとする。なお、上述した、各通信状態の優先順位に応じた、無線LAN通信部15、BLE通信部16における通信制御、及び切換部19の切換制御は、無線制御部17によって行われるものとする。
<Bluetooth通信のフロー>
次に、図7を参照して、情報処理装置1と携帯端末装置5の間で行われるBluetooth通信のフローについて説明する。なお、この通信フローは、Bluetooth規格で規定されるBLE通信のフローに基づくものである。ここで、情報処理装置1は、上述した無線制御部17により、BLE通信部16及び切換部19を制御してBLE通信を行う。
次に、図7を参照して、情報処理装置1と携帯端末装置5の間で行われるBluetooth通信のフローについて説明する。なお、この通信フローは、Bluetooth規格で規定されるBLE通信のフローに基づくものである。ここで、情報処理装置1は、上述した無線制御部17により、BLE通信部16及び切換部19を制御してBLE通信を行う。
まず、無線制御部17は、制御部4により指示された一定の時間間隔で、BLE通信部16及び切換部19を制御して、不特定多数の装置を対象としたビーコンパケット701〜705を送信する。なお、本実施形態では、このビーコンパケットを送信する時間間隔をTbeaconとする。また、本実施形態において、情報処理装置1が送信するビーコンパケットには、情報処理装置1の機種名等、装置を特定するための属性情報が含まれる。
携帯端末装置5では、ユーザによる操作により記憶装置25内のプログラムが起動され、BLE通信の要求が発生すると、制御部21内のCPU22は、BLE通信部26に対して通信の開始を命令する。BLE通信部26は、接続対象となるビーコンパケットのサーチを行い、接続対象となるビーコンパケットを見つけると、BLE通信要求を示すリクエストパケット706を送信する。情報処理装置1は、このリクエストパケット706をBLE通信部16により受信すると、携帯端末装置5からのデータパケット707、709の受信に移行する。同時に、情報処理装置1は、BLE通信部16を制御して、ビーコンパケットの送信を中止する。
この後、携帯端末装置5は、通信規定に従い1番目のデータパケット707を送信する。そして、1番目のデータパケット707に対する1番目のレスポンスパケット708を受信するとパケット内のデータを取り出し、制御部21のCPU22に出力する。制御部21のCPU22は更なるデータ通信が必要であれば、送信データをBLE通信部26に対して出力し、データ転送を命令する。命令を受けたBLE通信部26は2番目のデータパケット709を送信し、これに対する2番目のレスポンスパケット710を受信する。上記を繰り返して、携帯端末装置5から情報処理装置1へのデータの転送を行う。更なるデータ転送が無ければ、BLE通信の切断を行い、動作を終了する。
以上の説明を踏まえて、本実施例形態において、BLE通信と無線LAN通信とを同時に行う際に、BLEビーコンパケットの時間間隔を制御する動作について、以下にフローチャートや図を用いて詳細に説明する。
<処理手順>
<ビーコン送信間隔の設定>
まず、図8を参照して、情報処理装置1の制御部4が、無線通信部3におけるBLEビーコン送信の時間間隔を設定する動作について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
<ビーコン送信間隔の設定>
まず、図8を参照して、情報処理装置1の制御部4が、無線通信部3におけるBLEビーコン送信の時間間隔を設定する動作について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
S801で、制御部4は、BLEビーコンの間隔を決定する。具体的には、制御部4は、記憶装置12に記憶されている無線LANのスループットと、BLEビーコンの間隔を関連づけたテーブルデータとを参照して、BLEビーコンの間隔を決定する。
図16は、テーブルデータの一例を示す。図16に示すように、テーブルデータには、起動時として、BLEビーコン間隔30ms(第1の送信間隔)、初期基準未達時としてBLEビーコン間隔100ms(第2の送信間隔)、上昇基準未達時としてBLEビーコン間隔30msが格納されている。情報処理装置1の起動時には起動時の30msが選択される。
図8の説明に戻る。次に、S802で、制御部4は、S801で決定した、BLEビーコン間隔の設定値を無線通信部3に対して送信して、無線通信部3に設定を行う。続いて、S803で、制御部4は、サブルーチン「受信スループット計測」を実行する。ここで、スループットとは、無線LAN通信におけるデータの転送レートを示す。
ここでS803のサブルーチン「受信スループット計測」を説明する。S821で、制御部4は、無線通信部3から無線LAN受信開始通知を受けたか否かを判定する。無線LAN受信開始通知を受けていないと判定した場合は(Noの場合)は、S821の判定を繰り返す。一方、無線LAN受信開始通知を受けたと判定した場合は(YESの場合)は、制御部4は、S822で時間計測を開始する。その後、S823で、制御部4は、無線通信部3から無線LAN受信データを受信したか否かを判定する。無線LAN受信データを受信していないと判定した場合は(NOの場合)、S822に戻り時間計測を継続する。一方、S823で、制御部4は、無線LAN受信データを受信したと判定した場合は、受信したデータサイズをS822で計測した受信時間から、次式(1)を用いて受信スループットを算出する。
受信スループット(MB/S)=受信データサイズ(MB)/受信時間(S)・・・式(1)
制御部4は、上記式(1)でスループットを算出すると、これを記憶装置12に記録しメインルーチンに処理を戻す。
受信スループット(MB/S)=受信データサイズ(MB)/受信時間(S)・・・式(1)
制御部4は、上記式(1)でスループットを算出すると、これを記憶装置12に記録しメインルーチンに処理を戻す。
メインルーチンのS804で、制御部4は、算出した受信スループットを記憶装置12に格納されている「受信基準値」と比較し、受信スループットが受信基準値よりも低いか否かを判定する。「受信基準値」の一例としては30MB/Sとする。制御部4は、受信スループットが受信基準値よりも低い(予め定められた転送レートよりも低い)と判定した場合(YESの場合)はS805に処理を進める。一方、制御部4は、受信スループットが受信基準値よりも低くない(予め定められた転送レート以上)と判定した場合(NOの場合)はS811に処理を進める。
S805で、制御部4は、BLEビーコン間隔を決定する。具体的には、制御部4は、記憶装置12に記憶されているBLEビーコン間隔のテーブルデータ(図16)を参照して、BLEビーコンの間隔を決定する。ここでは受信スループットが受信基準値よりも低いと判定したので初期基準未達時である100msを選択する。続いて、S806で、制御部4は、S805で決定した、BLEビーコン間隔の設定値を無線通信部3に対して送信して、無線通信部3に設定を行う。
次に、S807で、制御部4は、サブルーチン「受信スループット計測」を実行する。サブルーチン「受信スループット計測」の詳細な内容(S821乃至S824)については既に説明しているため省略する。そして、S808で、制御部4は、記憶装置12に記録したビーコン間隔を変更する前のS803で計測した受信スループットとビーコン間隔を変更した後のS807で計測したスループットを比較する。比較した結果、制御部4は、BLEビーコン間隔の変更前後においてスループットがある閾値(例えば5MB/S)以上上昇したか否かを判定する。変更後のスループットが変更前のスループットよりもある閾値以上上昇していないと判定した場合(NOの場合)は、制御部4はS809に処理を進める。一方、変更後のスループットが変更前のスループットよりもある閾値以上上昇したと判定した場合(YESの場合)は、制御部4はS811に処理を進める。
S809で、制御部4は、BLEビーコン間隔を決定する。具体的には、制御部4は、記憶装置12に記憶されているBLEビーコン間隔のテーブルデータ(図16)を参照して、BLEビーコンの間隔を決定する。ここでは、変更後のスループットが変更前のスループットよりもある閾値以上上昇していないと判定したので上昇基準未達時である30msを選択する。S810で、制御部4は、S809で決定した、BLEビーコン間隔の設定値を無線通信部3に対して送信して、無線通信部3に設定を行う。
そして、S811で、制御部4は、受信データを解析し、1つのジョブ(プリントデータ等)のデータ受信が完了したか否かを判定する。制御部4は、1つのジョブのデータ受信が完了していないと判定した場合(NOの場合)は、S811に処理を戻してジョブの完了を監視し、1つのジョブのデータ受信が完了したと判定した場合(YESの場合)は、S803に処理を戻す。
このように、制御部4は、受信スループットが低いときは、BLEビーコン間隔を大きくし、再度受信スループットを計測し、変更した効果が低い場合は、BLEビーコン間隔を元に戻し、効果が高かった場合はBLEビーコン間隔を維持する。
<タイマ設定>
次に、図9を参照して、情報処理装置1の無線通信部3が、制御部4からBLEビーコン間隔の設定値を受信して、ビーコン間隔をタイマに設定する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
次に、図9を参照して、情報処理装置1の無線通信部3が、制御部4からBLEビーコン間隔の設定値を受信して、ビーコン間隔をタイマに設定する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
S901で、無線通信部3の無線制御部17は、制御部4からBLEビーコン間隔の設定値を受信したか否かを判定する。無線制御部17は、BLEビーコン間隔の設定値を受信した場合(YESの場合)は、S902に処理を進め、BLEビーコン間隔の設定値を受信していない場合(NOの場合)はS901に処理を戻す。
S902で、無線制御部17は、制御部4から受信した、BLEビーコン間隔の設定値をタイマ18に設定する。続いて、S903では、無線制御部17は、S902でタイマ18に設定したBLEビーコン間隔の設定値に基づき、タイマ18を開始させる。上述したように、無線制御部17は、制御部4からBLEビーコン間隔の設定値を受信するたびに、タイマ18の設定を行う。この後、動作を終了する。
<ビーコンパケット送信>
次に、図10を参照して、情報処理装置1の無線制御部17の制御により、BLEのビーコンパケットを送信する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
次に、図10を参照して、情報処理装置1の無線制御部17の制御により、BLEのビーコンパケットを送信する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
S1001で、無線制御部17は、タイマ18によるタイマ割り込みが発生したか否かを判定する。ここで、タイマ割り込みの発生は、図9のフローチャートに従ってタイマ18に設定された、BLEのビーコン間隔時間が経過したことを示すものである。無線制御部17は、タイマ割り込みが発生したと判定した場合(YESの場合)は、S1002に処理を進め、タイマ割り込みが発生していないと判定した場合(NOの場合)は、S1001に処理を戻す。
S1002で、無線制御部17は、切換部19の切換接点を19cに設定する。続いて、S1003で、無線制御部17は、BLE通信部16を制御して、BLEのビーコンパケットを送信する。S1004で、無線制御部17は、切換部19の切換接点を19bに設定する。これは、S1003で送信したビーコンパケットに対するリクエストパケットやデータパケットを受信するための処理である。この後、S1001に処理を戻す。
従って、S1001からS1004をループすることにより、BLEビーコン間隔の設定に従って、一定間隔でタイマ18のタイマ割り込みが発生し、BLEビーコンパケットの送信が定期的に繰り返し行われることになる。つまり、S902で設定したBLEビーコン間隔で当該パケットを送信することができる。
<BLEデータパケット受信>
次に、図11を参照して、情報処理装置1の無線制御部17の制御により、BLEのデータパケットを受信する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
次に、図11を参照して、情報処理装置1の無線制御部17の制御により、BLEのデータパケットを受信する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
S1101で、無線制御部17は、切換部19の切換接点を19bに設定する。なお、当該処理は、上記S1004で、19bに設定されている状態であればスキップされてもよい。S1102で、無線制御部17は、BLE通信部16を制御して外部機器から自機宛てのBLE通信のリクエストパケットを受信したか否かを判定する。無線制御部17は、BLE通信のリクエストパケットを受信したと判定した場合(YESの場合)は、S1103に処理を進め、BLE通信のリクエストパケットを受信していないと判定した場合(NOの場合)は、S1102の判定を繰り返す。
S1103で、無線制御部17は、BLEのビーコンパケットの送信を中止する。即ち、無線制御部17は、BLE通信部16を制御して、図10のフローチャートで示したBLEのビーコンパケットの送信動作を中止する。S1104で、無線制御部17は、BLE通信部16を制御して外部機器から自機宛てのデータパケットを受信したか否かを判定する。無線制御部17は、BLEのデータパケットを受信したと判定した場合(YESの場合)は、S1105に処理を進め、BLEのデータパケットを受信していないと判定した場合(NOの場合)は、S1104の判定を繰り返す。
S1105で、無線制御部17は、BLE通信部16を制御して受信したデータパケットを解析する。即ち、無線制御部17は、Bluetoothの通信規定に基づき、受信したデータパケットのCRC(巡回冗長検査)等を行い、受信パケットのデータに誤りがないか解析する。
次に、S1106で、無線制御部17は、S1105の受信パケットの解析結果に基づき、受信パケットが正常であるか否か判定する。無線制御部17は、受信データパケットが正常であると判定した場合(YESの場合)は、S1107に処理を進め、受信データパケットが正常でないと判定した場合(NOの場合)は、S1104に処理を戻す。
S1107で、無線制御部17は、切換部19の切換接点を19cに設定する。続いて、S1108で、無線制御部17は、BLE通信部16を制御して、BLEのレスポンスパケットを送信する。S1109で、無線制御部17は、切換部19の切換接点を19bに設定する。その後、S1110で、無線制御部17は、BLE通信部16を制御して、BLEデータパケットを全て受信し、データパケットの受信を終了するか否かを判定する。即ち、Bluetoothの通信規定の通信制御に基づき、期待されたパケットを全て受信して、データ通信は終了と判定した場合(YESの場合)は、無線制御部17はS1111に処理を進める。一方、無線制御部17は、期待されたパケットを全て受信しておらず、データ通信は終了でないと判定した場合(NOの場合)はS1104に処理を戻して、データパケットの受信を繰り返す。
S1111で、無線制御部17は、BLE通信部16を制御して、BLE受信したデータを制御部4に転送する。具体的には、無線制御部17は、BLE通信部16を制御して、S1104〜S1110により受信したBLEの受信パケットのペイロード部からユーザデータを抜き出して、これをまとめて受信データとして制御部4に転送する。この後、動作を終了する。
<無線LANデータパケット送信>
次に、図12を参照して、情報処理装置1の無線制御部17の制御により、無線LANのデータパケットを送信する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
次に、図12を参照して、情報処理装置1の無線制御部17の制御により、無線LANのデータパケットを送信する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
S1201で、無線制御部17は、制御部4から送信データを受信する。即ち、情報処理装置1において、制御部4が無線LANのデータ送信が必要と判定すると、制御部4により生成された無線LANの送信データが、制御部4から無線制御部17に転送され、無線制御部17により受信される。
S1202で、無線制御部17は、制御部4から転送され受信した送信データを無線LAN通信規定に基づき、所定の送信パケットの形態に変換して、外部へ送信する送信パケットを生成する。S1203で、無線制御部17は、切換部19の切換接点を19aに設定する。S1204で、無線制御部17は、無線LAN通信部15を制御して、通信相手である外部装置に対して、S1202で生成した無線LANのデータパケットを送信する。
次に、S1205で、無線制御部17は、切換部19の切換接点を19bに設定する。S1206で、無線制御部17は、無線LAN通信部15を制御して、通信相手である外部装置から、無線LAN通信規定の通信制御に基づき、ACKパケットを受信したか否かを判定する。無線制御部17は、ACKパケットを受信したと判定した場合(YESの場合)は、S1207に処理を進め、ACKパケットを受信していないと判定した場合(NOの場合)は、S1208に処理を進める。
S1208で、無線制御部17は、S1204で送信したデータパケットが、通信相手である外部装置に正常に受信されていないものとして、無線LAN通信部15を制御して、S1204で送信した無線LANのデータパケットを再送する。その後、再度、S1206に進み、無線制御部17は、ACKパケットを受信したか否かを判定する。即ち、S1206で、ACKパケットを受信できなかった場合は、S1208に移行してデータパケットの再送を行い、通信相手である外部装置から正しくACKパケットを受信できるまで繰り返す。
S1207で、無線LAN通信部15は、全てのデータパケットの送信が終了したか否かを判定する。即ち、無線LANの通信規定の通信制御に基づき、期待されたACKパケットを全て送信して、データ通信は終了と判定した場合(YESの場合)は処理を終了する。一方、期待されたACKパケットを全て受信しておらず、データ通信は終了でないと判定した場合(NOの場合)は、S1202に処理を戻し、データパケットの送信を繰り返す。
<無線LANデータパケット受信>
次に、図13を参照して、情報処理装置1の無線制御部17の制御により、無線LANのデータパケットを受信する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
次に、図13を参照して、情報処理装置1の無線制御部17の制御により、無線LANのデータパケットを受信する処理手順について説明する。以下で説明する処理は、例えば、情報処理装置1のCPU8が記憶装置12に記憶されたプログラム13をメモリ9に読み出して実行することにより実現される。
S1301で、無線制御部17は、切換部19の切換接点を19bに設定する。続いて、S1302で、無線制御部17は、無線LAN通信部15を制御して外部機器から自機宛てのデータパケットを受信したか否か判定する。無線制御部17は、無線LANのデータパケットを受信したと判定した場合(YESの場合)は、S1303に処理を進め、無線LANのデータパケットを受信していないと判定した場合(NOの場合)は、S1302の判定を繰り返す。
S1303で、無線制御部17は、無線LAN通信部15を制御して受信したデータパケットを解析する。即ち、無線制御部17は、無線LANの通信規定に基づき、受信したデータパケットのフレームチェック等を行い、受信パケットのデータに誤りが無いか解析する。続いて、S1304で、無線制御部17は、S1303の受信パケットの解析結果に基づき、受信パケットが正常であるか否かを判定する。無線制御部17は、受信データパケットが正常であると判定した場合(YESの場合)は、S1305に処理を進め、受信データパケットが正常でないと判定した場合(NOの場合)は、S1302に処理を戻す。
S1305で、無線制御部17は、切換部19の切換接点を19aに設定する。続いて、S1306で、無線制御部17は、無線LAN通信部15を制御して、無線LANの通信規定の通信制御に従ったACKパケットを送信する。S1307で、無線制御部17は、切換部19の切換接点を19bに設定する。
S1308で、無線制御部17は、無線LAN通信部15を制御して、無線LANデータパケットを全て受信して、データパケットの受信が終了しているか否かを判定する。即ち、無線制御部17は、無線LANの通信規定の通信制御に基づき、期待されたパケットを全て受信して、データ通信が終了していると判定した場合(YESの場合)はS1309に処理を進める。一方、無線制御部17は、期待されたパケットを全て受信しておらず、データ通信が終了していないと判定した場合(NOの場合)はS1302に処理を戻し、データパケットの受信を繰り返す。
S1309で、無線制御部17は、無線LAN通信部15を制御して、無線LANで受信したデータを制御部4に転送する。具体的には、無線制御部17は、無線LAN通信部15を制御して、S1302〜S1308により受信した無線LANの受信パケットのペイロード部からユーザデータを抜き出して、これをまとめて受信データとして制御部4に転送する。この後、動作を終了する。
<BLEデータパケット送信(携帯端末装置)>
次に、図14を参照して、携帯端末装置5においてBLEによる無線通信の要求が発生してデータパケットを送信する処理手順について説明する。以下で説明する処理は、例えば、携帯端末装置5のCPU22が記憶装置25に記憶されたプログラムをメモリ23に読み出して実行することにより実現される。
次に、図14を参照して、携帯端末装置5においてBLEによる無線通信の要求が発生してデータパケットを送信する処理手順について説明する。以下で説明する処理は、例えば、携帯端末装置5のCPU22が記憶装置25に記憶されたプログラムをメモリ23に読み出して実行することにより実現される。
S1401で、CPU22は、携帯端末装置5上で動作するアプリケーションソフトウエアにおいてBLEを使用するものからの通信の接続要求が発生したかを判定する。CPU22は、接続要求があった場合(YESの場合)にはS1402に処理を進め、接続要求がない場合(NOの場合)は接続要求が発生するまでS1401の判定を繰り返す。
S1402で、CPU22は、BLE通信部26によりビーコンパケットをサーチする。S1403で、CPU22は、ビーコンパケットが検出できたかを判定し、ビーコンパケットが検出できなかった場合(NOの場合)は1402に処理を戻し、ビーコンパケットが検出された場合(YESの場合)はS1404に処理を進める。
S1404で、CPU22は、検出したビーコンパケットのパケット内部のデータを取り出してデータを解析する。なお、このビーコンパケットには前述したように、情報処理装置1の機種名等、装置を特定するための属性情報が含まれている。続いて、S1405で、CPU22は、ビーコンパケットのデータに含まれている情報処理装置1の機種名等の属性情報を読み出して、探している情報処理装置1か否かを判定する。CPU22は、探している情報処理装置1でない場合(NOの場合)はS1402に処理を戻し、探している装置である場合(YESの場合)はS1406に処理を進める。
S1406で、CPU22は、BLE通信部26により、通信相手である情報処理装置1に対してリクエストパケットを生成して送信する。続いて、S1407で、CPU22は、BLE通信部26によって、通信相手である情報処理装置1に対するデータパケットを生成する。S1408で、CPU22は、BLE通信部26によって、通信相手である情報処理装置1に対するデータパケットを送信する。
次に、S1409で、CPU22は、BLE通信部26によるS1408でのデータパケット送信に対する、情報処理装置1からのレスポンスパケットを受信したか否かを判定する。CPU22は、レスポンスパケットを受信できなかったと判定した場合(NOの場合)は、S1411に処理を進める。S1411で、CPU22は、S1409で送信したデータパケットが情報処理装置1に正常に受信されていないものとして、S1409で送信したデータパケットを再送し、処理をS1409に戻す。その後、CPU22は、BLE通信部26によって、S1408のデータパケット送信に対する、情報処理装置1からのレスポンスパケットを受信したかを判定する。即ち、S1409において情報処理装置1からのレスポンスパケットを受信できなかったと判定した場合は、S1411に移行してデータパケットの再送を行い、レスポンスパケットを受信するまで繰り返す。
一方、CPU22は、S1410で、レスポンスパケットを受信したと判定した場合(YESの場合)は、S1410に処理を進める。S1410で、CPU22は、全てのデータパケットの送信を行い、データ送信が終了したか否かを判定する。CPU22は、全てのデータ送信を終了したと判定した場合(YESの場合)、BLEのデータ送信を終了し、データ送信が終了していないと判定した場合(NOの場合)は、S1407に処理を戻して、データパケットの送信を繰り返す。
<並行動作>
次に、図15、図17、図18を参照して、情報処理装置1における、無線LAN通信(第2の無線通信)と、BLE通信(第1の無線通信)との並行動作について説明する。本実施形態では、情報処理装置1は、携帯端末装置5とBLE通信を行い、BLEデータを受信するものとする。また、情報処理装置1は、無線LANアクセスポイント6に接続されたPC7とデータの送受信を行うために、無線LANアクセスポイント6を介して、無線LAN通信を行うものとする。そして、この際に、情報処理装置1において、BLE通信と無線LAN通信の並行動作が発生することになる。
次に、図15、図17、図18を参照して、情報処理装置1における、無線LAN通信(第2の無線通信)と、BLE通信(第1の無線通信)との並行動作について説明する。本実施形態では、情報処理装置1は、携帯端末装置5とBLE通信を行い、BLEデータを受信するものとする。また、情報処理装置1は、無線LANアクセスポイント6に接続されたPC7とデータの送受信を行うために、無線LANアクセスポイント6を介して、無線LAN通信を行うものとする。そして、この際に、情報処理装置1において、BLE通信と無線LAN通信の並行動作が発生することになる。
まず、情報処理装置1は携帯端末装置5と図7で示したフローに従いBLE通信を行う。ここで、情報処理装置1は、図10のフローチャートに基づき、Tbeaconの一定間隔でBLEビーコンパケットを送信する。これに対して、携帯端末装置5は、図12のフローチャートに基づきBLEデータパケットを送信する。
そして、情報処理装置1において、図11のフローチャートに基づきBLEデータパケットの受信が行われる。一方、情報処理装置1は、図12のフローチャートに基づき、無線LANアクセスポイント6に対して無線LANデータのパケット送信を行い、データをPC7に送信する。また、情報処理装置1は、図13のフローチャートに基づき、無線LANアクセスポイント6から無線LANデータのパケット受信を行い、データをPC7から受信する。
図15は、情報処理装置1における、パケットレベルでの、BLE通信と無線LAN通信の並行動作を説明する図である。図15の例では、BLE通信のビーコンパケットの送信間隔を固定した場合の様子を示している。図15において、白抜きの矩形で示したパケットは情報処理装置1における送信パケットを意味する。また、網掛けの矩形で示したパケットは情報処理装置1における受信パケットを意味する。また、横軸は時間の経過を意味するものとする。
図15(a)は、情報処理装置1における、BLE通信のビーコンパケット送信と無線LAN通信のデータパケット受信の並行動作を示す。
パケット1501はBLE通信で送信されるビーコンパケットを示しており、これは、図10のフローチャートに従い、Tbeaconで示される一定の時間間隔で送信される。パケット1502は無線LAN通信で受信されるデータパケットを示しており、これは、図13のフローチャートに従い受信される。パケット1502は、S1304で正常なパケットであると判定されると、情報処理装置1は、S1306においてACKパケットを送信する。これを、パケット1503として示す。このように、データパケットであるパケット1502が正常に受信されると、これに対する、ACKパケットであるパケット1503が送信される。
ここで、BLE通信のビーコン送信パケットである、パケット1501が送信されるタイミングで、無線LAN通信のデータ受信パケットである、パケット1504が受信されたとする。しかし、図6で示した通り、BLE送信は、優先順位が一番高いため、BLE送信が優先され、図10のフローチャートに従い、S1002で切換部19を19cに設定して、S1003によりBLEビーコンパケットを送信する。この後、S1004で切換部19を19bに設定する。
この際に、切換部19が19cに設定されている間は、受信されたパケット1504は、正しく、無線LAN通信部15に到達しないため、S1304において、受信パケットは正常でないと判定される。従って、ACKパケットは送信されずに、再び、S1302に戻り、データパケットの受信を行う。
一方、無線LANの通信相手である、無線LANアクセスポイント6においては、送信したデータパケットであるパケット1504に対して、ACKパケットが受信されないため無線LAN通信規格の通信制御に従い、パケット1504の再送を行う。このパケット1504の再送パケットをパケット1505として示す。なお、無線LAN通信規格の通信制御によれば、ACKパケットが検出されないために、データパケットの再送を行う場合は、一定の時間(図中のt1)経過後に再送する必要がある。再送パケット1505は、正しく無線LAN通信部15に到達するため、S1304で正常なパケットであると判定されると、情報処理装置1は、S1306においてACKパケットを送信する。これを、パケット1506として示す。
その後は再び、データパケットであるパケット1502が正常に受信されると、これに対する、ACKパケットであるパケット1503が送信される。このように、BLEビーコンパケット送信の最中に、無線LANデータパケットの受信が発生すると、無線LANデータパケットの受信が正常に行われないため、データパケットの再送が発生する。そして明らかなように、この再送パケットの受信、及びその待ち時間(図中のt1)により、無線LANデータパケットの受信のスループットの低下が発生することになる。
図15(b)は、情報処理装置1における、BLE通信のビーコンパケット送信と無線LAN通信のデータパケット送信の並行動作を示す。上述したように、パケット1501はBLE通信で送信されるビーコンパケットを示しており、これは、図10のフローチャートに従い、Tbeaconで示される一定の時間間隔で送信される。
パケット1507は無線LAN通信で送信されるデータパケットを示しており、これは、図12のフローチャートに従い送信される。パケット1507は、S1204で送信されると、この後、通信相手である無線LANアクセスポイント6からACKパケットが受信される。S1206においてACKパケットが受信されたと判定されると、パケット1507の送信が正しく行われたことになる。このACKパケットをパケット1508として示す。このように、データパケットであるパケット1507が正常に送信されると、これに対する、ACKパケットであるパケット1508が受信される。
ここで、無線LAN通信のデータパケットを送信のタイミングが、BLE通信のビーコン送信のタイミングに近づいたとする。図6で示した通り、BLE送信は、優先順位が一番高いため、BLE送信が優先され、図10のフローチャートに従い、S1002で切換部19を19cに設定して、S1003によりBLEビーコンパケットを送信する。この後、S1004で切換部19を19bに設定する。ここで、切換部19が19b及び19cに設定されている間は、無線LAN通信のデータパケット送信はできない。このため、無線制御部17は、タイマ18を参照して、BLEビーコンパケットの送信のタイミングが近い場合は、無線LAN通信のデータパケットを送信のタイミングを一定の時間(図中のt2)だけ遅延させる。この後、BLEのビーコンパケットの送信が終了した後に、図12のフローチャートに従い、無線LAN通信のデータパケットを送信する。
この遅延させて送信される、無線LAN通信のデータパケットをパケット1509として示す。また、この後、通信相手である無線LANアクセスポイント6から受信されるACKパケットを1510として示す。その後は再び、データパケットであるパケット1507が正常に送信されると、これに対する、ACKパケットであるパケット1508が受信される。そして明らかなように、無線LAN通信のデータパケットの送信の待ち時間(図中のt2)により、無線LANデータパケットの送信のスループットの低下が発生することになる。
図15(c)は、情報処理装置1における、BLE通信のデータパケットの受信と無線LAN通信のデータパケット受信の並行動作を示す。上述したように、パケット1501はBLE通信で送信されるビーコンパケットを示しており、これは、図10のフローチャートに従い、Tbeaconで示される一定の時間間隔で送信される。
この後、図11のフローチャートに従い、BLE通信のデータパケット受信が行われる。一方、通信相手である携帯端末装置5は図14のフローチャートに従い、BLE通信のデータパケットの送信を行う。携帯端末装置5はBLEビーコンパケットであるパケット1501を検知して、S1406でリクエストパケットを送信する。情報処理装置1では、S1102でリクエストパケットが受信されたと判定される。この受信されたリクエストパケットをパケット1511として示す。
この後、BLEデータパケットの受信に移行するため、S1103でBLEビーコンパケットの送信が中止される。そして、携帯端末装置5において、S1408で送信されたデータパケットは、情報処理装置1ではS1104で受信されたと判定され、S1108でレスポンスパケットが送信される。この受信されたデータパケットをパケット1512として示す。また、これに対して送信されるレスポンスパケットをパケット1513として示す。
ここで、上述した、BLE通信のリクエストパケット、及びデータパケットの受信の最中に、無線LAN通信のデータ受信パケットであるパケット1514が受信されたとする。図6で示した通り、BLE通信の受信、無線LAN通信の受信ともに、切換部19は19bに設定されている。しかしながら、無線LAN通信の受信よりも、BLE通信の受信の方の優先順位が高いため、無線制御部17は、BLE通信部16により、BLEの受信を優先して行う。このため、BLEのリクエストパケット1511が正常に受信される。
これに続く、データパケット1512もBLE通信の受信の方の優先順位が高いため、無線制御部17は、BLE通信部16により、BLEの受信を優先して行い、データパケット1512を正しく受信する。従って、S1106で正常に受信されたと判定され、S1108により、レスポンスパケット1513が送信されることにより、BLEのデータパケットの受信は正常に行われる。一方で、無線LANの受信は優先順位が低いため、BLEのリクエストパケット1511が受信されている間は、受信されたパケット1514は、無線LAN通信部15で処理されない。従って、S1304の判定でS1302に戻り、データパケットの受信を行うため、ACKパケットは送信されない。
一方、無線LANの通信相手である、無線LANアクセスポイント6においては、送信したデータパケットであるパケット1514に対して、ACKパケットが受信されないため無線LAN通信規格の通信制御に従い、パケット1514の再送を行う。このパケット1514の再送パケットをパケット1515として示す。なお、無線LAN通信規格の通信制御によれば、ACKパケットが検出されないために、データパケットの再送を行う場合は、一定の時間(図中のt1)経過後に再送する必要がある。
しかし、再送パケットのパケット1515の送信時においても、優先順位の高い、BLE通信のデータパケットの受信が行われている。このため、BLEのデータパケット1512が受信されている間は、受信されたパケット1515は、無線LAN通信部15で処理されない。従って、S1304の判定でS1302に戻りデータパケットの受信を行うため、再び、ACKパケットは送信されない。
このため、無線LANアクセスポイント6においては、ACKパケットが受信されないため無線LAN通信規格の通信制御に従い、再度、パケット1515の再送を行うことになる。この時点ではBLE通信のデータ受信は終了しており、再送パケット1515は、正しく無線LAN通信部15に到達するため、S1304で正常なパケットであると判定されると、情報処理装置1は、S1306においてACKパケットを送信する。これを、パケット1516として示す。その後は再び、データパケットであるパケット1517が正常に受信されると、これに対する、ACKパケットであるパケット1518が送信される。このように、BLE通信のリクエストパケット、データパケットの受信の最中に、無線LANデータパケットの受信が発生すると、無線LANデータパケットの受信が正常に行われないため、データパケットの再送が発生する。そして明らかなように、この再送パケットの受信、及びその待ち時間(図中のt3)により、無線LANデータパケットの受信のスループットの低下が発生することになる。
次に、図17を参照して、情報処理装置1における、無線LAN通信時のスループットに応じて、BLE通信のビーコンパケットの送信間隔を制御する動作について詳細に説明する。図17は、BLE通信のビーコンパケットの送信中に、無線LAN通信のデータパケットの受信が発生した場合の並行動作を示す。
図17(a)は、BLE通信のビーコンパケットの送信間隔が、Tbeacon=30mSのときの並行動作を示す。BLE通信においては、上述した手順で、ビーコンパケットが送信され、これをパケット1701として示す。一方、無線LAN通信においては、PC7から転送されたデータが無線LANアクセスポイント6を介して、データパケットとして受信されているものとする。
まず、PC7は、これから情報処理装置1に対して送信するデータの種別に関する情報を無線LANアクセスポイント6を介して送信する。これは、情報処理装置1において、無線LAN通信のデータパケットであるパケット1702として、図13のフローチャートに従い受信され、ACKパケットであるパケット1703が送信される。そして、この無線LAN通信の受信データは、S1309により、制御部4に転送される。
無線通信部3においては、無線制御部17がこの設定値を図9のフローチャートに基づき受信して、S902によりBLEビーコン間隔をタイマ値として設定し、S903でタイマを開始する。従って、これ以降、BLE通信のBLEビーコンパケットは、図10のフローチャートに従い、設定されたTbeacon=30mSの間隔で送信される。これは、図17(a)のパケット1701で示される。
この後、無線LAN通信においては、PC7が上述のデータ種別に応じた、データを無線LANアクセスポイント6に転送して、当該データは無線LANアクセスポイント6によりパケットに分割されて順次、送信される。一方、情報処理装置1では、図13のフローチャートに従いこのパケットを順次、受信していく。図17(a)において、情報処理装置1により正常に受信されたデータパケットはパケット1704で示され、これに対するACKパケットはパケット1705で示される。
しかし、上述したように、BLE通信のビーコン送出のタイミングに、無線LAN通信の受信パケットが到来した場合は、このデータパケットは正常に受信されない。パケット1706は正常に受信できないデータパケットを示しており、このため、再送されたデータパケットが受信され、これはパケット1707で示される。また再送されたパケットが正常に受信された場合のACKパケットは、パケット1708で示される。無線制御部17は、順次、処理を行い、データパケットを受信していく。無線制御部17は無線LAN通信規定の通信制御に従って、全ての無線LAN通信のデータパケットを受信すると、S1308でデータ受信が終了したと判定して、S1309により、受信データを制御部4に転送する。
図17(b)は、BLE通信のビーコンパケットの送信間隔が、Tbeacon=100mSのときの並行動作を示す。BLE通信においては、上述した手順で、ビーコンパケットが送信され、これをパケット1709として示す。一方、無線LAN通信においては、PC7から転送されたデータが無線LANアクセスポイント6を介して、データパケットとして受信されているものとする。
まず、PC7は、これから情報処理装置1に対して送信するデータの種別に関する情報を無線LANアクセスポイント6を介して送信する。これは、情報処理装置1において、無線LAN通信のデータパケットであるパケット1710として、図13のフローチャートに従い受信され、ACKパケットであるパケット1711が送信される。そして、この無線LAN通信の受信データは、S1309により、制御部4に転送される。
無線通信部3においては、無線制御部17がこの設定値を図9のフローチャートに基づき受信して、S902によりBLEビーコン間隔をタイマ値として設定し、S903でタイマを開始する。従って、これ以降、BLE通信のBLEビーコンパケットは、図10のフローチャートに従い、設定されたTbeacon=100mSの間隔で送信される。これは、図17の(b)のパケット1709で示される。
この後、無線LAN通信においては、PC7が上述のデータ種別に応じた、データを無線LANアクセスポイント6に転送して、当該データは無線LANアクセスポイント6によりパケットに分割されて順次、送信される。一方、情報処理装置1では、図13のフローチャートに従いこのパケットを順次、受信していく。図17(b)において、情報処理装置1により正常に受信されたデータパケットはパケット1712で示され、これに対するACKパケットはパケット1713で示される。
しかし、上述したように、BLE通信のビーコン送出のタイミングに、無線LAN通信の受信パケットが到来した場合は、このデータパケットは正常に受信されない。パケット1714は正常に受信できないデータパケットを示しており、このため、再送されたデータパケットが受信され、これはパケット1715で示される。また再送されたパケットが正常に受信された場合のACKパケットは、パケット1716で示される。無線制御部17は、順次、処理を行い、データパケットを受信していく。無線制御部17は無線LAN通信規定の通信制御に従って、全ての無線LAN通信のデータパケットを受信すると、S1308でデータ受信が終了したと判定して、S1309により、受信データを制御部4に転送する。
図17(a)のTbeacon=30mSの場合と、図17(b)のTbeacon=100mSを比較すると明らかなように、無線LAN通信時のスループットに応じてTbeaconの間隔を大きくすると、無線LANのデータパケットの再送回数を低減できる。また、再送に伴う再送遅延時間(図中のt1)の発生回数を低減できる。従って、BLEのビーコン間隔を大きくすることにより、単位時間(t4)における、無線LANのデータパケット受信のスループットを改善することができる。
次に、図18を参照して、BLE通信のビーコンパケットの送信中に、無線LAN通信のデータパケットの送信が発生した場合の並行動作について説明する。
図18(a)は、BLE通信のビーコンパケットの送信間隔が、Tbeacon=30mSのときの並行動作を示す。BLE通信においては、上述した手順で、ビーコンパケットが送信され、これをパケット1801として示す。ここで、まず、情報処理装置1においてPC7に対して、無線LANアクセスポイント6を介した、無線LAN通信によるデータ送信が発生したものとする。
無線通信部3においては、無線制御部17がこの設定値を図9のフローチャートに基づき受信して、S902によりBLEビーコン間隔をタイマ値として設定し、S903でタイマを開始する。従って、これ以降、BLE通信のBLEビーコンパケットは、図10のフローチャートに従い、設定されたTbeacon=30mSの間隔で送信される。これは、図18(a)のパケット1801で示される。
この後、情報処理装置1においては、制御部4は、無線LAN通信の送信データを無線通信部3に転送する。これは、図12のフローチャートに従って、無線制御部17によって受信され、無線LANデータパケットの送信が順次行われる。図18(a)において、情報処理装置1により送信されるデータパケットはパケット1802で示され、これに対して受信されるACKパケットはパケット1803で示される。
しかし、上述したように、BLE通信のビーコン送出のタイミングに近いタイミングで送信される無線LAN通信の送信パケットは、BLE通信のビーコン送出後に遅延させて送信される。パケット1804はこの遅延させて送出されるパケットを示しており、当該パケットに対して受信されるACKパケットは、パケット1805で示される。無線制御部17は、このように、順次、処理を行い、データパケットを送信していく。無線制御部17は無線LAN通信規定の通信制御に従って、全ての無線LAN通信のデータパケットを送信すると、S1207でデータ送信が終了したと判定して、データ送信を終了する。
図18(b)は、BLE通信のビーコンパケットの送信間隔が、Tbeacon=100mSのときの並行動作を示す。BLE通信においては、上述した手順で、ビーコンパケットが送信され、これをパケット1816として示す。ここで、情報処理装置1においてPC7に対して、無線LANアクセスポイント6を介した、無線LAN通信によるデータ送信が発生したものとする。
無線通信部3においては、無線制御部17がこの設定値を図9のフローチャートに基づき受信して、S902によりBLEビーコン間隔をタイマ値として設定し、S903でタイマを開始する。従って、これ以降、BLE通信のBLEビーコンパケットは、図10のフローチャートに従い、設定されたTbeacon=100mSの間隔で送信される。これは、図18(b)のパケット1816で示される。
この後、情報処理装置1においては、制御部4は、無線LAN通信の送信データを無線通信部3に転送する。これは図12のフローチャートに従って、無線制御部17によって受信され、無線LANデータパケットの送信が順次行われる。図18(b)において、情報処理装置1により送信されるデータパケットはパケット1807で示され、これに対して受信されるACKパケットはパケット1808で示される。
しかし、上述したように、BLE通信のビーコン送出のタイミングに近いタイミングで送信される無線LAN通信の送信パケットは、BLE通信のビーコン送出後に遅延させて送信される。パケット1809はこの遅延させて送出されるパケットを示しており、このパケットに対して受信されるACKパケットは、パケット1810で示される。無線制御部17は、このように、順次、処理を行い、データパケットを送信していく。無線制御部17は、無線LAN通信規定の通信制御に従って、全ての無線LAN通信のデータパケットを送信すると、S1207でデータ送信が終了したと判定して、データ送信を終了する。
図18(a)のTbeacon=30mSの場合と、図18(b)のTbeacon=100mSを比較すると、無線LANのデータパケットの送信時の遅延時間(図中のt2)の発生回数を低減することができる。即ち、BLEのビーコン間隔を大きくすることにより、単位時間(t5)における、無線LANのデータパケット送信のスループットを改善することができる。
しかしながら、図17及び図18で説明したように、無線LANのデータパケット受信及び送信のスループットが改善できるとは限らない。それは、無線LANのアクセスポイントとの物理的な距離が離れていて電波強度が弱い場合や、同じ2.4GHz帯のISMバンドを使用している他の無線機器や電子レンジ等による電波干渉が発生してしまう場合である。そのような場合は、送信機が送信したデータが受信機に正しく到達しないため、データパケットの再送が発生してしまうためである。もしそのような原因による再送発生の頻度がBLEビーコンの送信タイミングと無線LAN通信が同時に発生したことによる再送発生の頻度よりも多いとBLEビーコンの間隔を大きくして再送になってしまう確率を減らしても、その効果は小さくなってしまう。そこで、本実施形態では、効果があまり得られない場合には、BLEビーコン間隔を元に戻すように無線通信部3を制御する。
以上説明したように、本実施形態に係る情報処理装置1は、第1の無線通信(BLE通信)と、第1の無線通信と通信規格の異なる第2の無線通信(無線LAN通信)とを順に動作させることにより、第1の無線通信及び第2の無線通信を並行して動作可能である。また、本情報処理装置は、第2の無線通信におけるデータの転送レートを計測し、計測結果に基づき、第1の無線通信による送信の間隔を決定する。具体的には、本情報処理装置1は、無線LANの使用時のスループットに応じて、BLE通信のビーコンパケットの送信間隔を制御する。そして、BLE通信のビーコンパケットの送信間隔を無線LAN通信のスループットを計測して効果的に制御することにより、無線LAN通信のスループットの低下を軽減することができる。
なお、上述したように、携帯端末装置5で使用されるアプリケーションの事例として、BLE通信のビーコンを用いて携帯端末装置5の位置検出を行うことが考えられる。本実施形態では、BLEビーコン間隔を大きくして無線LAN通信のスループットが上昇する場合、BLE通信のビーコン間隔であるTbeaconを100mSとした。しかしながら、BLE通信のビーコン間隔を大きくし過ぎると携帯端末装置5の位置検出の機能に影響が出る場合がある。そこで、無線LAN通信の使用がある場合のBLE通信のビーコン間隔であるTbeaconの変更の上限値を設け、携帯端末装置5の位置検出に影響が出ない範囲に制限してもよい。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
1:情報処理装置、2:操作パネル、3:無線通信部、4:制御部、5:携帯端末装置、6:無線LANアクセスポイント、7:PC
Claims (10)
- 第1の無線通信と、該第1の無線通信と通信規格の異なる第2の無線通信とを順に動作させることにより並行して動作可能な情報処理装置であって、
前記第1の無線通信を行う第1の無線通信手段と、
前記第2の無線通信を行う第2の無線通信手段と、
前記第2の無線通信手段による前記第2の無線通信におけるデータの転送レートを計測する計測手段と、
前記計測手段による計測結果に基づき、前記第1の無線通信による送信の間隔を決定する決定手段と
を備えることを特徴とする情報処理装置。 - 前記第1の無線通信手段と、前記第2の無線通信手段との駆動を切り換える切換手段と、
前記第1の無線通信手段によって前記第1の無線通信による送信が行われてから、前記決定手段によって決定された前記送信の間隔に対応する所定時間を計時する計時手段と、
前記第1の無線通信手段による前記第1の無線通信に加えて、前記第2の無線通信手段による前記第2の無線通信を並行して動作させる並行動作が行われる際には、前記第1の無線通信手段によって前記第1の無線通信による送信が行われると、前記切換手段によって、前記第1の無線通信手段から前記第2の無線通信手段に駆動を切り換えさせ、前記第1の無線通信手段によって前記第1の無線通信による送信が行われてから、前記計時手段によって前記所定時間が計時されると、前記切換手段によって、前記第2の無線通信手段から前記第1の無線通信手段に駆動を切り換えさせる制御手段と
をさらに備えることを特徴とする請求項1に記載の情報処理装置。 - 前記第1の無線通信及び前記第2の無線通信に対応するアンテナをさらに備え、
前記切換手段は、前記第1の無線通信手段及び前記第2の無線通信手段の何れかを前記アンテナに接続することにより、駆動を切り換えることを特徴とする請求項2に記載の情報処理装置。 - 前記制御手段は、前記第1の無線通信による送信又は受信と、前記第2の無線通信による送信又は受信とが重なる場合には、前記第1の無線通信による送信又は受信を優先して実行させ、前記第2の無線通信による送信又は受信を遅延させることを特徴とする請求項2又は3に記載の情報処理装置。
- 前記決定手段は、
前記計測手段によって計測されたデータの転送レートが予め定められた転送レート以上の場合に、前記第1の無線通信による送信の間隔を第1の送信間隔に決定し、
前記計測手段によって計測されたデータの転送レートが予め定められた転送レートよりも低い場合に、前記第1の無線通信による送信の間隔を、前記第1の送信間隔よりも長い第2の送信間隔に決定することを特徴とする請求項1乃至4の何れか1項に記載の情報処理装置。 - 前記決定手段は、前記第1の無線通信による送信の間隔を前記第1の送信間隔に決定して変更した後に、前記第2の無線通信におけるデータの転送レートが前記第1の送信間隔に変更する前の転送レートに対して予め定められた閾値以上に上昇しないときは、前記第1の無線通信による送信の間隔を前記第2の送信間隔に決定することを特徴とする請求項5に記載の情報処理装置。
- 前記第1の無線通信手段は、前記決定手段によって決定された前記送信の間隔に従って、前記情報処理装置を特定するための属性情報を含むパケットを定期的に送信することを特徴とする請求項1乃至6の何れか1項に記載の情報処理装置。
- 前記第1の無線通信は、Bluetooth Low Energy規格による通信であり、
前記第2の無線通信は、IEEE802.11規格による通信であることを特徴とする請求項1乃至7の何れか1項に記載の情報処理装置。 - 第1の無線通信と、該第1の無線通信と通信規格の異なる第2の無線通信とを順に動作させることにより並行して動作可能であり、前記第1の無線通信を行う第1の無線通信手段と、前記第2の無線通信を行う第2の無線通信手段とを備える情報処理装置の制御方法であって、
計測手段が、前記第2の無線通信手段による前記第2の無線通信におけるデータの転送レートを計測する計測工程と、
決定手段が、前記計測工程による計測結果に基づき、前記第1の無線通信による送信の間隔を決定する決定工程と
を実行することを特徴とする情報処理装置の制御方法。 - 第1の無線通信と、該第1の無線通信と通信規格の異なる第2の無線通信とを順に動作させることにより並行して動作可能であり、前記第1の無線通信を行う第1の無線通信手段と、前記第2の無線通信を行う第2の無線通信手段とを備える情報処理装置の制御方法における各工程をコンピュータに実行させるためのプログラムであって、前記方法は、
計測手段が、前記第2の無線通信手段による前記第2の無線通信におけるデータの転送レートを計測する計測工程と、
決定手段が、前記計測工程による計測結果に基づき、前記第1の無線通信による送信の間隔を決定する決定工程と
を実行することを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016132776A JP2018007073A (ja) | 2016-07-04 | 2016-07-04 | 情報処理装置、その制御方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016132776A JP2018007073A (ja) | 2016-07-04 | 2016-07-04 | 情報処理装置、その制御方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018007073A true JP2018007073A (ja) | 2018-01-11 |
Family
ID=60947999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016132776A Pending JP2018007073A (ja) | 2016-07-04 | 2016-07-04 | 情報処理装置、その制御方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018007073A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102019200635A1 (de) | 2018-01-19 | 2019-07-25 | Semiconductor Energy Laboratory Co., Ltd. | Organische Verbindung, Licht emittierendes Element, Licht emittierende Vorrichtung, elektronisches Gerät und Beleuchtungsvorrichtung |
-
2016
- 2016-07-04 JP JP2016132776A patent/JP2018007073A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102019200635A1 (de) | 2018-01-19 | 2019-07-25 | Semiconductor Energy Laboratory Co., Ltd. | Organische Verbindung, Licht emittierendes Element, Licht emittierende Vorrichtung, elektronisches Gerät und Beleuchtungsvorrichtung |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6813970B2 (ja) | 情報処理装置、その制御方法、及びプログラム | |
US11917479B2 (en) | Information processing apparatus, communication terminal, and non-transitory storage medium storing instructions executable by information processing apparatus | |
US11350387B2 (en) | Communication apparatus capable of establishing wireless connection with access point | |
US9007640B2 (en) | Wireless communication system, wireless communication device, and communication control program | |
US10108383B2 (en) | Communication device communicating target data with external device according to near field communication | |
US8922819B2 (en) | Image recording system, image recording apparatus, non-transitory storage medium storing instructions executable by image recording apparatus, mobile terminal, non-transitory storage medium storing instructions executable by mobile terminal, and method of controlling image recording system | |
JP6179778B2 (ja) | 画像形成システム、画像形成装置、端末、プログラム | |
JP6257403B2 (ja) | 情報処理装置およびその制御方法、並びにプログラム | |
JP2019140495A (ja) | 通信端末、その制御方法、およびプログラム | |
JP7013938B2 (ja) | 端末装置、通信システム、プログラム及び表示制御方法 | |
JP2018007072A (ja) | 情報処理装置、その制御方法、及びプログラム | |
US20160291912A1 (en) | Information processing apparatus including near-field wireless communication tag, method of controlling the same, and storage medium | |
JP2018007073A (ja) | 情報処理装置、その制御方法、及びプログラム | |
JP2018006814A (ja) | 情報処理装置とその制御方法、及びプログラム | |
JP5349513B2 (ja) | 無線通信装置および方法 | |
JP2018006813A (ja) | 情報処理装置とその制御方法、及びプログラム | |
JP6723871B2 (ja) | 情報処理装置及びその制御方法、並びにプログラム | |
JP4803017B2 (ja) | 通信処理装置、通信処理方法、およびプログラム | |
JP6472263B2 (ja) | 情報処理装置、制御方法及びプログラム | |
JP2019036850A (ja) | 通信装置およびその制御方法 | |
JP2006157680A (ja) | デバイス特定方法及び無線通信装置 | |
JP2000286917A (ja) | 通信処理装置 | |
JP2013251708A (ja) | 携帯通信端末、通信制御方法およびプログラム |