JP6312733B2 - 情報処理装置、通信装置、制御方法及びプログラム - Google Patents

情報処理装置、通信装置、制御方法及びプログラム Download PDF

Info

Publication number
JP6312733B2
JP6312733B2 JP2016072789A JP2016072789A JP6312733B2 JP 6312733 B2 JP6312733 B2 JP 6312733B2 JP 2016072789 A JP2016072789 A JP 2016072789A JP 2016072789 A JP2016072789 A JP 2016072789A JP 6312733 B2 JP6312733 B2 JP 6312733B2
Authority
JP
Japan
Prior art keywords
information
communication
information processing
transmission power
predetermined
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.)
Active
Application number
JP2016072789A
Other languages
English (en)
Other versions
JP2017184170A (ja
Inventor
伊藤 康治
康治 伊藤
悠機 若林
悠機 若林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2016072789A priority Critical patent/JP6312733B2/ja
Priority to US15/472,874 priority patent/US10048909B2/en
Publication of JP2017184170A publication Critical patent/JP2017184170A/ja
Application granted granted Critical
Publication of JP6312733B2 publication Critical patent/JP6312733B2/ja
Priority to US16/041,440 priority patent/US10282147B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1222Increasing security of the print job
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1238Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1292Mobile client, e.g. wireless printing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/062Pre-authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Description

本発明は、情報処理装置、通信装置、制御方法及びプログラムに関する。
Bluetooth(登録商標) Low Energy(BLE)等の近距離無線通信によって、スマートホン等の情報処理装置と、プリンタ等の通信装置とが通信を行う通信システムが知られている。このような通信システムにおいて、
通信装置は、情報の送信電力を制限し、情報が到達する距離を制限することで、第三者が所持する装置との通信が行われてしまうことを抑制している。また、このように、情報の送信電力を制限する形態では、通信装置は、情報が到達する距離を適切な距離に調整するために、情報の送信電力を変更する処理を行う。特許文献1では、相手側の装置から応答が返ってくるまで電波の送信電力を段階的に大きしていき、相手側の装置から応答が返ってきた時点の電波の送信電力を、電波の送信において最低限必要な送信電力と判断する装置が記載されている。
特開2000−295658号公報
しかしながら、特許文献1に記載されているようにして、情報の送信電力を変更する形態では、以下のような課題がある。特許文献1は、相手側の装置から応答が返ってくるまで電波の送信電力を段階的に大きくしていく。そのため、特許文献1は、例えば、相手側の装置が電波を受信してから応答を返すまでにタイムラグが発生した場合は、相手側の装置が電波を受信しているにも関わらず電波の送信電力を大きくする可能性がある。そして、特許文献1は、相手側の装置から応答が返ってきた時点の電波の送信電力を、電波の送信において最低限必要な送信電力と判断する。そのため、特許文献1は、不必要に大きくしてしまった送信電力によって、電波を送信してしまうおそれがあった。
本発明は、上述の課題に鑑みてなされたものであり、通信装置に適切な送信電力で情報を送信させることを目的とする。
上述のような課題を解決するための本発明の通信装置は、
所定の通信方式によって情報処理装置と通信し、複数の情報を送信する通信部を有する通信装置であって、
前記複数の情報に含まれ、所定の送信電力に基づく情報を含む第1の情報を前記通信部によって前記所定の送信電力を用いて送信する第1送信手段と、
前記第1の情報が前記情報処理装置に受信された場合、前記通信装置が前記通信部によって送信し、且つ前記第1の情報と異なる第2の情報を、前記情報処理装置が前記通信装置に、前記第1の情報が送信された際に用いられた送信電力で送信させるための所定の情報を、前記情報処理装置から前記通信部によって受信する受信手段と、
前記所定の情報が前記通信部によって受信された場合、前記受信された前記所定の情報の内容に基づいて、前記第1の情報が送信された際に用いられた送信電力を特定する特定手段と、
前記第2の情報を前記通信部によって、前記特定された送信電力で送信する第2送信手段と、を有し、
前記所定の情報には、前記第1の情報が送信された際に用いられた送信電力に関する送信電力情報が含まれ、
前記所定の情報に含まれる前記送信電力情報の内容に基づいて、前記第1の情報が送信された際に用いられた送信電力が特定されることを特徴とする。
本発明によれば、通信装置に適切な送信電力で情報を送信させることができる。
本発明の実施形態における情報処理装置及び通信装置の構成の図例である。 本発明の実施形態における印刷用アプリの画面構成図である。 本発明の実施形態における通信装置及び情報処理装置で動作するプログラムのソフトウエアブロック図である。 本発明の実施形態における通信装置がサポートするGATTを表わす図である。 第1実施形態における情報処理装置が実行する処理を示すフローチャートである。 第1実施形態における通信装置が実行する処理を示すフローチャートである。 第1実施形態における通信装置が実行する処理を示すフローチャートである。 本発明の実施形態における情報処理装置及び通信装置が、BLE通信方式によって接続を行う場合のシーケンス図である。 アドバタイズ情報のブロードキャスト及び接続要求情報の受信の処理を説明するための図である。 BLEにおけるアドバタイズを説明するための図である。 第2実施形態における情報処理装置が実行する処理を示すフローチャートである。 第2実施形態における通信装置が実行する処理を示すフローチャートである。 PINコードに関する画面の例を示す図である。
以下に図面を参照して、本発明の好適な実施形態を例示的に説明する。ただし、本発明については、その趣旨を逸脱しない範囲で、当業者の通常の知識に基づいて、以下に記載する実施形態に対して適宜変更、改良が加えられたものについても本発明の範囲に入ることが理解されるべきである。
(第1実施形態)
<全体のシステム構成>
本実施形態の通信システムに含まれる情報処理装置及び通信装置について説明する。本実施形態では、情報処理装置としてスマートホン、通信装置としてプリンタを例に挙げて説明する。なお、情報処理装置として、本実施形態ではスマートホンを例示するが、これに限定されず、携帯端末、ノートPC、タブレット端末、PDA(Personal Digital Assistant)、デジタルカメラ等、種々のものを適用可能である。また、通信装置として、本実施形態ではプリンタを例示するが、これに限定されず、情報処理装置と無線通信を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等に適用することができる。また、プリンタのみならず複写機やファクシミリ装置、携帯端末、スマートホン、ノートPC、タブレット端末、PDA、デジタルカメラ、音楽再生デバイス、テレビ等にも適用可能である。その他、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機にも適用可能である。
まず、本実施形態の情報処理装置と、通信装置の構成について図1のブロック図を参照して説明する。また、本実施形態では、図1に示す構成を例に挙げて説明するが、各装置は、この図のとおりに機能を限定されるものではない。
情報処理装置101は、本実施形態の情報処理装置である。情報処理装置101は、入力インタフェース102、CPU103、ROM104、RAM105、外部記憶装置106、出力インタフェース107、表示部108、通信部109、近距離無線通信部110等を有する。なお、これらはシステムバスを介して互いに接続されている。
入力インタフェース102は、物理キーボードやボタン、タッチパネル等の操作部(不図示)を介して、ユーザからのデータ入力や動作指示を受け付けるためのインタフェースである。なお、後述の表示部108と操作部とは、少なくとも一部が一体であってもよく、例えば、画面の出力とユーザからの操作の受け付けを同一の画面において行うような形態としても良い。
CPU103は、システム制御部であり、プログラムの実行やハードウェアの起動により、情報処理装置101の全体を制御する。
ROM104は、CPU103が実行する制御プログラムやデータテーブル、組み込みオペレーティングシステム(以下、OSという。)プログラム等の固定データを格納する。本実施形態では、ROM104に格納されている各制御プログラムは、ROM104に格納されている組み込みOSの管理下で、例えば、スケジューリングやタスクスイッチ、割り込み処理等のソフトウエア実行制御を行う。
RAM105は、SRAM(Static Random Access Memory)やDRAM等で構成される。なお、RAM105は、図示しないデータバックアップ用の1次電池によってデータが保持されていても良い。その場合、RAM105は、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、情報処理装置101の設定情報や情報処理装置101の管理データ等を格納するメモリエリアもRAM105に設けられている。また、RAM105は、CPU103の主メモリとワークメモリとしても用いられる。
外部記憶装置106は、印刷実行機能を提供するアプリケーション、通信装置151が解釈可能な印刷情報を生成する印刷情報生成プログラム等を保存している。また、外部記憶装置106は、通信部109を介して接続している通信装置151との間で送受信する情報送受信制御プログラム等の各種プログラムや、これらのプログラムが使用する各種情報を保存している。
出力インタフェース107は、表示部108がデータの表示や情報処理装置101の状態の通知を行うための制御を行うインタフェースである。
表示部108は、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、データの表示や情報処理装置101の状態の通知を行う。なお、表示部108上に、数値入力キー、モード設定キー、決定キー、取り消しキー、電源キー等のキーを備えるソフトキーボードを設置することで、表示部108を介してユーザからの入力を受け付けても良い。
通信部109は、通信装置151等の外部装置と接続して、データ通信を実行するための構成部である。通信部109は、例えば、通信装置151内のアクセスポイント(不図示)に接続可能である。通信部109と通信装置151内のアクセスポイントが接続することで、情報処理装置101と通信装置151は相互に通信可能となる。なお、通信部109は、無線通信で通信装置151とダイレクトに通信しても良いし、情報処理装置101や通信装置151の外部に存在する外部アクセスポイント(アクセスポイント131)を介して通信しても良い。無線通信方式としては、例えば、Wi−Fi(WirelessFidelity)(登録商標)やBluetooth(登録商標)等が挙げられる。また、アクセスポイント131としては、例えば、無線LANルーター等の機器などが挙げられる。なお、本実施形態において、情報処理装置101と通信装置151とが外部アクセスポイントを介さずにダイレクトに接続する方式をダイレクト接続方式という。また、情報処理装置101と通信装置151とが外部アクセスポイントを介して接続する方式をインフラストラクチャー接続方式という。本実施形態では、情報処理装置101は、通信部109を介して、通信装置151に印刷を行わせるための印刷ジョブを送信する。なお、送信されるジョブは、印刷ジョブに限定されず、通信装置151にスキャンを行わせるためスキャンジョブや、通信装置151の設定を変更するための設定コマンド等であっても良い。
近距離無線通信部110は、通信装置151等の装置と近距離で無線接続して、データ通信を実行するための構成部であり、通信部109とは異なる通信方式によって通信を行う。近距離無線通信部110は、通信装置151内の近距離無線通信部157と接続可能である。なお、本実施形態では、近距離無線通信部110の通信方式として、Bluetooth(登録商標) Low Energy(BLE)が用いられる。すなわち、近距離無線通信部110は、BLEユニットを有する。すなわち、近距離無線通信部110は、BLEユニットを有する。BLEユニットは、無線通信の処理を行うマイクロプロセッサであるマイコンと、無線通信によるデータの送受信を行う無線通信回路を含む。なお、マイコンは、RAMとフラッシュメモリが搭載されている。なお、近距離無線通信部110の通信方式として、例えば、NFC(Near Filed Communication)やWi−Fi Awareが用いられても良い。
通信装置151は、本実施形態の通信装置である。通信装置151は、ROM152、RAM153、CPU154、プリントエンジン155、通信部156、近距離無線通信部157等を有する。なお、これらはシステムバスを介して互いに接続されている。
通信部156は、通信装置151内部のアクセスポイントとして、情報処理装置101等の外部装置と接続するためのアクセスポイントを有している。なお、該アクセスポイントは、情報処理装置101の通信部109に接続可能である。通信部156は無線通信で情報処理装置101とダイレクトに通信しても良いし、アクセスポイント131を介して通信しても良い。通信方式としては、例えば、Wi−Fi(登録商標)やBluetooth(登録商標)等が挙げられる。また、通信部156は、アクセスポイントとして機能するハードウェアを備えていてもよいし、アクセスポイントとして機能させるためのソフトウエアにより、アクセスポイントとして動作してもよい。
近距離無線通信部157は、情報処理装置101等の装置と近距離で無線接続するための構成である。本実施形態では、近距離無線通信部157の通信方式として、BLEが用いられる。すなわち、近距離無線通信部157は、BLEユニットを有する。BLEユニットは、無線通信の処理を行うマイクロプロセッサであるマイコンと、無線通信によるデータの送受信を行う無線通信回路を含む。なお、マイコンは、RAMとフラッシュメモリが搭載されている。なお、近距離無線通信部157の通信方式として、例えば、NFCやWi−Fi Awareが用いられても良い。
RAM153は、バックアップ電源を必要とするSRAMやDRAM等で構成される。なお、RAM153は、図示しないデータバックアップ用の1次電池によってデータが保持されていても良い。その場合、RAM153は、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、通信装置151の設定情報や通信装置151の管理データ等を格納するメモリエリアもRAM153に設けられている。また、RAM153は、CPU154の主メモリとワークメモリとしても用いられ、情報処理装置101等から受信した印刷情報を一旦保存するための受信バッファや各種の情報を保存する。
ROM152は、CPU154が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを格納する。本実施形態では、ROM152に格納されている各制御プログラムは、ROM152に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウエア実行制御を行う。
CPU154は、システム制御部であり、プログラムの実行やハードウェアの起動により、通信装置151の全体を制御する。
プリントエンジン155は、RAM153に保存された情報や情報処理装置101等から受信した印刷ジョブに基づき、インク等の記録剤を用いて紙等の被記録媒体上に画像形成し、印刷結果を出力する。この時、情報処理装置101等から送信される印刷ジョブは、送信データ量が大きく、高速な通信が求められるため、本実施形態では、近距離無線通信部157よりも高速に通信可能な通信部156を介して受信する。
なお、通信装置151には、外付けHDDやSDカード等のメモリがオプション機器として装着されてもよく、通信装置151に保存される情報は、当該メモリに保存されても良い。
本実施形態では、情報処理装置101がマスタ装置として動作し、通信装置151がスレーブ装置として動作する。ここでは、例として情報処理装置101と通信装置151との処理分担を上記のように示したが、特にこの分担形態に限らず他の形態であってもよい。
本実施形態では、情報処理装置101の外部記憶装置106に格納されているアプリケーションを使用して、後述のキャリブレーション処理を行う。以後、キャリブレーション処理に用いるアプリケーションを、印刷用アプリと称する。
<アプリケーション画面構成>
図2は、印刷用アプリの画面構成図を表す。画面200は、印刷用アプリを起動した時に表示部108に表示されるメイン画面である。
セットアップボタン201がタップされると、セットアップ処理が行われる。セットアップ処理は、通信装置151を、情報処理装置101が接続中のアクセスポイントに接続させ、通信装置151と情報処理装置101間の通信を確立するための処理である。
キャリブレーションボタン202がタップされるとキャリブレーション処理が開始される。キャリブレーション処理は、情報処理装置101と通信装置151の近距離無線通信時の通信可能な距離を調整するための処理である。キャリブレーション処理の詳細は後述する。なお、キャリブレーションボタン202がタップされた場合、キャリブレーション処理のための適切な位置に情報処理装置101を移動させることをユーザに通知するための画面を表示しても良い。キャリブレーション処理のための適切な位置とは、例えば、通信装置151近傍の位置である。例えば、通信装置151に、キャリブレーション時に情報処理装置101を載置するためのユニットを設け、当該ユニットの位置を適切な位置としても良い。
写真印刷用ボタン203がタップされると、写真選択画面が表示部108に表示される。写真選択画面にて、ユーザが所望の写真を選び印刷の実行を指示すると、選択された写真に対応する画像データが、通信装置151が解釈可能なデータ形式に変換されて、印刷ジョブが生成される。そして、生成された印刷ジョブが通信装置151に送信される。
<ソフトウエア構成>
図3(A)は、通信装置151で動作するプログラムのソフトウエアブロック図である。印刷制御部301は、通信装置151が受信した印刷ジョブに基づいて、記録媒体上に記録剤を用いて画像を形成する印刷処理を行うためのソフトウエアである。メカ制御部302は、印刷時の給紙処理や排紙処理の
メカの制御を行うためのソフトウエアである。第1通信処理部303は、通信部156で行う通信、暗号化のための認証処理を行うためのソフトウエアである。第2通信処理部304は、近距離無線通信部157で行うBLE関連の制御を行うためのソフトウエアである。キャリブレーション処理部305は、情報処理装置101の近距離無線通信部110および通信装置151の近距離無線通信部157間で行う近距離無線通信の通信可能距離の調整(キャリブレーション処理)を行うためのソフトウエアである。図3(B)は、情報処理装置101で動作する印刷アプリのソフトウエアブロック図である。表示制御部311は、表示部108の表示制御を行うためのソフトウエアである。印刷ジョブ生成部312は、印刷アプリで印刷する写真に対応する画像データを通信装置151が解釈可能なデータに変換する処理を行うためのソフトウエアである。第1通信処理部313は、情報処理装置101の通信部109を制御し通信装置151との通信を行うためのソフトウエアである。第2通信処理部314は、近距離無線通信部110で行うBLE関連の制御を行うためのソフトウエアである。キャリブレーション処理部315は、情報処理装置101の近距離無線通信部110および通信装置151の近距離無線通信部157間で行う近距離無線通信の通信可能距離の調整(キャリブレーション処理)を行うためのソフトウエアである。セットアップ処理部316は、情報処理装置101が接続しているアクセスポイントへ接続するための情報(接続情報)を、近距離無線通信により、情報処理装置101から通信装置151へ送信する処理(セットアップ処理)のためのソフトウエアである。なお、通信装置151は、セットアップ処理により取得した接続情報を使用してアクセスポイントへの接続を行う。これにより、情報処理装置101と通信装置151の通信が確立する。
<GATTプロファイル>
図4は、本実施形態で通信装置151がサポートするGATT(Generic Attribute Profile)を表す図である。BLEの規格上、GATTは、複数のサービスによって構成される。本実施形態では、通信装置151がサポートするGATTは、モード管理用サービス401、送信電力管理用サービス402及びハンドオーバー用サービス403の3つのサービスによって構成される。通信装置151は、利用するサービスに応じて、ブロードキャストするアドバタイズ情報の内容や、アドバタイズ情報を送信する際に利用する電力(アドバタイズ情報の送信電力)を変化させる。なお、通信装置151がサポートするGATTを構成するサービスは上述の形態に限定されず、他のサービスが含まれていても良い。
モード管理用サービス401は、情報処理装置101と接続して、キャリブレーション処理にかかる指示を受信するために使用される。モード管理用サービス401に基づくアドバタイズ情報には、例えば、キャリブレーション処理時に使用するキャリブレーションサポート情報や通信装置151の機種を特定するための機種情報等のパラメータが含まれる。また、モード管理用サービス401に基づくアドバタイズ情報は、情報処理装置101に確実に到達する必要がある。そのため、モード管理用サービス401に基づくアドバタイズ情報は、送信電力管理用サービス402に基づくアドバタイズ情報の送信電力より大きい送信電力(例えば、設定可能な送信電力のうち最大の電力)にて送信される。また、モード管理用サービス401に基づくアドバタイズ情報が大きい送信電力で送信される場合、例えば、通信装置151の遠方に位置する第3者が有する情報処理装置101が当該アドバタイズ情報を受信できてしまう場合がある。そのため、通信装置151は、モード管理用サービス401に基づくアドバタイズ情報を用いたBLE接続によっては、例えば印刷やスキャン、設定変更等の通信装置151の主要な機能の実行に関する指示を受け付けないような構成としても良い。また、通信装置151は、モード管理用サービス401に基づくアドバタイズ情報を用いたBLE接続によっては、後述のハンドオーバーを実行しないような構成としても良い。具体的には、モード管理用サービス401に基づくアドバタイズ情報を用いたBLE接続によって、Wi−Fi通信のための接続情報を送信しないような構成としても良い。
また、本実施形態では、通信装置151は、モード管理用サービス401に基づくアドバタイズ情報のブロードキャストを、通信装置151の電源がオンされた場合に開始するものとするが、この形態に限定されない。例えば、通信装置151のBLE機能が有効化された場合や、通信装置151をキャリブレーションモードに移行させる所定の処理(例えば、通信装置151が有する表示部に対する所定のユーザ操作)が行われた場合等に開始される形態であっても良い。
送信電力管理用サービス402は、アドバタイズ情報の送信電力をキャリブレーションするために、送信電力を変化させてアドバタイズ情報をブロードキャストする処理において使用される。送信電力管理用サービス402に基づくアドバタイズ情報には、例えば、当該アドバタイズ情報の送信電力のパラメータや、通信装置151の機種情報等が含まれる。本実施形態では、通信装置151は、情報処理装置101からキャリブレーション開始指示を受け付けた場合に、送信電力管理用サービス402に基づくアドバタイズ情報のブロードキャストを開始するものとする。
ハンドオーバー用サービス403は、ハンドオーバーによって情報処理装置101と高速無線通信方式による接続を行うために使用される。なお、ハンドオーバーとは、装置間の通信に用いられる通信方式を、近距離通信方式から高速通信方式に切り替える技術である。なお、ハンドオーバーを実現するためには、まず、通信装置151が高速通信方式による通信を行うための接続情報を近距離通信方式によって情報処理装置101に送信する。その後、情報処理装置101が、受信した接続情報を用いて、装置間の通信に用いられる通信方式を高速通信方式に切り替える。本実施形態では、近距離通信方式としてBLEを、高速通信方式としてWi−Fiを用いている。また、通信装置151は、近距離無線通信部157によってBLEによる通信を行い、通信部156によってWi−Fiによる通信を行う。また、情報処理装置101は、近距離無線通信部110によってBLEによる通信を行い、通信部109によってWi−Fiによる通信を行う。BLEの通信速度は、Wi−Fiと比較して低速である。そのため、BLE通信では装置間の認証やWi−Fi通信のための接続情報のやり取り等を行い、通信速度の速いWi−Fi通信で容量の多いデータ(ここではジョブ)の転送を行うことで、効率的なデータ転送を図ることができる。なお、Wi−Fi通信のための接続情報は、具体的には、通信部156と接続するための接続情報であり、通信部156に対応するアクセスポイントのSSIDや、当該アクセスポイントと接続するためのパスワード等である。そして、ハンドオーバー用サービス403に基づくアドバタイズ情報は、後述のキャリブレーション処理によって決定される送信電力にて送信される。
また、本実施形態では、通信装置151は、ハンドオーバー用サービス403に基づくアドバタイズ情報のブロードキャストを、ハンドオーバー機能を有効にする所定の操作が行われた場合に開始するものとするが、この形態に限定されない。例えば、通信装置151の電源がオンされた場合や、通信装置151のBLE機能が有効化された場合に開始される構成であっても良い。
なお、アドバタイズ情報には、送信電力の強弱に関する情報が格納されていても良い。この場合、例えば、所定の閾値より大きい送信電力で送信されるアドバタイズ情報には、送信電力が強であることの情報が格納され、所定の閾値以下の送信電力で送信されるアドバタイズ情報には、送信電力が弱であることの情報が格納される。なお、強弱に関する情報は、強弱の2段階でなく、3段階以上に区別されていても良い。また、強弱に関する情報は、例えば、送信電力の値自体であっても良いし、強弱を示すフラグであっても良い。例えば、モード管理用サービス401に基づくアドバタイズ情報に送信電力が強であることの情報が格納され、送信電力管理用サービス402に基づくアドバタイズ情報に送信電力が弱であることの情報が格納される。情報処理装置101は、受信したにアドバタイズ情報がいずれのサービスに基づくアドバタイズ情報かを、送信電力の強弱に関する情報を参照して判断しても良い。
なお、各アドバタイズ情報には、それぞれのアドバタイズ情報が、いずれのサービスに基づくアドバタイズ情報であるかを識別するための識別情報が格納されていても良い。
<BLE規格における通信>
図9及び図10を用いて、BLE規格におけるアドバタイズ情報の送信及びGATT通信の開始要求(BLE接続要求)の受信の処理について説明する。本実施形態では、近距離無線通信部157がスレーブ機器として動作し、近距離無線通信部110がマスタ機器として動作するため、近距離無線通信部157が上記処理を行うものとする。
近距離無線通信部157は、BLE通信において、2.4GHzの周波数帯を40チャネル(0〜39ch)に分割して通信を行う。近距離無線通信部157は、そのうち、37〜39番目のチャネルをアドバタイズ情報の送信及びGATT通信の開始要求の受信に利用し、0〜36番目のチャネルをBLE接続後のデータ通信に利用している。図9では、縦軸が近距離無線通信部157の消費電力を、横軸が時間を示しており、1つのチャネルを利用してアドバタイズ情報を送信する際の消費電力を各処理別に示している。Tx905は、アドバタイズ情報をブロードキャストする処理(以下「送信処理」という。)における総消費電力を、Rx906は、GATT通信の開始要求を受信するための受信器を有効にしておく処理(以下、「受信処理」という。)における総消費電力を示している。送信電力902は送信処理による瞬間消費電力を示している。また、受信電力903は受信処理による瞬間消費電力を示している。また、マイコン動作電力901は、近距離無線通信部157内のマイコンが動作している場合の瞬間消費電力を示している。なお、Tx905とRx906の前後や間にもマイコンが動作しているのは、送信・受信処理の実行や停止のためには事前にマイコンが起動している必要があるためである。また、アドバタイズ情報の送信を複数チャネルで行う場合は、アドバタイズ情報の送信を行うチャネルの数だけ消費電力が増えることになる。また、マイコンが動作を行っておらず、近距離無線通信部157が省電力状態となっている間は、スリープ電力904が近距離無線通信部157の瞬間消費電力となる。このように、近距離無線通信部157は、所定のチャネルを用いて送信処理を行った後、同一のチャネルを用いて一定時間受信処理を行うことで、情報処理装置101からGATT通信の開始要求が送信されるのを待つ。
また、近距離無線通信部157は、図10(A)に示すように、アドバタイズ情報の送信処理と受信処理を、チャネル別に3回繰り返した後、マイコンの動作を停止させ一定時間省電力状態になる。以下、所定のチャネルによるアドバタイズ情報の送信処理と受信処理の組み合わせをアドバタイズと言う。また、所定のチャネルによってアドバタイズ情報を送信する時間間隔、すなわち、あるチャネルによってアドバタイズ情報を送信し、同じチャネルによって次にアドバタイズ情報を送信するまでの時間間隔をアドバタイズ間隔という。なお、1回目のアドバタイズを行ってから省電力状態になるまでに繰り返すアドバタイズの回数は、3回以下であれば任意に変更可能である。
<BLEにおけるペアリング>
本実施形態では、情報処理装置101と通信装置151間で認証を行い、装置間でGATT(Generic Attribute Profile)通信によりデータの読み書きを実行するためのペアリング処理を実施する。なお、GATTとは、BLE規格において情報の読み書き(送受信)を司るプロファイルである。そして、GATT通信とは、情報処理装置101がGATTクライアント、通信装置151がGATTサーバの役割を担い、GATTベースのプロファイルにより、情報処理装置101から通信装置151に対し情報の読み書きが行われる通信である。情報処理装置101と通信装置151間でのペアリングが実行されていない状態では、通信装置151はGATT通信による情報の読み書きを許可しない構成とする。このようにすることで、ペアリングを行っていない情報処理装置101と通信装置151が通信を行ってしまい、例えば、通信装置151が保持する情報がペアリングを行っていない情報処理装置101に不用意に取得されてしまうことを抑制することができる。
ペアリング処理の詳細について説明する。まず、情報処理装置101は、後述の印刷アプリが起動され、印刷アプリによって表示される初期画面(ホーム画面)が表示部108に表示された場合、特定の装置情報を有するアドバタイズ情報のサーチを開始する。なお、特定の装置情報とは、例えば、印刷アプリに対応する装置(プリンタ等)のUUIDやMACアドレス等である。そして、情報処理装置101は、特定の装置情報を有するアドバタイズ情報を受信すると、当該アドバタイズ情報を送信した装置(ここでは、通信装置151)に、BLE接続要求(CONNECT_REQ)を送信し、装置間でBLE接続を確立する。そして、情報処理装置101は、通信装置151とのペアリングを完了していない場合は、ユーザにペアリングを促すための画面を表示部108に表示する。そして、情報処理装置101は、ペアリングの実行をユーザに指示された場合、セキュリティーマネージャプロトコルによる通信により、通信装置151に、ペアリング要求を送信する。なお、ぺアリングが終了するまで、装置間の通信は、セキュリティーマネージャプロトコルによって行われるものとする。通信装置151は、ペアリング要求を受信すると、表示部160に、図13(a)に示すようなPINコード表示画面1300を表示する。PINコード表示画面1300には、PINコード1301と、ペアリング処理をキャンセルするためのCancelボタン1302が表示される。そして、情報処理装置101は、ペアリング要求を送信すると、表示部108に、図13(b)に示すようなPINコード入力画面1310を表示する。PINコード入力画面1310には、PINコード入力領域1311と、OKボタン1313と、Cancelボタン1312が表示される。PINコード入力領域1311は、ユーザによるPINコード1301の入力を受け付けるための領域である。OKボタン1313は、入力されたPINコード1301を通信装置151に送信するためボタンである。Cancelボタン1312は、ペアリング処理をキャンセルするためボタンである。PINコード入力領域1311にPINコード1301が入力された状態で、OKボタン1313が押下されると、情報処理装置101は、入力されたPINコード1301を含む情報を通信装置151に送信する。通信装置151は、受信した情報に含まれるPINコード1301が、PINコード表示画面1300に表示したPINコード1301と一致するか否かを判定し、一致すると判定した場合は、情報処理装置101にペアリングを許可する。具体的には、通信装置151は、PINコード1301をもとに所定の方法で作成されたリンクキーを、BLE規格のSMP(Security Manager Protocol)を利用して情報処理装置101に送信する。このようにして、リンクキーは、情報処理装置101の持つ記憶領域(ROM104等)と通信装置151の持つ記憶領域(ROM152等)にそれぞれ保存される。これによりペアリングが完了し、以降、装置間でBLE通信を実行することが許可される。なお、情報処理装置101は、ペアリングが完了すると、PINコード表示画面1300を非表示とし、元の画面を再度表示する。
ペアリング完了後は、情報処理装置101は、通信装置151に対してGATT通信要求を送信する際には、ペアリング処理時に記憶領域に保存したリンクキーを通信装置151に通知する。通信装置151は、GATT通信要求を受信した場合、ペアリング処理時に記憶領域に保存したリンクキーと通知されたリンクキーを比較して、GATT通信要求を発信している装置が、ペアリング済みの装置であるかを確認する。そして、通信装置151は、ペアリング済みの装置であると確認できた場合は、情報処理装置101とのGATT通信による情報の読み書きを開始する。これにより、情報処理装置101は、一旦通信装置151とのペアリング処理を完了しておけば、以降はユーザによるPINコードの入力なしに通信装置151とのGATT通信を実行することができる。なお、上述では、PINコード入力領域1311に、PINコード入力画面1310に表示されているPINコード1301をユーザに入力させる形態を説明したが、この形態に限定されない。後述の印刷アプリのインストールと共に情報処理装置101に格納される形態としても良い。これにより、ユーザの入力なしにPINコード1301が通信装置151に通知される。また、ペアリング処理が開始されるタイミングも上述の形態に限定されず、例えば、印刷アプリを介してユーザが印刷を指示したタイミングや、接続設定処理においてBLE接続が行われる前のタイミング等であっても良い。
<BLEを用いたハンドオーバー>
図8は、情報処理装置101と通信装置151とが、BLE通信方式によって接続を行う場合のシーケンス図である。ここでは、ハンドオーバーによってジョブの送受信を行う場合を例にして説明する。なお、ハンドオーバーとは、通信を行うそれぞれの装置が、まず近距離通信方式によって高速通信方式による通信を行うための接続情報をやり取りした後、高速通信方式に切り替えてデータの送受信を行う技術である。本実施形態では、近距離通信方式としてBLEを、高速通信方式としてWi−Fiを用いている。GATT通信の通信速度は、Wi−Fi通信と比較して低速である。そのため、GATT通信では装置間の認証やWi−Fi通信のための接続情報(高速通信情報)のやり取り等を行い、通信速度の速いWi−Fi通信で容量の多いデータ(ここではジョブ)の転送を行うことで、効率的なデータ転送を図ることができる。なお、ハンドオーバーにおいて利用される通信方式は、上述の形態に限定されず、近距離通信方式及び高速通信方式として種々の通信方式が利用されて良い。例えば、NFC通信やWi−Fi Aware通信にてWi−Fi通信のための接続情報をやり取りし、その後Wi−Fi通信にてデータのやり取りを行うような構成としても良い。
なお、この処理シーケンスが示す通信装置151の処理は、CPU154が、ROM152又は通信装置151が備えるHDD(不図示)に記憶されている制御プログラムをRAM153にロードし、その制御プログラムを実行することで実現される。また、この処理シーケンスが示す情報処理装置101の処理は、CPU103が、ROM104又は情報処理装置101が備えるHDD(不図示)に記憶されている制御プログラムをRAM105にロードし、その制御プログラムを実行することで実現される。また、この処理シーケンスが示す処理は、情報処理装置101と通信装置151との間でBLEのペアリングが完了している状態で開始されているものとする。
以下の説明において、通信装置151は、所定の間隔でアドバタイズ情報を送信するアドバタイザであるものとする。また、情報処理装置101は、周辺にあるアドバタイザから送信されるアドバタイズ情報を待ち受けるスキャナであるものとする。まず、近距離無線通信部157は、アドバタイズ情報の送信を行う(S8001〜S8003)。情報処理装置101は、近距離無線通信部110が近距離無線通信部157から送信されたアドバタイズ情報を受信することで、通信装置151の存在を認識することができる。なお、ここでは、通信装置151は、ハンドオーバー用サービス403に基づくアドバタイズ情報を送信する状態であるものとする。
情報処理装置101は、通信装置151を認識し、通信装置151と接続することを決定したら、接続要求情報を通信装置151に送信する。具体的には、近距離無線通信部110が、BLEによるネットワーク接続を確立する接続イベントに遷移するための要求であるCONNECT_REQを送信する(S8004)。近距離無線通信部157がCONNECT_REQを受信すると、情報処理装置101及び通信装置151は、接続イベントに遷移する準備をする。具体的には、近距離無線通信部110及び近距離無線通信部157が、それぞれCPU103及びCPU154にBLE接続のための接続処理が完了した旨を通知する。その後、情報処理装置101及び通信装置151はそれぞれスキャナとアドバタイザからマスタとスレーブに遷移し、マスタである情報処理装置101とスレーブである通信装置151は、BLE接続を確立する。なお、BLE規格では、マスタは、スレーブと「1:多」のスター型のトポロジーを形成することができる。情報処理装置101と通信装置151は、BLE接続を確立したら、以後、GATT通信方式によってデータ通信を行うことができる。以後、BLE接続が解除されるまで、装置間の通信はGATT通信によって行われるものとする。なお、GATT通信は、それぞれの装置の近距離無線処理部を介して行われる。
その後、S8005では、近距離無線通信部110は、近距離無線通信部157に対して、通信装置151が利用可能な通信プロトコルの情報を要求する。
この要求には情報処理装置101が利用可能な通信プロトコルの情報が含まれており、近距離無線通信部157は、この要求を受信することで、情報処理装置101がWi−Fi等の通信方式を利用可能であることを認識することができる。近距離無線通信部157は、S8006において、S8005で受け取った要求に対して、自身の利用可能な通信プロトコルの情報を応答する。これによって互いの装置は、BLE以外の互いの利用可能な通信プロトコルを把握することができる。
ここで、BLE以外の互いの利用可能な通信プロトコルを把握することにより、装置間の通信をWi−Fi通信に切り替えることが情報処理装置101によって決定されたとする。なお、このとき、通信方式の切り替えを行うか否かは通信装置151が決定しても良い。通信方式の切り替えが決定された場合、S8007およびS8008にて、それぞれの装置は、通信相手を特定するアドレスの情報やSSIDの情報等の、Wi−Fiで通信を行うために必要な通信情報を交換する。その後S8009にて、近距離無線通信部110は、装置間の通信方式をGATT通信からWi−Fi通信へと切り替える要求(通信切り替え要求)を送信する。近距離無線通信部157は、切り替えの要求を受信すると、S8010にて応答を行う。
切り替えの要求と応答が正しく行われたら、S8011では、情報処理装置101は、通信装置151との通信に利用する通信部を近距離無線通信部110から通信部109へ切り替える。さらに、S8012では、通信装置151は、情報処理装置101との通信に利用する通信部を近距離無線通信部157から通信部156へ切り替える。切り替えを行った後、S8013にて、近距離無線通信部110は解放要求を送信する。解放要求を受け取った近距離無線通信部157は、S8014にて解放応答を送信し、装置間のBLE接続を終了する。装置間のBLE接続が終了すると、情報処理装置101と通信装置151はそれぞれスキャナとアドバタイザに戻り、近距離無線通信部157は、アドバタイズ情報の送信を再開する。
その後、それぞれの装置は、S8007およびS8008で交換したWi−Fi通信を行うために必要な情報を利用し、Wi−Fi通信を行う。まずS8015では、通信部109は、通信装置151がジョブの取得が可能かどうか通信部156に確認をする。ここでは、例えば、通信装置151に転送しようとする画像を一時保存するための空き容量の情報などが確認される。通信部156は、確認の要求を受け取った後、S8016にて確認に対する応答を送信する。
正しい応答が得られ、通信装置151がジョブの取得が可能であると判断した場合、S8017にて、通信部156は、ジョブを要求する。その後、ジョブの要求を受けた通信部109は、S8018にて情報処理装置101に存在する画像データ等を含むジョブを通信部156に対して送信する。なお、このとき送信するジョブの選択は、例えば、BLE接続が確立する前やBLE接続が確立した後、Wi−Fi接続が確立した後等のタイミングで行われる。また、送信されるジョブは、印刷ジョブに限らず、例えば、通信装置151にスキャンを指示するためのスキャンジョブや情報処理装置101が通信装置151の状態の情報を取得するためのジョブ等であっても良い。また、例えば通信装置151の設定の変更等、通信装置151に対する各種操作を実行するためのコマンド等であっても良い。なお、情報処理装置101は、ジョブの送信が完了した場合、通信装置151とのWi−Fi接続を切断して、ハンドオーバー直前のネットワーク状態に戻る。具体的には、例えば情報処理装置101は、ハンドオーバーを実行する前に、3GやLTE等の移動体通信網やルーター等のアクセスポイントに接続していた場合は、当該移動体通信網やアクセスポイントへの接続を再度確立する。そのため、情報処理装置101及び通信装置151は、ハンドオーバーを実行する前に、ハンドオーバー直前のネットワーク状態の情報及び、ハンドオーバー直前のネットワーク状態に復帰するために必要な通信情報等を保持しておく。
このように、ハンドオーバー技術を用いることで、ユーザビリティの高い通信方式(近距離通信方式)によって、高速通信方式で通信するための接続情報をやり取りし、その後、高速通信方式によって、容量の大きいデータのやり取りを高速で行うことができる。
なお、ハンドオーバーによってGATT通信からWi−Fi通信へ通信方式の切り替えが行われた場合、装置間のBLE接続は切断されるため、近距離無線通信部157は、アドバタイズ情報の送信を再開する。
また、このように、ハンドオーバー技術を用いることで、装置間でデータ通信を実行することができる。このとき、第三者との通信が行われないようにするために、通信装置151は、ハンドオーバーのきっかけとなる、ハンドオーバー用サービス403に基づくアドバタイズ情報のブロードキャストを、適切な送信電力で行う必要がある。そのため、本実施形態では、ハンドオーバー用サービス403に基づくアドバタイズ情報のブロードキャストを、適切な送信電力で行うためのキャリブレーション処理を実行する。
<キャリブレーション処理フロー>
図5、図6、図7は、本実施形態において実行されるキャリブレーション処理の流れを示すフローチャートである。なお、これらの処理は、情報処理装置101と通信装置151との間でBLEのペアリングが完了している状態で開始されているものとする。
図5を用いて、本実施形態において情報処理装置101が実行する処理の流れを説明する。なお、図5のフローチャートが示す処理は、例えば、CPU103がROM104等のメモリに格納されたプログラムをRAM105に読み出して実行することにより実現される。また、図5のフローチャートが示す処理は、情報処理装置101において印刷用アプリが起動している状態で、キャリブレーションボタン202がタップされた場合に開始される。また、本実施形態では、上述したように近距離無線通信部157がマスタ機器として動作するため、近距離無線通信部110がアドバタイズ情報を受信する側(スキャナ側)となる。本実施形態では、近距離無線通信部110は、キャリブレーションボタン202がタップされた場合に、アドバタイズ情報を受信可能な状態(スキャンニング状態)となる。また、本実施形態では、上述したように近距離無線通信部157がスレーブ機器として動作するため、近距離無線通信部157がアドバタイズ情報をブロードキャストする側(アドバタイザ側)となる。本実施形態では、近距離無線通信部110は、通信装置151の電源がオンされた場合に、アドバタイズ情報をブロードキャストする状態(アドバタイズ状態)となる。
まず、CPU103は、モード管理用サービス401に基づくアドバタイズ情報を、近距離無線通信部110によって受信したか否かを判定する(S5001)。具体的にはこのとき、CPU103は、モード管理用サービス401に基づくアドバタイズ情報を近距離無線通信部110によって受信したか否かの情報をシステムから受信して判定を行う。なお、受信されたアドバタイズ情報が、いずれのサービスに基づくアドバタイズ情報であるかは、受信されたアドバタイズ情報に含まれる識別情報を参照することで特定される。CPU103は、アドバタイズ情報を受信していないと判定した場合は、S5002に進み、キャリブレーションボタン202がタップされてから所定の時間が経過したか(タイムアウトしたか)否かを判定する。CPU103は、タイムアウトしたと判定した場合は、キャリブレーションに失敗した旨を示す画面を表示部108に表示し(S5017)、キャリブレーション処理を終了する。なお、モード管理用サービス401に基づくアドバタイズ情報を受信できずにタイムアウトしたのは、情報処理装置101が適切でない位置(例えば、通信装置151から遠く離れた位置)に配置されていることが原因である場合がある。そのため、CPU103は、S5017にて、情報処理装置101を適切な位置(例えば、近距離無線通信部157の近傍の位置)に配置するようにユーザに促すための画面を表示しても良い。
一方、CPU103は、タイムアウトしていないとS5002にて判定した場合は、再びS5001の処理を行う。
CPU103は、モード管理用サービス401に基づくアドバタイズ情報を受信したとS5001にて判定した場合、該アドバタイズ情報に基づき、通信装置151と情報処理装置101間で、モード管理用サービスに基づくBLE接続を確立する。その後、CPU103は、通信装置151とGATT通信を開始する(S5003)。具体的には、CPU103は、近距離無線通信部110を介して、受信したアドバタイズ情報の発行元の装置(ここでは、通信装置151)にBLE接続要求を送信することで、BLE接続を確立する。BLE接続を確立することにより、CPU103は、装置間での双方向通信を実行することが可能となる。
その後、CPU103は、BLE接続を確立した装置(ここでは、通信装置151)の情報をGATT通信によって取得する(S5004)。なお、このとき取得する装置情報には、通信装置151がキャリブレーション処理に対応しているか否かの情報や、通信装置151の機種情報等が含まれる。
その後、CPU103は、取得した装置情報を記憶・解析し、通信装置151がキャリブレーション処理に対応しているか否かを判定する(S5005)。CPU103は、通信装置151がキャリブレーション処理に対応していると判定した場合は、S5006の処理を行う。一方、CPU103は、通信装置151がキャリブレーション処理に対応していないと判定した場合は、キャリブレーションに失敗した旨を示す画面を表示部108に表示する(S5017)。その後、CPU103は、BLE接続を解除し(S5024)、キャリブレーション処理を終了する。なお、このとき、CPU103は、GATT通信によって、通信装置151にキャリブレーションに失敗した旨を通知しても良い。また、CPU103は、キャリブレーション処理を終了すると、情報処理装置101と通信装置151間のBLE接続を解除する。
S5006では、CPU103は、通信装置151にキャリブレーション処理を開始させることを指示するためのキャリブレーション開始指示(変更指示情報)をGATT通信によって送信する。
S5006の変更指示送信の処理後、CPU103は、送信電力管理用サービス402に基づくアドバタイズ情報の送信電力の情報(以下、送信電力情報という。)を初期化する処理(初期化処理)を実行する(S5007)。なお、送信電力情報は、外部記憶装置106等に保存されており、初期化処理により、例えば送信電力情報として設定可能な値のうち最小の送信電力値が設定される。その後、CPU103は、現在設定されている送信電力情報を送信電力の設定指示として、通信装置151にGATT通信によって送信する(S5008)。
S5008の設定指示送信の処理後、CPU103は、情報処理装置101と通信装置151間のBLE接続を解除する(S5009)。具体的には、CPU103は、BLE接続を解除するための要求を通信装置151に送信する。通信装置151は、情報処理装置101とのBLE接続が解除されることによって、アドバタイズ情報をブロードキャストする状態となる。このとき、通信装置151は、モード管理用サービス401に基づくアドバタイズ情報と、送信電力管理用サービス402のアドバタイズ情報のブロードキャストとを交互にブロードキャストする。また、通信装置151は、送信電力管理用サービス402のアドバタイズ情報については、S5008で送信された送信電力の設定指示に基づく送信電力にて、ブロードキャストを行う。なお、このとき、通信装置151は、モード管理用サービス401に基づくアドバタイズ情報の送信電力を、キャリブレーションモード設定前の送信電力から変更しても良い。例えば、通信装置151は、以下の処理にて情報処理装置101に確実にモード管理用サービス401に基づくアドバタイズ情報を受信させるために、モード管理用サービス401に基づくアドバタイズ情報の送信電力を強くしても良い。
次に、CPU103は、送信電力管理用サービス402に基づくアドバタイズ情報を、近距離無線通信部110によって受信したか否かを判定する(S5010)。CPU103は、送信電力管理用サービス402に基づくアドバタイズ情報を受信しなかったと判定した場合は、S5009にてBLE接続を解除してから所定の時間が経過したか(タイムアウトしたか)否かを判定する(S5011)。CPU103は、タイムアウトしていないと判定した場合は、S5010の処理を再度実行し、タイムアウトしたと判定した場合、S5012に進む。
CPU103は、S5012では、送信電力情報として設定している値が、予め設定されている規定値であるか否かを判定する。予め設定されている規定値とは、例えば、送信電力情報として設定可能な値のうち最大の値である。規定値を定めることにより、送信電力管理用サービス402に基づくアドバタイズ情報の送信電力が強くなりすぎてしまうことを抑制できる。CPU103は、規定値でないと判定した場合は、送信電力情報に既に設定されている値に所定の値を加えた値を送信電力情報として設定することで、送信電力情報を更新する(S5013)。なお、このとき加える値は一定でなく、可変としても良い。その後、CPU103は、S5014に進む。一方、CPU103は、規定値であると判定した場合は、キャリブレーションに失敗した旨を示す画面を表示部108に表示し(S5017)、キャリブレーション処理を終了する。なお、このとき、CPU103は、モード管理用サービス401に基づくアドバタイズ情報を用いて情報処理装置101と通信装置151間のBLE接続を確立し、GATT通信にて、キャリブレーションに失敗した旨を通信装置151に通知しても良い。
S5014では、CPU103は、S5001と同様にして、モード管理用サービス401に基づくアドバタイズ情報を、近距離無線通信部110によって受信したか否かを判定する。CPU103は、モード管理用サービス401に基づくアドバタイズ情報を受信していないと判定した場合は、S5015に進む。S5015では、CPU103は、送信電力情報をS5013にて更新してから所定の時間が経過したか(タイムアウトしたか)否かを判定する。CPU103は、タイムアウトしたと判定した場合は、キャリブレーションに失敗した旨を示す画面を表示部108に表示し(S5017)、キャリブレーション処理を終了する。一方、CPU103は、タイムアウトしていないとS5015にて判定した場合は、再びS5014の処理を行う。また、CPU103は、モード管理用サービスに基づくアドバタイズ情報を受信したとS5014にて判定した場合、S5003と同様にして、通信装置151と情報処理装置101間で、モード管理用サービスに基づくBLE接続を確立する(S5016)。その後、CPU103は、再度S5008の処理を実行する。すなわち、更新した送信電力値にて、送信電力管理用サービス402に基づくアドバタイズ情報をブロードキャストするように通信装置151に指示する。
CPU103は、送信電力管理用サービス402に基づくアドバタイズ情報を受信したとS5010にて判定した場合は、S5018に進む。S5018では、CPU103は、S5001と同様にして、モード管理用サービス401に基づくアドバタイズ情報を、近距離無線通信部110によって受信したか否かを判定する。CPU103は、モード管理用サービス401に基づくアドバタイズ情報を受信していないと判定した場合は、S5019に進む。S5019では、CPU103は、送信電力管理用サービス402に基づくアドバタイズ情報を受信したとS5010にて判定してから所定の時間が経過したか(タイムアウトしたか)否かを判定する。CPU103は、タイムアウトしたと判定した場合は、キャリブレーションに失敗した旨を示す画面を表示部108に表示し(S5017)、キャリブレーション処理を終了する。一方、CPU103は、タイムアウトしていないとS5019にて判定した場合は、再びS5018の処理を行う。また、CPU103は、モード管理用サービス401に基づくアドバタイズ情報を受信したとS5018にて判定した場合、S5003と同様にして、モード管理用サービス401に基づくBLE接続を確立する(S5020)。その後、CPU103は、S5021に進む。
S5021では、CPU103は、受信した送信電力管理用サービス402に基づくアドバタイズ情報に含まれる、アドバタイズ情報の発行元の装置の機種情報と、S5004で取得した機種情報が一致するか否かを判定する。CPU103が、機種情報が一致しないと判定した場合は、受信した送信電力管理用サービス402に基づくアドバタイズ情報の発行元の装置は、情報処理装置101が現在キャリブレーション処理の対象としている装置ではない。そのためCPU103は、機種情報が一致しないと判定した場合は、再度S5010の処理を行い、情報処理装置101が現在キャリブレーション処理の対象としている装置から送信電力管理用サービス402に基づくアドバタイズ情報を取得できるのを待つ。一方、CPU103が、機種情報が一致すると判定した場合は、受信した送信電力管理用サービス402に基づくアドバタイズ情報の発行元の装置は、情報処理装置101が現在キャリブレーション処理の対象としている装置である。そのため、CPU103は、機種情報が一致すると判定した場合は、通信装置151にキャリブレーション処理を終了させることを指示するためのキャリブレーション終了指示(変更指示情報)をGATT通信によって送信する(S5022)。その後、CPU103は、BLE接続を解除し(S5023)、キャリブレーション処理を終了する。
なお、本実施形態では、図5に示すフローチャートは、近距離無線通信部110が、モード管理用サービス401に基づくアドバタイズ情報をブロードキャストしている状態で開始されるものとしたがこの形態に限定されない。近距離無線通信部110が、他のサービスに基づくアドバタイズ情報(例えば、ハンドオーバー用サービス403に基づくアドバタイズ情報)をブロードキャストしている状態で開始されても良い。この場合、CPU103は、S5001〜S5007及び初回のS5008、S5009では、モード管理用サービス401に基づくアドバタイズ情報の代わりに、他のサービスに基づくアドバタイズ情報を対象として、又は用いて処理を行う。
また、本実施形態では、CPU103は、S5010の判定において、送信電力管理用サービス402に基づくアドバタイズ情報を一度でも受信していたらS5018の処理を行う構成としているが、この形態に限定されない。例えば、送信電力管理用サービス402に基づくアドバタイズ情報の送信電力が一定に保たれていない可能性がある。そのため、CPU103は、S5010の判定において、単位時間当たりに所定の回数、送信電力管理用サービス402に基づくアドバタイズ情報を受信したか否かを判定しても良い。そして、CPU103は、単位時間当たりに所定の回数、送信電力管理用サービス402に基づくアドバタイズ情報を受信したと判定した場合に、S5018の処理を行う構成にしてもよい。
また、CPU103は、S5012では、送信電力情報に設定された値が、設定可能な値のうち最大の値になったか否かを判定する構成としているが、この形態に限定されない。例えば、CPU103は、S5012をS5008の直前に行い、S5012の判定として、送信電力情報に設定された値が、所定の閾値を超えたか否かを判定しても良い。そして、所定の値を超えたと判定した場合に、S5017の処理を行うような形態としても良い。
図6を用いて、本実施形態において通信装置151が実行する処理の流れを説明する。なお、図6のフローチャートが示す処理は、例えば、CPU154がROM152等のメモリに格納されたプログラムをRAM153に読み出して実行することにより実現される。また、図6のフローチャートが示す処理は、通信装置151の電源がオンになった場合や、通信装置151のBLE通信機能が有効に設定された場合に開始される。
まず、CPU154は、近距離無線通信部157によってし、モード管理用サービス401に基づくアドバタイズ情報のアドバタイズを開始(S6001)。情報処理装置101は、このとき送信されるアドバタイズ情報を取得した場合、図5において説明したように、モード管理用サービスに基づくBLE接続要求を送信する。そこで、CPU154は、BLE接続要求を受信したか否かを判定する(S6002)。
CPU154は、BLE接続要求を受信しなかったとS6002にて判定した場合、通信装置151の電源がオフになったか否かを判定する(S6003)。そして、CPU154は、電源がオフになっていないと判定した場合は、再度S6002の処理を実行し、電源がオフになったと判定した場合は、近距離無線通信部157によるアドバタイズを停止して処理を終了する。
一方、CPU154は、BLE接続要求を受信したとS6002にて判定した場合は、モード管理用サービス401に基づくアドバタイズ情報の送信を停止する(S6004)。その後、CPU154は、情報処理装置101とのBLE接続を確立し、GATT通信を開始する(S6005)。
BLE接続の確立後、CPU154は、情報処理装置101から送信されるキャリブレーション処理に関する指示情報の受信を待つ状態となる。そのため、CPU154は、情報処理装置101から送信されるキャリブレーション処理に関する指示情報を受信したか否かを判定する(S6006)。CPU154は、指示情報を受信していないと判定した場合は、S6005にてBLE接続を確立してから所定の時間が経過したか(タイムアウトしたか)否かを判定する(S6007)。CPU154は、タイムアウトしていないと判定した場合は、再度S6006の処理を実行する。
一方、CPU154は、タイムアウトしたと判定した場合は、情報処理装置101とのBLE接続を切断するか否かを判定する(S6009)。具体的には、CPU154は、情報処理装置101からBLE接続の切断要求を受信したか否かを判定する。なお、このとき、CPU154は、情報処理装置101とのBLE接続を切断するか否かを、S6008で実行した処理に応じて、自身で決定しても良い。例えば、キャリブレーション終了処理を実行したり、キャリブレーション失敗通知を受信した場合に、情報処理装置101とのBLE接続を切断すると判定しても良い。CPU154は、情報処理装置101とのBLE接続を切断すると判定した場合、装置間のBLE接続が切断されるため、モード管理用サービス401に基づくアドバタイズ情報のブロードキャストを再開する(S6010)。なお、前述したように、このときブロードキャストを再開するアドバタイズ情報は、他のサービスに基づくアドバタイズ情報であっても良い。その後、CPU154は、再度S6002の処理を実行する。
また、CPU154は、指示情報を受信したとS6006にて判定した場合は、指示情報に応じた処理を行う(S6008)。指示情報に応じた処理の詳細は後述する。その後、CPU154は、S6009の判定以降の処理を行う。
図7を用いて、通信装置151が実行する、指示情報に応じた処理について説明する。なお、図7のフローチャートが示す処理は、例えば、CPU154がROM152等のメモリに格納されたプログラムをRAM153に読み出して実行することにより実現される。また、図7のフローチャートが示す処理は、図6のS6008の処理に対応する。
まず、CPU154は、受信した指示情報がキャリブレーション開始指示であるか否かを判定する(S7001)。CPU154は、開始指示であると判定した場合は、キャリブレーション処理を開始する(S7002)具体的には、まず、CPU154は、キャリブレーション初期化処理を行う。キャリブレーション初期化処理とは、具体的には、情報処理装置101から受信する送信電力情報を格納する領域を確保したり、送信電力管理用サービス402に基づくアドバタイズ情報の送信電力を、所定の強度に設定する処理等である。なお、徐々に送信電力を上げていくことでキャリブレーション処理を行う形態であれば、所定の強度とは、例えば、設定可能な強度のうち最低の強度となる。なお、所定の強度は、設定可能な強度のうち最低の強度に限らず、通信装置151におけるBLE通信の利用シーン等を考慮して、適切な強度が設定されれば良い。また、CPU154は、キャリブレーション初期化処理が終了したあと、モード管理用サービス401に基づくアドバタイズ情報と、送信電力管理用サービス402に基づくアドバタイズ情報とをブロードキャストする状態に遷移する。このとき、具体的には、通信装置151は、モード管理用サービス401に基づくアドバタイズ情報と、送信電力管理用サービス402に基づくアドバタイズ情報とを交互にブロードキャストする。なお、ブロードキャストを1回行う毎にアドバタイズ情報を交換する形態に限定されず、ブロードキャストを複数回行う毎にアドバタイズ情報を交換する形態であっても良い。例えば、図10(B)に示すように、送信電力管理用サービス402に基づくアドバタイズ情報のアドバタイズと、モード管理用サービス401に基づくアドバタイズ情報のアドバタイズとが交互に行われる形態であっても良い。また、2種類のアドバタイズ情報を同時にブロードキャストする形態であっても良い。なお、通信装置151は、アドバタイズ情報のブロードキャストとBLE接続とを同時に実行することはできないため、キャリブレーション開始指示情報をGATT通信にて受信した時点では、まだいずれのアドバタイズ情報もブロードキャストしない。CPU154は、S7002の処理の実行後、指示情報に応じた処理を終了して、S6009の処理を実行する。
一方、CPU154は、開始指示でないとS7001にて判定した場合は、受信した指示情報が送信電力の設定指示か(設定指示受信したか)否かを判定する(S7003)。CPU154は、送信電力の設定指示であると判定した場合は、送信電力の設定処理を行う(S7004)。具体的には、通信装置151は、送信電力の設定指示を受信した場合、当該指示に含まれる送信電力情報に基づく送信電力にて、送信電力管理用サービス402に基づくアドバタイズ情報を送信する状態となる。すわなち、送信電力管理用サービス402に基づくアドバタイズ情報の送信電力を変更する。なお、通信装置151は、先述したようにアドバタイズ情報のブロードキャストとBLE接続とを同時に実行することはできないため、送信電力の設定指示をGATT通信にて受信した時点では、まだいずれのアドバタイズ情報もブロードキャストしない。CPU154は、S7004の処理の実行後、指示情報に応じた処理を終了して、S6009の処理を実行する。
一方、CPU154は、送信電力の設定指示でないと判定した場合は、受信した指示情報がキャリブレーション終了指示か(変更指示受信したか)否かを判定する(S7005)。CPU154は、キャリブレーション終了指示であると判定した場合は、キャリブレーション終了処理を実行する(S7006)。具体的には、CPU154は、モード管理用サービス401に基づくアドバタイズ情報と送信電力管理用サービス402に基づくアドバタイズ情報とをブロードキャストする状態を解除する。そして、CPU154は、送信電力管理用サービス402に基づくアドバタイズ情報の、キャリブレーション終了処理時に設定されている送信電力の値を、以後、ハンドオーバー用サービス403に基づくアドバタイズ情報を送信する際の送信電力として設定する。これにより、本実施形態は、送信電力を最小限に抑えて第三者等によって通信データが傍受されることを抑制しつつ、情報処理装置101とのハンドオーバーを適切な範囲にて実行することができる。なお、キャリブレーション終了指示を取得した場合の通信装置151の処理は、この形態に限定されない。例えば、モード管理用サービス401に基づくアドバタイズ情報及び送信電力管理用サービス402に基づくアドバタイズ情報のブロードキャストを停止し、ハンドオーバー用サービス403に基づくアドバタイズ情報をブロードキャストする状態となっても良い。また、通信装置151は、先述したようにアドバタイズ情報のブロードキャストとBLE接続とを同時に実行することはできないため、キャリブレーション終了指示をGATT通信にて受信した時点では、まだいずれのアドバタイズ情報もブロードキャストしない。CPU154は、S7006の処理の実行後、指示情報に応じた処理を終了して、S6009の処理を実行する。
また、CPU154がキャリブレーション終了指示でないとS7005にて判定した場合は、受信された指示情報はキャリブレーション失敗通知である。そのため、CPU154は、キャリブレーション終了指示でないとS7005にて判定した場合は、キャリブレーションに失敗した旨を示す画面を通信装置151が備える表示部(不図示)に表示する(S7007)。その後、CPU154は、指示情報に応じた処理を終了して、S6009の処理を実行する。
なお、本実施形態では、CPU103は、S6001では、近距離無線通信部110によって、モード管理用サービス401に基づくアドバタイズ情報のアドバタイズを開始するものとしたが、この形態に限定されない。すなわち、CPU103は、近距離無線通信部110によって、他のサービスに基づくアドバタイズ情報(例えば、ハンドオーバー用サービス403に基づくアドバタイズ情報)のアドバタイズを開始しても良い。この場合、CPU103は、S7002において、他のサービスに基づくアドバタイズ情報を送信する状態から、モード管理用サービス401に基づくアドバタイズ情報と、送信電力管理用サービス402に基づくアドバタイズ情報とを送信する状態に遷移する。
上述したように、本実施形態では、通信装置151は、情報処理装置101から指示に基づいてアドバタイズ情報の送信電力を大きくする。そして、情報処理装置101がアドバタイズ情報を取得できた場合に発せられるキャリブレーション処理終了指示に基づいてキャリブレーション処理を終了する。これにより、本実施形態の通信装置151は、例えば、所定の時間が経過する毎にアドバタイズ情報の送信電力を大きくする形態と比較して、アドバタイズ情報の送信電力を不必要に大きくしてしまうことを抑制できる。例えば、所定の時間毎にアドバタイズ情報の送信電力を大きくする形態では、情報処理装置101から発信される、キャリブレーション処理を終了させるための応答が遅れた場合には、アドバタイズ情報の送信電力を不必要に大きくしてしまうおそれがある。一方、本実施形態では、情報処理装置101からの指示が無ければアドバタイズ情報の送信電力が変更されないため、キャリブレーション処理終了指示の取得が遅れたとしても、アドバタイズ情報の送信電力が不必要に大きくなってしまうことがない。これにより、情報処理装置101が取得できたアドバタイズ情報の送信時の送信電力が、キャリブレーション後の送信電力として決定される。すなわち、通信装置151は、情報処理装置101がアドバタイズ情報を取得でき、且つ不必要に広い範囲までアドバタイズ情報が到達しない適切な送信電力に、アドバタイズ情報の送信電力をキャリブレーションすることができる。
また、上述のキャリブレーション方法において、通信装置151が送信するアドバタイズ情報の送信電力を、情報処理装置101が指示するためには、当該指示を情報処理装置101が通信装置151に伝えるための構成が必要となる。本実施形態では、キャリブレーション時に、異なるサービスに基づく複数のアドバタイズ情報を交互に送信する形態とすることで、上述のキャリブレーション方法を実現している。具体的には、送信電力を経時変化させるアドバタイズ情報と、指示を情報処理装置101が通信装置151に伝えるためのGATT通信を実行するためのアドバタイズ情報とを交互に送信する形態とすることで、上述のキャリブレーション方法を実現している。
また、本実施形態では、通信装置151は、上述のようにして、送信電力を徐々に変化させるアドバタイズ情報だけでなく、大きい送信電力で送信する2種類目のアドバタイズ情報を送信する。これにより、情報処理装置101は、キャリブレーション処理中は、少なくとも1つのアドバタイズ情報を受信することができる。そのため、情報処理装置101は、送信電力を徐々に変化させるアドバタイズ情報を受信できない状態でも、通信装置151がキャリブレーション処理を実行していることを認識することができる。
なお、本実施形態では、キャリブレーション処理によって、ハンドオーバー用サービス403に基づくアドバタイズ情報をキャリブレーション処理後に送信する際の送信電力を決定するが、この形態に限定されない。キャリブレーション処理によって、例えば、送信電力管理用サービス402に基づくアドバタイズ情報や、その他のサービスに基づくアドバタイズ情報をキャリブレーション処理後に送信する際の送信電力を決定しても良い。また、キャリブレーション処理によって決定された送信電力を、それぞれ別のサービスに基づく複数種類のアドバタイズ情報の送信電力に適用しても良い。
(第2実施形態)
第1実施形態では、送信電力を情報処理装置101から指示するために、異なる複数のサービスに基づいた複数のアドバタイズ情報を用いてキャリブレーション処理を実行する形態を説明した。本実施形態では、第1実施形態とは異なる形態によって、送信電力を情報処理装置101から指示する形態のキャリブレーション処理を実行する形態を説明する。なお、本実施形態の通信システムは、第1実施形態と同様の通信システムであるものとし、同様の構成については説明を省略する。
本実施形態において、送信電力管理用サービス402に基づくアドバタイズ情報には、当該アドバタイズ情報を送信した際の送信電力の情報が含まれる。情報処理装置101は、当該情報を参照することで、受信したアドバタイズ情報が、どのような送信電力にて送信された情報なのかを把握することができる。
図11を用いて、本実施形態において情報処理装置101が実行する処理の流れを説明する。なお、図11のフローチャートが示す処理は、例えば、CPU103がROM104等のメモリに格納されたプログラムをRAM105に読み出して実行することにより実現される。また、図11のフローチャートが示す処理は、情報処理装置101において印刷用アプリが起動している状態で、キャリブレーションボタン202がタップされた場合に開始される。また、本実施形態では、上述したように近距離無線通信部110がマスタ機器として動作するため、近距離無線通信部110がアドバタイズ情報を受信する側(スキャナ側)となる。本実施形態では、近距離無線通信部110は、キャリブレーションボタン202がタップされた場合に、アドバタイズ情報を受信可能な状態(スキャンニング状態)となる。また、本実施形態では、上述したように近距離無線通信部157がスレーブ機器として動作するため、近距離無線通信部157がアドバタイズ情報をブロードキャストする側(アドバタイザ側)となる。本実施形態では、近距離無線通信部157は、通信装置151のBLE通信機能を有効にするためのボタンがタップされた場合に、アドバタイズ情報をブロードキャストする状態(アドバタイズ状態)となる。また、このとき、近距離無線通信部110は、モード管理用サービス401に基づくアドバタイズ情報をブロードキャストする。
S1101〜S1105の処理については、図5のフローチャートが示す処理と同様の処理であるため説明を省略する。
S1106では、CPU103は、通信装置151にキャリブレーション開始指示情報をGATT通信によって送信する。
S1101〜S1110の処理については、S5001〜S5006、S5009〜5011及びS5017の処理と同様の処理であるため説明を省略する。
S1111では、CPU103は、受信した送信電力管理用サービス402に基づくアドバタイズ情報に含まれる送信電力情報を解析し、当該アドバタイズ情報の送信時の送信電力の情報を取得する。
S1112では、CPU103は、送信電力管理用サービス402に基づくBLE接続を確立する。
S1113の処理については、S5021の処理と同様の処理であるため説明を省略する。
S1114では、CPU103は、S1111で取得した送信電力にてアドバタイズ情報の送信を行わせるための指示(本実施形態における送信電力の設定指示)を含むキャリブレーション処理終了指示を生成し、通信装置151にGATT通信により送信する。
S1115及びS1116の処理については、S5023及びS5024の処理と同様の処理であるため説明を省略する。
なお、本実施形態では、図11に示すフローチャートは、近距離無線通信部110が、モード管理用サービス401に基づくアドバタイズ情報をブロードキャストしている状態で開始されるものとしたがこの形態に限定されない。近距離無線通信部110が、他のサービスに基づくアドバタイズ情報(例えば、ハンドオーバー用サービス403に基づくアドバタイズ情報)をブロードキャストしている状態で開始されても良い。この場合、CPU103は、S1101〜S1107では、モード管理用サービス401に基づくアドバタイズ情報の代わりに、他のサービスに基づくアドバタイズ情報を対象として、又は用いて処理を行う。
また、本実施形態では、CPU103は、S1108の判定において、送信電力管理用サービス402に基づくアドバタイズ情報を一度でも受信していたらS1111の処理を行う構成としているが、この形態に限定されない。例えば、送信電力管理用サービス402に基づくアドバタイズ情報の送信電力が一定に保たれていない可能性がある。そのため、CPU103は、S1108の判定において、単位時間当たりに所定の回数、送信電力管理用サービス402に基づくアドバタイズ情報を受信したか否かを判定しても良い。そして、CPU103は、単位時間当たりに所定の回数、送信電力管理用サービス402に基づくアドバタイズ情報を受信したと判定した場合に、S1111の処理を行う構成にしてもよい。
本実施形態においても通信装置151は、図6と同様の処理を実行する。図6と同様の処理については説明を省略する。
図12を用いて、通信装置151が実行する、指示情報に応じた処理について説明する。なお、図12のフローチャートが示す処理は、例えば、CPU154がROM152等のメモリに格納されたプログラムをRAM153に読み出して実行することにより実現される。また、図12のフローチャートが示す処理は、図6のS6008の処理に対応する。
S1201の処理については、S7001の処理と同様の処理であるため説明を省略する。
S1202では、具体的には、CPU154は、モード管理用サービス401に基づくアドバタイズ情報と送信電力管理用サービス402に基づくアドバタイズ情報とをブロードキャストする状態を解除する。そして、CPU154は、送信電力管理用サービス402に基づくアドバタイズ情報の、キャリブレーション終了処理時に設定されている送信電力の値を、以後、ハンドオーバー用サービス403に基づくアドバタイズ情報を送信する際の送信電力として設定する。これにより、本実施形態は、送信電力を最小限に抑えて第三者等によって通信データが傍受されることを抑制しつつ、情報処理装置101とのハンドオーバーを適切な範囲にて実行することができる。CPU154は、S1202の処理の実行後、指示情報に応じた処理を終了して、S6009の処理を実行する。
S1203の処理については、S7005の処理と同様の処理であるため説明を省略する。
S1204では、CPU154は、キャリブレーション終了処理を実行する。本実施形態では、通信装置151は、キャリブレーション処理終了指示を受信した場合、まず、キャリブレーション終了処理に含まれる送信電力の設定指示を参照する。そして、CPU154は、キャリブレーション処理を終了し、以後、参照した送信電力の設定指示に基づく送信電力(S1111でCPU103に取得された送信電力)にて、ハンドオーバー用サービス403に基づくアドバタイズ情報を送信する状態となる。なお、通信装置151は、アドバタイズ情報のブロードキャストとBLE接続とを同時に実行することはできない。そのため、通信装置151は、キャリブレーション終了指示情報をGATT通信にて受信した時点では、まだアドバタイズ情報をブロードキャストせず、BLE接続が解除された時点でブロードキャストを開始する。CPU154は、S1204の処理の実行後、指示情報に応じた処理を終了して、S6009の処理を実行する。
S1205の処理については、S7007の処理と同様の処理であるため説明を省略する。
なお、本実施形態では、CPU103は、S6001では、近距離無線通信部110によって、モード管理用サービス401に基づくアドバタイズ情報のアドバタイズを開始するものとしたが、この形態に限定されない。すなわち、CPU103は、近距離無線通信部110によって、他のサービスに基づくアドバタイズ情報(例えば、ハンドオーバー用サービス403に基づくアドバタイズ情報)のアドバタイズを開始しても良い。この場合、CPU103は、S1202において、他のサービスに基づくアドバタイズ情報を送信する状態から、送信電力管理用サービス402に基づくアドバタイズ情報を送信する状態に遷移する。
上述したように、本実施形態では、通信装置151は、送信電力の情報が格納されたアドバタイズ情報を、所定の時間が経過する毎に送信電力を大きくして送信する。そして、情報処理装置101がアドバタイズ情報を取得できた場合に発せられるキャリブレーション処理終了指示に基づいた値の送信電力を、キャリブレーション処理後の送信電力として決定する。これにより、本実施形態の通信装置151は、情報処理装置101から応答が返ってきた時点での送信電力をキャリブレーション処理後の送信電力として決定する形態と比較して、適切な値をキャリブレーション処理後の送信電力として決定することができる。所定の時間が経過する毎に送信電力を大きくして情報を送信する形態では、例えば、情報処理装置101がアドバタイズ情報を受信してから応答を返すまでにタイムラグが生じた場合、送信電力を不必要に大きくしてしまう場合がある。この場合、情報処理装置101から応答を受信した時点での送信電力をキャリブレーション処理後の送信電力として決定する形態では、不必要に大きくしてしまった送信電力を、キャリブレーション処理後の送信電力として決定してしまう。一方、本実施形態の通信装置151は、応答を受信した時点で送信電力を不必要に大きくしてしまっていても、キャリブレーション処理後の送信電力としては、情報処理装置101から指示される送信電力を決定する。言いかえれば、不必要に大きくしてしまった送信電力を、キャリブレーション処理後の送信電力として決定してしまうことはない。そのため本実施形態の通信装置151は、不必要に大きくしてしまった送信電力をキャリブレーション処理後の送信電力として決定してしまうことを抑制でき、情報処理装置101から指示される適切な値をキャリブレーション処理後の送信電力として決定できる。
(第3実施形態)
上述の実施形態では、キャリブレーション処理において、送信電力管理用サービス402に基づくアドバタイズ情報は、最初に弱い送信電力で送信され、その後、送信電力が序々に強められていく形態を説明したが、この形態に限定されない。すなわち、例えば、送信電力管理用サービス402に基づくアドバタイズ情報は、最初に強い強度で送信され、その後、送信電力が序々に弱められていく形態であっても良い。その場合、CPU103は、S5007の初期化処理において、例えば、送信電力情報として設定可能な値のうち最大の送信電力値を設定する。また、CPU103は、S5010の判定において、送信電力管理用サービス402に基づくアドバタイズ情報を、近距離無線通信部110によって受信しなかったと判定した場合に、S5018に進む。また、通信装置151は、キャリブレーション終了指示を受け付けた場合、現在設定されている送信電力を一段階大きくした値を、以後、ハンドオーバー用サービス403に基づくアドバタイズ情報を送信する際の送信電力として設定する。
上述の実施形態では、通信装置151は、モード管理用サービス401に基づくBLE接続によって、キャリブレーション開始指示を受信しているが、この形態に限定されない。例えば、ハンドオーバー用サービス403に基づくBLE接続によって、キャリブレーション開始指示を受信しても良い。この場合、通信装置151は、アドバタイズ状態となった時に、ハンドオーバー用サービス403に基づくアドバタイズ情報をブロードキャストする。また、通信装置151は、キャリブレーション開始指示を受信すると、ハンドオーバー用サービス403に基づく情報を送信する状態から、モード管理用サービス401に基づく情報及び送信電力管理用サービス402に基づく情報を送信する状態に遷移する。上述の実施形態は、上述の実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを実行する処理でも実現可能である。また、上述の実施形態は、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101 情報処理装置
151 通信装置

Claims (21)

  1. 所定の通信方式によって情報処理装置と通信し、複数の情報を送信する通信部を有する通信装置であって、
    前記複数の情報に含まれ、所定の送信電力に基づく情報を含む第1の情報を前記通信部によって前記所定の送信電力を用いて送信する第1送信手段と、
    前記第1の情報が前記情報処理装置に受信された場合、前記通信装置が前記通信部によって送信し、且つ前記第1の情報と異なる第2の情報を、前記情報処理装置が前記通信装置に、前記第1の情報が送信された際に用いられた送信電力で送信させるための所定の情報を、前記情報処理装置から前記通信部によって受信する受信手段と、
    前記所定の情報が前記通信部によって受信された場合、前記受信された前記所定の情報の内容に基づいて、前記第1の情報が送信された際に用いられた送信電力を特定する特定手段と、
    前記第2の情報を前記通信部によって、前記特定された送信電力で送信する第2送信手段と、を有し、
    前記所定の情報には、前記第1の情報が送信された際に用いられた送信電力に関する送信電力情報が含まれ、
    前記所定の情報に含まれる前記送信電力情報の内容に基づいて、前記第1の情報が送信された際に用いられた送信電力が特定されることを特徴とする通信装置。
  2. 前記第2の情報が前記情報処理装置に受信された場合、前記情報処理装置と前記通信装置との間の前記所定の通信方式による接続を確立させる第1接続手段と、
    前記情報処理装置と前記通信装置との間の前記所定の通信方式による接続によって、前記所定の通信方式と異なる他の通信方式による通信を実行するための通信情報を前記情報処理装置に送信する第3送信手段と、
    前記情報処理装置によって前記通信情報が取得された場合、前記情報処理装置と前記通信装置との間の前記他の通信方式による接続を確立させる第2接続手段と、
    前記情報処理装置と前記通信装置との間の前記他の通信方式による接続によって、前記ジョブを受信するジョブ受信手段と、をさらに有することを特徴とする請求項1に記載の通信装置。
  3. 前記通信装置と前記情報処理装置との間の認証を行うためのペアリング処理を実行する実行手段と、をさらに有し、
    前記ペアリング処理が完了した状態で、前記通信情報が前記情報処理装置に送信されることを特徴とする請求項2に記載の通信装置。
  4. 前記第1の情報には、前記通信装置の識別情報が含まれることを特徴とする請求項1乃至3のいずれか1項に記載の通信装置。
  5. 前記情報処理装置は、前記情報処理装置の外部から受信する情報のうち、前記通信装置の識別情報が含まれる情報を受信した場合、前記所定の情報を送信することを特徴とする請求項4に記載の通信装置。
  6. 前記第2の情報には、前記通信装置の識別情報が含まれることを特徴とする請求項1乃至5のいずれか1項に記載の通信装置。
  7. 前記第1の情報が前記情報処理装置に受信された場合、前記情報処理装置と前記通信装置との間の前記所定の通信方式による接続を確立させる接続確立手段を更に有し、
    前記情報処理装置と前記通信装置との間の前記所定の通信方式による接続により、前記所定の情報が受信されることを特徴とする請求項1乃至6のいずれか1項に記載の通信装置。
  8. 前記所定の通信方式は、Bluetooth Low Energyであることを特徴とする請求項1乃至のいずれか1項に記載の通信装置。
  9. 前記他の通信方式は、Wi−Fiであることを特徴とする請求項2に記載の通信装置。
  10. 前記情報処理措置から受信するジョブに基づく画像形成を行う画像形成手段を更に有することを特徴とする請求項1乃至のいずれか1項に記載の通信装置。
  11. 所定の通信方式によって情報処理装置と通信し、複数の情報を送信する通信部を有する通信装置の制御方法であって、
    前記複数の情報に含まれ、所定の送信電力に基づく情報を含む第1の情報を前記所定の送信電力で送信する第1送信ステップと、
    前記第1の情報が前記情報処理装置に受信された場合、前記通信装置が前記通信部によって送信し、且つ前記第1の情報と異なる第2の情報を、前記情報処理装置が前記通信装置に、前記第1の情報が送信された際に用いられた送信電力で送信させるための所定の情報を、前記情報処理装置から前記通信部によって受信する受信ステップと、
    前記所定の情報が前記通信部によって受信された場合、前記受信された前記所定の情報の内容に基づいて、前記第1の情報が送信された際に用いられた送信電力を特定する特定ステップと、
    前記第2の情報を前記通信部によって、前記特定された前記第1の送信電力で送信する第2送信ステップと、を有し、
    前記所定の情報には、前記第1の情報が送信された際に用いられた送信電力に関する送信電力情報が含まれ、
    前記所定の情報に含まれる前記送信電力情報の内容に基づいて、前記第1の情報が送信された際に用いられた送信電力が特定されることを特徴とする制御方法。
  12. 前記第2の情報が前記情報処理装置に受信された場合、前記情報処理装置と前記通信装置との間の前記所定の通信方式による接続を確立させる接続ステップと、
    前記情報処理装置と前記通信装置との間の前記所定の通信方式による接続によって、前記所定の通信方式と異なる他の通信方式による通信を実行するための通信情報を前記情報処理装置に送信する送信ステップと、
    前記情報処理装置によって前記通信情報が取得された場合、前記情報処理装置と前記通信装置との間の前記他の通信方式による接続を確立させる接続ステップと、
    前記情報処理装置と前記通信装置との間の前記他の通信方式による接続によって、前記ジョブを受信する受信ステップと、をさらに有することを特徴とする請求項11に記載の制御方法。
  13. 前記通信装置と前記情報処理装置との間の認証を行うためのペアリング処理を実行する実行ステップと、を更に有し、
    前記ペアリング処理が完了した状態で、前記通信情報が前記情報処理装置に送信されることを特徴とする請求項1に記載の制御方法。
  14. 前記第1の情報には、前記通信装置の識別情報が含まれることを特徴とする請求項11乃至13のいずれか1項に記載の制御方法。
  15. 前記情報処理装置は、前記情報処理装置の外部から受信する情報のうち、前記通信装置の識別情報が含まれる情報を受信した場合、前記所定の情報を送信することを特徴とする請求項14に記載の制御方法。
  16. 前記第2の情報には、前記通信装置の識別情報が含まれることを特徴とする請求項11乃至15のいずれか1項に記載の制御方法。
  17. 前記第1の情報が前記情報処理装置に受信された場合、前記情報処理装置と前記通信装置との間の前記所定の通信方式による接続を確立させる接続ステップと、を更に有し、
    前記情報処理装置と前記通信装置との間の前記所定の通信方式による接続により、前記所定の情報が受信されることを特徴とする請求項11乃至16のいずれか1項に記載の制御方法。
  18. 前記所定の通信方式は、Bluetooth Low Energyであることを特徴とする請求項11乃至17のいずれか1項に記載の制御方法。
  19. 前記他の通信方式は、Wi−Fiであることを特徴とする請求項12に記載の制御方法。
  20. 前記情報処理措置から受信するジョブに基づく画像形成を行う画像形成ステップを更に有することを特徴とする請求項11乃至19のいずれか1項に記載の制御方法。
  21. 請求項1乃至10のいずれか1項に記載の通信装置の各手段をコンピュータによって実現するためのプログラム。
JP2016072789A 2016-03-31 2016-03-31 情報処理装置、通信装置、制御方法及びプログラム Active JP6312733B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2016072789A JP6312733B2 (ja) 2016-03-31 2016-03-31 情報処理装置、通信装置、制御方法及びプログラム
US15/472,874 US10048909B2 (en) 2016-03-31 2017-03-29 Image forming device and control method
US16/041,440 US10282147B2 (en) 2016-03-31 2018-07-20 Image forming device and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016072789A JP6312733B2 (ja) 2016-03-31 2016-03-31 情報処理装置、通信装置、制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2017184170A JP2017184170A (ja) 2017-10-05
JP6312733B2 true JP6312733B2 (ja) 2018-04-18

Family

ID=59961563

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016072789A Active JP6312733B2 (ja) 2016-03-31 2016-03-31 情報処理装置、通信装置、制御方法及びプログラム

Country Status (2)

Country Link
US (2) US10048909B2 (ja)
JP (1) JP6312733B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210367706A1 (en) * 2018-05-21 2021-11-25 Hewlett-Packard Development Company, L.P. Device communication interpretation based on process state
JP7210987B2 (ja) * 2018-10-02 2023-01-24 カシオ計算機株式会社 無線通信装置、電子時計、送信電力制御方法、及びプログラム
JP7215055B2 (ja) * 2018-10-04 2023-01-31 カシオ計算機株式会社 無線通信装置、無線通信方法、及びプログラム
JP6888037B2 (ja) 2019-01-31 2021-06-16 キヤノン株式会社 情報処理装置、制御方法およびプログラム
JP7311999B2 (ja) * 2019-03-29 2023-07-20 キヤノン株式会社 情報処理装置、通信装置、制御方法、及びプログラム
JP7115498B2 (ja) * 2020-03-17 2022-08-09 カシオ計算機株式会社 無線通信装置、端末装置、無線通信システム、通信接続制御方法及びプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3205311B2 (ja) * 1999-03-04 2001-09-04 シャープ株式会社 通信方法および通信装置
JP2000295658A (ja) * 1999-04-02 2000-10-20 Toshiba Corp 無線通信装置とその制御方法
JP2006135544A (ja) * 2004-11-04 2006-05-25 Sealive Inc 管理システム
JP2008193265A (ja) * 2007-02-01 2008-08-21 Canon Inc 画像処理システム、情報処理装置、画像処理装置及びそれらの制御方法、コンピュータプログラム
JP4954096B2 (ja) * 2008-01-10 2012-06-13 株式会社リコー 通信装置、通信方法、プログラムおよびコンピュータ読み取り可能な記録媒体
JP5541538B2 (ja) * 2011-12-27 2014-07-09 Necアクセステクニカ株式会社 通信装置およびその制御方法
JP5857850B2 (ja) * 2012-03-30 2016-02-10 ブラザー工業株式会社 通信装置
JP6264815B2 (ja) * 2013-09-30 2018-01-24 ブラザー工業株式会社 通信装置
JP6338344B2 (ja) * 2013-10-04 2018-06-06 キヤノン株式会社 通信装置、通信装置の制御方法およびプログラム
KR101871424B1 (ko) * 2013-11-11 2018-08-02 엘지전자 주식회사 블루투스 연결 방법 및 장치
JP6413691B2 (ja) * 2014-11-20 2018-10-31 株式会社リコー データ通信装置、データ通信方法、及びデータ通信プログラム
JP6509051B2 (ja) * 2015-06-17 2019-05-08 キヤノン株式会社 携帯端末装置、プログラム、情報処理方法

Also Published As

Publication number Publication date
JP2017184170A (ja) 2017-10-05
US20180329660A1 (en) 2018-11-15
US10048909B2 (en) 2018-08-14
US10282147B2 (en) 2019-05-07
US20170286026A1 (en) 2017-10-05

Similar Documents

Publication Publication Date Title
JP6312733B2 (ja) 情報処理装置、通信装置、制御方法及びプログラム
US10397963B2 (en) Information processing apparatus, control method, and non-transitory computer-readable storage medium
KR102130070B1 (ko) 정보처리장치, 정보처리장치의 제어방법 및 통신 시스템의 제어방법
US11792867B2 (en) Communication system, communication apparatus, control method thereof, and storage medium
JP7230124B2 (ja) プログラム、通信装置、制御方法
US10848609B2 (en) Information processing method, storage medium, and information processing device
JP6666765B2 (ja) 通信装置及びその制御方法、並びにプログラム
US10489173B2 (en) Information processing apparatus, control method and storage medium storing a program
CN108694025B (zh) 信息处理设备、控制方法和存储介质
JP2023015292A (ja) 通信装置、制御方法、及びプログラム
CN107277743B (zh) 通信系统、通信装置和控制方法
CN110611904B (zh) 控制方法、信息处理设备和非暂时性计算机可读存储介质
JP6888037B2 (ja) 情報処理装置、制御方法およびプログラム
JP6862097B2 (ja) プログラム、情報処理装置、および情報処理装置の制御方法
JP2023079947A (ja) 通信装置、その制御方法、並びにプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170809

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20171017

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180116

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20180124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180320

R151 Written notification of patent or utility model registration

Ref document number: 6312733

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151