以下に、図面を参照しながら、本発明の実施形態を例示的に詳しく説明する。但し、本実施形態に記載されている構成要素の相対配置、表示画面等は、特に、特定的な記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。
(第1実施形態)
本実施形態の通信システムに含まれる情報処理装置及び通信装置について説明する。情報処理装置として、本実施形態ではパーソナルコンピュータ(PC)を例示しているが、これに限定されない。情報処理装置として、携帯端末、スマートフォン、タブレット端末、PDA(Personal Digital Assistant)、デジタルカメラ等、種々のものを適用可能である。また、通信装置として、本実施形態ではプリンタを例示しているが、これに限定されず、情報処理装置と無線通信を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等に適用することができる。また、プリンタのみならず複写機やファクシミリ装置、携帯端末、スマートフォン、PC、タブレット端末、PDA、デジタルカメラ、音楽再生デバイス、テレビ等にも適用可能である。その他、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機にも適用可能である。
まず、本実施形態の情報処理装置と、本実施形態の情報処理装置と通信可能な通信装置の構成について説明する。また、本実施形態では以下の構成を例に記載するが、本実施形態は通信装置と通信を行うことが可能な装置に関して適用可能なものであり、特にこの図のとおりに機能を限定するものではない。
図2は本実施形態の情報処理装置である端末装置200の概略構成を示すブロック図である。
端末装置200は、装置のメインの制御を行うメインボード201を有する。
メインボード201において、CPU202は、システム制御部であり、端末装置200の全体を制御する。ROM203は、CPU202が実行する制御プログラムや組込オペレーティングシステム(以下、OS)プログラム等の各種プログラムを格納する。本実施形態では、ROM203に格納されている制御プログラムは、ROM203に格納されている組込OSの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。RAM204は、SRAM(static RAM)等のメモリで構成され、プログラム制御変数、ユーザが登録した設定値、端末装置200の管理データ等を格納し、各種ワーク用バッファ領域が設けられている。なお、これらの設定情報データは、RAM204でなく、ROM203や不揮発性メモリ205等の他の記憶領域に保存されても良い。
不揮発性メモリ205は、フラッシュメモリ等のメモリで構成され、電源がオフされた時でも保持していたいデータを格納する。具体的には、不揮発性メモリ205には、ネットワークに接続するためのパスワードや認証情報等のネットワーク情報、MACアドレスやSSID等の過去に接続した通信装置のリストといった端末装置200の設定情報などが記憶される。また、本実施形態では、後述する簡単接続モード用の接続情報も記憶される。なお、これらのデータは、不揮発性メモリ205でなく、ROM203やRAM204等の他の記憶領域に保存されても良い。また、ROM303や不揮発性メモリ205に保存された設定情報をCPU202がRAM204に展開することで、記憶されたデータを利用した処理を行っても良い。
画像メモリ206は、DRAM(dynamic RAM)等のメモリで構成され、無線LANユニット211等を介して受信した画像データや、符号復号化処理部210で処理した画像データ等の各種データを格納する。
なお、端末装置200のメモリ構成は、この形態に限定されるものではなく、用途や目的に応じて、その数や特性、記憶容量等を適宜変更することができる。例えば、画像メモリ206とRAM204を共有させてもよい。また、画像メモリ206は、DRAM等で構成されているが、これに限定されず、ハードディスク(以下、HDD)や不揮発性メモリ等で構成されていても良い。
データ変換部207は、ページ記述言語(PDL)等のデータの生成や、画像データに対する色変換、画像変換などのデータ変換を行う。
操作部208及び表示部209は、端末装置200に対する各種入力の受け付けや端末装置200に関する各種情報の表示を行う。
符号復号化処理部210は、画像データに対し、符号復号化処理や拡大縮小処理等の各種処理を行う。
無線LANユニット211は、Wi-Fi(WirelessFidelity)(登録商標)等の規格に準拠した無線LAN通信を実現するためのユニットである。無線LANユニット211は、無線LAN接続を確立するための、ビーコン検知処理や認証処理、無線LAN接続を確立した通信装置への印刷ジョブの送信等の機能を担う。また、無線LANユニット211は、バスケーブル212を介してシステムバス213に接続されている。なお、CPU202は無線LANユニット211を制御し、端末装置200内のアクセスポイント(AP)を動作させることが可能である。
また、本実施形態では、端末装置200は、無線LANユニット211を介して印刷装置300に印刷を行わせるための印刷ジョブを送信する。なお、送信されるジョブは、印刷ジョブに限定されない。例えば、印刷装置300にスキャンを行わせるためスキャンジョブや、印刷装置300にコピーを行わせるためコピージョブ、印刷装置300の設定を変更するための設定コマンド等であっても良い。また、本実施形態の通信装置がストレージ等であれば、ジョブ以外にも、通信装置に保存させるデータ(画像データや動画データ等)を送信しても良い。なお、印刷装置300にスキャンジョブが送信された場合、スキャンジョブに基づいて原稿がスキャンされることにより生成される画像データが、端末装置200に送信される。
無線LANユニット211は、無線通信で印刷装置300とダイレクトに通信しても良いし、端末装置200や印刷装置300の外部に存在する外部装置を介して通信しても良い。なお、外部装置とは、ルータ装置等の機器であるアクセスポイントや、アクセスポイント以外で通信を中継可能な装置を含む。 本実施形態では、無線LANユニット211は、IEEE 802.11シリーズの規格(Wi-Fi)を用いることとするが、例えばBluetooth(登録商標)等が利用されても良い。なお、本実施形態において、端末装置200と印刷装置300とが外部装置を介さずにダイレクトに接続する方式をダイレクト接続方式という。また、端末装置200と印刷装置300とが外部装置を介して接続する方式をインフラストラクチャー(以下、インフラ)接続方式という。また、本実施形態において、アクセスポイントを介した接続は、無線LANユニット211によって実行されるものとする。
上記各種構成要素202~212は、CPU202が管理するシステムバス213を介して、相互に接続されている。
なお、端末装置200は、無線LANユニット211以外の通信ユニットを備えていても良い。また、端末装置200は、通信ユニットを複数備え、複数種類の通信方式によって通信可能であっても良い。なお、通信は無線通信でダイレクトに通信しても良いし、ネットワーク上に設置した端末装置200外部のアクセスポイントを介して通信しても良い。通信方式としては、例えば、Bluetooth Low Energy(登録商標)やNFC(Near Field Communication;ISO/IEC IS18092)、Wi-Fi Aware等が挙げられる。また、無線ではなく、有線によって通信しても良い。
図3は本実施形態の通信装置である印刷装置300の概略構成を示すブロック図である。
印刷装置300は、装置のメインの制御を行うメインボード301を有する。
メインボード301において、CPU302は、システム制御部であり、印刷装置300の全体を制御する。ROM303は、CPU302が実行する制御プログラムや組込OSプログラム等の各種プログラムを格納する。本実施形態では、ROM303に格納されている制御プログラムは、ROM303に格納されている組込OSの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。RAM304は、SRAM等のメモリで構成され、プログラム制御変数、ユーザが登録した設定値、印刷装置300の管理データ、後述のモード変更条件の設定情報等を格納し、各種ワーク用バッファ領域が設けられている。なお、これらのデータは、RAM304でなく、ROM303や不揮発性メモリ305等の他の記憶領域に保存されても良い。
不揮発性メモリ305は、フラッシュメモリ等のメモリで構成され、電源がオフされた場合でも保持していたいデータを格納する。具体的には、ネットワークに接続するためのパスワードや認証情報等のネットワーク情報、MACアドレスやSSID等の過去に接続した外部装置のリスト、印刷モードなどのメニュー項目、記録ヘッドの補正情報等の印刷装置300の設定情報等が格納される。なお、これらの設定情報データは、不揮発性メモリ305でなく、ROM303やRAM304等の他の記憶領域に保存されても良い。また、ROM303や不揮発性メモリ305に保存された設定情報をCPU302がRAM304に展開することで、設定情報を利用した処理を行っても良い。
画像メモリ306は、DRAM等のメモリで構成され、無線LANユニット316等を介して受け付けた画像データや、符号復号化処理部312で処理した画像データ等の各種データを格納する。
なお、印刷装置300のメモリ構成は、この形態に限定されるものではなく、用途や目的に応じて、その数や特性、記憶容量等を適宜変更することができる。例えば、画像メモリ306とRAM304を共有させてもよい。また、画像メモリ306は、DRAM等で構成されているが、これに限定されず、ハードディスク(以下、HDD)や不揮発性メモリ等で構成されていても良い。
データ変換部307は、受信したジョブに含まれる画像データに対し、画像処理制御部(不図示)を介して、スムージング処理や記録濃度補正処理、色補正等の各種画像処理を行う。これらの処理を実行することで、データ変換部307は、印刷対象の画像データを高精細な印刷データに変換し、変換した印刷データを記録部314に出力する。
読取部310は、CISイメージセンサ(密着型イメージセンサ)等によって原稿を光学的に読み取る。読取制御部308は、読取部310が読み取った画像信号に対し、2値化処理や中間調処理等の各種画像処理を施すことで、高精細な画像データを出力する。
操作部309及び表示部311は、印刷装置300に対する各種入力の受け付けや印刷装置300に関する各種情報の表示を行う。
符号復号化処理部312は、画像データに対し、符号復号化処理や拡大縮小処理等の各種処理を行う。
給紙部313は、印刷のための記録媒体を保持し、記録制御部315からの制御によって記録部314に対して記録媒体を供給する。なお、給紙部313は、複数の給紙カセットを有するものとする。
記録制御部315は、複数の給紙カセットのうちいずれの部位から給紙を行うかを制御する。また、記録制御部315は、記録部314のステータス等の各種情報を定期的に読みだすことで、RAM304の情報を更新する役割も果たす。具体的には、記録制御部315は、例えば、使用中、スリープ中、エラー発生中といった装置の状態やインクタンクの残量等の情報を更新する。
記録部314は、データ変換部307から出力された印刷データや印刷ジョブに含まれる印刷設定情報に基づき、インク等の記録剤によって記録媒体上に画像を形成する(印刷する)画像形成処理(印刷処理)を実行する。
無線LANユニット316は、Wi-Fi等の規格に準拠した無線LAN通信を実現するためのユニットである。無線LANユニット316は、無線LAN接続を確立するための、接続情報の送信処理や認証処理、無線LAN接続を確立した端末装置からのジョブの受信等の機能を担う。また、無線LANユニット316は、バスケーブル317を介してシステムバス318に接続されている。なお、CPU302は無線LANユニット211を制御し、印刷装置300内のアクセスポイントを動作させることが可能である。すなわち、印刷装置300をGroupOwnerやソフトAPとして動作させることが可能である。また、本実施形態において、アクセスポイントを介した接続は、無線LANユニット316によって実行されるものとする。上記各種構成要素302~317は、CPU302が管理するシステムバス318を介して、相互に接続されている。
なお、印刷装置300は、無線LANユニット316以外の通信ユニットを備えていても良い。なお、通信は無線通信でダイレクトに通信しても良いし、ネットワーク上に設置した印刷装置300外部のアクセスポイントを介して通信しても良い。本実施形態では、ダイレクトに通信する場合、印刷装置300がGroupOwnerまたはソフトAPとして動作する。通信方式としては、例えば、BluetoothやNFC、Wi-Fi Aware等が挙げられる。また、無線通信に限らず、有線LAN等によって有線による通信を行っても良い、印刷装置300は、これらの通信方式を利用したネットワークを介して、端末装置200等の他の外部装置からジョブを受け付ける。なお、本実施形態では、印刷装置300は、ダイレクト通信においては、5GHzの周波数帯に対応するチャネルを用いず、2.4GHzの周波数帯に対応するチャネルを用いることとする。しかしながらこの形態に限定されない。例えば印刷装置300は、5GHzの周波数帯に対応するチャネルのうち、後述するDFSによる切り替えが行われないチャネル(気象レーダ等の特定の装置が利用することがないチャネル)を用いてダイレクト通信を行っても良い。
なお、本実施形態では、印刷装置300は、IEEE 802.11シリーズの規格に基づいて、2.4GHzと5GHzのうち少なくとも1つの周波数帯を無線接続に使用するものとする。印刷装置300は、利用可能な周波数帯に対応する通信チャネルを有している。例えば、2.4GHzの周波数帯を利用可能であれば、印刷装置300は、2.4GHzの周波数帯のうちの所定の周波数帯に割り当てられた13個の通信チャネルを有している。また、例えば、5GHzの周波数帯を利用可能であれば、印刷装置300は、5GHzの周波数帯のうちの所定の周波数帯に割り当てられた24個の通信チャネルを有している。
図1は、本実施形態の通信システムを示す。本実施形態の通信システムは、端末装置200と、印刷装置300と、アクセスポイント400を含む。印刷装置300と端末装置200は、それぞれの装置外部のアクセスポイント400を介して無線LAN接続し、相互に通信することが可能である。また、印刷装置300や端末装置200は、それぞれの装置内のアクセスポイントを有効化することで、それぞれの装置自身がアクセスポイントとして動作することもできる。そのため、例えばどちらか一方の装置がアクセスポイントとなり、もう一方の装置が当該アクセスポイントに接続することで、端末装置200と印刷装置300はアクセスポイント400を介さずに直接無線LAN接続することも可能である。また、端末装置200と印刷装置300は共に無線LANの機能を有するため、相互認証をすることによってピアツーピア(以後、P2P)の通信が可能となる。
アクセスポイント400は、ルータ装置である。ルータ装置とは、装置間(例えば情報処理装置と通信装置間)のデータ通信を中継する装置である。本実施形態では、ルータ装置がアクセスポイントとなり、ルータ装置のアクセスポイントに接続している装置間のデータ通信を中継する。なお、ルータ装置が利用する通信方式は、無線通信方式でも有線通信方式であっても良いし、その両方であっても良いが、本実施形態では、ルータ装置は、少なくとも無線通信方式によって通信可能である無線LANルータ機能を有しているものとする。
本実施形態において印刷装置300はアクセスポイント400に無線LANで接続している。つまり、端末装置200は、アクセスポイント400を介して印刷装置300と通信可能な状態となっている。すなわち、端末装置200は、印刷装置300とインフラ接続によって接続している。インフラ接続が構築されることで、印刷装置300や端末装置200は、アクセスポイント400によって形成されるネットワークに属する装置と互いに通信することができる。また、アクセスポイント400がインターネットに接続している場合は、印刷装置300や端末装置200は、アクセスポイント400を介してインターネットを利用することもできる。
本実施形態では、上述のインフラ接続を構築するために、印刷装置300とアクセスポイント400とを接続させるための設定処理(ネットワーク設定処理)を実行する形態について説明する。
ネットワーク設定処理の方法として、具体的には例えば、端末装置200が、印刷装置300にネットワーク設定情報を送信することで、印刷装置300とアクセスポイント400を接続させる方法がある。ここで、ネットワーク設定情報とは例えば、印刷装置300の接続先となるアクセスポイント400と接続するために利用される接続情報(Service Set Identifier(以下、SSID)、パスワード等)である。なお、接続情報は、印刷装置300がアクセスポイント400に接続を要求する際に、印刷装置300からアクセスポイント400に送信される。また例えば、ネットワーク設定処理の方法として、AOSS(AirStation One-Touch Secure System)、らくらく無線スタート、WPS(Wi-Fi ProtectedSetup)と呼ばれる方法もある。これらの方法は、端末装置200を介さずにアクセスポイント400からネットワーク設定情報を直接印刷装置300が受信することで、印刷装置300とアクセスポイント400を接続させる方法であり、以後これらの方法を自動設定方式と呼ぶ。
ところで無線接続とは、特定の周波数帯を用いて行われる接続である。そして近年、印刷装置300として、複数の周波数帯(例えば、2.4GHzと5GHz)を用いることができる装置が登場している。本実施形態における印刷装置300も、複数の周波数帯を用いた無線接続を実行可能であるものとする。印刷装置300は、アクセスポイントと接続する際は、まず、使用可能な周波数帯に対応する通信チャネルを用いてアクセスポイントを検索(APサーチ)する。その後、印刷装置300は、上述のようにして受け取った接続情報に対応するアクセスポイントに、使用可能な周波数帯に対応する通信チャネルを用いて接続要求を送信することで、アクセスポイントと無線接続する。
このような印刷装置300は、アクセスポイントと無線接続するためにいずれの周波数帯を用いればよいかが分からなければ、アクセスポイントと接続できない。なお例えば、印刷装置300の形態として、いずれの周波数帯を用いればよいかが分からなくとも、自身が使用できる周波数帯を使用してAPサーチを実行し、アクセスポイントとの接続を試みる形態も考えられる。しかしながら、一般に印刷装置300は、複数の周波数帯を同時に用いることができないため、上記の形態では、印刷装置300は、自身が使用できる周波数帯を1つずつ順に使用することになる。その場合、印刷装置300は、アクセスポイントと接続するための周波数帯以外の周波数帯を使用して接続を試みてしまうことがある。すなわち、上記の形態においても、印刷装置300は、アクセスポイントと接続するために時間がかかったり、無駄な処理を実行してしまったりすることがある。
このようなことから、ネットワーク設定処理においては、接続対象のアクセスポイントが使用可能な周波数帯に関する情報(周波数帯情報)が、印刷装置300に対して通知されることが好ましい。なお、周波数帯情報は、接続対象のアクセスポイントとの接続に利用される周波数帯に関する情報でもある。
ところが、ネットワーク設定処理の方法、接続対象のアクセスポイントの機種や搭載ソフトウェアの種類、ネットワーク設定処理を実行する端末装置200の機種や搭載ソフトウェアの種類によっては、接続対象のアクセスポイントが使用可能な周波数帯に関する情報が通知されないことがある。具体的には例えば、WPSにおいては、周波数帯情報が印刷装置300に対して通知されるか否かはアクセスポイント側の機種に依存するため、当該情報が印刷装置300に対して通知されないことがある。また、例えば、端末装置200が備えているOSの種類によっては、周波数帯情報を端末装置200が取得できないことがあるため、当該情報が印刷装置300に対して通知されないことがある。これにより、印刷装置300は、ネットワーク設定処理において、いずれの周波数帯を用いれば良いかを特定できないことがあるという課題が発生する。
また例えば、接続対象のアクセスポイントが複数の周波数に対応している場合等は、周波数帯情報(周波数帯情報)が複数通知されることがある。具体的には例えば、周波数帯情報(周波数帯情報)として、2.4GHzに対応する情報と、5GHzに対応する情報の両方が通知されることがある。この場合も、印刷装置300は、ネットワーク設定処理において、複数の周波数帯のうちいずれの周波数帯を用いれば良いかを特定できないことがあるという課題が発生する。
そこで、本実施形態では、ネットワーク設定処理において、周波数帯情報が印刷装置300に通知されない場合にも、適切な周波数帯を用いてアクセスポイントとの接続を試みる形態について説明する。
また、本実施形態では、ネットワーク設定処理において、接続対象のアクセスポイントが使用可能な周波数帯に関する複数の情報が印刷装置300に通知される場合にも、適切な周波数帯を用いてアクセスポイントとの接続を試みる形態について説明する。
具体的には印刷装置300は、上述の場合において、5GHzより、2.4GHzを優先して用いて、アクセスポイントとの接続を試みる。以下に、本実施形態において、印刷装置300が5GHzより2.4GHzを優先して用いてアクセスポイントとの接続を試みる理由について説明する。
本実施形態において、印刷装置300は、インフラ接続によって通信するモード(インフラ通信モード)と、ダイレクト接続によって通信するモード(ダイレクト通信モード(P2Pモード))とで、同時に(並行して)動作することが可能であるものとする。そのため、印刷装置300は、インフラ接続とダイレクト接続とを同時に(並行して)確立・維持可能である。
ダイレクト接続は、印刷装置300又は端末装置200がAP(すなわち、親局)となり、APでない方の装置がクライアント(すなわち、子局)となって構築された無線ネットワークにおける接続である。なお、本実施形態では、ダイレクト接続において印刷装置300がAPとなって無線ネットワークが構築されるものとする。ダイレクト通信モードは、印刷装置300がGroupOwnerとして動作するWFD(Wi-Fi Direct)モードと、印刷装置300がソフトAPとして動作するソフトAPモードとを含む。各モードで、印刷装置300が有効化するAPのSSIDやパスワードは異なるものとする。
インフラ接続は、アクセスポイント400により構築された無線ネットワークにおける接続である。インフラ接続は、アクセスポイント400がAP(すなわち、親局)となり、印刷装置300がクライアント(すなわち、子局)となって構築された無線ネットワークにおける接続である。
また、以後、インフラ接続とダイレクト接続を同時に(並行して)確立し、インフラ接続とダイレクト接続を介して同時に(並行して)通信可能に動作することを、同時動作という。なお、同時動作において、印刷装置300がダイレクト接続によって接続している端末装置200と、印刷装置300がインフラ接続によって接続している端末装置200とはそれぞれ異なる。すなわち、印刷装置300は、同時動作によって複数の装置と接続することができる。
インフラ接続による通信及びダイレクト接続による通信は、特定の周波数帯域(特定のチャネル)を使用して行われる。そのため、インフラ接続による通信とダイレクト接続による通信のいずれにおいても、通信が開始される前に、まず、各装置間の通信・接続に利用されるチャネルが決定される必要がある。なお、1つの無線ICチップに同時に複数のチャネルを割り当てて通信させる形態では、通信を行う各装置の構成や各装置が実行する処理が複雑となってしまう。従って、例えば、印刷装置300が同時動作する場合は、各モードにおける通信において、共通のチャネルが使用されることが望ましい。すなわち、印刷装置300は、同時動作している場合においても、1つのチャネルのみを使用することが望ましい。そのため、本実施形態では、無線LANユニット316は、所定のチャネルによる通信を実現する無線ICチップを1つのみ有するものとし、印刷装置300は、同時に複数のチャネルを用いて通信しないものとする。
印刷装置300がGroupOwnerまたはソフトAPとして動作しているのであれば、ダイレクト接続に利用されるチャネルは、親局である印刷装置300が自由に決定可能である。しかしながら、インフラ接続に利用されるチャネルは、インフラ接続において親局であるアクセスポイント400によって決定される。そのため、印刷装置300は、同時動作する場合は、アクセスポイント400によって決定された、インフラ接続に利用するチャネルを、ダイレクト接続に利用するチャネルとして決定することが好ましい。
しかしながら、5GHzに対応するチャネルを用いてダイレクト接続においては、下記にて説明するDFSと呼ばれる機能が適用される。この機能の存在により、印刷装置300は、装置構成によっては、5GHzに対応するチャネルを用いてダイレクト接続を実行できないことや、5GHzに対応するチャネルを用いてダイレクト接続を実行することが好ましくないことがある。具体的には例えば、無線LANユニット316が有する無線ICチップが、5GHzに対応するチャネルを用いてGroupOwnerまたはソフトAP(つまり、親局)として動作できない又は好ましくないことがある。以下、DFSについて説明する。
GroupOwnerまたはソフトAPとして動作する装置や、アクセスポイント等の親局は、5GHz等の特定の周波数帯を用いた通信において、DFS(Dynamic Frequency Selection)と呼ばれる技術を実行しなければならない。DFSとは、装置間の通信が気象レーダ等に影響を与えないよう制御するための技術である。なお、特定の周波数を気象レーダ等の特定の装置が使用している場合、当該特定の周波数によって干渉波が発生する。DFSは、場合は、当該親機が使用している周波数(チャネル)を、当該特定の周波数を含む特定の周波数帯のなかで切り替える技術でもある。具体的には、当該親機は、当該親機が使用している周波数において干渉波を検出した場合、まず、当該特定の周波数帯による通信を所定の時間(例えば、1分間)停止する。印刷装置300は、通信の停止中には、通信の停止解除後に利用する新たなチャネルが利用可能かどうか(当該チャネルに対応する周波数を気象レーダ等の特定の装置が利用していないかどうか)を確認する。当該親機は、当該チャネルが利用可能であることが確認できたら、通信の停止を解除して、新たなチャネルでの通信を再開する。なお、ある親機が通信に使用している周波数において、当該親機が干渉波を検出することは、当該親機が通信に使用している周波数を気象レーダ等の特定の装置が使用していることを当該親機が特定することに対応する。また、TPC(Transmit Power Control)と呼ばれる技術も、DFSと同様の技術である。
なお、利用中の通信チャネルを気象レーダ等の特定の装置が利用していることを検知した場合に、利用中の通信チャネルを切り替える制御を実行しなければならないのは、通信システムにおける親機である。子機側は、利用中の通信チャネルが親機によって切り替えられた場合に、この処理に追従する。
なお、DFSやTPCは、5GHz等の特定の周波数帯における通信に対して適用され、2.4GHz等の周波数帯における通信には適用されない。すなわち、印刷装置300は、気象レーダ等の特定の装置の通信状況に応じて、2.4GHzの周波数帯における通信に利用しているチャネルを切り替えることはない。これは、気象レーダ等の特定の装置は、5.0GHzの周波数帯を用いた通信を行うが、2.4GHzの周波数帯を用いた通信を行わないためである。すなわち、装置間の通信が5GHzの周波数帯を用いて行われている場合、DFSやTPCによって、チャネルの切り替えが行われる。なお、このとき上述したように、DFSによりチャネルが切り替わる場合、5GHzの周波数帯に対応するチャネル間で、チャネルが切り替わる。
印刷装置300は、DFSに対応していない無線チップを使用している場合は、親機である場合に、利用中の通信チャネルをDFSによって切り替えることができず、5GHzによるダイレクト接続を実行できない。また、上述したように、同時動作においては、インフラ接続とダイレクト接続に用いられるチャネルは共有される。5GHzを用いたダイレクト接続を実行できない印刷装置300は、インフラ接続において5GHzを使用してしまうと、同時動作を実行できないという課題がある。
また、印刷装置300は、DFSに対応している無線チップを使用しており、5GHzによるダイレクト接続を実行できたとしても、以下のような課題がある。上述したようにDFSにより、ダイレクト接続に用いられるチャネルが変更されることがある。しかしながら、上述したように、同時動作においては、インフラ接続とダイレクト接続に用いられるチャネルは共有され、さらに、インフラ接続に用いられるチャネルは、印刷装置300側で決定することができない。すなわち、同時動作中にダイレクト接続に用いられるチャネルがDFSにより変更されても、インフラ接続に用いられるチャネルは印刷装置300側で変更できないため、インフラ接続とダイレクト接続に用いられるチャネルを共有することができなくなる。そのため、インフラ接続とダイレクト接続を並行して維持することができなくなってしまうという課題がある。
このようなことから、印刷装置300が2.4GHzと5GHzの両方の周波数帯を利用できるとしても、同時動作が実行されることを考慮すれば、2.4GHzを優先して用いることが好ましい。
また、同時動作を実行しない印刷装置300においても、5GHzを用いてインフラ接続が行われると、以下の課題が生じることがある。上述したように、DFSによってチャネルの切り替えが生じると、装置間の通信は、所定の時間停止される。そのため例えば、5GHzを用いた装置間の通信には、遅延やパケットロスが生じることがある。
そこで本実施形態の印刷装置300は、ネットワーク設定処理において、周波数帯情報が印刷装置300に通知されない場合には、5GHzより、2.4GHzを優先して用いて、アクセスポイントとの接続を試みる。また、ネットワーク設定処理において、接続対象のアクセスポイントが使用可能な周波数帯に関する複数の情報が印刷装置300に通知される場合には、5GHzより、2.4GHzを優先して用いて、アクセスポイントとの接続を試みる。
一方で、5GHzを用いることのメリットもある。例えば一般に、5GHzによる通信は、2.4GHzによる通信より通信速度が速い。また、一般に、5GHzによる通信は、2.4GHzによる通信より安定性が高い。また、アクセスポイントが5GHzには対応しているが、2.4GHzに対応していない場合もある。そのため、本実施形態では、印刷装置300は、周波数帯情報として5GHzの情報のみが通知される場合や、5GHzを用いることをユーザ等から指示された場合は、5GHzを用いて、アクセスポイントとの接続を試みる。
まず、自動設定方式によるネットワーク設定処理について説明する。
図5は、本実施形態において印刷装置300が実行する自動設定方式によるネットワーク設定処理を示すフローチャートである。図5に示すフローチャートは、例えば、CPU302がROM303や不揮発性メモリ305等に格納されたプログラムをRAM304に読み出して実行することにより実現される。また、図5に示すフローチャートが示す処理は、自動設定方式によるネットワーク設定処理のトリガーとなるユーザ操作(ネットワーク設定処理の実行指示)が行われた場合に開始される。自動設定方式によるネットワーク設定処理のトリガーとなるユーザ操作は、具体的には、印刷装置300が有する所定のボタンを押下する操作である。
S501では、CPU302は、印刷装置300を自動設定モードとして動作させる。自動設定モードとは、自動設定方式によってネットワーク設定処理を実行するモードである。なお、印刷装置300がダイレクト接続モードで動作している状態で、S501が実行される場合は、印刷装置300がAPとしての動作を一旦停止する。なお、本実施形態では、印刷装置300の動作モードに関する情報が所定のメモリ内の動作モード格納領域に保存されているものとする。そして、印刷装置300がダイレクト接続モードで動作している状態で、S501が実行されても、動作モード格納領域には、ダイレクト接続モードが有効であることを示す情報が継続して保存されるものとする。
自動設定方式によるネットワーク設定処理は、印刷装置300だけでなく、印刷装置300の接続対象となるアクセスポイントも自動設定モードとして動作している状態で実行される。アクセスポイントは、印刷装置300と同様、所定のボタンがユーザによって押下されることで、自動設定モードとしての動作を開始する。
印刷装置300とアクセスポイントは、自動設定モードとして動作を開始すると、自動設定モードで動作していることを示す信号を発する。それらの信号が装置間で取得されることによって、各装置は、自動設定方式によるネットワーク設定処理の対象となる装置を発見する。そして、各装置は、自動設定方式によってネットワーク設定処理を実行するための情報(無線接続プロファイル)を交換するために、接続を行う。
S502では、CPU302は、自動設定モードとなっているアクセスポイントと接続したか否かを判定する。CPU302は、YES判定である場合、S503に進み、NO判定である場合、S504に進む。
S505では、CPU302は、印刷装置300が自動設定モードとしての動作を開始してから所定の時間が経過したか(タイムアウトしたか)否かを判定する。CPU302は、YES判定である場合、エラーが発生したとみなして処理を終了する。一方、CPU302は、NO判定である場合、再度S502の処理を行う。
自動設定モードとして動作している印刷装置300と接続したアクセスポイントは、印刷装置300に対して無線接続プロファイルを送信する。無線接続プロファイルとは、アクセスポイントとの接続に利用される接続情報を含む情報である。アクセスポイントが複数のSSIDを有している場合、無線接続プロファイルには、各SSIDに対応する複数のプロファイルが含まれる。図4(a)は、AOSSによって取得される無線接続プロファイルの一例である。AOSSによって取得される無線接続プロファイルに最大8個のプロファイルが含まれる。図4(b)は、らくらく無線スタートによって取得される無線接続プロファイルの一例である。らくらく無線スタートによって取得される無線接続プロファイルに最大2個のプロファイルが含まれる。図4(c)、(d)は、WPSによって取得される無線接続プロファイルの一例である。WPSによって取得される無線接続プロファイルに最大6個のプロファイルが含まれる。
図4に示すように、1つのプロファイルは、「SSID」「周波数」「認証方式」「暗号方式」「パスフレーズ」から構成されている。1つのプロファイルに含まれる各情報を用いることで、印刷装置300は、アクセスポイントと接続することができる。具体的には例えば、印刷装置300は、図4(a)に示す無線接続プロファイルを有するアクセスポイントと、「AOSS-1」のSSIDを用いて接続するためには、2.4GHzの周波数帯を用いる。なお、「周波数」に含まれる情報は、各SSIDに対応する周波数を示す情報でなく、例えば、各SSIDに対応するチャネルを示す情報であっても良い。なお、上述したように、WPSによって取得される無線接続プロファイルには、「周波数」に関する情報が含まれないことがある(図4(d))ため、アクセスポイントが使用可能な周波数帯に関する情報が印刷装置300に対して通知されないことがある。
S503では、CPU302は、接続しているアクセスポイントから、無線接続プロファイルを受信したか否かを判定する。CPU302は、YES判定である場合、S504に進む。なお、アクセスポイントから受信される無線接続プロファイルには、複数のプロファイルが含まれている。そのため、CPU302は、無線接続プロファイルを受信した場合、無線接続プロファイルに含まれるプロファイルの数nを特定する。そして、CPU302は、NO判定である場合、S506に進む。
S506では、CPU302は、印刷装置300が自動設定モードとしての動作を開始してから所定の時間が経過したか(タイムアウトしたか)否かを判定する。CPU302は、YES判定である場合、エラーが発生したとみなして処理を終了する。一方、CPU302は、NO判定である場合、再度S503の処理を行う。
S504では、CPU302は、無線接続プロファイルカウンタ変数mを初期化する。具体的には、無線接続プロファイルカウンタ変数mに1を代入する。なお、無線接続プロファイルカウンタ変数mは、不揮発性メモリ305等に保存されている情報である。
S505では、CPU302は、n個のプロファイルのうちm番目のプロファイルが、接続対象のアクセスポイントが2.4GHzに対応していることを示すプロファイルか否かを判定する。具体的にはCPU302は、n個のプロファイルのうちm番目のプロファイルにおける「周波数」の領域に、「2.4GHz」を示す情報や、「2.4GHzに対応するチャネル」を示す情報が含まれるか否かを判定する。CPU302は、YES判定である場合、S508に進み、NO判定である場合、S511に進む。
S511では、CPU302は、n個のプロファイルのうちm番目のプロファイルが、接続対象のアクセスポイントが5GHzに対応していることを示すプロファイルか否かを判定する。具体的にはCPU302は、n個のプロファイルのうちm番目のプロファイルにおける「周波数」の領域に、「5GHz」や、「5GHzに対応するチャネル」を示す情報を示す情報が含まれるか否かを判定する。CPU302は、YES判定である場合、S512に進み、NO判定である場合、S513に進む。
S507がNO判定且つ、S511がNO判定である場合、n個のプロファイルのうちm番目のプロファイルには、周波数帯に関する情報が含まれていないことになる。すなわち、n個のプロファイルのうちm番目のプロファイルによっては、周波数帯情報が通知されないことになる。上述したように本実施形態では、このような場合において、2.4GHzを優先して用いる。
そこでS513では、CPU302は、n個のプロファイルのうちm番目のプロファイルに対応するSSIDを持つアクセスポイントを、2.4GHzに対応するチャネルを用いて検索する。
S514では、CPU302は、S513における検索で、n個のプロファイルのうちm番目のプロファイルに対応するSSIDを持つアクセスポイントが発見されたか否かを判定する。CPU302は、YES判定である場合、S508に進み、NO判定である場合、S515に進む。
S515では、CPU302は、n個のプロファイルのうちm番目のプロファイルに対応するSSIDを持つアクセスポイントを、5GHzに対応するチャネルを用いて検索する。
S516では、CPU302は、S515における検索で、n個のプロファイルのうちm番目のプロファイルに対応するSSIDを持つアクセスポイントが発見されたか否かを判定する。CPU302は、YES判定である場合、S512に進み、NO判定である場合、エラーが発生したものとして処理を終了する。
このように、本実施形態では、S515における検索(5GHzを用いた検索)より、S513における検索(2.4GHzを用いた検索)を先に実行することで、2.4GHzを優先して用いることを実現している。
S508では、CPU302は、不揮発性メモリ305等の所定のメモリ内の格納領域であり、且つ2.4GHzによって接続可能なアクセスポイントの接続情報の格納領域(2.4GHz用格納領域)に、m番目のプロファイルを保存する。
S512では、CPU302は、不揮発性メモリ305等の所定のメモリ内の格納領域であり、且つ5GHzによって接続可能なアクセスポイントの接続情報の格納領域(5GHz用格納領域)に、m番目のプロファイルを保存する。
S509では、CPU302は、無線接続プロファイルカウンタ変数mをインクリメントする。
S510では、CPU302は、インクリメント後の無線接続プロファイルカウンタ変数mが、無線接続プロファイルに含まれるプロファイルの数nを超えたか否かを判定する。CPU302は、YES判定である場合、S517に進み、NO判定である場合、S507に再び進む。このようにして処理が繰り返されることで、無線接続プロファイルに含まれるプロファイルのそれぞれが、2.4GHz用格納領域又は5GHz用格納領域に保存される。
S517以降の処理は、図6を用いて説明する。図6に示すフローチャートは、例えば、CPU302がROM303や不揮発性メモリ305等に格納されたプログラムをRAM304に読み出して実行することにより実現される。
S517では、CPU302は、2.4GHz用格納領域に、情報が格納されているか否かを判定する。すなわち、接続対象のアクセスポイントが、2.4GHzによって接続可能なアクセスポイントか否かを判定する。CPU302は、YES判定である場合、S518に進み、NO判定である場合、S523に進む。
S518では、CPU302は、2.4GHz用格納領域に格納されている情報及び2.4GHzに対応するチャネルを用いて、接続対象のアクセスポイントとの接続を試みる。このとき、2.4GHz用格納領域に複数のプロファイルが格納されている場合は、それらを順に用いて接続を試みる。このとき使用するプロファイルの順番は特に限定されないが、例えば、セキュリティレベルの高い認証方式や暗号方式のプロファイルが優先して用いられても良い。具体的には、例えば、「OPEN」方式の認証方式のプロファイルより、「WPA2-PSK」方式の認証方式のプロファイルが優先して用いられても良い。また、具体的には例えば、暗号方式の優先度を「AES」>「TKIP」>「WEP128」>「WEP64」としても良い。また、CPU302は、2.4GHzに対応する複数のチャネルを、接続が成功するまで1つずつ順に用いて接続対象のアクセスポイントとの接続を試みるが、用いるチャネルの順番は、特に限定されない。
S519では、CPU302は、S518によって、接続対象のアクセスポイントとの接続が成功したか否かを判定する。CPU302は、YES判定である場合、S520に進み、NO判定である場合、S523に進む。
S520では、CPU302は、不揮発性メモリ305等の所定のメモリに、成功した接続に用いたプロファイルを保存する。また、このとき印刷装置300とアクセスポイントとの2.4GHzによる接続が完了し、2.4GHzによるインフラ接続を構築可能となったため、CPU302は、印刷装置300を2.4GHzによるインフラ接続モードとして動作させる。
S521では、CPU302は、動作モード格納領域にダイレクト接続モードが有効であることを示す情報が含まれているか否かを判定する。CPU302は、YES判定である場合、S522に進み、NO判定である場合、処理を終了する。
S522では、CPU302は、印刷装置300をダイレクト接続モードとして動作させる。このとき印刷装置300がインフラ接続モードとして動作している場合は、同時動作が実行されることになる。なお、上述したように、同時動作において使用されるチャネルは、インフラ接続モードに使用されているチャネルとなる。ネットワーク設定処理が実行される前にダイレクト接続モードで使用されていたチャネルと、インフラ接続モードに使用されているチャネルとが異なっていても、ネットワーク設定処理が実行された後のダイレクト接続モードにおいては後者が使用される。
S517がNO判定であった場合、5GHz用格納領域にプロファイルが含まれていることになる。そのため、S523では、CPU302は、5GHz用格納領域に格納されている情報及び5GHzに対応するチャネルを用いて、接続対象のアクセスポイントとの接続を試みる。このとき、5GHz用格納領域に複数のプロファイルが格納されている場合は、それらを順に用いて接続を試みる。このとき使用するプロファイルの順番は特に限定されないが、例えば、セキュリティレベルの高い認証方式や暗号方式のプロファイルが優先して用いられても良い。また、CPU302は、2.4GHzに対応する複数のチャネルを、接続が成功するまで1つずつ順に用いて接続対象のアクセスポイントとの接続を試みるが、用いるチャネルの順番は、特に限定されない。
S524では、CPU302は、S523によって、接続対象のアクセスポイントとの接続が成功したか否かを判定する。CPU302は、YES判定である場合、S525に進み、NO判定である場合、S521に進む。
S525では、CPU302は、不揮発性メモリ305等の所定のメモリに、成功した接続に用いたプロファイルを保存する。また、このとき印刷装置300とアクセスポイントとの5GHzによる接続が完了し、5GHzによるインフラ接続を構築可能となったため、CPU302は、印刷装置300を5GHzによるインフラ接続モードとして動作させる。
S526では、CPU302は、動作モード格納領域にダイレクト接続モードが有効であることを示す情報が含まれているか否かを判定する。CPU302は、YES判定である場合、S527に進み、NO判定である場合、処理を終了する。
S527では、CPU302は、ダイレクト接続モードを無効化する。すなわち、動作
モード格納領域に含まれる情報を、ダイレクト接続モードが無効であることを示す情報に書き換える。これは、上述したように、5GHzを使用した同時動作はいくつかの課題を生じさせるためである。なお、このとき、CPU302は、ダイレクト接続モードを無効化することをユーザに通知するための画面を表示部311に表示しても良い。
なお、印刷装置300は、操作部309を介してユーザから直接、所定の操作を受け付けることによって、ダイレクト接続モードとして動作することが可能である。しかしながら、本実施形態では、印刷装置300は、5GHzによるインフラ接続モードとして動作している場合は、ダイレクト接続モードとして動作しない(すなわち、同時動作を実行しない)。そのため、印刷装置300が5GHzによるインフラ接続モードで動作している状態で、当該所定の操作が受け付けられた場合、CPU302は、インフラ接続モードを解除してもよいかを確認するための画面を表示部311に表示しても良い。そして、CPU302は、インフラ接続モードを解除してもよいことがユーザ操作によって確認された場合、5GHzによるインフラ接続モードを解除して、印刷装置300をダイレクト接続モードとして動作させる。なお、5GHzによるインフラ接続モードを解除することは、5GHzによるアクセスポイントとの接続を切断することに相当する。また、このような形態ではなく、例えば、5GHzによるインフラ接続モードとして動作している場合は、印刷装置300をダイレクト接続モードとして動作させるための所定の操作を受け付けない構成としても良い。
次に、端末装置200を用いたネットワーク設定処理について説明する。
図7は、本実施形態において印刷装置300が実行する端末装置200を用いたネットワーク設定処理を示すフローチャートである。図7に示すフローチャートは、例えば、CPU302がROM303や不揮発性メモリ305等に格納されたプログラムをRAM304に読み出して実行することにより実現される。また、図7に示すフローチャートが示す処理は、印刷装置300に対して、端末装置200を用いたネットワーク設定処理のトリガーとなるユーザ操作(ネットワーク設定処理の実行指示)が行われた場合に開始される。
S701では、CPU302は、ネットワーク設定処理のトリガーとなるユーザ操作が行われたことに基づき、印刷装置300をセットアップモードと呼ばれる所定のモードで動作させる。セットアップモードとは、印刷装置300がネットワーク設定処理を受け付けるためのモードである。なお、印刷装置300がダイレクト接続モードで動作している状態で、S701が実行される場合は、印刷装置300がAPとしての動作を一旦停止する。そして、印刷装置300がダイレクト接続モードで動作している状態で、S701が実行されても、動作モード格納領域には、ダイレクト接続モードが有効であることを示す情報が継続して保存される。また、ネットワーク設定処理のトリガーとなるユーザ操作とは、例えば、印刷装置300をセットアップモードで動作させるための所定の画面に対する操作や、初期設定状態の印刷装置300を電源オフ状態から電源オン状態に移行させる操作である。初期設定状態とは、印刷装置300が、ネットワーク設定処理を一度も実行していない状態である。
S702では、CPU302は、印刷装置300の周囲に存在するアクセスポイントを検索する処理であるAPサーチを、2.4GHzに対応するチャネルを用いて実行する。これにより、2.4GHzによって接続可能なアクセスポイントが検索される。
S703では、CPU302は、APサーチを、5GHzに対応するチャネルを用いて実行する。これにより、5GHzによって接続可能なアクセスポイントが検索される。
S704では、CPU302は、S702及びS703によるAPサーチの結果を、RAM304等のメモリに保存する。APサーチの結果とは、例えば、APサーチによって発見されたアクセスポイントのリストや、当該アクセスポイントと接続するための接続情報、アクセスポイントの検索に用いた周波数やチャネルの情報等である。これにより、CPU302は、いずれのアクセスポイントをいずれの周波数やチャネルを用いて発見したかを特定することができる。すなわち、CPU302は、APサーチによって発見されたアクセスポイントが使用可能な周波数やチャネルを特定することができる。
S705では、CPU302は、セットアップモード時のみ有効な、印刷装置300内の所定のアクセスポイントを有効化する。当該所定のアクセスポイントは、予め定められた所定の文字列を含むSSIDを有する。
端末装置200を用いたネットワーク設定処理は、ネットワーク設定処理を実行するためのプログラムである、セットアップ用プログラムが端末装置200によって用いられることで実行される。端末装置200は、セットアップ用プログラムにより表示される画面に対して、ネットワーク設定処理のトリガーとなるユーザ操作(ネットワーク設定処理の実行指示)が行われた場合に上記所定のアクセスポイントを検索する。そして、端末装置200は、上記所定のアクセスポイントを発見した場合、セットアップ用プログラムに予め格納された接続情報を用いて、上記所定のアクセスポイントを介して印刷装置300とWi-Fiによってダイレクト接続する。
S705では、CPU302は、印刷装置300が、上記所定のアクセスポイントを介して端末装置200とダイレクト接続したか否かを判定する。CPU302は、YES判定である場合、S707に進み、NO判定である場合、S708に進む。
S708では、CPU302は、印刷装置300がセットアップモードとしての動作を開始してから所定の時間が経過したか(タイムアウトしたか)否かを判定する。CPU302は、YES判定である場合、エラーが発生したとみなして処理を終了する。一方、CPU302は、NO判定である場合、再度S706の処理を行う。
S707では、CPU302は、APサーチ結果を端末装置200に送信する。
S709では、CPU302は、端末装置200からネットワーク設定情報を受信したか否かを判定する。端末装置200から送信されるネットワーク設定情報は、印刷装置300が送信したAPサーチ結果に含まれるアクセスポイントと接続するための情報であっても良い。また、端末装置200が実行したAPサーチ結果に含まれるアクセスポイントと接続するための情報であっても良い。また、端末装置200を介してユーザが指定したアクセスポイントと接続するための情報であっても良い。なお本実施形態では、端末装置200から送信されるネットワーク設定情報には、周波数帯情報として、接続対象のアクセスポイントが利用するチャネルを示す情報が含まれるものとする。CPU302は、チャネルに関する情報を参照して、当該チャネルが2.4GHzの周波数帯に対応するものか、5GHzの周波数帯に対応するものかを特定することができる。
また、印刷装置300は、ネットワーク設定情報を、一括で受信するのではなく、複数回に分けて受信しても良い。CPU302は、YES判定である場合、S711に進み、NO判定である場合、S710に進む。
S710では、CPU302は、印刷装置300がセットアップモードとしての動作を開始してから所定の時間が経過したか(タイムアウトしたか)否かを判定する。CPU302は、YES判定である場合、エラーが発生したとみなして処理を終了する。一方、CPU302は、NO判定である場合、再度S709の処理を行う。
S711では、CPU302は、セットアップモード時のみ有効な、印刷装置300内の所定のアクセスポイントを無効化する。すなわち、CPU302は、端末装置200との接続を一旦切断する。
S712では、CPU302は、端末装置200から受信したネットワーク設定情報に、接続対象のアクセスポイントが使用する周波数が2.4GHzであることを示す情報が含まれるか否かを判定する。CPU302は、YES判定である場合、S713に進み、NO判定である場合、S714に進む。
S713では、CPU302は、2.4GHz用格納領域に、端末装置200から受信したネットワーク設定情報を保存する。
S714では、CPU302は、端末装置200から受信したネットワーク設定情報に、接続対象のアクセスポイントが使用する周波数が5GHzであることを示す情報が含まれるか否かを判定する。CPU302は、YES判定である場合、S715に進み、NO判定である場合、S716に進む。
S715では、CPU302は、5GHz用格納領域に、端末装置200から受信したネットワーク設定情報を保存する。
S712がNO判定及びS714がNO判定である場合、端末装置200から受信したネットワーク設定情報に、接続対象のアクセスポイントが使用する周波数に関する情報が含まれないことになる。上述したように、本実施形態では、このような場合には2.4GHzを優先して用いるため、S716では、CPU302は、接続対象のアクセスポイントが使用する周波数が2.4GHzであると特定する。
S717以降の処理は、図8を用いて説明する。図8に示すフローチャートは、例えば、CPU302がROM303や不揮発性メモリ305等に格納されたプログラムをRAM304に読み出して実行することにより実現される。
S717では、CPU302は、2.4GHz用格納領域に、ネットワーク設定情報が格納されているか否かを判定する。すなわち、接続対象のアクセスポイントが、2.4GHzによって接続可能なアクセスポイントか否かを判定する。CPU302は、YES判定である場合、S718に進み、NO判定である場合、S724に進む。
S718では、CPU302は、不揮発性メモリ305等の所定のメモリに、2.4GHz用格納領域に保存されているネットワーク設定情報を保存する。
S719では、CPU302は、2.4GHz用格納領域に格納されているネットワーク設定情報及び2.4GHzに対応するチャネルを用いて、接続対象のアクセスポイントとの接続を試みる。本実施形態では上述したように、周波数帯情報はチャネルを示す情報であるため、2.4GHzに対応するチャネルのうち、当該情報によって示されるチャネルを用いて、接続対象のアクセスポイントとの接続を試みる。
S720では、CPU302は、S719によって、接続対象のアクセスポイントとの接続が成功したか否かを判定する。CPU302は、YES判定である場合、S721に進み、NO判定である場合、S722に進む。なお、接続対象のアクセスポイントとの接続が成功した場合、印刷装置300とアクセスポイントとの2.4GHzによる接続が完了し、2.4GHzによるインフラ接続を構築可能となる。そのため、CPU302は、印刷装置300を2.4GHzによるインフラ接続モードとして動作させる。
S722では、CPU302は、接続対象のアクセスポイントとの接続が失敗したことを示す画面を表示部311に表示する。なおこの時、CPU302は、接続対象のアクセスポイントとの接続が失敗したことを示す画面を表示部209に表示するための情報を端末装置200に送信しても良い。また、CPU302は、S725に進み、5GHzに対応するチャネルを用いて、接続対象のアクセスポイントとの接続を試みても良い。また、CPU302は、2.4GHzに対応するチャネルのうち、S719で用いたチャネルでないチャネルを用いて、接続対象のアクセスポイントとの接続を試みても良い。
S721では、CPU302は、動作モード格納領域にダイレクト接続モードが有効であることを示す情報が含まれているか否かを判定する。CPU302は、YES判定である場合、S723に進み、NO判定である場合、処理を終了する。
S723では、CPU302は、印刷装置300をダイレクト接続モードとして動作させる。本処理は、S522と同様である。
S717がNO判定であった場合、5GHz用格納領域にネットワーク設定情報が含まれていることになる。そこで、S724では、CPU302は、不揮発性メモリ305等の所定のメモリに、5GHz用格納領域に保存されているネットワーク設定情報を保存する。
S725では、CPU302は、5GHz用格納領域に格納されているネットワーク設定情報及び5GHzに対応するチャネルを用いて、接続対象のアクセスポイントとの接続を試みる。本実施形態では上述したように、周波数帯情報はチャネルを示す情報であるため、5GHzに対応するチャネルのうち、当該情報によって示されるチャネルを用いて、接続対象のアクセスポイントとの接続を試みる。
S726では、CPU302は、S725によって、接続対象のアクセスポイントとの接続が成功したか否かを判定する。CPU302は、YES判定である場合、S727に進み、NO判定である場合、S728に進む。なお、接続対象のアクセスポイントとの接続が成功した場合、印刷装置300とアクセスポイントとの5GHzによる接続が完了し、5GHzによるインフラ接続を構築可能となる。そのため、CPU302は、印刷装置300を5GHzによるインフラ接続モードとして動作させる。
S728では、CPU302は、接続対象のアクセスポイントとの接続が失敗したことを示す画面を表示部311に表示する。なおこの時、接続対象のアクセスポイントとの接続が失敗したことを示す画面を表示部209に表示するための情報を端末装置200に送信しても良い。また、CPU302は、S719に進み、2.4GHzに対応するチャネルを用いて、接続対象のアクセスポイントとの接続を試みても良い。また、CPU302は、5GHzに対応するチャネルのうち、S728で用いたチャネルでないチャネルを用いて、接続対象のアクセスポイントとの接続を試みても良い。
S727では、CPU302は、動作モード格納領域にダイレクト接続モードが有効であることを示す情報が含まれているか否かを判定する。CPU302は、YES判定である場合、S729に進み、NO判定である場合、処理を終了する。
S729では、CPU302は、ダイレクト接続モードを無効化する。本処理は、S522と同様である。
次に、上述の形態とは異なる方法で、端末装置200を介したネットワーク設定処理を適切に実行する形態について説明する。
図9は、本実施形態において印刷装置300が実行するネットワーク設定処理を示すフローチャートである。図9に示すフローチャートは、例えば、CPU302がROM303や不揮発性メモリ305等に格納されたプログラムをRAM304に読み出して実行することにより実現される。また、図9に示すフローチャートが示す処理は、印刷装置300に対して、ネットワーク設定処理のトリガーとなるユーザ操作(ネットワーク設定処理の実行指示)が行われた場合に開始される。
S901~S916は、S701~S716と同様であるため説明を省略する。
S914がNO判定である場合、端末装置200から受信したネットワーク設定情報に、周波数帯情報が含まれないことになる。そのため、CPU302は、S904で保存したAPサーチ結果に、端末装置200から受信したネットワーク設定情報に含まれる情報が含まれるか否かを判定する。端末装置200から受信したネットワーク設定情報に含まれる情報は例えば、SSID、認証方式、暗号方式、MACアドレス等である。CPU302は、YES判定である場合、S918に進み、NO判定である場合、S916に進む。なおCPU302は、YES判定である場合、端末装置200から受信したネットワーク設定情報に含まれる情報に対応する周波数情報を、APサーチ結果から特定する。
S918では、CPU302は、APサーチ結果から特定された、端末装置200から受信したネットワーク設定情報に含まれる情報に対応する周波数情報が、2.4GHzか否かを判定する。CPU302は、YES判定である場合、S913に進み、NO判定である場合、S915に進む。
S913及びS915の後の処理は、図8に示す処理と同様であるため説明を省略する。
なお、上述では、端末装置200から、インフラ接続モードを設定するためのネットワーク設定情報を受信する形態を説明したが、ダイレクト接続モードを設定するためのネットワーク設定情報を受信しても良い。その場合、印刷装置300は、ダイレクト接続モード時に有効化される、印刷装置300内のアクセスポイントと接続するための接続情報を端末装置200に通知したあと、当該アクセスポイントを有効化し、端末装置200とダイレクト接続する。
また、端末装置200は、インフラ接続モードを設定するためのネットワーク設定情報として、ネットワーク設定処理前に端末装置200が接続していたアクセスポイントと接続するための情報を送信することが好ましい。これにより、印刷装置300が当該アクセスポイントと接続するため、端末装置200が当該アクセスポイントと再接続すれば、端末装置200と印刷装置300間でインフラ接続が確立する。
上述のような形態とすることで、ネットワーク設定処理において、周波数帯情報が印刷装置300に通知されない場合には、5GHzより、2.4GHzを優先して用いて、アクセスポイントとの接続を試みることができる。また、ネットワーク設定処理において、接続対象のアクセスポイントが使用可能な周波数帯に関する複数の情報が印刷装置300に通知される場合には、5GHzより、2.4GHzを優先して用いて、アクセスポイントとの接続を試みることができる。
(その他の実施形態)
上述では、印刷装置300は、2.4GHZと5GHzの周波数帯のうち少なくとも1つに対応しているものとしたが、この形態に限定されない。すなわち、印刷装置300が対応している周波数帯は、2.4GHZと5GHz以外の周波数帯であっても良い。また印刷装置300は、3つ以上の周波数帯に対応していても良い。
上述では、印刷装置300は、ネットワーク設定処理において周波数帯情報が受信されなかった又は複数の周波数帯情報が受信された場合、2.4GHzの周波数帯に対応するチャネルを優先的に用いてAPと接続していた。しかしながら、この形態に限定されない。例えば、印刷装置300は、上述の場合、5GHzの周波数帯に対応するチャネルのうち、DFSによる切り替えが行われないチャネル(気象レーダ等の特定の装置が利用することがないチャネル)を優先的に用いてAPと接続しても良い。
上述では、端末装置200を用いたネットワーク設定処理において、印刷装置300がセットアップモードで動作しており、印刷装置300と端末装置200が、Wi-Fiによって接続している状態で、ネットワーク設定情報を受信する形態を説明した。しかしながらこの形態に限定されず、例えば、印刷装置300と端末装置200が、Wi-Fi以外の通信方式で接続している状態で、Wi-Fi以外の通信方式を介して設定情報を受信する形態であっても良い。すなわち、例えば、セットアップモードでの動作のトリガーとなる操作が行われたことに応じて、印刷装置300は、WLAN以外の通信方式によるホスト端末102との通信が可能な状態で動作を開始しても良い。WLAN以外の通信方式は、例えば、Bluetooth Classic(登録商標)や、BluetoothLow Energy(登録商標)、NFCである。
上述した実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPUやMPU等)がプログラムを読み出して実行する処理である。また、プログラムは、1つのコンピュータで実行させても、複数のコンピュータで連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をASIC等のハードウェアで実現するようにしてもよい。また、CPUも1つのCPUで全ての処理を行うものに限らず、複数のCPUが適宜連携をしながら処理を行うものとしてもよい。