(第1実施例)
(通信システムの構成)
図1に示すように、通信システム2は、多機能機(以下では「MFP」(Multi-Function Peripheralの略)と呼ぶ)10と、携帯端末50と、アクセスポイント(以下では「AP」と呼ぶ)6と、PC8と、を備える。MFP10と携帯端末50とは、近距離無線通信を実行可能である。近距離無線通信は、NFC方式に従った無線通信である。本実施例では、ISO/IEC21481又は18092の国際標準規格に基づいて、NFC方式に従った無線通信が実行される。
また、MFP10は、後述のWiFi Direct方式に従った無線通信を実行可能である。以下では、WiFi Directのことを「WFD」と呼ぶ。WFDでは、IEEE(The Institute of Electrical and Electronics Engineers, Inc.の略)の802.11の規格、及び、それに準ずる規格(例えば802.11a,11b,11g,11n等)に基づいて、無線通信が実行される。NFC方式とWFDの方式(以下では「WFD方式」と呼ぶ)とは、無線通信方式(即ち無線通信の規格)が異なる。また、WFD方式に従った無線通信の通信速度は、NFC方式に従った無線通信の通信速度と比較して速い。
例えば、MFP10は、WFD方式に従って、携帯端末50との接続(以下では「WFD接続」と呼ぶ)を確立することによって、WFDネットワークを構築することができる。同様に、MFP10は、PC8とのWFD接続を確立することによって、WFDネットワークを構築することができる。
PC8とMFP10と携帯端末50とは、さらに、WFD方式とは異なる通常Wi−Fi(例えばIEEE802.11)の方式に従った無線通信を実行可能である。一般的に言うと、通常Wi−Fiに従った無線通信とは、AP6が利用される無線通信であり、WFD方式に従った無線通信とは、AP6が利用されない無線通信である。例えば、MFP10は、通常Wi−Fiに従って、AP6との接続(以下では「通常Wi−Fi接続」と呼ぶ)を確立することによって、通常Wi−Fiネットワークに属することができる。MFP10は、AP6を介して、通常Wi−Fiネットワークに属している他のデバイス(例えばPC8、携帯端末50)と無線通信を実行することができる。なお、NFC方式と通常Wi−Fiの方式(以下では「通常Wi−Fi方式」と呼ぶ)とは、無線通信方式(即ち無線通信の規格)が異なる。また、通常Wi−Fiの通信速度は、NFCの通信速度よりも速い。
(WFD)
WFDは、Wi−Fi Allianceによって策定された規格である。WFDは、Wi−Fi Allianceによって作成された「Wi−Fi Peer−to−Peer(P2P) Technical Specification Version1.1」に記述されている。
上述したように、PC8とMFP10と携帯端末50とは、それぞれ、WFD方式に従った無線通信を実行可能である。以下では、WFD方式に従った無線通信を実行可能な機器のことを「WFD対応機器」と呼ぶ。WFDの規格では、WFD対応機器の状態として、Group Owner状態(以下では「G/O状態」と呼ぶ)、クライアント状態、及び、デバイス状態の3つの状態が定義されている。WFD対応機器は、上記の3つの状態のうちの1つの状態で選択的に動作可能である。
G/O状態の機器とクライアント状態の機器とによって、WFDネットワークが構成される。WFDネットワークでは、G/O状態の機器が1個しか存在し得ないが、クライアント状態の機器が1個以上存在し得る。G/O状態の機器は、1個以上のクライアント状態の機器を管理する。具体的に言うと、G/O状態の機器は、1個以上のクライアント状態の機器のそれぞれの識別情報(即ちMACアドレス)が記述された管理リストを生成する。G/O状態の機器は、クライアント状態の機器がWFDネットワークに新たに属すると、当該機器の識別情報を管理リストに追加し、クライアント状態の機器がWFDネットワークから離脱すると、当該機器の識別情報を管理リストから消去する。
G/O状態の機器は、管理リストに登録されている機器、即ち、クライアント状態の機器(即ちWFDネットワークに属している機器)との間で、目的データ(例えば、OSI参照モデルのネットワーク層の情報を含むデータ(印刷データ、スキャンデータ等))の無線通信を実行可能である。しかしながら、G/O状態の機器は、管理リストに登録されていない未登録機器との間で、当該未登録機器がWFDネットワークに属するためのデータ(例えば、ネットワーク層の情報を含まないデータ(Probe Request信号、Probe Response信号等の物理層のデータ)の無線通信を実行可能であるが、上記の目的データの無線通信を実行不可能である。例えば、G/O状態のMFP10は、管理リストに登録されている携帯端末50(即ち、クライアント状態の携帯端末50)から印刷データを無線で受信可能であるが、管理リストに登録されていない機器から印刷データを無線で受信不可能である。
また、G/O状態の機器は、複数個のクライアント状態の機器の間の目的データ(印刷データ、スキャンデータ等)の無線通信を中継可能である。例えば、クライアント状態の携帯端末50がクライアント状態の他のプリンタに印刷データを無線で送信すべき場合には、携帯端末50は、まず、印刷データをG/O状態のMFP10に無線で送信する。この場合、MFP10は、携帯端末50から印刷データを無線で受信して、上記の他のプリンタに印刷データを無線で送信する。即ち、G/O状態の機器は、無線ネットワークのAPの機能を実行可能である。
なお、WFDネットワークに属していないWFD対応機器(即ち、管理リストに登録されていない機器)が、デバイス状態の機器である。デバイス状態の機器は、WFDネットワークに属するためのデータ(Probe Request信号、Probe Response信号等の物理層のデータ等)の無線通信を実行可能であるが、WFDネットワークを介して目的データ(印刷データ、スキャンデータ等)の無線通信を実行不可能である。
なお、以下では、WFD方式に従った無線通信を実行可能ではないが、通常Wi−Fiに従った無線通信を実行可能である機器のことを、「WFD非対応機器」と呼ぶ。「WFD非対応機器」は、「レガシー機器」とも呼ぶことができる。WFD非対応機器は、G/O状態として動作することができない。G/O状態の機器は、WFD非対応機器の識別情報を、管理リストに記述することができる。
(MFP10の構成)
MFP10は、操作部12と、表示部14と、印刷実行部16と、スキャン実行部18と、無線LANインターフェイス(以下では、インターフェイスを「I/F」と呼ぶ)20と、NFCI/F22と、制御部30と、を備える。操作部12は、複数のキーを備える。ユーザは、操作部12を操作することによって、様々な指示をMFP10に入力することができる。表示部14は、様々な情報を表示するためのディスプレイである。印刷実行部16は、インクジェット方式、レーザ方式等の印刷機構である。スキャン実行部18は、CCD、CIS等のスキャン機構である。
無線LANI/F20は、制御部30がWFD方式に従った無線通信と通常Wi−Fiに従った無線通信とを実行するためのインターフェイスである。無線LANI/F20は、物理的には1個のインターフェイスである。但し、無線LANI/F20には、WFD方式に従った無線通信で利用されるMACアドレス(以下では「WFD用MACアドレス」と呼ぶ)と、通常Wi−Fiに従った無線通信で利用されるMACアドレス(以下では「通常Wi−Fi用MACアドレス」と呼ぶ)と、の両方が割り当てられる。より詳細には、無線LANI/F20には、通常Wi−Fi用MACアドレスが、予め割り当てられている。制御部30は、通常Wi−Fi用MACアドレスを用いて、WFD用MACアドレスを生成して、WFD用MACアドレスを無線LANI/F20に割り当てる。WFD用MACアドレスは、通常Wi−Fi用MACアドレスとは異なる。従って、制御部30は、無線LANI/F20を介して、WFD方式に従った無線通信と通常Wi−Fiに従った無線通信との両方を同時的に実行し得る。この結果、MFP10が、WFDネットワークに属していると共に、通常Wi−Fiネットワークに属している状況が成立し得る。
なお、G/O状態の機器は、クライアント状態のWFD対応機器の識別情報のみならず、WFD非対応機器の識別情報も、管理リストに記述することができる。即ち、G/O状態の機器は、WFD非対応機器ともWFD接続を確立することができる。一般的に言うと、WFD接続とは、MFP10のWFD用MACアドレスが利用される無線接続である。また、WFDネットワークとは、MFP10のWFD用MACアドレスが利用される無線ネットワークである。同様に、通常Wi−Fi接続とは、MFP10の通常Wi−Fi用MACアドレスが利用される無線接続である。また、通常Wi−Fiネットワークとは、MFP10の通常Wi−Fi用MACアドレスが利用される無線ネットワークである。
ユーザは、操作部12を操作することによって、無線LANI/F20の設定を変更することによって、無線LANI/F20を利用したWFD方式に従った無線通信を実行可能なモード(以下では「WFD=ONモード」と呼ぶ)と、無線LANI/F20を利用したWFD方式に従った無線通信を実行不可能なモード(以下では「WFD=OFFモード」と呼ぶ)と、のいずれかのモードに変更することができる。モード設定部46は、ユーザの操作に従って、WFD=ONモードとWFD=OFFモードとのどちらのモードを設定する。具体的には、モード設定部46は、ユーザによって設定されたモードを表すモード値を、メモリ34に格納する。
なお、制御部30は、WFDI/F=OFFモードである状態では、WFD方式に従った各処理(例えば、MFP10を後述の自発G/Oモードに設定する処理、G/Oネゴシエーション等)を実行することができない。WFDI/F=ONである状態では、メモリ34は、WFDに関するMFP10の現在の状態(G/O状態、クライアント状態、及び、デバイス状態のいずれかの状態)を示す値を格納する。
NFCI/F22は、制御部30がNFC方式に従った無線通信を実行するためのインターフェイスである。NFCI/F22は、W−FiI/F20と物理的に異なるチップで構成されている。
なお、無線LANI/F20を介した無線通信の通信速度(例えば、最大の通信速度が11〜454Mbps)は、NFCI/F22を介した無線通信の通信速度(例えば、最大の通信速度が100〜424Kbps)よりも速い。さらに、無線LANI/F20を介した無線通信における搬送波の周波数(例えば、2.4GHz帯、5.0GHz帯)は、NFCI/F22を介した無線通信における搬送波の周波数(例えば、13.56MHz帯)とは異なる。また、MFP10と携帯端末50との距離がおよそ10cm以下である場合に、制御部30は、NFCI/F22を介して、携帯端末50とNFC方式に従った無線通信を実行可能である。一方において、MFP10と携帯端末50との距離が、10cm以下である場合でも、10cm以上である場合(例えば、最大で約100m)でも、制御部30は、無線LANI/F20を介して、WFD方式に従った無線通信、及び、通常Wi−Fiに従った無線通信を、携帯端末50と実行可能である。即ち、MFP10が、無線LANI/F20を介して、通信先の機器(例えば携帯端末50)と無線通信を実行可能な最大の距離は、MFP10が、NFCI/F22を介して、通信先の機器と無線通信を実行可能な最大の距離よりも大きい。
制御部30は、CPU32とメモリ34とを備える。CPU32は、メモリ34に格納されているプログラムに従って、様々な処理を実行する。CPU32がプログラムに従って処理を実行することによって、各部40〜46の機能が実現される。
メモリ34は、ROM、RAM、ハードディスク等によって構成される。メモリ34は、CPU32によって実行される上記のプログラムを格納する。メモリ34はワーク領域38を備える。ワーク領域38は、MFP10が、WFDネットワークに現在属している場合に、WFDネットワークに現在属していることを示す情報と、当該WFDネットワークを介して目的データ(例えば印刷データ)の通信を実行するための無線設定(認証方式、暗号化方式、パスワード、無線ネットワークのSSID(Service Set Identifier)、BSSID(Basic Service Set Identifier)を含む)とを格納する。また、ワーク領域38は、MFP10が、通常Wi−Fiネットワークに現在属している場合に、通常Wi−Fiネットワークに現在属していることを示す情報と、当該通常Wi−Fiネットワークを介して目的データの通信を実行するための無線設定とを格納する。WFDネットワークのSSIDは、WFDネットワークを識別するためのネットワーク識別子であり、通常Wi−FiネットワークのSSIDは、通常Wi−Fiネットワークを識別するためのネットワーク識別子である。WFDネットワークのBSSIDは、G/O状態の機器に固有の識別子(例えばG/O状態の機器のMACアドレス)であり、通常Wi−FiネットワークのBSSIDは、APに固有の識別子(例えばAP固有の識別子)である。
ワーク領域38は、さらに、MFP10がWFD方式に従って動作している場合に、WFDの現在の状態(G/O状態、クライアント状態、及び、デバイス状態のいずれかの状態)を示す値を格納する。ワーク領域38は、さらに、WFD=ONモードを表すモード値、又は、WFD=OFFモードを表すモード値を格納する。
なお、ユーザは、操作部12を操作することによって、MFP10を自発G/Oモードに設定することができる。自発G/Oモードは、G/O状態で動作することをMFP10に維持させるモードである。メモリ内34内のワーク領域38は、さらに、MFP10が自発G/Oモードに設定されているのか否かを示す値を格納する。後で詳しく説明するが、デバイス状態のWFD対応機器は、デバイス状態の他のWFD対応機器とのWFD接続を確立する際に、通常、G/O状態及びクライアント状態のうちのどちらの状態で動作すべきであるのかを選択的に決定するためのG/Oネゴシエーションを実行する。MFP10が自発G/Oモードに設定されている場合には、MFP10は、G/Oネゴシエーションを実行せずに、G/O状態で動作することを維持する。
(携帯端末50の構成)
携帯端末50は、例えば、携帯電話(例えばスマートフォン)、PDA、ノートPC、タブレットPC、携帯型音楽再生装置、携帯型動画再生装置等である。携帯端末50は、無線LANI/F(即ちWFD及び通常Wi−Fi用のインターフェイス)とNFCI/Fとの2個の無線インターフェイスを備える。従って、携帯端末50は、無線LANI/Fを利用して、MFP10と無線通信を実行可能であると共に、NFCI/Fを利用して、MFP10と無線通信を実行可能である。携帯端末50は、MFP10に機能(例えば印刷機能、スキャン機能等)を実行させるためのアプリケーションプログラムを備える。なお、アプリケーションプログラムは、例えば、MFP10のベンダによって提供されるサーバから携帯端末50にインストールされてもよいし、MFP10と共に出荷されるメディアから携帯端末50にインストールされてもよい。
携帯端末50は、MFP10と同様に、メモリ54内に、ワーク領域58を備える。ワーク領域58は、携帯端末50が、WFDネットワーク又は通常Wi−Fiネットワークに現在属している場合に、当該ネットワークを介して通信を実行するための無線設定(認証方式、暗号化方式、パスワード、無線ネットワークのSSIDとBSSIDとを含む)を格納する。さらに、携帯端末50が、WFD方式に従って動作している場合に、ワーク領域58は、携帯端末50の状態(即ちG/O状態、クライアント状態及びデバイス状態のいずれかの状態)を表す状態値を格納する。
(PC8の構成)
PC8は、無線LANI/F(即ちWFD及び通常Wi−Fi用のインターフェイス)を備えるが、NFCI/Fを備えていない。従って、PC8は、無線LANI/Fを利用して、MFP10と通信を実行可能であるが、NFC方式に従った無線通信を実行不可能である。PC8は、MFP10に処理(例えば印刷処理、スキャン処理等)を実行させるためのドライバプログラムを備える。なお、ドライバプログラムは、通常、MFP10と共に出荷されるメディアからPC8にインストールされる。ただし、変形例では、ドライバプログラムは、MFP10のベンダによって提供されるサーバからPC8にインストールされてもよい。
(AP6の構成)
AP6は、WFDのG/O状態の機器ではなく、無線アクセスポイント又は無線LANルータと呼ばれる通常のアクセスポイントである。AP6は、複数個の機器と通常Wi−Fi接続を確立することができる。これにより、AP6と複数個の機器とを含む通常Wi−Fiネットワークが構築される。AP6は、通常Wi−Fiネットワークに属している複数個の機器のうちの1個の機器からデータを受信して、複数個の機器のうちの他の1個の機器に当該データを送信する。即ち、AP6は、通常Wi−Fiネットワークに属する一対の機器の間の通信を中継する。
なお、WFDのG/O状態の機器と通常のAPとの相違点は、以下の通りである。即ち、WFDのG/O状態の機器は、当該機器が現在属しているWFDネットワークから離脱して、他のWFDネットワークに新たに属する場合に、G/O状態以外の状態(即ちクライアント状態)で動作し得る。これに対し、通常のAP(即ちAP6)は、当該APがいずれの通常Wi−Fiネットワークに属しても、一対の機器の間の通信を中継する機能を実行し、クライアント状態で動作し得ない。
(MFP10が実行する通信処理)
図2を参照して、MFP10が実行する通信処理について説明する。制御部30は、MFP10が電源ONにされると、通信処理を実行する。S2では、受信部40は、NFC方式に従った無線通信を実行することによって、NFC情報を受信することを監視している。なお、受信部40は、NFCI/F22を介して、NFC情報を受信する。具体的には、受信部40は、MFP10と携帯端末50との間にNFC通信セッションが確立されることを監視している。受信部40は、MFP10が電源ONにされている間、NFCI/F22に、NFC方式に従った無線通信を実行可能なデバイスを検出するための電波を発信させている。
携帯端末50のユーザは、アプリケーションプログラムを起動させる。ユーザは、携帯端末50を操作することによって、MFP10が実行すべき処理を示す処理実行指示(例えば、印刷指示、スキャン指示)を、含むNFC情報を、携帯端末50に生成させる。NFC情報は、さらに、携帯端末50が無線ネットワークに現在属している場合に、携帯端末50が現在属している無線ネットワークのSSIDとBSSIDとを含む。なお、携帯端末50が無線ネットワークに現在属している場合とは、携帯端末50と他のデバイス(例えばAP6、MFP10)との間で、WFD接続と通常Wi−Fi接続との少なくとも一方の無線接続が確立されている場合である。
ユーザは、携帯端末50をMFP10に近づけることによって、携帯端末50とMFP10との間の距離が、互いに電波が届く距離(例えば10cm)より小さくなると、携帯端末50は、MFP10から上記の電波を受信して、応答電波をMFP10に送信する。この結果、制御部30は、携帯端末50から応答電波を受信して、NFC通信セッションを確立する。携帯端末50は、NFC通信セッションが確立されると、生成されたNFC情報を、MFP10に送信する。
NFC情報が受信される(S2でYES)と、S4において、判断部42は、MFP10がネットワークに現在属しているのか否かを判断する。具体的には、判断部42は、WFDネットワークに現在属していることを示す情報と通常Wi−Fiネットワークに現在属していることを示す情報とのうち少なくとも一方がワーク領域38内に格納されている場合に、MFP10が無線ネットワークに現在属していると判断して(S4でYES)、S6に進む。一方、判断部42は、WFDネットワークに現在属していることを示す情報と通常Wi−Fiネットワークに現在属していることを示す情報とのいずれもワーク領域38内に格納されていない場合に、MFP10が無線ネットワークに現在属していないと判断して(S4でNO)、S8に進む。
S6では、判断部42は、MFP10が現在属しているネットワークに、携帯端末50が現在属しているのか否かを確認する。具体的には、判断部42は、最初に、携帯端末50が現在属しているネットワークのSSIDとBSSIDとが、NFC情報に含まれているのか否かを判断する。SSIDとBSSIDとが、NFC情報に含まれていない場合、判断部42は、MFP10が現在属しているネットワークに、携帯端末50が現在属していないと判断する(S6でNO)。この構成によれば、MFP10は、MFP10が現在属しているネットワークに、携帯端末50が現在属していないことを適切に判断することができる。携帯端末50が現在属しているネットワークのSSIDとBSSIDとが、NFC情報に含まれている場合に、判断部42は、ワーク領域38に格納されている無線設定に含まれているSSIDとBSSIDとが、NFC情報に含まれているSSIDとBSSIDと一致しているのか否かを判断する。
SSIDとBSSIDとが共に一致している場合、MFP10が現在属しているネットワークに、携帯端末50が現在属している(S6でYES)と判断され、S7に進む。一方、SSIDとBSSIDの少なくとも一方が一致していない場合、MFP10が現在属しているネットワークに、携帯端末50が現在属していない(S6でNO)と判断され、S8に進む。この構成によれば、MFP10は、MFP10が現在属しているネットワークに、携帯端末50が現在属しているのか否かを適切に判断することができる。なお、S6では、判断部42は、SSIDが一致しているのか否かを判断すると共に、BSSIDが一致しているのか判断する。これにより、判断部42は、MFP10と携帯端末50とが、同一のAPにより構築される同一の無線ネットワークに属しているのか否かを判断できる。より具体的に説明すると、1個のAPが、複数個のSSIDを利用することにより、複数個の無線ネットワークを構築する場合がある。そのため、BSSIDが一致し、SSIDが一致しない場合には、MFP10と携帯端末50とが、同一のAPにより構築されている異なる無線ネットワークに属している虞がある。本実施例では、SSIDとBSSIDとの双方について一致しているのか否かを判断することにより、より確実にMFP10と携帯端末50とが同一の無線ネットワークに属しているのか否かを判断できる。なお、変形例では、S6においてSSIDが一致しているのかを判断し、BSSIDが一致しているのかを判断しなくてもよい。これにより、MFP10と携帯端末50とがそれぞれ異なるアクセスポイントが構築する無線ネットワークに属する場合でも、SSIDが一致していれば、MFP10と携帯端末50とが同一の無線ネットワークに属していると判断され得る。
MFP10が現在属しているネットワークに、携帯端末50が現在属している場合、MFP10と携帯端末50とは、現在属しているネットワークを介して、通信を実行可能である。即ち、携帯端末50は、ワーク領域58に現在格納されている無線設定を用いて、MFP10と、無線通信を実行可能である。S7では、制御部30は、NFCI/F22を介して、携帯端末50の無線設定を変更せずに、データ通信を実行可能であることを示す設定変更不要情報を送信して、S20に進む。なお、設定変更不要情報は、MFP10のIPアドレスを含む。
S8では、判断部42は、WFD=ONモードに設定されているのか否かを判断する。判断部42は、メモリ34に格納されているモード値が、WFD=ONモードを表す値である場合に、S8でYESと判断し、S10に進む。一方、判断部42は、メモリ34に格納されているモード値が、WFD=OFFモードを表す値である場合に、S8でNOと判断し、S9に進む。
S9では、通信実行部44は、メモリ34に格納されているモード値を変更することによって、WFD=OFFモードからWFD=ONモードに変更して、S15に進む。通信実行部44は、さらに、モード値を変更したことを示す設定変更情報を、メモリ34に格納する。
S10では、判断部42は、MFP10が、現在属している無線ネットワークにおいて、クライアント状態として動作しているのか否かを判断する。具体的には、判断部42は、ワーク領域38に格納されている状態値が、クライアント状態を表す値である場合に、クライアント状態として動作していると判断する(S10でYES)。一方、判断部42は、ワーク領域38に格納されている状態値が、クライアント状態を表す値でない場合に、クライアント状態として動作していないと判断する(S10でNO)。S10でYESの場合、S14に進む。
一方、S10でNOの場合には、S12において、判断部42は、MFP10が、現在属している無線ネットワークにおいて、G/O状態として動作しているのか否かを判断する。具体的には、判断部42は、ワーク領域38に格納されている状態値が、G/O状態を表す値である場合に、G/O状態として動作していると判断する(S12でYES)。一方、判断部42は、ワーク領域38に格納されている状態値が、G/O状態を表す値でない場合に、G/O状態として動作していない(即ち、MFP10はデバイス状態である)と判断する(S12でNO)。S12でYESの場合にS13に進み、S12でNOの場合にS15に進む。
S13では、判断部42は、MFP10がG/O状態として動作しているWFDネットワークに含まれるMFP10以外の機器の個数(即ち、MFP10と接続が確立している機器)が、予め決められている最大クライアント数よりも少ないのか否かを判断する。判断部42は、管理リストに格納されている機器の識別情報の個数が、最大クライアント数よりも少ない場合に、S13でYESと判断し、等しい場合にS13でNOと判断する。S13でYESの場合にS16に進み、S13でNOの場合にS14に進む。
S14では、通信実行部44は、MFP10と携帯端末50とが現在通信を実行することができないことを示す通信NG情報を、NFCI/F22を利用して、携帯端末50に送信して、通信処理を終了する。
S15では、通信実行部44は、MFP10を、自発G/Oモードに設定する。自発G/Oモードは、G/O状態で動作することをMFP10に維持させるモードである。従って、S15の段階ではWFDネットワークが構築されていないが、MFP10は、G/O状態に設定されている。MFP10がG/O状態に設定される場合、通信実行部44は、WFD対応機器又は/及びWFD非対応機器が、WFDネットワークを介して、G/O状態として動作しているMFP10と無線通信を実行するための無線設定(SSID、BSSID、認証方式、暗号化方式、パスワード等)を準備する。この構成によれば、MFP10から無線設定を受信する機器(本実施例では携帯端末50)が、WFD対応機器であってもWFD非対応機器であっても、MFP10は、無線設定を受信する機器と、無線通信を実行することができる。一般的には、通信実行部44は、MFP10が、第1の無線通信方式(又は、無線通信規格、又は、無線通信プロトコル)に従って、ネットワークに現在属している場合に、当該ネットワークに属するための無線設定であって、携帯端末50が、第1の無線通信方式(又は、無線通信規格、又は、無線通信プロトコル)とは異なる第2の無線通信方式(又は、無線通信規格、又は、無線通信プロトコル)に従って動作するための無線設定を、通信実行部44に送信する。
なお、認証方式及び暗号化方式は、予め決められている。また、通信実行部44は、パスワードを生成する。なお、SSIDは、パスワードを生成する際に、通信実行部44によって生成されてもよいし、予め決められていてもよい。BSSIDは、MFP10のMACアドレスである。なお、この段階では、MFP10が管理している管理リストには、G/O状態の機器に接続される機器の識別情報が記述されていない。
S16では、通信実行部44は、準備された無線設定を、NFCI/F22を利用して、携帯端末50に送信する。S15の処理の後にS16の処理が実行される場合、通信実行部44は、自発G/Oモードに設定された段階(S15)で準備される無線設定を、携帯端末50に送信する。S13の処理の後にS16の処理が実行される場合、通信実行部44は、MFP10がG/O状態として動作しているWFDネットワークが構築された段階で準備される無線設定を、NFCI/F22を利用して、携帯端末50に送信する。
次いで、S18では、通信実行部44は、無線LANI/F20を利用して、MFP10と携帯端末50とのWFD接続を確立する。携帯端末50は、MFP10から、G/O状態で動作しているMFP10の無線設定を受信すると、受信された無線設定をワーク領域58に格納する。このため、携帯端末50は、通常Wi−Fiに従って、無線通信を実行する。次いで、通信実行部44は、Authentication Request、Authentication Response、Association Request、Association Response、及び、4way handshakeの無線通信を、携帯端末50と実行する。上記の無線通信の過程で、SSIDの認証、認証方式及び暗号化方式の認証、パスワードの認証等の様々な認証処理が実行される。全ての認証が成功した場合に、MFP10及び携帯端末50の間に無線接続が確立される。
なお、仮に、MFP10と携帯端末50との両方がデバイス状態である場合には、MFP10と携帯端末50との間にWFD接続が確立される際に、MFP10と携帯端末50との一方をG/Oとして決定すると共に、MFP10と携帯端末50との他方をクライアントとして決定するためのG/Oネゴシエーションが実行される。ただし、S16が実行される段階では、MFP10がG/O状態であることが確定しているために、通信実行部44は、G/Oネゴシエーションを実行せずに、携帯端末50とのWFD接続を確立する。
なお、S18の処理では、通信実行部44は、無線LANI/F20を利用して、携帯端末50のMACアドレスを取得する。無線接続が確立されると、制御部30は、さらに、携帯端末50のMACアドレスを管理リストに追加する。なお、携帯端末50のMACアドレスは、NFC情報に含まれる。これにより、G/O状態のMFP10は、通常Wi−Fiに従って、携帯端末50との間で、目的データ(印刷データ、スキャンデータ等)の通信を実行することができるようになる。なお、目的データは、OSI参照モデルの物理層よりも上位層であるネットワーク層のデータを含む。従って、G/O状態のMFP10は、クライアント状態の携帯端末50との間で、ネットワーク層の無線通信を実行することができる。
次いで、S20では、通信実行部44は、無線LANI/F20を介して、携帯端末50との間で、データ通信処理を実行する。データ通信処理の内容は、NFC情報に含まれる処理実行指示の内容によって変わる。処理実行指示が印刷指示である場合、通信実行部44は、データ通信処理において、携帯端末50から、印刷データを受信する。この場合、制御部30は、印刷実行部16に、受信された印刷データを用いた印刷処理を実行させる。
一方、処理実行指示がスキャン指示である場合、制御部30は、スキャン実行部18に、スキャン実行部18にセットされた原稿をスキャンさせ、スキャンデータを生成させる。次いで、通信実行部44は、生成されたスキャンデータを、携帯端末50に送信する。
次いで、S21では、通信実行部44は、無線LANI/F20を利用して、携帯端末50との接続を切断するための切断要求を、携帯端末50から受信することを監視する。所定期間が経過しても切断要求が受信されなかった場合(S21でNO)、S2に戻る。一方、S20のデータ通信処理が終了した後、所定期間内に、携帯端末50から切断要求が受信された場合(S21でYES)、通信実行部44は、携帯端末50との無線接続を切断する。具体的には、通信実行部44は、管理リスト内の携帯端末50のMACアドレスを消去する。次いで、S22では、通信実行部44は、S9の処理により無線LANI/F20の設定が変更されたのか否かを判断する。具体的には、通信実行部44は、設定変更情報がメモリ34に格納されている場合に、S9において、WFD=OFFモードを示すモード値からWFD=ONモードを示すモード値に変更されたと判断して(S22でYES)、S23に進む。一方、設定変更情報がメモリ34に格納されていない場合に、通信実行部44は、S9において、WFD=OFFモードを示すモード値からWFD=ONモードを示すモード値に変更されていない(S22でNO)と判断して、S2に戻る。
S23では、通信実行部44は、S18で新たに構築されたWFDネットワークに、携帯端末50以外の外部装置(例えばPC8)が、現在属しているのか否かを判断する。具体的には、通信実行部44は、管理リスト内に、携帯端末50の識別情報以外の識別情報が含まれている場合に、WFDネットワークに、外部装置が現在属している(S23でYES)と判断する。この場合、モード値が変更されずに、S2に戻る。この構成によれば、WFDネットワークに外部装置が現在属している場合に、WFDネットワークからMFP10が離脱されることを防止することができる。
一方において、通信実行部44は、管理リスト内に、携帯端末50以外の識別情報が含まれていない場合に、WFDネットワークに、外部装置が現在属していない(S23でNO)と判断して、S24に進む。S24では、通信実行部44は、WFD=ONモードを示すモード値からWFD=OFFモードを示すモード値に変更して、S2に戻る。即ち、通信処理では、S8において、WFD=OFFモードであると判断される場合に、WFDネットワークを介して、無線LANI/F20を利用した無線通信を、携帯端末50と一時的に実行するために、WFD=OFFモードからWFD=ONモードに変更する。そして、S25においてWFD=ONモードからWFD=OFFモードに変更されると、S18で構築されたWFDネットワークは消滅する。この構成によれば、通信処理実行中に、モード値がWFD=OFFモードを示すモード値からWFD=ONモードを示すモード値に変更された場合に、モード値を変更前の設定に戻すことができる。
(本実施例の効果)
図3〜7を参照して、第1〜5の状況における本実施例の効果を説明する。なお、図3〜7のそれぞれには、図2の通信処理において対応する処理が示されている。
(第1の状況)
図3に示される第1の状況では、MFP10と携帯端末50とが、同一のWFDネットワーク又は同一の通常Wi−Fiネットワークに現在属している状況である。この状況では、携帯端末50から、NFCI/F22を利用して、NFC情報が受信されると、S4において、MFP10は、MFP10が現在ネットワークに属していると判断する(S4でYES)。次いで、S6において、MFP10は、MFP10が現在属しているネットワークに、携帯端末50が現在属していると判断する(S6でYES)。MFP10は、S7において、設定変更不要情報を、NFCI/F22を利用して、携帯端末50に送信する。携帯端末50は、設定変更不要情報を受信すると、設定変更不要情報に含まれるIPアドレスと、ワーク領域58に格納されている無線設定と、を用いて、印刷データを、MFP10に送信する。MFP10は、無線LANI/F20を利用して、印刷データを受信する(S20)。MFP10は、印刷データを受信すると、印刷実行部16に、印刷処理を実行させる。
なお、本明細書のシーケンス図では、MFP10がNFCI/F22を利用した無線通信(即ちNFC方式に従った無線通信)と、MFP10が無線LANI/F20を利用した無線通信(即ちWFD方式又は通常WiーFiに従った無線通信)とが、矢印で表されている。無線LANI/F20を利用した無線通信を表す矢印は、NFCI/F22を利用した無線通信を表す矢印よりも太く記載されている。
この構成によれば、MFP10は、MFP10が現在属しているネットワークに、携帯端末50が現在属していると判断される場合に、MFP10と携帯端末50とに現在設定されている無線設定を変更せずに、MFP10と携帯端末50とが、現在属しているネットワークを介して、印刷データの通信を適切に実行することができる。
(第2の状況)
図4に示される第2の状況では、MFP10は、WFDネットワークに現在属している。MFP10は、WFDネットワークにおいて、G/O状態として動作している。WFDネットワークには、クライアント状態のPC8が現在属している。携帯端末50は、MFP10が現在属している無線ネットワークに現在属していない。携帯端末50は、MFP10が現在属している無線ネットワーク以外の無線ネットワークに現在属していてもよいし、属していなくてもよい。
この状況では、携帯端末50から、NFCI/F22を利用して、NFC情報が受信されると、S4において、MFP10は、MFP10がネットワークに現在属していると判断する(S4でYES)。なお、NFC情報は、携帯端末50が無線ネットワークに現在属している場合に、当該無線ネットワークのSSIDとBSSIDとを含むが、携帯端末50が無線ネットワークに現在属していない場合に、当該無線ネットワークのSSIDとBSSIDとを含まない。次いで、S6において、MFP10は、MFP10が現在属しているWFDネットワークに、携帯端末50が現在属していないと判断する(S6でYES)。MFP10は、S12において、MFP10がG/O状態であると判断する(S12でYES)。この場合、S16において、MFP10は、ワーク領域38に格納されているMFP10の無線設定と、MFP10のIPアドレスと、を、NFCI/F22を利用して、携帯端末50に送信する。携帯端末50は、無線設定を受信すると、受信された無線設定を、ワーク領域58に格納する。次いで、MFP10と携帯端末50とは、WFD接続を確立する(S18)。これにより、携帯端末50は、MFP10が現在属しているWFDネットワークに属することができる。なお、MFP10は、MFP10の認証方式と暗号化方式とを含む無線設定を、NFCI/F22を利用して、携帯端末50に送信する。この構成によれば、携帯端末50は、MFP10から受信した認証方式と暗号化方式とに従って認証処理を実行することができ、いずれの認証方式と暗号化方式を利用すべきか確認する処理を実行しなくて済む。このため、MFP10と携帯端末50とは、比較的に早期に接続を確立することができる。
次いで、携帯端末50は、ワーク領域58に格納されている無線設定と、S16で受信したIPアドレスとを用いて、印刷データを、MFP10に送信する。MFP10は、無線LANI/F20を利用して、印刷データを受信する(S20)。MFP10は、印刷データを受信すると、印刷実行部16に、印刷処理を実行させる。この構成によれば、MFP10は、MFP10が、WFDネットワークにおいて、G/O状態として動作している場合に、MFP10が現在属しているWFDネットワークを介して、携帯端末50と、印刷データの通信を適切に実行することができる。
(第3の状況)
図5に示される第3の状況では、MFP10は、WFDネットワークに現在属している。MFP10は、WFDネットワークにおいて、クライアント状態として動作している。WFDネットワークには、G/O状態のPC8が現在属しているが、携帯端末50は現在属していない。携帯端末50は、第2の状況と同様である。
この状況では、携帯端末50から、NFCI/F22を利用して、NFC情報が受信されると、S4において、MFP10は、MFP10が現在ネットワークに属していると判断する(S4でYES)。次いで、S6において、MFP10は、MFP10が現在属しているWFDネットワークに、携帯端末50が現在属していないと判断する(S6でNO)。MFP10は、S10において、MFP10がクライアント状態であると判断する(S10でYES)。この場合、S14において、MFP10は、通信NG情報を、NFCI/F22を利用して、携帯端末50に送信する。
この場合、MFP10は、ワーク領域38に格納されている無線設定を、携帯端末50に送信しない。この構成によれば、WFDネットワークにおいて、G/O状態として動作しているPC8の無線設定を、携帯端末50に提供せずに済む。これにより、携帯端末50が、WFDネットワークに参入することを抑制することができる。また、携帯端末50は、MFP10から通信NG情報を受信することによって、携帯端末50のユーザに、MFP10が、携帯端末50と目的データの通信を実行しないことを知らせることができる。
(第4の状況)
図6に示される第4の状況では、MFP10は、無線LANI/F20の設定は、WFD=ONモードに設定されているが、WFDネットワークに現在属していない。即ち、MFP10は、デバイス状態として動作している。なお、MFP10は、通常Wi−Fiネットワークにも現在属していない状態である。携帯端末50は、第2の状況と同様である。
この状況では、携帯端末50から、NFCI/F22を利用して、NFC情報が受信されると、S4において、MFP10は、MFP10はネットワークに現在属していないと判断する(S4でNO)。また、MFP10は、S10,S12において、MFP10がG/O状態でもなく、クライアント状態でもないと判断する(S10、S12で共にNO)。この場合、S15において、MFP10は、G/Oネゴシエーションを実行せずに、MFP10を、自発G/Oモードに設定する。
次いで、S16において、MFP10は、ワーク領域38に格納されているMFP10の無線設定(即ち、S15において、自発G/Oモードに設定された段階で生成される無線設定)と、MFP10のIPアドレスと、を、NFCI/F22を利用して、携帯端末50に送信する。携帯端末50は、無線設定を受信すると、受信された無線設定を、ワーク領域58に格納する。次いで、MFP10と携帯端末50とは、WFD接続を確立する(S18)。これにより、携帯端末50は、MFP10がG/O状態として動作しているWFDネットワークに属することができる。
次いで、携帯端末50は、ワーク領域58に格納されている無線設定と、S16で受信したIPアドレスとを用いて、印刷データを、MFP10に送信する。MFP10は、無線LANI/F20を利用して、印刷データを受信する(S20)。MFP10は、印刷データを受信すると、印刷実行部16に、印刷処理を実行させる。この構成によれば、MFP10は、MFP10が、WFDネットワークにおいて、G/O状態として動作するWFDネットワークを新たに構築することができる。これにより、MFP10は、新たに構築されるWFDネットワークを介して、携帯端末50と印刷データの通信を適切に実行することができる。さらに、MFP10は、新たに構築されるWFDネットワークにおいて、必然的に、G/O状態として動作するため、WFDネットワークで利用される認証方式等を、決定することができる。
(第5の状況)
図7に示される第5の状況では、MFP10は、無線LANI/F20の設定は、WFD=OFFモードに設定されている。MFP10は、ネットワークに現在属していない状態である。携帯端末50は、第2の状況と同様である。
この状況では、携帯端末50から、NFCI/F22を利用して、NFC情報が受信されると、第4の状況と同様に、S4において、NOと判断される。MFP10は、S8において、WFD=OFFモードに設定されていると判断する。この場合、S9において、MFP10は、WFD=OFFモードからWFD=ONモードに変更する。次いで、MFP10は、S15において、MFP10を、自発G/Oモードに設定する。
以下、印刷処理までは、第4の状況と同様である。この構成においても、第4の状況と同様の効果を奏することができる。印刷処理が終了すると、MFP10は、新たに構築されたWFDネットワークに、外部装置が現在属していないと判断して(S23でNO)、WFD=ONモードからWFD=OFFモードに変更する。この構成によれば、印刷データの通信後に、WFDネットワークに、外部装置が属していない場合に、WFD=ONモードからWFD=OFFモードに適切に変更することができる。
本実施例では、MFP10は、MFP10が、携帯端末50と同一のネットワークに現在属しているのか否か、即ち、MFP10が、携帯端末50と通信可能であるのか否かに応じた処理を実行することによって、無線LANI/F20を利用して、比較的に速い通信速度で、携帯端末50と目的データの無線通信を適切に実行することができる。また、MFP10は、WFDネットワークを介して、携帯端末50と、MFP10と携帯端末50とは異なるアクセスポイントを介さずに、目的データの通信を実行することができる。
さらに、MFP10は、MFP10が、携帯端末50と通信可能でなく、かつ、MFP10がWFDネットワークに現在属している場合に、MFP10が現在属しているWFDネットワークを介して、携帯端末50と、目的データの通信を適切に実行することができる。また、MFP10がWFDネットワークに現在属していない場合に、MFP10は、新たに構築されるWFDネットワークを介して、携帯端末50と、目的データの通信を適切に実行することができる。
(対応関係)
MFP10が「通信装置」の一例であり、NFCI/F22が「第1種のインターフェイス」の一例であり、無線LANI/F20が「第2種のインターフェイス」の一例である。なお、上記の説明から、NFCI/F22(即ち「第1種のインターフェイス」)は、無線LANI/F20(即ち「第2種のインターフェイス」)を利用した通信を実行するために、MFP10(即ち「通信装置」)と携帯端末50との間で実行される通信に用いられるインターフェイスということができる。
AP6が、「アクセスポイント」の一例である。即ち、「アクセスポイント」は、アクセスポイントが属するネットワーク、即ち、通常Wi−Fiネットワークにおいて、通常Wi−Fiネットワークに属する一対の機器の間の通信を中継するデバイスである。
NFC情報が「特定の情報」の一例である。G/O状態が「親局状態」の一例であり、クライアント状態が「子局状態」の一例である。図2のS4でYESと判断される場合に、MFP10が属しているWFDネットワークが「第1の対象ネットワーク」の一例であり、図2のS15からS18の処理によって構築されるWFDネットワークが、「第2の対象ネットワーク」の一例である。
図2のS4でYESの場合が、「第1の場合」の一例であり、図2のS4でNOの場合が、「第2の場合」の一例である。
(第2実施例)
第1実施例と異なる点を説明する。本実施例では、携帯端末50は、携帯端末50がネットワークに現在属している場合に、ワーク領域58に格納されている無線設定として、パスワードと認証方式と暗号化方式とを、さらに含むNFC情報を、MFP10に送信する。
また、本実施例では、図2の通信処理の代わりに、図8の通信処理が実行される。図8のS2〜S24は、図2のS2〜S24の処理と同様である。S4でNOの場合(即ちMFP10がネットワークに現在属していない場合)に、S82において、判断部42は、NFCインターフェイス22を介して、携帯端末52から受信されたNFC情報に、無線設定が含まれているのか否かを判断する。無線設定が含まれていると判断される場合(S82でYES)、S83において、設定変更不要情報を、NFCI/F22を利用して携帯端末50に送信する。なお、S4でNOの場合(即ちMFP10がネットワークに現在属していない場合)、S83では、MFP10のMACアドレスを含む設定変更不要情報を、携帯端末50に送信する。一方、なお、S4でYESであり、S6でNOの場合(即ちMFP10がネットワークに現在属しているが、MFP10と携帯端末50とは同一のネットワークに現在属していない場合)、S83では、MFP10のIPアドレスを含む設定変更不要情報を、携帯端末50に送信する。次いで、S84において、通信実行部44は、NFC情報に含まれる無線設定を用いて、携帯端末50が属しているネットワークに属して、S20に進む。
一方、NFC情報に無線設定が含まれていないと判断される場合(S82でNO)、S8に進む。
(本実施例の効果)
第2実施例のMFP10は、第1〜5の状況において、第1実施例のMFP10と同様の効果を奏することができる。図9を参照して、第6の状況における本実施例の効果を説明する。なお、図9には、図8の通信処理において対応する処理が示されている。
(第6の状況)
図9に示される第6の状況では、MFP10は、ネットワークに現在属していない状態である。一方、携帯端末50は、AP6が属している通常Wi−Fiネットワークに現在属している。
この状況では、携帯端末50から、NFCI/F22を介して、NFC情報が受信されると、MFP10は、MFP10は、MFP10が現在ネットワークに属していると判断する(S4でYES)。次に、図8のS82において、MFP10は、携帯端末50が現在属しているネットワークに属するための無線設定が、NFC情報に含まれていると判断する(S82でYES)。
次いで、S83において、MFP10は、設定変更不要情報を、NFCI/F22を利用して携帯端末50に送信する。なお、MFP10は、S4でNOの場合(即ちMFP10がネットワークに現在属していない場合)、MFP10のMACアドレスを含む設定変更不要情報を携帯端末50に送信する。また、MFP10は、S6でNOの場合(即ちMFP10がネットワークに現在属しているが、MFP10と携帯端末50とが同一のネットワークに属していない場合)、MFP10のIPアドレスを含む設定変更不要情報を携帯端末50に送信する。
MFP10は、NFC情報に含まれている無線設定を用いて、AP6と、通常Wi−Fi接続を確立する(S84)。携帯端末50は、設定変更不要情報にMFP10のIPアドレスが含まれる場合、該IPアドレスを送信先に指定して、AP6を介して、印刷データを、MFP10に送信する(S20)。また、携帯端末50は、設定変更不要情報にMFP10のMACアドレスが含まれる場合、RARP(Reverse Address Resolution Protocolの略)に従って、MFP10のIPアドレスを特定し、特定したIPアドレスを送信先に指定して、AP6を介して、印刷データを、MFP10に送信する(S20)。
この構成によれば、MFP10は、MFP10と携帯端末50とが同一のネットワークに属していない場合に、携帯端末50が現在属しているネットワークを介して、携帯端末50と、印刷データの通信を適切に実行し得る。
(対応関係)
携帯端末50が属しているネットワークが「第2の対象ネットワーク」の一例である。図8のS4でYESの場合が、「第1の場合」の一例であり、図8のS4でNOの場合が、「第2の場合」の一例であり、図8のS4でNOであり、かつ、S82でYESの場合が、「特定の場合」の一例である。
(第3実施例)
第1実施例と異なる点を説明する。本実施例では、図2の通信処理の代わりに、図10の通信処理が実行される。図10のS2〜S12、S15〜S24は、図2のS2〜S12、S15〜S24の処理と同様である。S8でNOの場合、即ち、MFP10がWFD=ONモードに設定されていない場合、S76において、判断部42は、MFP10が、通常Wi−Fiネットワークに、現在属しているのか否かを判断する。判断部42は、通常Wi−Fiネットワークに現在属することを示す情報が、ワーク領域38に格納されている場合、MFP10が、通常Wi−Fiネットワークに現在属している(S76でYES)と判断して、S80に進む。一方、判断部42は、通常Wi−Fiネットワークに属することを示す情報が、ワーク領域38に格納されていない場合、MFP10が、通常Wi−Fiネットワークに、現在属していない(S76でNO)と判断して、S9に進む。
S12でYESの場合、即ち、MFP10が、WFDネットワークに現在属しており、かつ、WFDネットワークにおいて、G/O状態として動作している場合、S13に進む。通信実行部44は、S16において、ワーク領域38に格納されているMFP10の無線設定を、NFCI/F22を介して、携帯端末50に送信して、S18に進む。S16で送信されるMFP10の無線設定は、パスワードを含む。
また、S12でNOと判断される場合、即ち、MFP10が、デバイス状態として動作している場合に、判断部42は、S78の処理を実行する。S78の処理は、S76の処理と同様である。S78でNOの場合にS15に進み、S78でYESの場合にS80に進む。
S80では、通信実行部44は、ワーク領域38に格納されている通常Wi−Fiネットワークに属するための無線設定、即ち、AP(例えばAP6)の無線設定のうち、パスワード以外の無線設定を、NFCインターフェイス22を介して、携帯端末50に送信して、S20に進む。携帯端末50は、APの無線設定が受信されると、パスワードを、ユーザに指定させる。携帯端末50は、ユーザによってパスワードが指定されると、MFP10から受信された無線設定とユーザによって指定されたパスワードとを用いて、APと、接続を確立する。これにより、携帯端末50は、APを介して、MFP10と無線通信可能となる。なお、携帯端末50とAPとの接続が確立されない場合、MFP10は、携帯端末50と無線通信を実行することができない。この場合、制御部30は、S20〜S24の処理を実行せずに、S2に戻る。
(本実施例の効果)
第3実施例のMFP10は、第1〜5の状況において、第1実施例のMFP10と同様の効果を奏することができる。図11を参照して、第7の状況における本実施例の効果を説明する。なお、図11には、図10の通信処理において対応する処理が示されている。
(第7の状況)
図11に示される第7の状況では、MFP10は、通常Wi−Fiネットワークに現在属している。MFP10は、通常Wi−Fiネットワークにおいて、AP6に接続されている。携帯端末50は、第2の状況と同様である。
この状況では、携帯端末50から、NFCI/F22を利用して、NFC情報が受信されると、S4において、MFP10は、MFP10がネットワーク(即ち通常Wi−Fiネットワーク)に現在属していると判断する(S4でYES)。次いで、S6において、MFP10は、MFP10が現在属している通常Wi−Fiネットワークに、携帯端末50が現在属していないと判断する(S6でNO)。S76では、MFP10は、通常Wi−Fiネットワークに、現在属していると判断する(S76でYES)。この場合、S80において、MFP10は、ワーク領域38に格納されているAP6の無線設定のうち、パスワードを含まない無線設定と、MFP10のIPアドレスとを、携帯端末50に送信する。この構成によれば、携帯端末50及びユーザに、パスワードを提供せずに済む。この結果、携帯端末50及びユーザが、AP6が利用される通常Wi−Fiネットワークに属するためのパスワードを知らない場合に、当該通常Wi−Fiネットワークに、携帯端末50が属することを防止することができる。
携帯端末50は、無線設定を受信すると、第10の状況と同様に、無線設定を受信して、ユーザにパスワードを指定させる。次いで、携帯端末50は、ユーザによってパスワードが指定されると、AP6と通常Wi−Fi接続を確立する。これにより、携帯端末50は、MFP10が現在属している通常Wi−Fiネットワークに属することができる。携帯端末50は、AP6を介して、MFP10と印刷データを送信することができる。携帯端末50は、通常Wi−Fiネットワークに属すると、ワーク領域58に格納されている無線設定と、S80で受信したMFP10のIPアドレスとを用いて、AP6を介した無線通信を実行することによって、印刷データを、MFP10に送信する。
なお、図示しないが、MFP10が現在デバイス状態として動作しており(S8でYes、S10およびS12でNO)、かつ、MFP10が通常Wi−Fiネットワークに属している場合(S78でYES)においても、MFP10は、ワーク領域38に格納されているAPの無線設定のうち、パスワードを含まない無線設定を、携帯端末50に送信する。
この構成によれば、MFP10は、携帯端末50と同一のネットワークに属していない場合に、MFP10が現在属している通常Wi−Fiネットワークを介して、携帯端末50と、印刷データの通信を適切に実行することができる。
(対応関係)
図10のS4でYESと判断される場合に、MFP10が属している非WFDネットワークが、「第1の対象ネットワーク」の一例である。図10のS4でYESの場合が、「第1の場合」の一例であり、図10のS4でNOの場合が、「第2の場合」の一例である。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
(変形例)
(1)上記の第1〜第3実施例では、MFP10は、NFC情報を受信すると(S2でYES)、ネットワークに現在属しているかを判断し(S4)、ネットワークに属していると判断される場合に(S4でYES)、MFP10と携帯端末50とが同一ネットワークに現在属しているかを判断する(S6)。しかしながら、S6の処理を省略してもよい。すなわち、第1、第3実施例において、MFP10は、NFC情報を受信すると(S2でYES)、ネットワークに現在属しているかを判断し(S4)、ネットワークに現在属していると判断される場合に(S4でYES)、S8以降の処理に進んでもよい。また、第2実施例において、MFP10は、ネットワークに現在属していると判断される場合(S4でYES)に、S82以降の処理に進んでもよい。
(2)「通信装置」は、多機能機に限られず、第1種のインターフェイスと第2種のインターフェイスとを備える他の機器(例えば、プリンタ、FAX装置、コピー機、スキャナ等)であってもよい。
(3)MFP10は、アクセスポイントとして機能するためのAPプログラムを格納していてもよい。制御部30は、APプログラムを起動すると、予め決められている無線設定を、ワーク領域38に格納してもよい。図2のS4において、判断部42は、APプログラムが起動されている場合に、MFP10がネットワーク(非WFDネットワーク)に現在参加していると判断してもよい。本変形例では、MFP10がアクセスポイントとして機能している状態で構築される通常Wi−Fiネットワークが、「第1の対象ネットワーク」の一例である。
(4)また、例えば、図2のS15において、通信実行部44は、MFP10を自発G/Oモードに設定する代わりに、APプログラムを起動させてもよい。次いで、通信実行部44は、ワーク領域38に格納されている無線設定を、携帯端末50に送信してもよい。そして、通信実行部44と携帯端末50とは、ワーク領域38に予め格納されている無線設定を用いて、接続を確立してもよい。この場合、MFP10は、携帯端末50との間で通常Wi−Fi接続を確立し、また、MFP10は、通常Wi−Fiネットワークを構築してもよい。本変形例では、MFP10がアクセスポイントとして機能している状態で構築される通常Wi−Fiネットワークが、「第2の対象ネットワーク」の一例である。
(5)「第1種のインターフェイス」と「第2種のインターフェイス」との組合せは、NFCI/Fと無線LANI/Fとの組合せに限られない。例えば、「第2種のインターフェイス」として無線LANI/Fが採用される場合に、「第1種のインターフェイス」は、赤外線通信を実行するためのインターフェイスであってもよいし、Bluetooth(登録商標)を実行するためのインターフェイスであってもよいし、Transfer Jetを実行するためのインターフェイスであってもよい。また、「第1種のインターフェイス」としてNFCI/Fが採用される場合に、「第2種のインターフェイス」は、有線通信を実行するためのインターフェイスであってもよいし、Bluetooth(登録商標)を実行するためのインターフェイスであってもよい。一般的に言うと、第2種のインターフェイスを介した通信の通信速度が、第1種のインターフェイスを介した通信の通信速度よりも速ければよい。
(6)「第1種のインターフェイス」と「第2種のインターフェイス」とは、上記の実施例のように、物理的に2個のインターフェイス(即ち別体の2個のチップ)であってもよいし、物理的に1個のインターフェイス(即ち1個のチップで2種類の通信が実現される)であってもよい。
(7)上記の各実施例では、WFD方式に従った無線通信を実行するためのインターフェイスと、通常Wi−Fiに従った無線通信とを実行するためのインターフェイスと、が、物理的に1個のインターフェイス(無線LANI/F20)であったが、物理的に複数個のインターフェイス(即ち別体の2個のICチップ)であってもよい。本変形例では、複数個のインターフェイスが、「第2種のインターフェイス」の一例である。
(8)上記の各実施例では、S15において、通信実行部44は、MFP10を、自発G/Oモードに設定する。しかしながら、携帯端末50が、WFDに従った無線通信を実行可能である場合に、通信実行部44は、WFD接続を開始することを示すWFD接続開始情報を、NFCインターフェイス22を介して、携帯端末50に送信してもよい。WFDの無線接続を実行するための方式として、WPS(Wi-Fi Protected Setupの略)の無線接続方式が利用されてもよい。WPSの無線接続方式は、PBC(Push Button Configurationの略)方式と、PIN(Personal Identification Numberの略)コード方式と、を含む。本変形例では、PBCコード方式について説明するが、本変形例の技術は、PINコード方式にも適用可能である。WFD接続開始情報は、WFD方式の無線接続を実行するための方式として、PBCコード方式を利用することを示す情報を含んでいてもよい。WFD接続開始情報は、さらに、MFP10のデバイスID(例えばMACアドレス、製造番号等)を含んでいてもよい。
携帯端末50は、WFD接続開始情報が受信されると、携帯端末50の無線LANI/Fの設定が、WFD方式に従った無線通信を実行可能な設定であるのか否かを判断してもよい。携帯端末50は、無線LANI/Fの設定が、WFD方式に従った無線通信を実行可能な設定である場合、無線LANI/Fの設定を維持し、無線LANI/Fの設定が、WFD方式に従った無線通信を実行可能な設定でない場合、無線LANI/Fの設定を、WFD方式に従った無線通信を実行可能な設定に変更してもよい。
次いで、通信実行部44は、携帯端末50を検索してもよい。具体的には、通信実行部44は、Scan処理とListen処理とSearch処理を順次実行してもよい。Scan処理は、MFP10の周囲に存在するG/O状態の機器を検索するための処理である。具体的に言うと、通信実行部44は、Scan処理において、1ch〜13chの13個のチャネルを順次利用して、Probe Request信号を無線で順次送信してもよい。なお、このProbe Request信号は、MFP10がWFD機能を実行可能であることを示すP2P(Peer 2 Peer)情報を含んでいてもよい。
例えば、MFP10の周囲にG/O状態のWFD対応機器(以下では「特定のG/O機器」と呼ぶ)が存在する場合には、特定のG/O機器は、1ch〜13chのうちの1個のチャネルを利用することを予め決定していてもよい。従って、特定のG/O機器は、MFP10からProbe Request信号を無線で受信してもよい。この場合、特定のG/O機器は、Probe Response信号をMFP10に無線で送信してもよい。このProbe Response信号は、特定のG/O機器がWFD機能を実行可能であることを示すP2P情報と、特定のG/O機器がG/O状態であることを示す情報と、を含んでいてもよい。この結果、通信実行部44は、特定のG/O機器を見つけることができる。なお、上記のProbe Response信号は、さらに、特定のG/O機器のデバイス名と、特定のG/O機器の機種(例えば、携帯端末、PC等)を示す情報と、特定のG/O機器のMACアドレスと、を含んでいてもよい。この結果、通信実行部44は、特定のG/O機器に関する情報を取得することができる。
通信実行部44は、Probe Response信号に含まれる特定のG/O機器のデバイスID(例えばMACアドレス、製造番号等)と、NFC情報に含まれる携帯端末50のデバイスIDとが一致する場合に、特定のG/O機器は、携帯端末50であることを特定することができる。即ち、携帯端末50が、WFDネットワークに現在属しており、かつ、WFDネットワークにおいて、G/O状態として動作している場合、通信実行部44は、Scan処理によって、携帯端末50を発見することができる。
なお、例えば、MFP10の周囲にデバイス状態のWFD対応機器(以下では「特定のデバイス機器」と呼ぶ)が存在する場合には、特定のデバイス機器は、1ch、6ch、11chのうちの1個のチャネルを利用することを予め決定していてもよい。従って、特定のデバイス機器も、MFP10からProbe Request信号を無線で受信してもよい。この場合、特定のデバイス機器は、Probe Response信号を、MFP10に無線で送信してもよい。但し、このProbe Response信号は、デバイス状態であることを示す情報を含み、G/O状態であることを示す情報を含まなくてもよい。また、クライアント状態の機器は、MFP10からProbe Request信号を無線で受信しても、Probe Response信号をMFP10に無線で送信しなくてもよい。通信実行部44は、携帯端末50が、G/O状態である場合もデバイス状態である場合も、Scan処理において、携帯端末50を発見することができる。
Listen処理は、Probe Request信号に応答するための処理である。特定のデバイス機器は、後述のSearch処理において、Probe Request信号を無線で送信することができる。即ち、携帯端末50の現在の状態が、デバイス状態である場合、携帯端末50は、Probe Request信号を無線で、定期的に送信していてもよい。このProbe Request信号は、携帯端末50のデバイスID((例えばMACアドレス、製造番号等)を含んでいてもよい。
通信実行部44は、Probe Request信号に含まれる特定のデバイス機器のデバイスIDと、NFC情報に含まれる携帯端末50のデバイスIDとが一致する場合に、特定のデバイス機器は、携帯端末50であることを特定することができる。即ち、携帯端末50が、デバイス状態として動作している場合、通信実行部44は、Listen処理によって、携帯端末50を発見することができる。通信実行部44は、携帯端末50からProbe Request信号を受信すると、Probe Response信号を無線で送信してもよい。
Search処理では、通信実行部44は、1ch、6ch、11chの3個のチャネルを順次利用して、Probe Request信号を無線で順次送信してもよい。これにより、通信実行部44は、特定のデバイス機器からProbe Response信号を無線で受信してもよい。このProbe Response信号は、特定のデバイス機器がWFD機能を実行可能であることを示すP2P情報と、特定のデバイス機器がデバイス状態であることを示す情報と、特定のデバイス機器のデバイスID(例えばMACアドレス、製造番号等)と、を含んでいてもよい。携帯端末50の現在の状態が、デバイス状態である場合、携帯端末50は、MFP10から送信されたProbe Request信号の応答として、Probe Response信号を無線で送信してもよい。
通信実行部44は、Probe Response信号に含まれる特定のデバイス機器のデバイスIDと、NFC情報に含まれる携帯端末50のデバイスIDとが一致する場合に、特定のデバイス機器は、携帯端末50であることを特定することができる。即ち、携帯端末50が、WFDネットワークに現在属しており、かつ、WFDネットワークにおいて、デバイス状態として動作している場合、通信実行部44は、Search処理によって、携帯端末50を発見することができる。
携帯端末50が発見される場合、MFP10は、無線LANI/F20を利用して、携帯端末50との間でG/Oネゴシエーションを実行して、MFP10及び携帯端末50のどちらか一方の機器をG/O状態として動作することを決定し、他方の機器をクライアント状態として動作することを決定してもよい。
次いで、通信実行部44は、WPSに従って、MFP10と携帯端末50との接続を確立してもよい。具体的には、通信実行部44は、MFP10の現在の状態がG/O状態であり、かつ、携帯端末50の現在の状態がクライアント状態である場合(S22でYESの場合)には、通信実行部44は、無線接続を確立するために必要な無線設定(SSID、認証方式、暗号化方式、パスワード等)を生成して、携帯端末50に無線で送信してもよい。なお、認証方式及び暗号化方式は、予め決められていてもよい。また、通信実行部44は、無線設定を生成する際にパスワードを生成してもよい。なお、SSIDは、通信実行部44によって生成されてもよいし、予め決められていてもよい。無線設定が携帯端末50に送信されることにより、MFP10及び携帯端末50が同じ無線設定を利用することができる。即ち、MFP10及び携帯端末50は、無線設定を用いて、Authentication Request、Authentication Response、Association Request、Association Response、及び、4way handshakeの無線通信を実行してもよい。この過程で、MFP10及び携帯端末50は、SSIDの認証、認証方式及び暗号化方式の認証、パスワードの認証等を様々な認証処理を実行してもよい。全ての認証が成功した場合に、MFP10及び携帯端末50の間に無線接続が確立されてもよい。これにより、MFP10と携帯端末50とは、同一のWFDネットワークに属する状態となってもよい。
一方において、MFP10の現在の状態がクライアント状態であり、かつ、対象機器の現在の状態がG/O状態である場合には、通信実行部44は、クライアント状態用のWPSネゴシエーションを実行してもよい。具体的に言うと、携帯端末50は、無線接続を確立するために必要な無線設定(SSID、認証方式、暗号化方式、パスワード等)を生成して、MFP10に無線で送信してもよい。この結果、通信実行部44は、無線設定を携帯端末50から無線で受信してもよい。その後の処理(Authentication Request等の通信処理)は、G/O状態用のWPSネゴシエーションと同様である。これにより、MFP10と携帯端末50とは、同一のWFDネットワークに属する状態となってもよい。この結果、クライアント状態のMFP10は、G/O状態の携帯端末50との間で、目的データ(印刷データ等)の無線通信を実行することができるようになる。本変形例では、G/Oネゴシエーション及びWPSネゴシエーションが、「特定処理」の一例である。
(9)上記の各実施例では、各部40〜46がソフトウェアによって実現されるが、各部40〜46のうちの少なくとも1つが論理回路等のハードウェアによって実現されてもよい。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。