[1.通信システムの全体構成]
以下、図面を参照して本発明の実施形態について説明する。
図1は、本実施形態の印刷装置10を含むシステムの構成例を示す図である。本実施形態の印刷装置10は、他の装置と無線データ通信を実行する。印刷装置10が使用する通信方式は任意であり、Bluetooth(登録商標)、無線LAN(Local Area Network)、或いはその他の無線通信方式を採用できる。ここで、無線LANは、Wi−Fiアライアンスにより規格化されたWi−Fi通信を含む。また、印刷装置10が他の装置との間で送受信するデータの種類や内容は特に制限されない。
本実施形態では、印刷装置10が、無線通信方式の一例としてWi−Fiにより他の装置と通信を実行する。印刷装置10は、他の装置と通信を開始する際に、Wi−Fi Directにより接続する。ここで、印刷装置10は、Autonomous GO(Group Owner)として動作し、GC(Group Client)として動作する他の装置と接続可能である。Autonomous GOは、いわゆるアクセスポイント(AP)として機能し、GCとなる装置を接続させる。印刷装置10が構成し、端末装置100を接続させる通信ネットワークを、図1に無線通信ネットワーク1aとして示す。
図1に示す構成例では、印刷装置10は、端末装置100、及び、端末装置101と接続し、無線通信を実行できる。端末装置100、101は、ユーザーが操作する装置であり、例えば、スマートフォン等の携帯電話、タブレット型コンピューター、パーソナルコンピューター等である。印刷装置10は、端末装置100と接続して通信システム1を構成し、端末装置100が送信する印刷データに従って、印刷媒体に印刷を行う。端末装置101は、端末装置100と同様に構成され、Wi−Fi Directにより印刷装置10に接続可能である。
本実施形態の端末装置100は、平板状の本体111を有し、本体111の表面にタッチパネル140を備える。タッチパネル140は、画像を表示する表示パネル141(図3)と、タッチパネル140の表面に対するユーザーの接触操作を検出するタッチセンサー142(図3)とを備える。ユーザーは、端末装置100のタッチパネル140に指等の指示体を接触させることにより、端末装置100を操作する。
端末装置100は、印刷装置10とは異なる装置と接続することもできる。図1には、印刷装置10と接続可能な装置として、複数のアクセスポイント200(図中、AP/GOと表記する)を図示する。アクセスポイント200は、アクセスポイントとして動作する各種装置、又はAutonomous GOとして動作する各種装置である。例えば、無線LANアクセスポイントやルーター等のネットワーク装置、及び、印刷装置10とは異なる印刷装置等である。
本実施形態では、端末装置100が、ユーザーの操作に従って、印刷装置10とWi−Fiにより接続する場合について説明する。
[2.印刷装置の構成]
図2は、印刷装置10のブロック図である。
印刷装置10は、印刷装置10の各部を制御する制御部20を備える。制御部20は、プロセッサー21、及び、メモリー31を備える。プロセッサー21は、CPU(Central Processing Unit)やプログラマブルデバイス等で構成される演算処理装置である。プロセッサー21は、メモリー31が記憶する制御プログラム32を読み出して実行することにより、印刷装置10の各部を制御する。
メモリー31は、プロセッサー21が実行するプログラムや、プロセッサー21により処理されるデータを記憶する。メモリー31は、プログラムやデータを不揮発的に記憶する記憶装置である。また、メモリー31は、ワークエリアを形成して、プロセッサー21が実行するプログラムや処理対象のデータ等を一時的に格納する揮発性のメモリーを備えてもよい。
プロセッサー21は、印刷装置10の各部を制御する機能ブロックとして、印刷制御部22、及び、通信制御部23を有する。これらの機能ブロックは、プロセッサー21が、メモリー31に記憶されたプログラムを実行することにより、ソフトウェアとハードウェアの協働により実現される。
メモリー31は、制御プログラム32、ドライバープログラム33、及び通信設定データ34を記憶する。
制御部20を構成するプロセッサー21及びメモリー31は、各々が独立した半導体デバイスとして実装されていてもよい。或いは、SOC(System−on−a−chip)等の形態で統合された構成としてもよい。また、プロセッサー21を複数のプロセッサーで構成してもよいし、単一のプロセッサーで構成してもよく、制御部20の具体的な実装形態は任意である。
印刷装置10は、印刷媒体に文字や画像を印刷する印刷部40を備える。印刷部40は、印刷ヘッド41、及び、印刷媒体を搬送する搬送部42を備える。印刷部40の印刷方式は、インクジェット式、サーマル式、ドットインパクト式など各種の方式を採用できる。また、印刷部40は、印刷ヘッド41を、搬送部42による搬送方向と交差する方向に走査するシリアルヘッドであってもよいし、ラインヘッドであってもよい。印刷装置10が印刷する印刷媒体は、紙や合成樹脂製のシートであり、所定サイズにカットされたカットシートであってもよく、ロール紙等の連続シートであってもよい。
印刷部40は、制御部20の制御に従って、印刷ヘッド41及び搬送部42を動作させ、印刷媒体への印刷を行う。
操作パネル45は、各種のスイッチや、印刷装置10の動作状態を表示するインジケーター等を備える。
無線通信部50は、制御部20の制御に従って、端末装置100、101と無線通信を実行する。無線通信部50は、図示しないアンテナやRF(Radio Frequency)回路等を備え、制御部20の制御に従って、通信プロコトルを実行する。本実施形態では、上述のように、無線通信部50はWi−Fiによる通信を実行する。
印刷制御部22は、無線通信部50により受信した印刷データに基づき、印刷部40を制御して、印刷媒体への印刷を行う。
通信制御部23は、プロセッサー21が実行する制御プログラム32の機能、及び、ドライバープログラム33の機能により実現される。通信制御部23は、無線通信部50を制御して、他の装置との通信を確立し、無線データ通信を実行する。
通信制御部23は、無線通信部50により送信するデータを生成する。通信制御部23は、生成したデータを含むフレームを、ドライバープログラム33の機能により生成し、生成したフレームを無線通信部50によって送信させる。また、通信制御部23は、無線通信部50が受信したフレームを、通信制御部23の機能により解析し、フレームに含まれる通信制御用の各種データ、及び、フレームのデータ部に含まれるデータの抽出を行う。通信制御部23は、データ部から抽出したデータを再構成して、メモリー31に記憶させる。また、通信制御部23は、受信したフレームに含まれる通信制御用の各種データを、通信設定データ34などに反映させる。例えば、通信制御部23は、フレームのヘッダーから抽出した通信相手の装置の物理アドレス、ネットワーク識別情報、転送速度等の各種の情報を、通信設定データ34に設定する。
さらに、無線通信部50による通信を行う際に、プロセッサー21は、ドライバープログラム33を実行する。ドライバープログラム33は、無線通信部50のハードウェアを制御するためのデバイスドライバープログラムである。これにより、プロセッサー21は、通信制御部23として機能して、Wi−Fi DirectのGOとしての動作を実行し、端末装置100または端末装置101と接続する。
例えば、通信制御部23は、無線通信部50が送信するビーコンフレームに含めるデータを生成し、生成したデータを含むビーコンフレームを、ドライバープログラム33の機能により生成する。そして、生成したフレーム構成を有するビーコンを、無線通信部50によって、周期的に送信させる。
また、通信制御部23は、無線通信部50を制御する際に、通信設定データ34を参照する。通信設定データ34は、印刷装置10が形成する無線通信ネットワークのネットワークID、印刷装置10の物理アドレス等の設定値を含む。また、通信設定データ34は、ビーコンとして送信される各種の情報を含んでも良い。
また、通信制御部23は、無線通信部50によって端末装置100から受信した印刷データを、メモリー31に記憶させる。この印刷データは、印刷制御部22によって読み出され、印刷媒体に印刷される。
[3.端末装置の構成]
図3は、端末装置100のブロック図である。
端末装置100は、端末装置100の各部を制御する制御部110を備える。制御部110は、CPUやマイコン等で構成されるプロセッサー121、及び、メモリー131を含む。メモリー131は、プロセッサー121が実行するプログラムやデータを不揮発的に記憶する記憶装置であり、磁気的記憶装置、フラッシュROM等の半導体記憶素子、或いはその他の種類の不揮発性記憶装置により構成される。メモリー131は、プロセッサー121のワークエリアを構成するRAMを含んでもよい。プロセッサー121は、単一のプロセッサーで構成されてもよいし、複数のプロセッサーがプロセッサー121として機能する構成であってもよい。
制御部110には、タッチパネル140、検出部145、及び無線通信部150が接続される。タッチパネル140は、上述した表示パネル141及びタッチセンサー142を備え、タッチセンサー142は検出部145に接続される。検出部145は、端末装置100に対するユーザーの操作を検出する手段として機能し、具体的には、タッチセンサー142に対する操作、及び、スイッチ部147に対する操作を検出する。
表示パネル141は、液晶ディスプレイ、EL(Electro Luminescent)ディスプレイ等により構成され、制御部110の制御に従って各種情報を表示する。
タッチセンサー142は、表示パネル141の表面に重ねて敷設される。タッチセンサー142は、タッチパネル140に対する指やペン型の指示体の接触を検出して、検出した接触位置を示す位置信号を検出部145に出力する。検出部145は、タッチセンサー142から入力される位置信号に基づいて、タッチパネル140上の座標を示す座標情報を、制御部110に出力する。
スイッチ部147は、例えば端末装置100の本体に配置される操作子の操作に応じて、操作信号を検出部145に出力する。検出部145は、スイッチ部147から入力される操作信号に基づいて、操作された操作子に対応する操作情報を制御部110に出力する。
制御部110は、検出部145から入力した座標情報又は操作情報に基づいて、表示パネル141に対する接触操作、及びスイッチを含む各操作子の操作を検出する。
無線通信部150は、アンテナやRF回路(図示略)等を備え、制御部110の制御に従って無線通信を実行する。無線通信部150が実装する通信方式は、無線LAN(Wi−Fiを含む)、Bluetooth、UWB、携帯電話回線を利用した無線通信方式など、特に制限されない。本実施形態で、無線通信部150は、印刷装置10との間でWi−Fiによる通信を実行する。
制御部110は、端末装置100の各部を制御する機能ブロックとして、表示制御部122、通信制御部123、及び、操作検出部124を有する。これらの機能ブロックは、プロセッサー121が、メモリー131に記憶されたプログラムを実行することにより、ソフトウェアとハードウェアの協働により実現される。例えば、制御部110は、メモリー131に記憶される制御プログラム132を実行することで、オペレーティングシステムを実行する。オペレーティングシステムは、後述するアプリケーションプログラム133を実行するプラットフォームとして機能する。
メモリー131は、制御部110により処理されるデータや、プロセッサー121が実行するプログラムを記憶する。例えば、メモリー131は、制御プログラム132、アプリケーションプログラム133、設定データ134、及び、印刷データ135を記憶する。
アプリケーションプログラム133は、プロセッサー121が表示制御部122、通信制御部123、及び、操作検出部124の機能を実現するためのプログラムである。メモリー131は、複数のアプリケーションプログラム133を記憶してもよい。この場合、複数のアプリケーションプログラム133の各々が制御部110の各機能ブロックに対応してもよい。
端末装置100は、ユーザーが少なくとも一部のアプリケーションプログラム133について、実行を指示できるように、アプリケーションプログラム133に対応するアイコンを含むユーザーインターフェイスを備えてもよい。この場合、端末装置100は、タッチパネル140に、アイコンを含むグラフィカルユーザーインターフェイスを表示し、アイコンに対する操作に応じて、アプリケーションプログラム133を実行する。
設定データ134は、端末装置100の動作を定める各種の設定値(パラメーター)を含む。設定データ134は、例えば、端末装置100が画像を生成する処理等の各種処理で用いるパラメーターを含む。また、設定データ134は、無線通信に関するデータを含む。例えば、無線通信部150による通信に関する設定値等の各種データを含んでもよい。例えば、無線通信部150が印刷装置10と通信を確立した場合に、通信を確立した印刷装置10の物理アドレス、識別情報、その他の情報等を、接続先の装置の情報として設定データ134に含んでもよい。
印刷データ135は、検出部145が検出した操作に従って制御部110が生成(描画)するデータである。印刷データ135は、例えば、アプリケーションプログラム133の機能により作成される画像、文書、その他の情報を含み、端末装置100により印刷する印刷物のデータである。
表示制御部122は、表示パネル141を駆動して、表示パネル141に各種画面を表示させる。例えば、表示制御部122は、端末装置100のユーザーインターフェイスを構成するアイコンを含む画面、端末装置100の動作状態や処理結果を含む画面、或いは、印刷データ135に基づく画像を表示パネル141に表示させる。
通信制御部123は、無線通信部150を制御して無線通信を実行する。通信制御部123は、無線通信部150を制御して、検出部145が検出する操作に従って印刷装置10と無線通信を確立する。例えば、通信制御部123は、印刷装置10が送信するビーコンを無線通信部150によって受信し、受信したビーコンに含まれる情報に基づき、印刷装置10との間でWi−Fi Direct接続を実行し、印刷装置10との無線通信を確立する。通信制御部123は、印刷装置10と無線データ通信を実行し、印刷装置10に対し、印刷データ135を送信する。
端末装置101は、上記の端末装置100と全く同じ構成とすることができ、一部が異なる構成であってもよい。
[4.印刷装置の動作]
[4−1.送信データの構成]
Wi−Fi Directの接続手順として、PIN方式、及び、PBC方式が知られている。PBC方式は、PINコードの表示や入力が不要であるという利点があり、印刷装置10のような装置に適している。従って、本実施形態の印刷装置10を含む多くの印刷装置は、PBC方式によりWi−Fi Direct接続する仕様となっている。
例えば、印刷装置10に端末装置100、101が接続するシーケンスにおいて、印刷装置10が、端末装置100に対し、接続手順としてPBC方式を指定し、この指定に応じて端末装置100、101がPBC方式を実行することが望まれる。
端末装置100が印刷装置10に接続する例を具体的に説明する。
端末装置100の探索方式がアクティブスキャンに設定されている場合、端末装置100はプローブ要求(Probe Request)を送信する。端末装置100は、プローブ要求に応じて、プローブ応答(Probe Response)を送信した装置との間で接続手順を開始する。この場合、端末装置100は、プローブ応答に含まれる情報に基づき、接続手順を開始する。例えば、端末装置100は、プローブ応答のフレームにPBC方式を指定する情報が含まれている場合、PBC方式を実行する。つまり、アクティブスキャンが実行される場合、端末装置100が接続手順(PIN方式またはPBC方式)を開始する前に、端末装置100に対して他の装置が接続手順を指示する機会がある。
一方、端末装置100の探索方式がパッシブスキャンに設定されている場合、端末装置100は、他の装置が送信するビーコンを探索し、受信する。この場合、端末装置100は、受信したビーコンに基づき、ビーコンの送信元の装置との間で接続手順を開始する。例えば、端末装置100は、複数の装置からビーコンを受信した場合、ビーコンの送信元の装置のリストを表示し、リストからユーザーにより選択された送信元に対し、接続手順を開始する。
パッシブスキャンで、端末装置100は、デフォルトの接続手順として定められた接続手順を実行する。端末装置100がPIN方式を実行する仕様である場合、ユーザーがリストから装置を選択する操作に応じて、端末装置100がPINの入力を要求する。つまり、PIN方式では、端末装置100と印刷装置10がフレームを送受信する前に、PINコードの表示と入力が行われる。つまり、パッシブスキャンが実行される場合、端末装置100が接続手順を開始する前に、接続手順を端末装置100に指示する機会がない。
このため、印刷装置10に端末装置100、101が接続する場合に、端末装置100、101の探索方式がパッシブスキャンに設定されていると、印刷装置10がPBC方式を実行できない可能性がある。探索方式の選択、及び、接続手順の選択に関する仕様は、装置により異なる。例えば、Wi−Fiで使用される周波数帯域ごと(2.4GHz帯と5GHz帯)に仕様が異なる装置が知られている。また、Wi−Fiの規格ごと(IEEE802.11b、802.11a、802.11g、802.11n、802.11ac)に仕様が異なる装置が知られている。従って、未知の装置の探索方式や接続手順の仕様を、事前に記憶し、或いは検出することは困難である。
本実施形態では、印刷装置10がPBC方式を端末装置100や端末装置101に実行させるため、ビーコンフレームに、PBC方式を指定する情報を含める動作を行う。
図4は、印刷装置10が送信するビーコンフレーム51の構成を示す模式図である。
印刷装置10がAutonomous GOとなって送信するビーコンに含まれる情報は、Wi−Fi Directの規格により定められており、そのフレーム構成や送信周期が規格化されている。印刷装置10が送信するビーコンは、印刷装置10と通信する装置が印刷装置10を探索するために利用される信号であり、本発明の被探索信号に相当する。なお、本実施形態の説明において「規格」とは、Wi−Fi規格、Wi−Fi Direct規格、IEEE802.11規格等である。
ビーコンフレーム51は、物理ヘッダー51a、MACヘッダー51b、データ部51c、フレームチェックシーケンス(FCS)51dを含む。物理ヘッダー51aは、PLCPプリアンブル及びPLCPヘッダー等を含む。データ部51cはデータを格納する。フレームチェックシーケンス51dは誤り訂正に用いられる。
MAC(Media Access Control)ヘッダー51bは、IEEE802.11ヘッダーとも呼ばれる。MACヘッダー51bは、フレーム制御、期間指定(Duration)、送信元の装置の物理アドレスや送信先の装置の物理アドレス、シーケンス制御等、規格により定義された各種のデータを含む。
通信制御部23は、ビーコンフレーム51に、接続手順を指定する情報を含める処理を実行する。本実施形態では、接続手順としてPBC方式を指定する。
接続手順を指定する情報のフォーマットは任意であり、1ビットのデータであってもよいし、複数ビットのデータであってもよい。例えば、接続手順をPBC方式に指定する場合に「1」、PIN方式に指定する場合に「0」の値となるデータであってもよい。また、接続手順を指定する情報であることを示す識別用のデータを含んでもよい。
図5は、ビーコンフレーム51に含まれるデータの例を示す図であり、ビーコンフレーム51のデータ部51cの一部を抜粋して示す。
データ部51cには、無線通信ネットワーク1a(図1)のネットワーク識別情報であるSSID(Service Set IDentifier)、サポートされる転送速度等の各種の情報を含むインフォメーションエレメント(タグともいう。以下、IEと表記する。)が格納される。
「Vendor Specific:P2P」のIE511は、Capabilityに関するデータ521、及び、デバイスID(Device ID)を示すデータ522を含む。規格(例えば、Wi−Fi Direct規格)により、「Vendor Specific:P2P」に関するIE511に、Capability及びデバイスを含めることが規定されている。従って、規格上、IE511にはデータ521、522が含まれる。
本実施形態では、IE511に、P2P Device Infoに関するデータ523を含む。データ523は、Wi−Fi Directの接続手順を指定するデータ531を含む。例えば、図5に示すように、データ531として、Pushbuttonの値が「1」である場合に、接続手順としてPBC方式を指定する。つまり、データ523に含まれるPushbuttonの値が「1」のデータ531は、「PBC指定データ」と呼ぶことができる。PBC指定データは、本発明の、接続手順を指定する情報に相当する。
なお、本実施形態では、Wi−Fi Directの接続手順としてPBC方式を実行する印刷装置10に、本発明を適用した例を説明したが、本発明の無線通信装置が指定する接続手順は、PBC方式に限定されない。すなわち、印刷装置10が送信するビーコンフレーム51に、PIN方式を指定する情報を含めることによって、印刷装置10と通信する装置に、PIN方式で接続を実行させることができる。この場合、印刷装置10は、PIN方式を指定するデータ532を有するデータ523をデータ部51cに含むビーコンフレーム51を生成して、送信すればよい。例えば、データ532として、LabelとDisplayの値がそれぞれ「1」である場合に、または、Keypadの値が「1」である場合に、接続手順としてPIN方式を指定する。前者の場合、印刷装置10がPINコードを生成し表示する側の装置として機能し、後者の場合、印刷装置10が他の装置により生成されたPINコードを入力する側の装置として機能することを指定する。この場合、データ532は、接続手順を指定する情報に相当する。
また、接続手順としてPBC方式、及びPIN方式のいずれも指定する必要がない場合、ビーコンフレーム51にデータ523を含ませる必要がない。この場合、印刷装置10は、接続手順を指定する情報を含むデータ523をビーコンフレーム51に含ませない状態、すなわち、公知の、規格により定められた通常のビーコンフレームを送信すればよい。
データ523の態様は任意であるが、本実施形態では、特に好適な例として、Wi−Fi Direct接続時にGOが送信するプローブ応答の態様を採用する。プローブ応答は、GCがアクティブスキャンを実行する場合に、GOがプローブ要求への応答として送信する。
Wi−Fi Direct規格では、GOが送信するプローブ応答に、P2P Device Infoを含むことが定義されている。このため、規格に従ってGCとして動作する装置は、プローブ応答を受信したときに、プローブ応答からP2P Device Infoを検出し、解析する機能を持つ。
従って、プローブ応答のP2P Device Infoと同じフォーマットのデータ523を、ビーコンフレーム51に含めてGCに送信した場合、GCが、ビーコンフレーム51のデータ523に従って接続手順を決定することが期待できる。
このように、本実施形態では、プローブ応答に含まれるデータとして定義されたP2P Device Infoのデータ523を、GOとして機能する印刷装置10が、ビーコンフレーム51に含めて送信する。従って、GCとして機能する側の装置に、規格を拡張するような設定や機能追加を行わなくても、ビーコンフレーム51を利用して、GCに対し接続手順を指定できる。
なお、図4に示す例では、データ523を、Capabilityに関するデータ521、及び、デバイスIDを示すデータ522と同じIE511に含める構成としているが、データ523がデータ521、522とは異なるIEに含まれる構成であってもよい。
[4−2.印刷装置と他の装置との通信]
続いて、印刷装置10が他の装置と通信する場合の動作を説明する。
図6及び図7は、印刷装置10と端末装置100が接続する動作例を示すシーケンス図である。図中の符号Aは印刷装置10を示し、符号Bは端末装置100を示し、符号Cはアクセスポイント200を示す。
以下の説明では、印刷装置10と端末装置100とがWi−Fi Directにより接続する場合の動作を例示する。この例では、上述のように、印刷装置10がAutonomous GOとして機能し、端末装置100がGCとして機能する。
図6は、端末装置100がパッシブスキャンを実行する場合の動作例であり、図7は、端末装置100がアクティブスキャンを実行する場合の動作例である。
印刷装置10は、電源がONであり、Autonomous GOとして動作可能な状態で、ビーコンを周期的にブロードキャスト送信する。また、アクセスポイント200は、アクセスポイントまたはGOとして機能する場合、ビーコンを周期的にブロードキャスト送信する。印刷装置10及びアクセスポイント200は、例えば、電源がOFFにされるまで、設定された周期でビーコンを送信する。
端末装置100は、ユーザーが手に持って操作する端末装置である。符号Bで示すように、端末装置100の制御部110は、ユーザーの操作によってWi−Fi Directの接続が指示されると(ステップST11)、ビーコンを受信する。制御部110は、無線通信部150により、アクセスポイント200が送信するビーコンの受信(ステップST12)、及び、印刷装置10が送信するビーコンの受信を行う(ステップST13)。また、印刷装置10やアクセスポイント200以外に、端末装置100と通信可能な範囲に位置する他の装置がビーコンを送信している場合、制御部110は、このビーコンを受信することが可能である。
ステップST13で端末装置100が受信するビーコンには、図5に示したように、Wi−Fi Directの接続手順としてPBCを指定するPBC指定データ(データ531)が含まれる。
通信制御部123は、無線通信部150により受信したビーコンから、送信元の装置の物理アドレス、ネットワーク識別情報、デバイス名等を抽出する。通信制御部123は、ビーコンから抽出した情報を装置毎に並べた接続可能装置リストを、表示パネル141に表示する(ステップST14)。接続可能装置リストには、端末装置100がWi−Fi Directにより接続可能な装置が一覧表示される。ユーザーは、タッチパネル140に対するタッチ操作により、接続可能装置リストから、接続する装置を選択し、指定する(ステップST15)。ここでは、印刷装置10が選択される。
通信制御部123、及び、ステップST15で選択された装置である印刷装置10は、Wi−Fi Direct接続を実行する(ステップST16)。通信制御部123は、ステップST15で選択された印刷装置10から受信したビーコンに、接続手順としてPBC方式を指定するデータ531が含まれていることを検出する。通信制御部123は、データ531に従って、PBC方式でWPSを実行する(ステップST17)。また、印刷装置10は、接続手順としてPBC方式が設定されているため、PBC方式でWPSを実行する(ステップST18)。これにより、印刷装置10と端末装置100とが、Wi−Fiの通信を確立し、接続される。
接続後、制御部110は、接続成功の通知を行う(ステップST19)。ステップST19では、例えば、ステップST15で選択された装置への接続が完了したことを示すメッセージが表示パネル141により表示される。
その後、制御部110は、無線通信部150により、印刷データを送信する(ステップST20)。制御部20は、無線通信部50によって印刷データを受信し、受信した印刷データに従って、印刷部40によって印刷媒体への印刷を実行する(ステップST21)。
このように、本実施形態では、印刷装置10が送信するビーコンに、接続手順としてPBC方式を指定するデータ531が含まれているので、端末装置100がパッシブスキャンを実行する場合に、端末装置100に対して接続手順としてPBC方式を指定できる。
また、アクティブスキャン方式における動作は図7に示す通りである。
端末装置100の制御部110は、ユーザーの操作によってWi−Fi Directの接続が指示されると(ステップST31)、Wi−Fi Directで接続可能な他の装置を探索するためのプローブ要求を、ブロードキャスト送信する(ステップST32)。端末装置100が送信するプローブ要求は、端末装置100と通信可能な範囲内の装置により受信可能である。このため、端末装置100が送信したプローブ要求は、印刷装置10、及び、アクセスポイント200により受信される。
アクセスポイント200は、ステップST32で受信したプローブ要求への応答として、プローブ応答を送信する(ステップST33)。アクセスポイント200が送信するプローブ応答は、例えば、アクセスポイント200がステップST12で送信するビーコンと同様のデータを含む。
また、印刷装置10の通信制御部23は、ステップST32で受信したプローブ要求への応答として、プローブ応答を送信する(ステップST34)。ステップST34で送信されるプローブ応答は、例えば、ステップST13で送信されるビーコンと同様に、接続手順をPBC方式に指定するデータ531を含む。上述のように、P2P Device Infoに関するデータ523は、プローブ応答に含まれるデータとして規格により定義されている。
通信制御部123は、ステップST32でプローブ要求を送信した後、プローブ要求を受信した装置からのプローブ応答を受信する。すなわち、通信制御部123は、無線通信部150により、ステップST34で印刷装置10が送信するプローブ応答、及び、ステップST33でアクセスポイント200が送信するプローブ応答を受信する。
通信制御部123は、受信したプローブ応答から送信元アドレス、ネットワーク識別情報、デバイス名等を抽出する。通信制御部123は、プローブ応答から抽出した情報を装置毎に並べた接続可能装置リストを、表示パネル141に表示する(ステップST35)。接続可能装置リストは、例えば、ステップST14で表示されるリストと同様であり、端末装置100がWi−Fi Directにより接続可能な装置が一覧表示される。ユーザーは、タッチパネル140に対するタッチ操作により、接続可能装置リストから、接続する装置を選択し、指定する(ステップST36)。ここでは、印刷装置10が選択される。
通信制御部123、及び、ステップST36で選択された装置である印刷装置10は、Wi−Fi Direct接続を実行する(ステップST37)。通信制御部123は、ステップST36で選択された印刷装置10から受信したプローブ応答に、接続手順としてPBC方式を指定するデータ531が含まれていることを検出する。通信制御部123は、データ531に従って、PBC方式でWPSを実行する(ステップST38)。また、印刷装置10は、接続手順としてPBC方式が設定されているため、PBC方式でWPSを実行する(ステップST39)。これにより、印刷装置10と端末装置100とが、Wi−Fiの通信を確立し、接続される。
接続後、制御部110は、接続成功の通知を行う(ステップST40)。ステップST40では、例えば、ステップST36で選択された装置への接続が完了したことを示すメッセージが表示パネル141により表示される。
その後、制御部110は、無線通信部150により、印刷データを送信する(ステップST41)。制御部20は、無線通信部50によって印刷データを受信し、受信した印刷データに従って、印刷部40によって印刷媒体への印刷を実行する(ステップST42)。
図7に示したように、端末装置100がアクティブスキャンを実行してWi−Fi Direct接続する場合、GOである印刷装置10は、プローブ応答に含まれるデータ531により、接続手順としてPBC方式を指定できる。この動作は、Wi−Fi Directの規格に従って実行される。
従って、印刷装置10は、端末装置100がパッシブスキャンを実行する場合、及び、アクティブスキャンを実行する場合のいずれも、端末装置100に対して、接続手順としてPBC方式を指定できる。従って、端末装置100がPIN方式によるWi−Fi Direct接続に対応していない場合であっても、確実に印刷装置10に端末装置100を接続させることができる。特に、端末装置100がパッシブスキャンを実行する場合、Wi−Fi Directの規格上、印刷装置10が端末装置100に対し接続手順を指定する機会が定義されていない。本実施形態では、印刷装置10がビーコンに、接続手順を指定するデータ531を含めることで、GCである端末装置100に対する接続手順の指定を可能としている。
さらに、本実施形態では、印刷装置10がビーコンに含めて送信するデータ531を、アクティブスキャンにおいてGOが送信するプローブ応答に含まれるデータのフォーマットに準拠している。換言すれば、データ531は、GCとして機能する装置が検出する可能性の高い、汎用性を有するフォーマットである。このため、GCである端末装置100が、データ531をビーコンから検出し、このデータ531に従ってWPSの接続手順としてPBCを実行することが期待でき、汎用性を確保できる。従って、端末装置100の仕様の制約を受けずに、印刷装置10に適した接続手順を用いて、端末装置100を印刷装置10に接続させることができる。
以上説明したように、印刷装置10は、他の装置と無線通信を行う無線通信部50と、無線通信部50により無線信号を送信させる通信制御部23と、を備える。通信制御部23は、他の装置により受信されるビーコンを周期的に無線通信部50により送信させる。被探索信号としてのビーコンは、無線通信部50と無線接続する際に実行される接続手順を指定する情報を含む。
本発明の無線通信装置、及び、無線通信装置の制御方法を適用した印刷装置10によれば、無線通信を行う他の装置に対し、ビーコンに含まれるデータによって接続手順を指定できる。このため、未知の装置と接続する場合に、特定の接続手順を実行し、対象の装置を接続させることができる。
また、ビーコンは、印刷装置10が他の装置と通信を行うためにブロードキャスト送信する信号であり、特定の装置に向けて特定のタイミングで送信する信号に該当しない。このため、印刷装置10が、通信の相手先の装置が特定されていない状態で、端末装置100、101等に、接続手順を指定することができる。
また、通信制御部23は、GOとして機能する間、無線通信部50の動作中に他の装置からの要求にかかわらずビーコンを送信する。このため、端末装置100や端末装置101のように、印刷装置10と無線信号を送受信可能な状態にある他の装置が接続手順を開始する前に、ビーコンを受信させ、接続手順を指定できる。これにより、他の装置が特定の接続手順を実行する可能性を高めることが期待できる。
また、通信制御部23は、ビーコンを受信した他の装置との間で、ビーコンに含まれる情報により指定される接続手順を実行して、無線通信を確立する。これにより、ビーコンを受信した他の装置との間で、印刷装置10に適した接続手順を実行し、接続できる。
また、印刷装置10は、複数の接続手順を選択的に実行して無線通信を確立する通信プロトコルに対応する。例えば、印刷装置10は、PBCまたはPINが選択的に実行されるWPS規格に対応する。印刷装置10が送信するビーコンは、複数の接続手順のいずれかを指定する情報を含む。これにより、未知の装置との間で、通信プロトコルで規定される複数の接続手順のうち、特定の接続手順を実行できる。例えば、ビーコンにPBC方式を指定するデータ531を含めることで、端末装置100、101の仕様等を特定することなく、PBCを実行するよう指定できる。
また、印刷装置10は、無線通信ネットワーク1aのアクセスポイントとして動作する。印刷装置10が送信するビーコンフレームは、図4に例示したように、無線通信ネットワーク1aのネットワーク識別情報と、印刷装置10の物理アドレスとを含む。さらに、ビーコンフレームは、接続手順を指定するデータ531を含む。この場合、ビーコンにより、他の装置に対し、ネットワーク識別情報及び物理アドレスを通知するとともに、接続手順を指定できる。このため、他の装置が、ビーコンで指定した接続手順を実行する可能性を高めることが期待できる。
また、通信制御部23は、無線通信部50により他の装置とWi−Fi Directにより接続して無線データ通信を実行する。通信制御部23は、他の装置と接続する前に、ネットワーク識別情報、印刷装置10の物理アドレス、及び、Wi−Fi Directの接続手順としてPBC方式を指定するデータを含むビーコンフレームを生成する。通信制御部23は、生成したビーコンフレームを周期的に無線通信部50により送信させる。これにより、他の装置とWi−Fi Direct接続するときの接続手順として、PBC方式またはPIN方式のいずれか特定の方式を実行できる。
また、上述したように、上記実施形態ではWi−Fi Directの接続手順としてPBC方式を実行する印刷装置10に、本発明を適用した例を説明した。本発明の無線通信装置が指定する接続手順は、PBC方式に限定されない。例えば、接続手順としてPIN方式を指定する装置に適用してもよい。
なお、上記実施形態は本発明を適用した一具体例を示すものであり、本発明はこれに限定されるものではない。
例えば、上記実施形態で、印刷装置10はビーコンをブロードキャスト送信する構成として説明した。また、図7に示したアクティブスキャンで、端末装置100は、プローブ要求をブロードキャスト送信する構成とした。本発明は、これに限定されず、例えば、限られた装置により受信可能な態様で、ビーコンやプローブ要求を送信してもよい。また、印刷装置10と端末装置100とは、Wi−Fi Directに関して規格化されたPBCの手順に限定されず、他の認証処理などを実行してもよい。
また、図6及び図7に示したシーケンスは、本発明の要部を構成するシーケンスを示している。このため、ステップST16、ST37においては規格で定義された公知の手順に従い、複数のデータが送受信されるが、説明を省略した。さらに、印刷装置10と端末装置100とが接続する過程で、規格化されていない他の各種のデータが送受信されてもよい。
また、上記実施形態では、ビーコンフレームのデータ部に、接続手順を指定する情報としてPBC指定データ531を格納する例を説明した。本発明はこれに限定されず、Wi−Fi Directの規格を逸脱しない範囲において、他の態様で、接続手順を指定する情報をビーコンフレームに含めることが可能である。
また、上記実施形態では、Wi−Fi DirectのGOとして機能する印刷装置10が送信するビーコンに、本発明の被探索信号を適用した例を示した。本発明はこれに限定されない。例えば、Wi−Fiのインフラストラクチャモードで機能するアクセスポイントが周期的に送信するビーコンや、ビーコンとは呼ばれない他の信号に、本発明を適用してもよい。この場合、無線通信回線を確立していない状態にある複数の装置間で、本発明を適用した被探索信号が送受信される構成であればよい。
また、例えば、上記実施形態では、印刷装置10を無線通信装置の一例として示したが、本発明の無線通信装置は、無線データ通信を実行する全ての装置に適用可能である。例えば、端末装置100のようなコンピューターに本発明を適用してもよい。
また、上記実施形態では、印刷装置10と無線通信する装置の一例として、ユーザーが手に持って操作する携帯型の端末装置100を例に挙げて説明したが、本発明はこれに限定されない。
また、図2及び図3に示した各機能部は機能的構成を示すものであって、具体的な実装形態は特に制限されない。つまり、必ずしも各機能部に個別に対応するハードウェアが実装される必要はなく、一つのプロセッサーがプログラムを実行することで複数の機能部の機能を実現する構成とすることも勿論可能である。また、上記実施形態においてソフトウェアで実現される機能の一部をハードウェアで実現してもよく、或いは、ハードウェアで実現される機能の一部をソフトウェアで実現してもよい。その他、印刷装置10の他の各部の具体的な細部構成についても、本発明の趣旨を逸脱しない範囲で任意に変更可能である。