以下に、図面を参照しながら、本発明の実施形態を例示的に詳しく説明する。但し、本実施形態に記載されている構成要素の相対配置、表示画面等は、特に、特定的な記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。
<システム構成>
まず、以下で説明する各実施形態を実現するためのシステム構成について、図1〜図6を用いて説明する。
図1は携帯型通信端末装置と印刷装置(MFP)を含むシステムの構成を示す図である。
携帯型通信端末装置200は、無線LAN(WLAN)通信部及び近接無線通信部を有する装置である。尚、近接無線通信とは、NFCに代表される、通信範囲が、比較的小さい所定範囲(例えば、1メートル〜数センチ以下)となる無線通信を意味する。携帯型通信端末装置200は、PDA(Personal Digital Assistant)等の個人情報端末、携帯電話、デジタルカメラ等でも良い。印刷装置(MFP)300は、携帯型通信端末装置200と無線通信可能であれば良く、その他、読取機能(スキャナ)やFAX機能、電話機能を有していても良い。本実施形態では、読取機能と印刷機能を有するMulti Function Printer(MFP)を例にしている。携帯型通信端末装置200とMFP300は共にNFCによる近接無線通信部を有し、携帯型通信端末装置200に電力供給が無い状態でも、携帯型通信端末装置200をMFP300にNFC通信可能な所定距離に近づけることで、近接無線通信が可能である。また、MFP300は、WLAN通信部によって、ネットワーク(TCP/IPに従った通信が可能なネットワーク)上の端末と無線通信可能である。携帯型通信端末装置200とMFP300のいずれか、あるいは両方は、近接無線通信部を有さずWLAN通信部のみによって無線通信を行うものとしても良い。尚、携帯型通信端末装置200及びMFP300は、後述するようにWLAN経由で複数の印刷サービスに対応した処理を実行可能である。
図2は携帯型通信端末装置200の外観を示す図である。
本実施形態では、スマートフォンを例にしている。スマートフォンとは、携帯電話の機能の他に、カメラや、ウェブブラウザ、電子メール機能等を搭載した多機能型の携帯電話のことである。近接無線通信部であるNFCユニット201は、NFCを用いて通信を行うユニットであり、NFCユニット201を相手先のNFCユニットに所定距離(例えば、10cm程度)以内に近づけることでNFCによる通信を行うことができる。
WLANユニット202はWLANで通信を行うためのユニットである。WLANユニット202は、例えば、IEEE802.11シリーズに準拠したWLANシステムにおけるデータ(パケット)通信が可能であるものとする。また、WLANユニット202を用いた無線通信では、Wi−Fi Direct(WFD)をベースにした通信、ソフトウェアAPモード、アドホックモード、Infrastractureモードによる通信等が可能である。表示部203は、例えば、LCD方式の表示機構を備えたディスプレイである。操作部204は、タッチパネル方式の操作機構を備えており、ユーザによる操作を検知する。代表的な操作方法には、表示部203がボタンアイコンやソフトウェアキーボードの表示を行い、ユーザがそれらの箇所に触れることによって操作イベントを検知するものがある。電源キー205は電源のオン及びオフをする際に用いるハードキーである。
図3はMFP300の外観を示す図である。
図3(a)において、原稿台301は、スキャナ(読取部)で読み取らせる原稿を載せるガラス状の透明な台である。原稿蓋302は、スキャナで読取を行う際に原稿を押さえたり、読取の際に原稿を照射する光源からの光が外部に漏れないようにしたりするための蓋である。印刷用紙挿入口303は様々なサイズの用紙をセット可能な挿入口である。印刷用紙挿入口303にセットされた用紙は一枚ずつ印刷部に搬送され、印刷部で印刷を行って印刷用紙排出口304から排出される。
図3(b)において、原稿蓋302の上部には操作表示部305及びNFCユニット306が配置されている。操作表示部305については、図4を用いて詳細に説明する。NFCユニット306は近接無線通信を行うためのユニットであり、携帯型通信端末装置200をMFP300に近接させる場所である。NFCユニット306から所定距離(約10cm)以内がNFC通信の有効距離である。WLANアンテナ307は、WLANで通信するためのアンテナが埋め込まれている。
図4は操作表示部305の平面図である。
表示部406は、画像や操作メニュー等のユーザインタフェースを表示する表示画面であり、例えば、ドットマトリクスLCDが例に挙げられる。十字キー401は表示部406上のカーソル移動等の操作に用いる。セットキー402は設定入力のためのキーである。機能キー403は機能設定等の操作に用いる。スタートキー404は印刷の開始等の機能の実行指示を行う。
図5は携帯型通信端末装置200の構成を示すブロック図である。
携帯型通信端末装置200は、装置自身のメインの制御を行うメインボード701と、WLAN通信を行うWLANユニット717と、NFC通信を行うNFCユニット718と、Bluetooth(登録商標)通信を行うBTユニット721とを有する。
メインボード701において、CPU(中央演算処理部)702は、システム制御部であり、携帯型通信端末装置200の全体を制御する。以降に示す携帯型通信端末装置200の処理はCPU702の制御によって実行される。ROM703は、CPU702が実行する制御プログラムや組込オペレーティングシステム(OS)プログラム等を記憶する。本実施形態では、ROM703に記憶されている各制御プログラムは、ROM703に記憶されている組込OSの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。
RAM704は、SRAM(Static RAM)等で構成され、プログラム制御変数等のデータを記憶し、また、ユーザが登録した設定値や携帯型通信端末装置200の管理データ等のデータを記憶し、各種ワーク用バッファ領域が設けられている。
画像メモリ705は、DRAM(Dynamic RAM)等のメモリで構成され、通信部を介して受信した画像データや、データ蓄積部712から読み出した画像データをCPU702で処理するために一時的に記憶する。ここで、通信部とは、WLANユニット717と、NFCユニット718及びBTユニット721を含む通信機能の総称である。
不揮発性メモリ722は、フラッシュメモリ(flash memory)等のメモリで構成され、電源がオフされてもデータを記憶し続ける。尚、これらのようなメモリ構成はこれに限定されるものではない。例えば、画像メモリ705とRAM704を共有させてもよいし、データ蓄積部712にデータのバックアップ等を行ってもよい。また、本実施形態では、画像メモリ705にDRAMを用いているが、ハードディスクや不揮発性メモリ等の他の記憶媒体を使用する場合もあるのでこの限りではない。
データ変換部706は、種々の形式のデータの解析や、色変換、画像変換等のデータ変換を行う。電話部707は、電話回線の制御を行い、スピーカ部713を介して入出力される音声データを処理することで電話による通信を実現している。操作部708は、操作部204(図2)の信号を制御する。GPS(Global Positioning System)709は、携帯型通信端末装置200の現在の緯度や経度等の位置情報を取得する。表示部710は、表示部203(図2)の表示内容を電子的に制御しており、各種入力操作や、MFP300の動作状況、ステータス状況の表示等を行うことができる。
カメラ部711は、レンズを介して入力された画像を電子的に記録して符号化する機能を有している。カメラ部711で撮影された画像はデータ蓄積部712に保存される。スピーカ部713は電話機能のための音声を入力または出力する機能や、その他、アラーム通知等の機能を実現する。電源部714は、携帯可能な電池であり、装置内への電力供給制御を行う。電源状態には、電池に残量が無い電池切れ状態、電源キー205を押下していない電源オフ状態、通常起動している起動状態、起動しているが省電力になっている省電力状態がある。
携帯型通信端末装置200には無線通信するための通信部が3つ搭載されており、WLAN、NFC、BlueTooth(商標登録)で無線通信することができる。これにより、携帯型通信端末装置200は、MFP等の他デバイスとのデータ通信を行う。この通信部では、データをパケットに変換し、他デバイスにパケット送信を行う。逆に、外部の他デバイスからのパケットを、元のデータに復元してCPU702に対して送信する。WLANユニット717、NFCユニット718及びBTユニット721はそれぞれバスケーブル715、716及び720を介してメインボード701に接続されている。WLANユニット717、NFCユニット718及びBTユニット721はそれぞれの規格に準拠した通信を実現するためのユニットである。
メインボード701内の各種構成要素(703〜714、717、718、721及び722)は、CPU702が管理するシステムバス719を介して、相互に接続されている。
図6はMFP300の構成を示すブロック図である。
MFP300は、装置自身のメインの制御を行うメインボード801と、WLAN通信を行うWLANユニット817と、NFC通信を行うNFCユニット818と、Bluetooth(登録商標)通信を行うBTユニット819とを有する。
メインボード801において、CPU(中央演算処理部)802は、システム制御部であり、MFP300の全体を制御する。以降に示すMFP300の処理はCPU802の制御によって実行される。ROM803は、CPU802が実行する制御プログラムや組込オペレーティングシステム(OS)プログラム等を記憶する。本実施形態では、ROM803に記憶されている各制御プログラムは、ROM803に記憶されている組込OSの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。RAM804は、SRAM(Static RAM)等で構成され、プログラム制御変数等のデータを記憶し、また、ユーザが登録した設定値やMFP300の管理データ等のデータを記憶し、各種ワーク用バッファ領域が設けられている。
不揮発性メモリ805は、フラッシュメモリ(flash memory)等のメモリで構成され、電源がオフされてもデータを記憶し続ける。画像メモリ806は、DRAM(Dynamic RAM)等のメモリで構成され、通信部を介して受信した画像データや、符号復号化処理部812で処理した画像データや、メモリカードコントローラ516を介して取得した画像データを蓄積する。また、携帯型通信端末装置200のメモリ構成と同様に、このようなメモリ構成はこれに限定されるものではない。データ変換部807は、種々の形式のデータの解析や、画像データから印刷データへの変換等を行う。
尚、ここでの通信部とは、WLANユニット817と、NFCユニット818及びBTユニット819を含む通信機能の総称である。
読取制御部808は、読取部810(例えば、CISイメージセンサ(密着型イメージセンサ))を制御して、原稿上の画像を光学的に読み取る。次に、これを電気的な画像データに変換した画像信号を出力する。このとき2値化処理や中間調処理等の各種画像処理を施してから出力しても良い。
操作部809及び表示部811は、図4での操作表示部305に対応する。符号復号化処理部812は、MFP300で扱う画像データ(JPEG、PNG等)の符号復号化処理や、拡大縮小処理を行う。給紙部814は印刷のための用紙を保持する。印刷制御部816からの制御で給紙部814から用紙の給紙を行うことができる。特に、給紙部814は、複数種類の用紙を一つの装置に保持するために、複数の給紙部を用意することができる。そして、印刷制御部816により、どの給紙部から給紙を行うかの制御を行うことができる。
印刷制御部816は、印刷される画像データに対し、スムージング処理や印刷濃度補正処理、色補正等の各種画像処理を施してから印刷部815に出力する。印刷部815は、例えば、インクタンクから供給されるインクをプリントヘッドから吐出させて画像を印刷するインクジェットプリンタを採用可能である。また、印刷制御部816は印刷部815の情報を定期的に読み出してRAM804の情報を更新する役割も果たす。具体的には、インクタンクの残量やプリントヘッドの状態等のステータス情報を更新することである。
MFP300にも、携帯型通信端末装置200と同様に無線通信するための通信部が3つ搭載されており、機能は同等のため、説明は省略する。ここで、WLANユニット817、NFCユニット818及びBTユニット819はそれぞれバスケーブル820、821及び822を介してメインボード801に接続されている。尚、携帯型通信端末装置200及びMFP300はWFDをベースにした通信が可能であり、ソフトウェアアクセスポイント(ソフトウェアAP)機能を有している。
メインボード801内の各種構成要素(802〜819)は、CPU802が管理するシステムバス823を介して、相互に接続されている。
<P2P(Peer to Peer)方式について>
WLANにおける通信においてP2Pを実現する方式として、複数のモードが考えられる。それぞれのモードでは探索側の機器が同一の機器探索コマンド(例えば、Probe Requestフレーム)を使用して通信相手となる機器(通信相手装置または対向機という)を探索して発見する。機器探索コマンドには種々の属性(パラメータ)を付随させて送信することが可能である。機器探索コマンドの応答は、探索コマンドに属性が指定されていた場合に、通常、当該モードの仕様及び前提となる仕様(WFDであればWi−Fi)で規定されている範囲で最大限解釈可能な属性の応答をする事が推奨されている。また、機器探索コマンドに付随する情報(上記属性を含む)に解釈できない情報が含まれる場合であっても、受け取った機器探索コマンドに対して解釈できる情報のみを元に応答することも可能である。
P2Pモードのモードとして、以下の3モードが考えられる。
・モードA(ソフトウェアAPモード)
・モードB(Wi−Fi Direct(WFD)モード)
・モードC(WFD拡張モード)
それぞれのモードは、対応している機器が異なることがあり、また、利用できるアプリケーションも異なることがある。
以下、各モードにおける無線接続シーケンスについて、図7〜図9を用いて説明する。
尚、Wi−Fi Directによる通信機能を有する機器では、その操作部から、その通信機能を実現する専用のアプリケーションを呼び出す。そして、Wi−Fi Directによる通信機能を有する機器は、そのアプリケーションによって提供される操作画面であるUI(ユーザインタフェース)に対する操作に基づいて、Wi−Fi Directの通信を行うためのネゴシエーションを実行することができる。
図7はモードA(ソフトウェアAPモード)の無線接続シーケンスを示す図である。
ソフトウェアAPモードでは、通信を行う機器(例えば、携帯型通信端末装置200とMFP300)との間で、一方の機器(例えば、携帯型通信端末装置200)が、各種サービスを依頼する役割を果たすクライアントとなり、もう一方の機器が、WLANにおけるアクセスポイントの機能をソフトウェアによる設定により実現するソフトウェアAP(例えば、MFP300)となる。
ソフトウェアAPモードでは、クライアントは、機器探索コマンドによりソフトウェアAPとなる機器を探索する。ソフトウェアAPが探索されると、クライアントとソフトウェアAPとの間で残りの無線接続の処理(無線接続の確立等)を経て、その後、IP接続の処理(IPアドレスの割当等)を行うことになる。
尚、クライアントとソフトウェアAPとの間で無線接続を実現する場合に送受信されるコマンドやパラメータについては、Wi−Fi規格で規定されているものを用いればよく、ここでの説明は省略する。
図8はモードB(WFDモード)の無線接続シーケンスを示す図である。
WFDモードでは、機器探索コマンドにより通信相手となる機器が探索された後に、P2Pのグループオーナと、P2Pのクライアントの役割を決定した上で、残りの無線接続の処理を行うことになる。この役割決定は、例えば、P2Pでは、GO Negotiationに対応する。
具体的には、まず通信を行う機器との間で、一方の機器が、機器探索コマンドを発行し、WFDモードで接続する機器を探索する。通信相手となる他方の機器が探索されると、両者の間で、互いの機器で供給可能なサービスや機能に関する情報を確認する(機器供給情報確認)。尚、この機器供給情報確認はオプションであり、必須ではない。この機器供給情報確認フェーズは、例えば、P2Pでは、Provision Discoveryに対応する。
次に、この機器供給情報を互いに確認することで、その役割として、どちらがP2Pのクライアントとなり、どちらがP2Pのグループオーナとなるかを決定する。次に、クライアントとグループオーナが決定したら、両者の間で、Wi−Fi Directによる通信を行うためのパラメータを交換する(パラメータ交換フェーズ)。交換したパラメータに基づいて、P2Pのクライアントとグループオーナとの間で残りの無線接続の処理、IP接続の処理を行う。パラメータ交換フェーズは、例えばWi−Fi Protected Setupを用いて自動的に無線LANセキュリティのパラメータ交換することに対応する。
図9はモードC(WFD拡張モード)の無線接続シーケンスを示す図である。
WFD拡張モードは、WFDモードを拡張したものであり、WFDモードでオプションとしていた機器供給情報確認を必須とする。また、IP接続の処理の後に、サービス接続の処理を行う。
<実施形態1>
実施形態1では、通信相手装置(対向機)である携帯型通信端末装置200から受信する電波の電波強度に基づいて、WFDによる接続に係るユーザ承認の簡略化を行う構成について説明する。
尚、実施形態1では、例えば、MFP300と物理的に距離が近い携帯型通信端末装置200からの電波強度は、物理的に距離が遠い、あるいは壁等の障害物を介して通信を行う携帯型通信端末200からの電波強度より強いことを想定する。
図10は実施形態1の動作を説明するための図である。
図10において、210は携帯型通信端末装置200の表示部710に表示されるWFD用のアプリケーションが提供するUIの一例である。このUI210を介して、ユーザは、WFDを開始することができる。310はMFP300の表示部811に表示されるWFDによる接続の承認/拒否を決定するためのUIの一例である。UI310は、接続を承認するための選択肢と接続を拒否するための選択肢が用意されている。このUI310を介して、MFP300は、WFD接続の要求を行っている対向機(携帯型通信端末装置200)の接続の承認/拒否を行うことができる。
尚、図10では、UI210及び310は、例えば、タッチパネルによるタッチ操作を受け付ける構成として示しているが、ハードキー等で同様の操作を受け付けるようにしても良い。例えば、十字キー401でUI310の「承認」または「拒否」にフォーカスを移してからセットキー402またはスタートキー404を押下する。また、「承認」、「拒否」を選択するための専用のボタンを設け、これらのいずれかの押下によっていずれかを選択するようにしてもよい。
まず、実施形態1における動作として、MFP300に予め記録されている第1の電波強度よりも、携帯型通信端末装置200から受信する電波の第2の電波強度が弱い場合の動作を、図10を用いて説明する。
P1001:MFP300は、携帯型通信端末装置200(対向機)から接続要求(機器探索リクエスト)を受信する。
P1002:MFP300は、例えば、不揮発性メモリ805に予め記録されている第1の電波強度(基準電波強度)と、携帯型通信端末装置200から受信する電波の第2の電波強度(受信電波強度)とを比較する。比較の結果、第1の電波強度よりも、第2の電波強度が弱い場合、MFP300は、UI310を表示し、そのUI310に対する操作を待機し、その操作に応じて、接続要求を承認する/拒否する。このとき、アクセス元からの受信電波強度が基準電波強度より弱い旨を示す情報をUI310に表示させるようにしてもよい。また、携帯型通信端末装置200を特定するための情報を併せて表示させるようにしてもよい。
P1003:UI310に対する操作に基づいて、接続要求を承認する場合、MFP300は、携帯型通信端末装置200から受信している現在の電波の電波強度を記録する。この電波強度は、例えば、不揮発性メモリ805に記録する。ここでの電波強度の記録は基準電波強度を書き換えるものとしてもよいし、携帯型通信端末装置200と対応付けて記録するようにしてもよい。後者の場合、携帯型通信端末装置200からアクセスがあったときに当該携帯型通信端末装置200に対応した基準電波強度を用いて比較する。従って、この場合、接続を承認する携帯型通信端末装置の数に応じた数の基準電波強度が存在することになる。
P1004:MFP300は、接続許可を示す通知を携帯型通信端末装置200へ送信する。
P1005:接続許可が携帯型通信端末装置200へ通知されると、MFP300と携帯型通信端末装置200との間での無線接続を確立するための処理が実行される。
P1006:MFP300は、携帯型通信端末装置200から受信する印刷データに基づいて印刷を実行する。尚、P1002におけるUI310の表示に対し、「拒否」が選択された場合、以降の処理は行われない。
次に、実施形態1における動作として、MFP300に予め記録されている第1の電波強度よりも、携帯型通信端末装置200から受信する電波の第2の電波強度が強い場合の動作を、図11を用いて説明する。
P1101:MFP300は、携帯型通信端末装置200(対向機)から接続要求(機器探索リクエスト)を受信する。
P1102:MFP300は、予め記録されている第1の電波強度と、携帯型通信端末装置200から受信する電波の第2の電波強度を比較する。比較の結果、第1の電波強度よりも、第2の電波強度が強い場合、ここでの上記のようなユーザによる承認操作がなくとも、接続要求を承認する。
P1103:MFP300は、接続許可を示す通知を携帯型通信端末装置200へ送信する。
P1104:接続許可が携帯型通信端末装置200へ通知されると、MFP300と携帯型通信端末装置200との間での無線接続を確立するための処理が実行される。
P1105:MFP300は、携帯型通信端末装置200から受信する印刷データに基づいて印刷を実行する。
次に、図10及び図11の動作における、MFP300が実行する処理について、図12を用いて説明する。
図12は実施形態1のMFP300が実行する処理を示すフローチャートである。このフローチャートは、CPU802がROM803に記憶されているプログラムをRAM804にロードし、これを実行することにより行われる処理の流れを示す。
ステップS1201で、MFP300は、WFDモード(図8)で起動する。これは、例えば、ユーザが操作部809によってWFDモードの実行を許可するよう設定してMFP300の電源をONすることによって行われる。ステップS1202で、MFP300は、対向機からの接続要求(機器探索リクエスト)の受信を待機する。接続要求を受信していない場合(ステップS1202でNO)、MFP300は、接続要求を受信するまで待機する。一方、接続要求を受信した場合(ステップS1202でYES)、ステップS1203で、MFP300は、その接続要求を受信した電波に基づいて、対向機(携帯型通信端末装置200)の電波強度を取得する。取得した電波強度(第2の電波強度)は、例えば、不揮発性メモリ805に記録する。
ステップS1204で、MFP300は、予め不揮発性メモリ805に記録されている基準電波強度(第1の電波強度)よりも第2の電波強度が強いか否かを判定する。この判定は、例えば、第2の電波強度が第1の電波強度以上であれば、第2の電波強度が第1の電波強度よりも強いと判定し、第2の電波強度が第1の電波強度未満であれば、第2の電波強度が第1の電波強度よりも強くない(弱い)と判定する。
第1の電波強度よりも第2の電波強度が強いと判定された場合(ステップS1204でYES)、ステップS1205で、MFP300は、WFDを実行することを許可する。ステップS1206で、MFP300は、対向機(携帯型通信端末装置200)から受信する印刷データに基づいて印刷を実行する。ステップS1207で、MFP300は、印刷が完了すると、WFDによる接続を切断する。
一方、第1の電波強度よりも第2の電波強度が弱いと判定された場合(ステップS1204でNO)、ステップS1208で、MFP300は、UI310を表示し、WFDによる接続の承認/拒否のユーザからの選択操作の入力を待機する。ステップS1209で、MFP300は、UI310の操作に基づいて、WFDによる接続を承認(ユーザ承認)するか否かを判定する。WFDによる接続を承認すると判定された場合(ステップS1209でYES)、ステップS1210で、MFP300は、現在の対向機(携帯型通信端末装置200)の電波強度を基準電波強度として、例えば、不揮発性メモリ805に記録する。その後、ステップS1205に進む。
一方、WFDによる接続を拒否すると判定された場合(ステップS1209でNO)、ステップS1207に進み、MFP300は、WFDによる接続を切断する。また、S1208において、所定時間経過してもユーザによる選択操作が行われなかった場合もS1207に進むようにしてもよい。
以上説明したように、実施形態1によれば、対向機からの電波強度に応じて、対向機からの接続要求受信後の対向機とのWFDによる接続の承認処理を省略する。これにより、WFDによる接続手順を簡略化することができる。即ち、対向機との間の通信状態が良好であるため、対向機との物理的距離が近い、または対向機との間に障害物が少ない場合に、自動で接続を承認することができる。一方で、対向機からの電波強度が弱かった場合、ユーザによる選択操作に基づき接続を承認することができるので、電波強度が弱かったとしてもWFDによる通信を実行させることができる。
尚、実施形態1では、対向機からの電波強度に応じて、WFDによる接続の承認処理を省略しているが、これに限定されない。例えば、電波強度以外の通信状態、例えば、MFPと対向機との間の距離、対向機から受信した信号S/N比等の指標を少なくとも1つ用いて、承認処理を省略するか否かを判定するようにしても良い。
より具体的には、MFP300に記録されている第1の通信状態(基準通信状態)と、対向機の電波から受信する第2の通信状態とを比較して、第2の通信状態が第1の通信状態よりも良好である(通信状態が所定の基準以上である)と判定される場合に、接続の承認処理を省略する。この良好であるか否かの判定は、通信状態として電波強度を使用する例では、対向機の第2の電波強度がMFPに記録されている第1の電波強度以上である場合に良好であると判定する。また、通信状態として距離を使用する例では、対向機とのMFPとの間の第2の距離が、MFPに記録されている第1の距離(基準距離)未満である場合に良好であると判定する。この場合、MFP300は、例えば、操作部809からユーザによって入力されたMFP300の設置位置情報を不揮発性メモリ805に予め記憶しておく。そして、MFP300は、携帯型通信端末装置200からGPS709によって取得した携帯型通信端末装置200の現在位置情報を受信し、自身の設置位置情報と比較し、所定距離内であるか判定する。更に、通信状態としてS/N比を使用する例では、対向機から受信される信号のS/N比が、MFPに記録されている基準S/N比以上である場合に良好であると判定する。即ち、実施形態1では、対向機の通信状態(電波強度、距離、S/N比等)を対向機のデバイス情報として、このデバイス情報に基づき接続要求の自動承認を行うか否かを決定することができる。
<実施形態2>
実施形態2では、携帯型通信端末装置200(対向機)を特定するためのデバイス情報(MACアドレス)に基づいて、WFDによる接続に係るユーザ承認の簡略化を行う構成について説明する。
図13は実施形態2の動作を説明するための図である。実施形態2では、WFDによる接続を承認する機器のデバイス情報(MACアドレス)を不揮発性メモリ805に記憶しておくものとする。
まず、実施形態2における動作として、MFP300に、WFDによる接続を許可する機器のデバイス情報として携帯型通信端末装置200のMACアドレスが登録されていない場合の動作を、図13を用いて説明する。
P1301:MFP300は、携帯型通信端末装置200(対向機)から接続要求(機器探索リクエスト)を受信する。
P1302:MFP300は、接続要求に含まれる携帯型通信端末装置200のデバイス情報を参照して、携帯型通信端末装置200のMACアドレスが、不揮発性メモリ805に登録されているか否かを確認する。確認の結果、携帯型通信端末装置200のMACアドレスが登録されていないと判断された場合、MFP300は、UI310を表示し、そのUI310に対するユーザによる操作の入力を待機し、その操作に応じて、接続要求を承認または拒否する。
P1303:UI310に対する操作に基づいて、接続要求を承認する場合、MFP300は、携帯型通信端末装置200のMACアドレスをWFDによる接続要求を承認する機器のデバイス情報として不揮発性メモリ805に記録する。尚、不揮発性メモリ805において、記憶可能なMACアドレス数に上限があり、現在その上限に達している場合は、例えば、最古のMACアドレスを削除した上で、記録対象のMACアドレスを記録する。
P1304:MFP300は、接続許可を示す通知を携帯型通信端末装置200へ送信する。
P1305:接続許可が携帯型通信端末装置200へ通知されると、MFP300と携帯型通信端末装置200との間での無線接続を確立するための処理が実行される。
P1306:MFP300は、携帯型通信端末装置200から受信する印刷データに基づいて印刷を実行する。
次に、実施形態2における動作として、MFP300に、WFDによる接続を許可する機器のデバイス情報として携帯型通信端末装置200のMACアドレスが登録されている場合の動作を、図14を用いて説明する。
P1401:MFP300は、携帯型通信端末装置200(対向機)から接続要求(機器探索リクエスト)を受信する。
P1402:MFP300は、接続要求に含まれる携帯型通信端末装置200のデバイス情報を参照して、携帯型通信端末装置200のMACアドレスが、不揮発性メモリ805に登録されているか否かを確認する。確認の結果、携帯型通信端末装置200のMACアドレスが登録されていると判断された場合、MFP300は、ここでの上記のようなユーザによる承認操作がなくとも接続要求を承認する。
P1403:MFP300は、接続許可を示す通知を携帯型通信端末装置200へ送信する。
P1404:接続許可が携帯型通信端末装置200へ通知されると、MFP300と携帯型通信端末装置200との間での無線接続を確立する処理が実行される。
P1405:MFP300は、携帯型通信端末装置200から受信する印刷データに基づいて印刷を実行する。
次に、図13及び図14の動作における、MFP300が実行する処理について、図15を用いて説明する。
図15は実施形態2のMFP300が実行する処理を示すフローチャートである。このフローチャートはCPU802がROM803に記憶されているプログラムをRAM804にロードし、これを実行することにより行われる処理の流れを示す。
ステップS1501で、MFP300は、WFDモード(図8)で起動する。ステップS1502で、MFP300は、対向機からの接続要求(機器探索リクエスト)の受信を待機する。接続要求を受信していない場合(ステップS1502でNO)、MFP300は、接続要求を受信するまで待機する。一方、接続要求を受信した場合(ステップS1502でYES)、ステップS1503で、MFP300は、その接続要求に含まれる、対向機(携帯型通信端末装置200)のMACアドレスを取得する。取得したMACアドレスは、例えば、不揮発性メモリ805に記録する。
ステップS1504で、MFP300は、取得したMACアドレスがWFDによる接続要求を承認する機器のデバイス情報として既に不揮発性メモリ805に登録されているか否かを判定する。
取得したMACアドレスが不揮発性メモリ805に既に登録されていると判定された場合(ステップS1504でYES)、ステップS1505で、MFP300は、WFDによる接続要求を、ユーザからのここでの承認操作がなくとも許可する。ステップS1506で、MFP300は、対向機(携帯型通信端末装置200)から受信する印刷データに基づいて印刷を実行する。ステップS1507で、MFP300は、印刷が完了すると、WFDによる接続を切断する。
一方、取得したMACアドレスが不揮発性メモリ805に登録されていないと判定された場合(ステップS1504でNO)、ステップS1508で、MFP300は、UI310を表示し、WFDによる接続の承認/拒否のユーザからの選択操作の入力を待機する。ステップS1509で、MFP300は、UI310の操作に基づいて、WFDによる接続を承認(ユーザ承認)するか否かを判定する。WFDによる接続を拒否すると判定された場合(ステップS1509でNO)、ステップS1507に進み、MFP300は、WFDによる接続を切断する。
一方、WFDによる接続を承認すると判定された場合(ステップS1509でYES)、ステップS1510で、取得したMACアドレスをWFDによる接続要求を承認する機器のデバイス情報として不揮発性メモリ805に記録する。ステップS1511で、MFP300は、取得したMACアドレスを記録することによって、不揮発性メモリ805のMACアドレスを記憶する記憶領域が一杯であるか否かを判定する。記憶領域が一杯でないと判定された場合(ステップS1511でNO)、ステップS1505に進む。
一方、記憶領域が一杯であると判定された場合(ステップS1511でYES)、ステップS1512で、不揮発性メモリ805の記憶領域に登録されているMACアドレスの内、最も古いMACアドレスを削除する。これにより、次に記録することになるMACアドレスを記憶するための記憶領域を不揮発性メモリ805上に確保する。
以上説明したように、実施形態2によれば、対向機のMACアドレスに基づいて、接続を要求する対向機がWFDによる接続要求を承認する機器であるか否かを判定し、その判定結果に応じて、対向機とのWFDによる接続の承認操作を省略する。これにより、WFDによる接続手順を簡略化することができる。また、接続要求受信時にユーザによる操作によってWFDによる接続要求を承認する機器とされた場合、その機器を特定するためのデバイス情報を登録し、次回からは接続要求時の承認操作を省略できる。従って、自動で接続要求を承認する機器の登録を容易に行うことができる。
<実施形態3>
実施形態3では、携帯型通信端末装置200(対向機)を特定するためのデバイス情報としてデバイス名を用いて、WFDによる接続に係るユーザ承認の簡略化を行う構成について説明する。デバイス名は、例えば、携帯型通信端末装置200のROM703に記憶されている携帯型通信端末装置200を特定するための名称情報である。
図16は、実施形態3における動作として、MFP300に、WFDによる接続を許可する機器のデバイス情報として携帯型通信端末装置200機器のデバイス名が登録されていない場合の動作を示す。図16は、実施形態2で説明した図13における処理において、「MACアドレス」を「デバイス名」とした以外は同様の処理を行えばよいため、ここでの説明は省略する。
図17は、実施形態3における動作として、MFP300に、WFDによる接続を許可する機器のデバイス情報として携帯型通信端末装置200のデバイス名が登録されている場合の動作である。図17は、実施形態2で説明した図14における処理において、「MACアドレス」を「デバイス名」とした以外は同様の処理を行えばよいため、ここでの説明は省略する。
次に、図16及び図17の動作における、MFP300が実行する処理について、図18を用いて説明する。
図18は実施形態3のMFP300が実行する処理を示すフローチャートである。このフローチャートはCPU802がROM803に記憶されているプログラムをRAM804にロードし、これを実行することにより行われる処理の流れを示す。
尚、図18のステップ1801〜ステップS1812の各ステップは、実施形態2の図15のステップS1501〜ステップS1512の各ステップに対応し、特に、図15における処理対象を「MACアドレス」から「デバイス名」に変更した上で実現できるため、その詳細については省略する。
以上説明したように、実施形態3によれば、実施形態2で述べた効果と同様の効果をデバイス情報としてデバイス名を用いても得ることができる。尚、ステップS1808において、UI310を表示させる際、携帯型通信端末装置200のデバイス名も併せて表示させるようにしてもよい。これにより、ユーザは接続要求を行った機器を認識したうえで承認または拒否を選択することができる。
<実施形態4>
実施形態4では、WFDによる接続を自動承認(承認処理の省略)する機器のデバイス情報及び自動拒否(拒否処理の省略)する機器のデバイス情報をそれぞれ承認リスト/拒否リストとしてMFP300の不揮発性メモリ850に記憶して管理しておき、これらのリストを用いることで、WFDによる接続に係るユーザ承認の簡略化を行う構成について説明する。
図19は実施形態4の動作を説明するための図である。
まず、実施形態4における動作として、承認リスト及び拒否リストのいずれにも、接続を要求する携帯型通信端末装置200のMACアドレスが登録されていない場合の動作を、図19を用いて説明する。
P1901:MFP300は、携帯型通信端末装置200(対向機)から接続要求(機器探索リクエスト)を受信する。
P1902:MFP300は、接続要求に含まれる携帯型通信端末装置200のデバイス情報を参照して、携帯型通信端末装置200のMACアドレスが、不揮発性メモリ850内の承認リスト及び拒否リストのいずれかに登録されているか否かを確認する。確認の結果、承認リスト及び拒否リストのいずれにも携帯型通信端末装置200のMACアドレスが登録されていない場合、MFP300は、UI310を表示し、そのUI310に対するユーザによる操作の入力を待機し、その操作に応じて、接続要求を承認または拒否する。
P1903:UI310に対する操作に基づいて、接続要求を承認する場合、MFP300は、携帯型通信端末装置200のMACアドレスを承認リストに記録する。尚、登録済みのMACアドレスの数が承認リストにおいて管理できるMACアドレス数の上限に達している場合は、例えば、最古のMACアドレスを削除した上で、記録対象のMACアドレスを承認リストに記録する。
P1904:MFP300は、接続許可を示す通知を携帯型通信端末装置200へ送信する。
P1905:接続許可が携帯型通信端末装置200へ通知されると、MFP300と携帯型通信端末装置200との間での無線接続を確立するための処理が実行される。
P1906:MFP300は、携帯型通信端末装置200から受信する印刷データに基づいて印刷を実行する。
P1907:UI310に対する操作に基づいて、接続要求を拒否する場合、MFP300は、携帯型通信端末装置200のMACアドレスを拒否リストに記録する。尚、登録済みのMACアドレスの数が拒否リストにおいて管理できるMACアドレスの数の上限に達している場合は、例えば、最古のMACアドレスを削除した上で、記録対象のMACアドレスを拒否リストに記録する。
P1908:MFP300は、接続拒否を示す通知を携帯型通信端末装置200へ送信する。
次に、実施形態4における動作として、拒否リストに、接続を要求する携帯型通信端末装置200のMACアドレスが登録されている場合の動作を、図20を用いて説明する。
P2001:MFP300は、携帯型通信端末装置200(対向機)から接続要求(機器探索リクエスト)を受信する。
P2002:MFP300は、接続要求に含まれる携帯型通信端末装置200のデバイス情報を参照して、携帯型通信端末装置200のMACアドレスが、不揮発性メモリ850内の承認リスト及び拒否リストのいずれかに登録されているか否かを確認する。確認の結果、拒否リストに携帯型通信端末装置200のMACアドレスが登録されている場合、MFP300は、ここでのユーザによる拒否操作がなくとも、接続要求を拒否する。
P2003:MFP300は、接続拒否を示す通知を携帯型通信端末装置200へ送信する。
次に、実施形態4における動作として、承認リストに、接続を要求する携帯型通信端末装置200のMACアドレスが登録されている場合の動作を、図21を用いて説明する。
P2101:MFP300は、携帯型通信端末装置200(対向機)から接続要求(機器探索リクエスト)を受信する。
P2102:MFP300は、接続要求に含まれる携帯型通信端末装置200のデバイス情報を参照して、携帯型通信端末装置200のMACアドレスが、不揮発性メモリ850内の承認リスト及び拒否リストのいずれかに登録されているか否かを確認する。確認の結果、承認リストに携帯型通信端末装置200のMACアドレスが登録されている場合、MFP300は、ここでのユーザによる承認操作がなくとも、接続要求を承認する。
P2103:MFP300は、接続許可を示す通知を携帯型通信端末装置200へ送信する。
P2104:接続許可が携帯型通信端末装置200へ通知されると、MFP300と携帯型通信端末装置200との間での無線接続を確立するための処理が実行される。
P2105:MFP300は、携帯型通信端末装置200から受信する印刷データに基づいて印刷を実行する。
次に、図19乃至図21の動作における、MFP300が実行する処理について、図22を用いて説明する。
図22は実施形態4のMFP300が実行する処理を示すフローチャートである。このフローチャートはCPU802がROM803に記憶されているプログラムをRAM804にロードし、これを実行することにより行われる処理の流れを示す。
ステップS2201で、MFP300は、WFDモード(図8)で起動する。ステップS2202で、MFP300は、対向機から接続要求(機器探索リクエスト)の受信を待機する。接続要求を受信していない場合(ステップS2202でNO)、MFP300は、接続要求を受信するまで待機する。一方、接続要求を受信した場合(ステップS2202でYES)、ステップS2203で、MFP300は、その接続要求に含まれる、対向機(携帯型通信端末装置200)のMACアドレスを取得する。取得したMACアドレスは、例えば、不揮発性メモリ805に記録する。
ステップS2204で、MFP300は、取得したMACアドレスが拒否リストに登録されているか否かを判定する。取得したMACアドレスが拒否リストに登録されていると判定された場合(ステップS2204でYES)、ステップS2208で、MFP300は、WFDによる接続を切断する。
一方、取得したMACアドレスが拒否リストに登録されていないと判定された場合(ステップS2204でNO)、ステップS2205で、取得したMACアドレスが承認リストに登録されているか否かを判定する。取得したMACアドレスが承認リストに登録されていると判定された場合(ステップS2205でYES)、ステップS2206で、MFP300は、WFDを実行することを許可する。ステップS2207で、MFP300は、対向機から受信する印刷データに基づいて印刷を実行する。ステップS2208で、MFP300は、印刷が完了すると、WFDによる接続を切断する。
一方、取得したMACアドレスが承認リストにも登録されていないと判定された場合(ステップS2205でNO)、ステップS2209で、MFP300は、UI310を表示し、WFDによる接続の承認/拒否のユーザからの選択操作の入力を待機する。ステップS2210で、MFP300は、UI310の操作に基づいて、WFDによる接続を承認(ユーザ承認)するか否かを判定する。
WFDによる接続を承認する場合(ステップS2210でYES)、ステップS2211で、取得したMACアドレスを承認リストに記録する。ステップS2212で、MFP300は、取得したMACアドレスを記録することによって、承認リストが一杯であるか否かを判定する。承認リストが一杯でない場合(ステップS2212でNO)、ステップS2206に進む。
一方、承認リストが一杯である場合(ステップS2212でYES)、ステップS2213で、承認リストに登録されているMACアドレスの内、最も古いMACアドレスを削除する。これにより、次に記録することになるMACアドレスを記憶するための記憶領域を承認リスト上に確保する。
WFDによる接続を拒否する場合(ステップS2210でNO)、ステップS2214で、取得したMACアドレスを拒否リストに記録する。ステップS2215で、MFP300は、取得したMACアドレスを記録することによって、拒否リストが一杯であるか否かを判定する。拒否リストが一杯でない場合(ステップS2215でNO)、ステップS2208に進み、MFP300は、WFDによる接続を切断する。
一方、拒否リストが一杯である場合(ステップS2215でYES)、ステップS2216で、拒否リストに登録されているMACアドレスの内、最も古いMACアドレスを削除する。これにより、次に記録することになるMACアドレスを記憶するための記憶領域を拒否リスト上に確保する。
以上説明したように、実施形態4によれば、接続を承認/拒否する対向機のMACアドレスをリストとして管理しておき、そのリストに登録されている対向機からの接続要求がある場合には、接続を要求する対向機の接続の承認/拒否を行う。これにより、一旦リストに登録した対向機からの接続要求がある毎に、都度、要求先の端末での確認用の操作を行うことなく、対向機の接続の自動で承認/拒否を容易に行うことができる。また、リストにない機器からの接続要求があった場合、その際に承認または拒否の操作をユーザが行うことにより、その操作内容に応じて自動で承認リストまたは拒否リストに登録するので、次回からの接続要求の際、自動で承認または拒否することができる。
<実施形態5>
実施形態5では、携帯型通信端末装置200(対向機)を特定するためのデバイス情報としてデバイス名を用いて実施形態4と同様の処理を行うものである。
図23は、実施形態5における動作として、MFP300の承認リスト及び拒否リストのいずれにも、接続を要求する携帯型通信端末装置200のデバイス名が登録されていない場合の動作を示す。図23は、実施形態4で説明した図19における処理において、「MACアドレス」を「デバイス名」とした以外は同様の処理を行えばよいため、ここでの説明は省略する。
図24は、実施形態5における動作として、MFP300の拒否リストに、接続を要求する携帯型通信端末装置200のデバイス名が登録されている場合の動作を示す。図24は、実施形態4で説明した図20における処理において、「MACアドレス」を「デバイス名」とした以外は同様の処理を行えばよいため、ここでの説明は省略する。
図25は、実施形態5における動作として、MFP300の承認リストに、接続を要求する携帯型通信端末装置200のデバイス名が登録されている場合の動作を示す。図25は、実施形態4で説明した図21における処理において、「MACアドレス」を「デバイス名」とした以外は同様の処理を行えばよいため、ここでの説明は省略する。
図26は実施形態5のMFP300が実行する処理を示すフローチャートである。このフローチャートはCPU802がROM803に記憶されているプログラムをRAM804にロードし、これを実行することにより行われる処理の流れを示す。
尚、図26のステップS2601〜ステップS2616の各ステップは、実施形態4の図22のステップS2201〜ステップS2202の各ステップに対応し、特に、図22における処理対象を「MACアドレス」から「デバイス名」に変更した上で実現できるため、その詳細については省略する。
以上説明したように、実施形態5によれば、接続を承認/拒否する対向機のデバイス名をリストとして管理しておき、実施形態4で述べた効果と同様の効果をデバイス情報としてデバイス名を用いても得ることができる。尚、ステップS2609においてUI310を表示させる際、携帯型通信端末装置200のデバイス名も併せて表示させるようにしてもよい。これにより、ユーザは接続要求を行った機器を認識したうえで承認または拒否を選択することができる。
<実施形態6>
実施形態2乃至4では、不揮発性メモリ805への、デバイス(対向機)のデバイス情報(MACアドレス、デバイス名)の登録は、接続を要求してきた対向機についてMFPが行っている。
尚、デバイス情報は、デバイス(対向機)を固有に識別できる情報であれば、どのようなものでも良い。例えば、上述の実施形態2乃至4で説明するMACアドレス、デバイス名の他、IPアドレス(グローバルIPアドレス)等の対向機を固有に識別することができる情報をデバイス情報とすることができる。
実施形態6では、これに加えて、接続する対向機のデバイス情報が事前に分かっている場合等を想定して、その対向機のデバイス情報をMFP300にユーザが事前に登録する構成について説明する。
図27は実施形態6の動作を説明するための図である。
図27において、320はMFP300の表示部811に表示されるデバイス情報を登録するためのUIの一例である。ユーザは、このUI320を介して、既知のデバイス情報を事前にMFP300に登録することができる。このとき自動承認する機器として登録してもよいし、自動拒否する機器として登録してもよい。また、既に登録されているデバイス情報を手動で削除することも可能である。
実施形態6における動作を、図27を用いて説明する。
P2701:MFP300は、UI320に対するユーザからの操作に基づいて、デバイス情報を入力する。このデバイス情報は、MFP300への登録対象、あるいはMFP300からの削除対象となる。尚、この登録対象あるいは削除対象の指定は、UI320とは別途のUI(不図示)によって行う。
P2702:MFP300は、入力したデバイス情報を、登録先に登録する。この登録は、自動承認を許可する機器として、または自動拒否を許可する機器として行われる。あるいは、MFP300は、入力したデバイス情報に対応する、登録済のデバイス情報をこれらの登録先から削除する。
以上説明したように、実施形態6によれば、接続を行う対向機のデバイス情報を事前にMFPに登録したり、登録されている対向機のデバイス情報を削除することで、その後の接続に係る承認/拒否を容易に行うことができる。
尚、実施形態2、4、6における構成では、MFP300に設定されているMACアドレスフィルタリング(受信を許可するMACアドレスの登録)で登録されているMACアドレスの対向機のみ、WFD接続を自動承認するようにしても良い。
<実施形態7>
実施形態2乃至5において、不揮発性メモリ805に登録可能なデバイス情報の数が上限に達した場合、削除するデバイス情報は、最古(日付)のものとしているが、これに限定されない。例えば、登録されているデバイス情報の内、使用頻度/使用回数の低いデバイス情報、削除指示等の削除条件を用いて、その削除条件に該当する削除対象のデバイス情報を決定するようにしても良い。あるいは、ユーザが手動(外部入力)で削除対象のデバイス情報を選択するための選択画面を提示して、その選択操作に基づいて削除対象のデバイス情報を決定するようにしても良い。
以上のような種々の実施形態により、ユーザが意図しない通信相手装置からの接続を容易に防ぐとともに、接続を許可する場合の煩雑さを解消できる。尚、以上の実施形態は適宜組合せてもよい。即ち、通信相手装置のデバイス情報(通信状況、MAC アドレス、デバイス名、IPアドレス等)の1つまたは複数に基づき、当該装置が、ユーザが意図している装置である可能性が高い場合に接続要求を自動承認するので煩雑な操作を省略し容易に接続要求に対する接続を行うことができる。一方、当該装置が、ユーザが意図している装置でない可能性が高い場合には接続要求を承認するか否かユーザに選択させるか、あるいは自動拒否するので、意図しない装置からの接続を防止できる。
また、以上の実施形態において、対向機からの接続要求を承認する際、携帯型通信端末装置200のNFCユニット718またはBTユニット721と、MFP300のNFCユニット818またはBTユニット819とによって互いに通信することによって、MFP300が携帯型通信端末装置200から携帯型通信端末装置200のデバイス情報(MACアドレス、デバイス名、IPアドレス)を取得し、これがWLANユニット817を介して接続要求時に取得されるデバイス情報と一致している場合に当該接続要求を承認するようにしてもよい。このように、NFC通信またはBT通信によって接続要求に承認する場合、表示部811を不要とするかあるいは簡易なものとすることができる。また、NFC通信またはBT通信によって接続要求に承認する場合、所定時間経過しても対向機とのNFC通信またはBT通信が確立できなかった場合、接続要求を拒否するようにする。
また、実施形態4、5のように拒否リストを用いる際、承認リストを設けずに、拒否リストに登録されていない対向機について、接続要求に対して自動承認するようにしてもよい。
尚、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。また、プログラムを実行するコンピュータは、1つであってもよいし、複数のコンピュータが協働してプログラムを実行するものであってもよい。さらに、プログラムの一部を実行する回路等のハードウェアを設け、そのハードウェアと、ソフトウェアを実行するコンピュータが協働して、本実施形態で説明した処理を実行する場合であってもよい。