図1に、本願に係る第1実施形態として例示される通信システム1のブロック図を示す。通信システム1は、携帯電話10、第1MFP(Multifunction Peripheral)51ないし第3MFP53、第1アクセスポイント62、第2アクセスポイント63、第1サーバ71、第2サーバ81、基地局61を備える。携帯電話10、および、第1MFP51ないし第3MFP53は、既知の無線LAN端末装置としての機能を備える。また、第1MFP51ないし第3MFP53は、プリンタ機能、スキャナ機能、コピー機能、ファクシミリ機能などを備える多機能周辺装置である。また、第1MFP51ないし第3MFP53は、電話回線網100を使用した通信機能を備える。第1アクセスポイント62および第2アクセスポイント63は、既知の無線LANアクセスポイントとしての機能を備える。第1サーバ71は、インターネット70を介して第1アクセスポイント62に接続される。第2サーバ81は、基地局61およびインターネット80に接続される。
なお、携帯電話10と第1アクセスポイント62とは、無線LAN方式のインフラストラクチャーモード(複数の無線LAN端末装置が、アクセスポイントを介してデータ通信するモード)に準拠する無線通信(電波を用いたデータ通信)201を行うことが可能とされている。また、第1アクセスポイント62と第1サーバ71とは、インターネット70を介して通信可能とされている。すなわち、携帯電話10は、第1アクセスポイント62へアクセスし、無線LANのインフラストラクチャーモードに準拠する無線通信201を行える状態になれば、携帯電話10は、第1アクセスポイント62を介して、第1MFP51および第1サーバ71とデータ通信することが可能になる。同様に、携帯電話10と第2アクセスポイント63とは、無線通信202を行うことが可能とされている。携帯電話10は、無線通信202を行える状態になれば、第2アクセスポイント63を介して、第3MFP53および第2サーバ81とデータ通信することが可能になる。なお、無線LAN方式の例としては、例えばIEEE802.11a/b/g/nの規格で定められる通信方式が挙げられる。
携帯電話10の構成について説明する。図1に示すように、携帯電話10は、CPU(Central Processing Unit)11、記憶部12、無線送受信部15、無線アンテナ部16、ボタン入力部17、パネル18、携帯電話送受信部22、携帯電話アンテナ部23、GPS部24、コンパス部25、加速度センサ26、カメラ部27、を主に備えている。また、通話や音声入力を行うために、スピーカ3とマイク4とを備えている。
また、図10に、携帯電話10の概観図を示す。図10に示すように、携帯電話10の操作や通話がしやすいように、スピーカ3の開口部とマイク4の開口部は、パネル18の設置面に配置されている。また、スピーカ3の開口部とマイク4の開口部とが、使用者の口と耳の間程度離れるように、スピーカ3の開口部とパネル18とマイク4の開口部とは、携帯電話10の長手方向に並んで配置されている。また、パネル18の反対側の面には、カメラ部27が配置されている。
CPU11は、記憶部12に記憶されるプログラムに従って処理を実行する。以降、通信プログラム28やオペレーティングシステムなど、プログラムを実行するCPU11のことを、単にプログラム名でも記載する場合がある。例えば「通信プログラム28が」という記載は、通信プログラム28を実行するCPU11が」を意味する場合がある。なお、記憶部12は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、HDD(ハードディスク)、CPU11が備えるバッファなどが組み合わされて構成されている。無線送受信部15は、無線アンテナ部16を介して、無線LANのインフラストラクチャーモードに準拠する無線通信201および202を行う。そして、無線送受信部15により、各種のデータを構成するデジタル信号が送受信される。GPS部24は、GPS衛星からの電波を受信し、携帯電話10の物理的位置を示す位置情報を算出する部材である。なお、位置情報は、緯度、経度および高度の成分を有する。また、携帯電話送受信部22は、携帯電話アンテナ部23を介して、基地局61との間で携帯電話通信の方式に準拠する無線通信210を行う。記憶部12は、プログラム21を記憶する。プログラム21は、基本プログラム(図示省略)、通信プログラム28等を含む。基本プログラムは、携帯電話送受信部22に通信を実行させるためのプログラムや、無線送受信部15に無線通信201を実行させるためのプログラム等を含む。また基本プログラムは、GPS部24が算出した情報を各プログラムが取得するためのAPI(Application Programming Interface)を提供するプログラムでもある。また通信プログラム28は、後述する通信システム1の動作フローをCPU11に実行させるためのプログラムである。
また記憶部12は、設定値記憶領域12aおよびテーブル記憶領域12bを備える。設定値記憶領域12aには、後述する、所定時間、加速度の所定値、許容角度範囲、所定距離、所定半径などが記憶される。またテーブル記憶領域12bには、記憶テーブルTB1が記憶される。図6に、記憶テーブルTB1の一例を示す。記憶テーブルTB1は、第1MFP51ないし第3MFP53の各々ごとに、メモリ番号220を割り当てて、MFP識別情報230、MFP位置情報240、相対方向241、相対距離242、ステータス情報250、を対応付けて記憶する。MFP識別情報230は、第1MFP51ないし第3MFP53の各々に固有の情報である。MFP識別情報230は、例えば、MFPのIPアドレス232である。MFP名称231は、第1MFP51ないし第3MFP53の各々にMFPの使用者や管理者が割り当てた名称、あるいは、生産者が工場出荷時に割り当てた名称である。また、MFP位置情報240は、第1MFPないし第3MFP53の物理的位置を示す情報であり、緯度、経度および高度の成分を有する。なお、携帯電話10は、MFPから物理的位置を示す情報を受信し、その情報をそのまま、そのMFPのMFP位置情報240として、記憶テーブルTB1に記憶する。相対方向241は、携帯電話10の位置を基準とした第1MFP51ないし第3MFP53がどの方向に位置しているかを示す情報である。また、相対方向241は、水平成分(携帯電話10とMFPと相対位置を水平面に投影した場合の、携帯電話10を基準とした、MFPが位置する方向)と鉛直成分(携帯電話10とMFPと相対位置を、携帯電話10とMFPとを含む鉛直面と直交する鉛直面に投影した場合の、携帯電話10を基準とした、MFPが位置する方向)とを有する。相対距離242は、携帯電話10と、第1MFP51ないし第3MFP53との間の距離である。また、相対距離242は、水平成分(携帯電話10とMFPと相対位置を水平面に投影した場合の、携帯電話10とMFPとの間の距離)と鉛直成分(携帯電話10とMFPと相対位置を、携帯電話10とMFPとを含む鉛直面と直交する鉛直面に投影した場合の、携帯電話10とMFPとの間の距離)とを有する。
また、ステータス情報250は、MFPの装置仕様や、MFPの装置状態などを示す情報である。ステータス情報250は、用紙サイズ情報251、印刷タイプ情報252、印刷待ち件数情報253、を含んでいる。用紙サイズ情報251は、プリンタ19で使用される用紙のサイズを示す情報である。印刷タイプ情報252は、プリンタ19がカラー印刷とモノクロ印刷のどちらに設定されているかを示す情報である。印刷待ち件数情報253は、プリンタ19にスプールされている印刷ジョブの件数を示す情報である。
また、テーブル記憶領域12bには、表示テーブルTB2が記憶される。図7に、表示テーブルTB2の一例を示す。表示テーブルTB2は、バルーン情報とMFPとの対応を記憶しておくテーブルである。表示テーブルTB2は、画像位置261、MFP情報262、バルーン情報263を記憶する。画像位置261は、パネル18の表示領域内において、部分画像が表示されている位置(例:パネル18の右側端部など)を示す情報である。また、部分画像とは、パネル18に表示されている、カメラ部27により撮影された撮影画像内に含まれる様々な物体についての画像のうちの、第1MFP51ないし第3MFP53の画像である。また、部分画像は、利用者によって選択することができる画像であってもよい。MFP情報262は、画像位置261とMFP名称231との対応を示す情報である。バルーン情報263は、MFP名称231とバルーン情報B1ないしB3との対応を示す情報である。
ボタン入力部17、GPS部24、コンパス部25、加速度センサ26、カメラ部27は、携帯電話10の使用者による操作を受け付ける操作部である。ボタン入力部17は、タッチパネルとして、パネル18と一体に構成されている。パネル18は、携帯電話10の各種機能情報を表示する。コンパス部25は、携帯電話10の向きを取得する地磁気センサを備えている。加速度センサ26は、携帯電話10の加速度を計測するセンサである。カメラ部27は、CCD等により所定範囲を撮影して画像データを取得する部位である。なお、コンパス部25が取得した向きを示す情報や、加速度センサ26が計測した加速度や、カメラ部27が取得した画像データなどを各プログラムが取得するためのAPI(Application Programming Interface)を、基本プログラムが提供する。
第1MFP51の構成について説明する。第1MFP51は、CPU32、記憶部33、送受信部36、無線アンテナ部37、ボタン入力部38、パネル39、モデム40、電話回線接続部41、プリンタ19、スキャナ20、GPS部44、表示灯45、を主に備えている。これらの構成要素は、入出力ポート43を介して互いに通信可能とされている。
CPU32は、記憶部33に記憶されるプログラムや、送受信部36を介して送受信される各種信号などに従って、各機能の制御を行う。なお、記憶部33は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、HDD(ハードディスク)などが組み合わされて構成されているとしてもよい。
送受信部36は、第1アクセスポイント62との間で各種のデータを構成するデジタル信号を送受信する。なお、送受信部36と第1アクセスポイント62との間の通信は、無線通信および有線通信の何れであってもよい。
ボタン入力部38は、第1MFP51の各機能を実行するためのキーである。ボタン入力部38は、タッチパネルとして、パネル39と一体に構成されていてもよい。パネル39は、第1MFP51の各種機能情報を表示する。プリンタ19は、印刷を実行する部位である。スキャナ20は、読み取りを実行する部位である。GPS部44は、第1MFP51の位置情報を取得する部位である。表示灯45は、LED(Light Emitting Diode)等を備えており、第1MFP51の各種ステータスを使用者に報知するための部位である。モデム40は、ファクシミリ機能によって送信する原稿データを、電話回線網100に伝送可能な信号に変調して電話回線接続部41を介して送信したり、電話回線網100から電話回線接続部41を介して入力された信号を受信し、原稿データへ復調するものである。なお、第2MFP52および第3MFP53の構成は、第1MFP51と同様であるため、ここでは詳細な説明は省略する。
第1サーバ71の構成について説明する。第1サーバ71は、CPU72、記憶部73、通信部74、を主に備えている。第1サーバ71は、ネットワークにおいて、クライアント装置に対し、自身の持っている機能やデータを提供する装置である。CPU72は、各機能の制御を行う。記憶部73は、各種のデータを記憶する。通信部74は、様々な情報を携帯電話10との間で通信する。
第2サーバ81の構成について説明する。第2サーバ81は、CPU82、記憶部83、通信部84、を主に備えている。第2サーバ81は、インターネット80を介して、第1アクセスポイント62および第2アクセスポイント63に接続される。また第2サーバ81は、基地局61および無線通信210を介して、携帯電話10と接続可能とされている。なお、第2サーバ81のその他の構成は、上述した第1サーバ71の構成と同様であるため、ここでは詳細な説明は省略する。
第1実施形態に係る通信システム1の動作を、図2ないし図9を用いて説明する。図2および図3を用いて、携帯電話10で行われるフローを説明する。図2および図3のフローは、携帯電話10の通信プログラム28を起動することに応じて、実行が開始される。なお、第1実施形態では、使用者が、データ通信の対象としたいMFPにカメラ部27を向けると、携帯電話10が、カメラ部27で撮影されたMFPをデータ通信の対象として、データ通信を行う、という実施形態である。例として、図5に示すような形態で第1MFP51ないし第3MFP53が配置されている場合に、方向情報V1の方向にカメラ部27が向けられる場合の動作を、以下に説明する。
図2のS112において、利用者が携帯電話10のボタン入力部17を操作することで、通信プログラム28を起動させると、カメラ部27が動作を開始し、カメラ部27で画像がリアルタイムに取得される。そしてCPU11は、パネル18へ撮影画像を表示させる。図5の例では、カメラ部27の画角A0の範囲内の画像データが、カメラ部27によって取得される。画角A0は、カメラ部27で撮影される画像データに写される光景の範囲を表す角度である。
また、図5の配置において、カメラ部27で撮影された撮影画像の例を、図8に示す。図8は、撮影画像がパネル18に表示された状態を示している。図8に示すように、第1MFP51ないし第3MFP53の部分画像が、パネル18に表示される。
S113において、CPU11は、APIを用いてコンパス部25から携帯電話10の向きを示す情報を取得する。そして、取得した情報を用いて、携帯電話10のカメラ部27の位置を基準とした、携帯電話10の厚み方向の中心軸(カメラ部27から厚み方向に伸びる軸)(図10参照)の方向を算出する。すなわち、携帯電話10が使用者から受け付けた撮像操作が、カメラ部27の位置を基準として、何れの方向を撮影する操作であったのかを示す情報を算出する。そして、算出した情報を、方向情報として記憶部12に記憶させる。すなわち、方向情報は、カメラ部27が向いている方向を示す情報である。図5の例では、方向情報V1が取得される。なお、方向情報は、水平成分(コンパス部25の基準位置と携帯電話10のスピーカ3側の先端との相対位置を水平面に投影した場合の、コンパス部25の基準位置を基準とした、携帯電話10のスピーカ3側の先端が位置する方向)を有する。
続いて、S114において、CPU11は、アクセスポイントを探索する。具体的には、無線送受信部15を用いて、無線LANのプローブ要求をブロードキャストする。そして、無線送受信部15の電波が届く範囲のアクセスポイント(例えば、第1アクセスポイント62)が返信するプローブ応答に含まれるSSID(Service Set Identifier)を受信し、一時的に、CPU11のワーク領域(記憶部12のRAM、または、バッファ)に記憶する。S116において、CPU11は、取得したSSIDを用いて、第1アクセスポイント62または第2アクセスポイント63へアクセスし、無線LAN方式のインフラストラクチャーモードに準拠する無線通信201または202を行える状態になる。
S118において、CPU11は、無線送受信部15を用いて、無線LAN方式のインフラストラクチャーモードに準拠する無線通信201により、第1データをブロードキャストする(第1データは、第1データがブロードキャストされていることを示すために、第1データの受信先を示す情報としてブロードキャストアドレスを含んでいる)。すると、アクセスポイント経由で、第1アクセスポイント62にアクセスしている無線クライアント(すなわち、第1MFP51ないし第3MFP53を含む無線クライアント)が第1データを受信する。なお、第1データは、第1データの送信元を示すために携帯電話10の識別情報(IPアドレス)を含んでいる。また、第1データは、通信プログラム28に従って携帯電話10が送信するデータを適切に処理し、返信することが可能であるか否かを問い合わせるための、問い合わせ情報(第1データであることを示す情報でもある。また、具体的な例では、SNMP(Simple Network Management Protocol)Requestコマンドである)を含んでいる。
S120において、CPU11は、アクセスポイントに接続されているMFPから、第2データの返信を受信する。具体的には、受信先を示すために携帯電話10の識別情報を含み、送信元を示すためにMFPの識別情報(IPアドレス)を含み、第1データに対する返信である旨を携帯電話10に報知するための、返信情報(第2データであることを示す情報でもある。また、具体的な例では、SNMP Replyコマンドである)を含み、ステータス情報250を含んでいるデータを受信する。S122において、CPU11は、MFPの識別情報を、第2データから抽出する。また、第2データは、MFPの物理的位置を示す情報も含んでいるため、CPU11は、MFPの物理的位置を示す情報も、第2データから抽出する。そして、抽出した識別情報および物理的位置を示す情報を、そのMFPのIPアドレス232およびMFP位置情報240として記憶テーブルTB1に一時的に記憶させる。
S123において、CPU11は、プローブ応答を受けた全てのアクセスポイントに接続したか否かを判断する。全てのアクセスポイントに接続していない場合(S123:NO)にはS124へ進み、未接続の新たなアクセスポイントへ接続した上で、S118へ戻る。一方、全てのアクセスポイントに接続した場合(S123:YES)には、S125へ進む。
S125において、CPU11は、相対方向および相対距離を算出する。相対方向および相対距離の算出は、記憶部12に記憶されている、携帯電話10の位置情報とMFP位置情報240とに基づいて行われる。算出された相対方向および相対距離は、そのMFPの相対方向241および相対距離242として記憶テーブルTB1に一時的に記憶される。
図5の例では、第1MFP51の相対方向241=「D1」、第2MFP52の相対方向241=「D2」、第3MFP53の相対方向241=「D3」、が各々取得され、記憶テーブルTB1(図6)に記憶される。また、第1MFP51との相対距離242=「R1」、第2MFP52との相対距離242=「R2」、第3MFP53との相対距離242=「R3」、がそれぞれ算出され、記憶テーブルTB1(図6)に記憶される。
S127において、CPU11は、第2データを返信してきた全てのMFPについて、相対方向241および相対距離242を算出したか否かを判断する。全てのMFPについて算出を行っていない場合(S127:NO)には、S129へ進む。S129において、CPU11は、未算出のMFPを選択した上で、S125へ戻る。これにより、第2データを返信してきた全てのMFPについて、相対方向241および相対距離を取得することができる。そしてS21(図2)へ進む。
一方、S127において、全てのMFPについて算出を行った場合(S127:YES)には、S136へ進む。S136においてCPU11は、GPS部24が算出した、携帯電話10の位置情報を取得する。そして、取得した携帯電話10の位置情報を、記憶部12に一時的に記憶させる。
S138において、CPU11は、記憶部12が記憶している方向情報と、携帯電話10の位置情報と、MFPの位置情報とに基づいて、対象MFPを選択する。対象MFPは、データ通信の対象となるMFPである。
図3を用いて、対象MFPを選択するフローを説明する。S312において、CPU11は、カメラ部27で撮影された撮影画像上における、MFPの部分画像の画像位置を特定する。すなわち、パネル18に表示される撮影画像上の何れの箇所に、MFPが写っているかを特定する。部分画像の画像位置は、例えば撮影画像上の座標データとして表されてもよい。
部分画像の画像位置の特定方法の具体例を説明する。例として、相対方向と方向情報との角度差に基づいて、部分画像の画像位置を特定する方法を、図5および図8を用いて説明する。図5の例では、方向情報V1と、第2MFP52の相対方向241=「D2」とが一致しており、角度差がない。よって図8に示すように、第2MFP52の部分画像の画像位置は、画像位置261=「P2」(パネル18の中央)に特定される。また図5の例では、方向情報V1と、第1MFP51の相対方向241=「D1」とは、角度差A1を有している。よって図8に示すように、第1MFP51の部分画像の画像位置は、画像位置261=「P1」(パネル18の左側)に特定される。また図5の例では、方向情報V1と、第3MFP53の相対方向241=「D3」とは、角度差A2を有している。また、角度差A2はA1よりも大きい。よって図8に示すように、第3MFP53の部分画像の画像位置は、画像位置261=「P3」(パネル18の右側かつ端部)に特定される。
S313において、CPU11は、特定された部分画像の画像位置を、MFPと対応付けて表示テーブルTB2に記憶する。図5に示す第1MFP51ないし第3MFP53の配置例の場合には、図7の例に示すように、部分画像の画像位置261が表示テーブルTB2に記憶される。
S314において、CPU11は、部分画像の画像位置に対応する位置にバルーン情報を合成した、合成画像を生成する。そして、生成した合成画像をパネル18に表示する。バルーン情報は、GUI(Graphical User Interface)で使用される表示形態の一種である。バルーン情報は、MFPに関する各種の情報を表示する。
図9に、パネル18に表示された合成画像の一例を示す。図9の例では、「部分画像の画像位置に対応する位置」が、部分画像の画像位置の周囲である場合を説明する。第1MFP51の部分画像の画像位置261=「P1」に対応する位置(P1の右側であって、第1MFP51の部分画像に重ならない位置)には、第1MFP51に関する情報を報知するためのバルーン情報B1が表示される。図9の例では、バルーン情報B1は、MFP名称231、IPアドレス232、印刷タイプ情報252、用紙サイズ情報251、印刷待ち件数情報253、および印刷ボタンPB1を表示する。印刷ボタンPB1は、第1MFP51で印刷を実行する旨を入力するためのボタンである。
同様にして、第2MFP52の部分画像の画像位置261=「P2」に対応する位置(P2の左側であって、第2MFP52の部分画像に重ならない位置)には、バルーン情報B2が表示される。また、第3MFP53の部分画像の画像位置261=「P3」に対応する位置(P3の左側であって、第3MFP53の部分画像に重ならない位置)には、バルーン情報B3が表示される。
また、S314において、CPU11は、相対距離242が近くなることに応じて、バルーン情報を大きく表示させる。図5の例では、相対距離242=「R2」が最も遠く、「R3」、「R1」の順番で相対距離が近くなっている。よって、図9の例に示すように、バルーン情報B2、B3、B1の順番で、バルーン情報が大きく表示される。
また、S314において、CPU11は、無線通信を行うことができないMFPのバルーン情報を、無線通信を行うことが可能なMFPのバルーン情報と異なる態様で表示させる。無線通信を行うことができないMFPの例としては、現在接続中のネットワークと異なるネットワークに接続されているMFPが挙げられる。例えば、図1の通信システム1において、携帯電話10が無線通信201を使用して第1アクセスポイント62に接続されている場合には、第1MFP51および第2MFP52とは無線通信が可能とされている。しかし、第2アクセスポイント63に属している第3MFP53とは、無線通信を行うことは出来ない。この場合には、図9の例に示すように、無線通信を行うことができない第3MFP53のバルーン情報B3に含まれる印刷ボタンPB3が、グレーアウトされる(ボタンが灰色に表示され、選択不可状態とされる)。これにより、データ通信をすることができないMFPを、パネル18上で目視によって認識できるため、利用者の利便性を高めることができる。
S316において、CPU11は、印刷ボタンの選択が実行されたか否かを判断する。印刷ボタンの選択は、パネル18がタッチパネルである場合には、印刷ボタンが直接タッチされることで行われるとしてもよい。または、ボタン入力部17の操作により印刷ボタンの選択が行われるとしてもよい。印刷ボタンの選択が実行されない場合(S316:NO)にはS320へ進み、実行された場合(S316:YES)にはS318へ進む。
S318において、CPU11は、選択された印刷ボタンに関連しているバルーン情報を特定する。そして、表示テーブルTB2(図7)を用いて、特定されたバルーン情報263に対応するMFP名称231を決定する。これにより、利用者によって選択された印刷ボタンに関連しているMFPを、対象MFPとして決定することができる。
S320において、CPU11は、所定時間内にキャンセル動作が実行されたか否かを判断する。キャンセル動作は、対象MFPの特定を取りやめる動作である。キャンセル動作は、様々な動作であってよい。例えば、印刷ボタンの選択を実行してから所定時間内に、カメラ部27の向きを変えることで、対象MFPを画角A0の範囲外に移動させる動作であってもよい。これにより、印刷を実行させるMFPをパネル18からフレームアウトさせることで、印刷のキャンセルを実行することが可能となる。またキャンセル動作は、ボタン入力部17のキャンセルボタンを押下する動作や、パネル18の任意の位置をタッチする動作であるとしてもよい。キャンセル動作が実行された場合(S320:YES)には、S316へ戻る。一方、キャンセル動作が実行されない場合(S320:NO)には、フローを終了し、S140(図2)へ進む。
S140において、CPU11は、対象MFPとの間でデータ通信を実行する。具体的には、記憶テーブルTB1から対象MFPのMFP識別情報230(IPアドレス)を読み出して、受信先を示すために対象MFPのIPアドレスを含んだデータを、対象MFPへの送信データとして無線送受信部15に送信させ、対象MFPのIPアドレスを含んでいる(すなわち、対象MFPが送信した)データを受信データとして無線送受信部15に受信させるデータ通信を実行する。なお、データ通信にて扱うデータは、様々なデータが考えられる。例えば、無線送受信部15に処理データを対象MFPへ送信させ、対象MFPに所定の処理を実行させてもよい。具体的には、無線送受信部15に印刷データを対象MFPへ送信させ、対象MFPにプリンタ19を用いた印刷データの印刷をさせてもよい。また、無線送受信部15にスキャン指示を対象MFPへ送信させ、対象MFPがスキャナ20を用いて生成したスキャンデータを、無線送受信部15に対象MFPから受信させるとしてもよい。また、無線送受信部15にIP電話指示を対象MFPへ送信させ、対象MFPのモデム40および電話回線接続部41を介して、電話回線の先に存在する電話装置やファクシミリ装置を相手に、通話やファクシミリ通信を実行するとしてもよい。
図4を用いて、第1MFP51ないし第3MFP53で行われるフローを説明する。S211において、CPU32は、携帯電話10からブロードキャストされた第1データを受信したか否かを判断する(具体的には、受信先を示す情報としてブロードキャストアドレスを含み、かつ、第1データであることを示す情報を含むデータを受信したか否かを判断する)。受信していない場合(S211:NO)にはS219へ進み、受信した場合(S211:YES)にはS213へ進む。S213において、CPU32は、第2データを携帯電話10へ返信する。
S219において、CPU32は、印刷データ等の処理データを携帯電話10から受信したか否かを判断する。受信していない場合(S219:NO)にはS211へ戻り、受信した場合(S219:YES)にはS221へ進む。S221において、CPU32は、処理データの処理を実行する。例えば、処理データが印刷データである場合には、プリンタ19を用いて印刷データを印刷する処理を実行する。そしてS211へ戻る。
第1実施形態に係る通信システム1の動作の具体例を、図5に示すような形態で第1MFP51ないし第3MFP53が配置されている場合を説明する。また、第1MFP51が対象MFPとして選択される場合を説明する。また、対象MFPに印刷データが送信される場合を説明する。
使用者が携帯電話10のボタン入力部17を操作し、通信プログラム28を起動することに応じて、図2のフローが開始される。利用者が第1MFP51ないし第3MFP53へカメラ部27を向けることによって、図8に示すように、第1MFP51ないし第3MFP53の部分画像が、パネル18に表示される(S112)。続いて、携帯電話10は、方向情報を取得する(S113)。利用者が第1MFP51に向かってカメラ部27を向けた場合を説明しているため、図5に示すように、方向情報V1が取得される。続いて、携帯電話10は、第1アクセスポイント62へアクセスし、無線LANのインフラストラクチャーモードに準拠する無線通信201を行える状態になる(S116)。続いて、携帯電話10は、第1データを第1MFP51および第2MFP52へブロードキャストする(S118)。すると、第1MFP51および第2MFP52は、第1データを受信し(S211:YES)、第2データを携帯電話10へ返信する(S213)。携帯電話10は、第1MFP51および第2MFP52から第2データを受信し(S120:YES)、記憶部12の記憶テーブルTB1に記憶させる(S122)。
次に携帯電話10は、第2アクセスポイント63へ、インフラストラクチャーモードの無線通信202を実行する(S116)。携帯電話10は、第1データを第3MFP53へブロードキャストし(S118)、第3MFP53から受信した第2データを記憶テーブルTB1に記憶させる(S120、S122)。よって、図6に示すように、MFP識別情報230、MFP位置情報240およびステータス情報250が、記憶テーブルTB1に記憶される。
携帯電話10は、第1MFP51ないし第3MFP53の各々について、相対方向および相対距離を算出する(S125)。よって、図5に示すように、第1MFP51の相対方向=D1と、第2MFP52の相対方向=D2と、第3MFP53の相対方向=D3と、が算出される。また、第1MFP51の相対距離=R1、第2MFP52の相対距離=R2、第3MFP53の相対距離=R3、がそれぞれ算出される。そして、図6に示すように、算出された相対方向および相対距離は、相対方向241および相対距離242として記憶テーブルTB1に記憶される。
第1MFP51ないし第3MFP53の全てのMFPについて、相対方向および相対距離が算出されると(S127:YES)、携帯電話10は、GPS部24が算出した、携帯電話の位置情報を取得する(S136)。
携帯電話10は、カメラ部27で撮影された撮影画像上における、第1MFP51ないし第3MFP53の部分画像の画像位置を特定する(S312)。そして携帯電話10は、図9に示すように、撮影画像上にバルーン情報を合成した合成画像を、パネル18に表示する(S314)。利用者が印刷ボタンPB1をタッチすることで、印刷ボタンPB1が選択される(S316:Y)。携帯電話10は、表示テーブルTB2(図7)を用いて、印刷ボタンPB1に関連している第1MFP51を対象MFPとして特定する(S318)。携帯電話10は、第1MFP51とデータ通信を実行し、印刷データを送信する(S140)。第1MFP51は、印刷データを受信し(S219:YES)、プリンタ19を用いて印刷データを印刷する(S221)。そしてフローを終了する。
以上説明した、第1実施形態の説明例に係る通信システム1の効果を説明する。通信システム1では、利用者が選択を希望するMFPの部分画像を、カメラ部27を用いて携帯電話10に入力することにより、当該MFPを通信先として選択することができる。これにより、通信を希望するMFPの識別情報を、利用者が知っておいたり、調べておき、その識別情報を携帯電話10へ手動入力する必要がなくなる。よって、簡易な手続きで対象MFPを選択することが可能となる。
また通信システム1では、バルーン情報を表示する際に、相対距離242が近くなることに応じて、バルーン情報を大きく表示させる。これにより、相対方向241のみならず、相対距離242というパラメータを合わせて用いることで、パネル18上におけるMFPの部分画像の画像位置をより特定しやすくすることが可能となる。
また通信システム1では、対象MFPを決定する際に、使用者がカメラ部27を向けた方向に存在するMFPが複数存在する場合に、それらMFPを示すバルーン情報をパネル18に表示させ、使用者にバルーン情報を選択させている。すなわち、相対方向241のみを用いては1の対象MFPを決定することができない場合においても、適切な1の対象MFPを決定することが可能となる。
第1実施形態の変形例を説明する。第1実施形態の変形例は、アドホックモードの無線通信が使用される形態である。第1実施形態では、携帯電話10が無線LANのインフラストラクチャーモードに準拠する無線通信201によって、第1アクセスポイント62経由で、第1MFP51および第2MFP52との通信を行っていた。また、無線通信202によって、第2アクセスポイント63経由で、第3MFP53との通信を行っていた。この形態に替えて、携帯電話10がBluetooth(登録商標)に準拠する無線通信によって、第1MFP51ないし第3MFP53と直接通信を行う構成であってもよい。この場合、第1MFP51ないし第3MFP53はBluetoothに準拠した探索に応答可能な状態である。
当該変形例の動作フローは、第1実施形態の通信システムの動作フロー(図2ないし図3)と同様である。なお、図2のフローを当該変形例の通信システムの動作に適合させるためには、S114を「通信可能なMFPを探索」へ置き換えればよい。また、S116を、「MFPへ接続」へ置き換えればよい。また、S123を、「プローブ応答を受けた全てのMFPに接続したか?」へ置き換えればよい。また、S124を、「新たなMFPへ接続」へ置き換えればよい。
当該変形例に係る通信システムの動作の具体例を説明する。例として、図5に示すように、第1MFP51ないし第3MFP53が配置されている場合に、第1MFP51が対象MFPとして選択される場合を説明する。
通信プログラム28を起動することに応じて、図2のフローが開始される。利用者がカメラ部27を操作することによって、図8に示すように、第1MFP51ないし第3MFP53の部分画像が、パネル18に表示される(S112)。携帯電話10は、アドホックモードで接続可能なMFPを探索し、第1MFP51ないし第3MFP53を検出する(S114)。携帯電話10は、まず第1MFP51へアドホックモードの無線通信201aを接続する(S116)。そして、携帯電話10が第1データを第1MFP51へ送信すると(S118)、第1MFP51は第2データを返信する(S213)。携帯電話10は、第2データを受信し、記憶テーブルTB1に記憶させる(S122)。
全てのMFPに接続していないため(S123:NO)、携帯電話10は、第1MFP51との無線通信を切断し、第2MFP52との無線通信を接続する(S124)。そして、携帯電話10が第1データを第2MFP52へ送信すると(S118)、第2MFP52は第2データを返信する(S213)。携帯電話10は、第2データを受信し、記憶テーブルTB1に記憶させる(S122)。
まだ第3MFP53に接続していないため(S123:NO)、携帯電話10は、第2MFP52との無線通信を切断し、第3MFP53との無線通信を接続する(S124)。そして、携帯電話10が第1データを第3MFP53へ送信すると(S118)、第3MFP53は第2データを返信する(S213)。携帯電話10は、第2データを受信し、記憶テーブルTB1に記憶させる(S122)。これにより、第1MFP51ないし第3MFP53の全てから、第2データを受信することができる。
携帯電話10は、第1MFP51ないし第3MFP53の各々について、相対方向241および相対距離242を算出する(S125)。また携帯電話10は、コンパス部25を用いて、方向情報を取得する(S134)。また携帯電話10は、GPS部24を用いて、携帯電話10の位置情報を取得する(S136)。携帯電話10は、カメラ部27で撮影された撮影画像上における、第1MFP51ないし第3MFP53の部分画像の画像位置を特定する(S312)。
また、S314において、撮影画像上にバルーン情報を合成した合成画像を、パネル18に表示させる(S314)。また、S314の時点では、携帯電話10が無線通信を使用して第3MFP53に接続されている。よって、第3MFP53とは無線通信が可能であるが、第1MFP51および第2MFP52とは無線通信を行うことができない状態とされている。よって、印刷ボタンPB1およびPB2がグレーアウトした状態で、パネル18上に表示される。
以上説明したように、第1実施形態の変形例に係る通信システムでは、アドホックネットワークを形成することが可能である。アドホックネットワークでは、第1アクセスポイント62および第2アクセスポイント63の介在なしに、第1MFP51ないし第3MFP53を携帯電話10に接続することができる。よって、第1アクセスポイント62や第2アクセスポイント63のようなインフラを持たない場所においても、ネットワークを構築することが可能となる。
第2実施形態を説明する。第2実施形態は、図1に例示される通信システム1において、第1サーバ71を使用した形態である。第1実施形態において携帯電話10で行われていた処理が、第2実施形態では、サーバと携帯電話10で分業して行われる。また、第1サーバ71の記憶部73には、記憶テーブルTB1が記憶される。第2実施形態における通信システム1の動作を、図11および図12のフローチャートを用いて説明する。図11は、携帯電話10で行われるフローである。図12は、第1サーバ71で行われるフローである。
携帯電話10で行われるフローを説明する。利用者が携帯電話10で通信プログラム28を起動することに応じて、図11のフローが開始される。S612において、携帯電話10のCPU11は、パネル18へ撮影画像を表示させる。S613においてCPU11は、方向情報を取得し、第1サーバ71へ送信する処理を無線送受信部15に実行させる。S614において、CPU11は、アクセスポイントを探索する。S616において、CPU11は、第1アクセスポイント62または第2アクセスポイント63へ、インフラストラクチャーモードの無線通信を接続する。S618において、CPU11は、無線送受信部15を用いて、第1データをブロードキャストする。S620において、CPU11は、MFPから受信した第2データを、第1アクセスポイント62およびインターネット70を介して、第1サーバ71へ送信する処理を無線送受信部15に実行させる。
S623において、CPU11は、プローブ応答を受けた全てのアクセスポイントに接続したか否かを判断する。全てのアクセスポイントに接続していない場合(S623:NO)にはS624へ進み、未接続の新たなアクセスポイントへ接続した上で、S618へ戻る。一方、全てのアクセスポイントに接続した場合(S623:YES)には、S636へ進む。
S636においてCPU11は、GPS部24に携帯電話10の位置情報を取得させ、無線送受信部15に位置情報を第1サーバ71へ送信させる。S638において、CPU11は、対象MFPを特定する。なお、S638における対象MFPを特定するフローの内容は、図3のフローにおけるS314ないしS320のステップの内容と同様であるため、ここでは詳細な説明は省略する。S640において、CPU11は、対象MFPとの間でデータ通信を実行する。そして、携帯電話10で行われるフローが終了する。
第1サーバ71で行われるフローを、図12を用いて説明する。S613bにおいてCPU72は、方向情報を携帯電話10から受信する。S620bにおいて、第1サーバ71のCPU72は、携帯電話10から第2データを受信する。S622bにおいて、CPU72は、MFP位置情報240、MFP識別情報230およびステータス情報を、第2データから抽出する。そして抽出した情報を、記憶部73の記憶テーブルTB1に記憶する。S625bにおいて、CPU72は、相対方向241および相対距離242を算出する。
S627bにおいて、CPU72は、全てのMFPについて、相対方向241および相対距離242を算出したか否かを判断する。全てのMFPについて算出を行っていない場合(S627b:NO)には、S629bへ進み、未算出のMFPを選択した上で、S625bへ戻る。一方、S627bにおいて、全てのMFPについて算出を行った場合(S627b:YES)には、S634bへ進む。S636bにおいてCPU72は、携帯電話10の位置情報を、携帯電話10から受信する。S639bにおいてCPU72は、カメラ部27で撮影された撮影画像上における、MFPの部分画像の画像位置を特定する。S641bにおいてCPU72は、特定した画像位置を携帯電話10へ送信する処理を通信部74に実行させる。そして、第1サーバ71で行われるフローが終了する。なお、図11および図12の各ステップにおける詳細な動作内容は、第1実施形態で説明した内容と同様であるため、ここでは詳細な説明は省略する。
以上説明したように、第2実施形態の説明例に係る通信システム1では、相対方向および相対距離を取得する処理や、部分画像の画像位置を特定する処理や、対象MFPを特定する処理などの一部を、第1サーバ71で行うことができる。よって、携帯電話10や第1MFP51ないし第3MFP53における、処理の負担を軽減することが可能となる。
第3実施形態を説明する。第3実施形態は、図1に例示される通信システム1において、第2サーバ81を使用した形態である。第1実施形態において携帯電話10で行われていた処理が、第3実施形態では、第2サーバ81と携帯電話10で分業して行われる。第3実施形態における通信システム1の動作を、図13および図14のフローチャートを用いて説明する。図13は、携帯電話10で行われるフローである。図14は、第2サーバ81で行われるフローである。
携帯電話10で行われるフローを説明する。利用者が携帯電話10で通信プログラム28を起動することに応じて、図13のフローが開始される。S712において、携帯電話10のCPU11は、パネル18へ撮影画像を表示させる。S714においてCPU11は、方向情報を取得する。S716においてCPU11は、GPS部24を用いて、携帯電話10の位置情報を取得する。そして、携帯電話送受信部22、無線通信210および基地局61を介して、携帯電話10の位置情報を第2サーバ81へ送信する処理を、無線送受信部15に実行させる。
S720において、CPU11は、携帯電話10の周囲に位置するMFPについてのMFP識別情報230およびMFP位置情報240を、第2サーバ81から受信する。なお、S725、S738、S740の各ステップにおける詳細な動作内容は、第1実施形態で説明したS125、S138、S140(図2)の各ステップの内容と同様であるため、ここでは詳細な説明は省略する。
第2サーバ81で行われるフローを、図14を用いて説明する。S720bにおいて、第2サーバ81のCPU82は、第1MFP51ないし第3MFP53から、MFP識別情報230およびMFP位置情報240を受信する。S722bにおいて、CPU82は、MFP位置情報240およびMFP識別情報230を、記憶部83の記憶テーブルTB1に記憶する。これにより、各MFPのMFP位置情報240およびMFP識別情報230が、第2サーバ81へアップロードされる。なお、第2サーバ81へのアップロード動作は、利用者の操作により行われてもよいし、定期的に自動で行われるとしてもよい。
S734bにおいてCPU82は、携帯電話10の位置情報を携帯電話10から受信したか否かを判断する。受信していない場合(S734b:NO)にはS734bへ戻り待機し、受信した場合(S734b:YES)にはS736bへ進む。S736bにおいてCPU82は、受信した携帯電話10の位置情報を、記憶部83に記憶する。
S738bにおいてCPU82は、携帯電話10の位置情報と、MFP位置情報240とに基づいて、携帯電話10を中心とする所定半径内に存在するMFPを検索する。
S741bにおいてCPU82は、検索されたMFPについてのMFP識別情報230およびMFP位置情報240を、記憶部83から読み出す。そして、読み出したMFP識別情報230およびMFP位置情報240を、携帯電話10へ送信する処理を、通信部84に実行させる。
以上説明したように、第3実施形態の説明例に係る通信システム1では、携帯電話10の周囲に位置するMFPについてのMFP識別情報230およびMFP位置情報240を取得する処理を、第2サーバ81で行うことができる。よって、携帯電話10や第1MFP51ないし第3MFP53における、処理の負担を軽減することが可能となる。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。以下に変形例を説明する。
S312(図3)において、パネル18に表示されている撮影画像上におけるMFPの部分画像の画像位置を特定する際には、画像認識処理を用いても良い。画像認識処理では、CPU11は、撮影画像上における各々の物体の形状を分析する。そして、撮影画像上の何れの箇所に、MFPの形状が写っているかを特定する。これにより、MFPの部分画像の画像位置を、より正確に特定することが可能となる。
また、S314において、無線通信を行うことができないMFPの印刷ボタンをグレーアウト表示して選択不可状態とする処理を説明したが、この処理に限られない。無線通信を行うことができないMFPの印刷ボタンが選択された場合には、当該印刷ボタンに対応するMFPと無線通信を行うことができるように、無線通信の通信先を切り替える処理を行うとしてもよい。例えば、図1の通信システム1において、無線通信201による第1アクセスポイント62への接続が行われているために、第3MFP53と無線通信を行うことが出来ない場合を説明する。この場合に、図9に示すパネル18において、グレーアウトされている印刷ボタンPB3を利用者がタッチすると、CPU11は、無線通信201による第1アクセスポイント62への接続を切断するとしてもよい。そして、無線通信202を用いて第2アクセスポイント63に接続しなおし、第3MFP53と無線通信を行うことを可能にするとしてもよい。これにより、印刷データを第3MFP53へ送信し、第3MFP53のプリンタ19を用いて印刷データを印刷することが可能となる。
また、S314において、無線通信を行うことができないMFPについてのバルーン情報の表示形態は、様々な形態であってよい。例えば、無線通信を行うことができないMFPの印刷ボタンを、パネル18に表示させないとする形態であってもよい。
また、図9において、「部分画像の画像位置に対応する位置」が、画像位置の周囲である場合を例として説明したが、この形態に限られない。「部分画像の画像位置に対応する位置」が、画像位置と重なる位置であってもよい。この場合、例えば図9において、第1MFP51の画像位置261=「P1」上であって、第1MFP51の部分画像と重なる位置に、バルーン情報B1が表示されるとしてもよい。
S318において、対象MFPを決定する方法は、バルーン情報を用いた方法に限られない。部分画像自体を用いて、対象MFPを決定してもよい。この場合、図3のフローにおいて、S314ないしS318を、以下に説明するように変更すればよい。S314のステップ(部分画像の画像位置に対応する位置にバルーン情報を合成するステップ)は、実行せずにスキップする。S316へ進むと、CPU11は、MFPの部分画像の選択が実行されたか否かを判断する。具体的にはCPU11は、ボタン入力部17を用いて、選択画像の選択操作を受け付ける。選択画像とは、パネル18に表示されている、カメラ部27により撮影された撮影画像内に含まれる様々な物体についての画像のうち、利用者により選択された画像である。選択画像の選択操作は、ボタン入力部17がタッチパネルとして機能する場合には、選択画像が利用者により直接タッチされることで行われるとしてもよい。選択画像の選択操作が実行されない場合(S316:NO)にはS320へ進み、実行された場合(S316:YES)にはS318へ進む。S318において、CPU11は、選択された選択画像が、部分画像(第1MFP51ないし第3MFP53の画像)であるか否かを判断する。判断方法の具体例としては、利用者によりタッチされた位置を、選択画像の画像位置として算出する。そして、表示テーブルTB2(図7)を用いて、選択画像の画像位置が、部分画像の画像位置261に対応するか否かを判断する。対応すると判断される場合には、特定された画像位置261に対応するMFP名称231を決定する。これにより、利用者によって選択された部分画像に関連しているMFPを、対象MFPとして決定することができる。
また、バルーン情報を用いた方法および部分画像自体を用いる方法を併せて用いることで、対象MFPを決定してもよい。この場合、図3のフローのS316において、CPU11は、印刷ボタンまたはMFPの部分画像の選択が実行されたか否かを判断するとすればよい。これにより、利用者によって選択された印刷ボタンまたは部分画像に関連しているMFPを、対象MFPとして決定することができる。
また、表示テーブルTB2(図7)を用いて、特定されたバルーン情報に対応するMFP名称231を決定する方法(S318)には、様々な方法があってよい。例えば、CPU11は、選択された印刷ボタンに関連している画像位置261を特定するとしてもよい。そして、表示テーブルTB2(図7)を用いて、特定された画像位置261に対応するMFP名称231を決定するとしてもよい。
また、第2実施形態において、第1サーバ71がMFP位置情報240、MFP識別情報230、携帯電話10の位置情報などを取得する経路は様々であってよい。第2実施形態では、第1サーバ71は、MFP位置情報240およびMFP識別情報230を含んだ第2データを、携帯電話10から受信するとしたが、この形態に限られない。例えば、第1サーバ71の記憶部73に、第1MFP51ないし第3MFP53の各々についてのMFP位置情報240が、予め記憶されているとしてもよい。そして第1サーバ71は、携帯電話10の位置情報のみを携帯電話10から受信するとしてもよい。この場合、第1サーバ71は、携帯電話10の位置情報とMFP位置情報240とを比較することで、携帯電話10の周囲に存在するMFPを検索するとすればよい。これにより、第1サーバ71に携帯電話10の位置情報を送信することで、携帯電話10の周囲に存在するMFPについてのMFP位置情報240および識別情報を、第1サーバ71から受け取ることが可能となる。よって、第1MFP51ないし第3MFP53が、GPS部44等の位置測定機器を備える必要がないため、構成を簡略化することが可能となる。
また例えば、第1サーバ71は、携帯電話10の位置情報とMFP識別情報230を受信するとしてもよい。この場合、第1サーバ71は、MFP識別情報230に対応するMFP位置情報240を、記憶部73から読み出すとすればよい。なお、第1サーバ71がMFP識別情報230を受信する経路は、第1MFP51ないし第3MFP53から直接受信する経路であってもよいし、携帯電話10を経由して受信する経路であっても良い。
また、図2に示した、携帯電話10で行われるフローは、様々な変形例を採用することが可能である。第1の変形例として、新たなネットワーク設定が取得できる都度、S114ないしS125のステップを繰り返してもよい。また第2の変形例として、図2のフローが開始された後にネットワーク接続が切断された場合には、再度S114からフローをやり直すとしてもよい。この場合、S125において、相対方向241および相対距離242を新たに取得し直すとしてもよい。これにより、利用者が移動しながら携帯電話10を操作する場合など、ネットワークに接続可能なMFPの数が動的に変化する場合にも、対応が可能となる。
第3の変形例として、携帯電話10の電源がオンとされることに応じて、S114ないしS124が繰り返し実行され続けるとしてもよい。そして、カメラ部27で撮影画像が取得された場合(S112)には、S125からフローを開始するとしてもよい。また、第4の変形例として、携帯電話10の電源がオンとされることに応じて、S114ないしS125が繰り返し実行され続けるとしてもよい。そして、カメラ部27で撮影画像が取得された場合(S112)には、S134からフローを開始するとしてもよい。
第5の変形例として、S138において対象MFPとして決定されたMFPに対して、決定した旨を報知する報知情報を送信する処理を、無線送受信部15に実行させるとしてもよい。そしてACK信号等の返信信号を所定時間内に受信しなかった場合には、第1の処理例として、バルーン内の印刷ボタンPBを消去し、他のMFPの選択を促す旨の情報をパネル18に表示させるとしてもよい。また、第2の処理例として、他のアクセスポイントに接続し直した上で、対象MFPに対して報知情報を再送信する処理を無線送受信部15に実行させるとしてもよい。そして、全てのアクセスポイントを経由して報知情報を送信しても、対象MFPから返信信号を受信しなかった場合には、他のMFPの選択を促す旨の情報をパネル18に表示させるとしてもよい。これにより、対象MFPとの通信をより確実に行うことが可能となる。
また、相対方向241を決定する方法は、S125の方法に限られない。携帯電話10がMFPからデータを受信したときの電波の特性に基づいて、相対方向241を特定するとしてもよい。具体例としては、携帯電話10が指向性アンテナを備えることで、電波を発信してくるMFPの相対方向241を得る方法が挙げられる。また例えば、携帯電話10がアンテナを複数備えており、電波の受信タイムラグから、電波を発信してくるMFPの相対方向241を得る方法が挙げられる。これにより、携帯電話10の位置情報やMFP位置情報240が取得できない場合においても、相対方向241を取得することが可能となる。
また、相対距離242を決定する方法は、S125の方法に限られない。無線通信の電波強度に基づいて、相対距離242を算出するとしてもよい。これにより、携帯電話10の位置情報やMFP位置情報240が取得できない場合においても、相対距離242を取得することが可能となる。
また携帯電話10に代えて、ノートパソコンなどの通信機能を有する機器を用いることも可能である。この場合、通信プログラム28は、ノートパソコンにインストールされている、各種のドライバソフトであってもよい。また、通信システムに接続されるMFPの台数は、3台に限られず、多数存在してもよい。
また、カメラ部27で取得される撮影画像は、静止画に限られず、動画であってもよい。
また、例えば、携帯電話10の電源がオンとされることに応じて、S114からS116の処理が定期的に実行され、S112が実行されることを条件として、S113の処理を行い、S118へと処理を続けるとしてもよい。また、例えば、携帯電話10の電源がオンとされることに応じて、S114からS129の処理が定期的に実行され、S112が実行されることを条件として、S113の処理を行い、S138へと処理を続けるとしてもよい。
また、例えば、S138において対象MFPとして決定されたMFPに対して、決定した旨を報知する報知情報を送信する処理を、無線送受信部15に実行させるとしてもよい。そしてACK信号等の返信信号を所定時間内に受信しなかった場合には、別のMFPを対象MFPに決定し、新たに決定された対象MFPへ報知情報を再度送信する処理を、無線送受信部15に実行させるとしてもよい。これにより、対象MFPとの通信をより確実に行うことが可能となる。
また例えば、第1サーバ71が、第1MFP51ないし第2MFP53から、定期的に識別情報と物理的位置を示す情報を受信し、記憶部73に記憶している構成でもよい。この場合、第1サーバ71は、携帯電話10がS118で送信した第1データを受信すると、記憶している、第1MFP51ないし第2MFP53の識別情報と物理的位置を示す情報を含んだ第2データを携帯電話10へと返信する。なお、第1サーバ71が返信する第2データは、受信先を示すために携帯電話10の識別情報を含み、送信元を示すために第1サーバ71の識別情報(IPアドレス)を含み、第2データであることを示す返信情報を含んでいる。そして、この場合、携帯電話10のCPU11は、第1サーバ71が送信する第2データをS120において受信したら、S122において、MFPの識別情報と、物理的位置を示す情報とを第2データから抽出し、記憶テーブルTB1に一時的に記憶させる。
S120において、第2データから抽出した識別情報および物理的位置を、携帯電話10にとって扱いやすい各種のデータ形式に変換した上で、IPアドレス232およびMFP位置情報240として記憶テーブルTB1へ記憶させる形態としてもよい。
また、第2実施形態において、第1サーバ71がMFP位置情報240、MFP識別情報230、携帯電話10の位置情報などを取得する経路は様々であってよい。第2実施形態では、第1サーバ71は、MFP位置情報240およびMFP識別情報230を含んだ第2データを、携帯電話10から受信するとしたが、この形態に限られない。例えば、第1サーバ71の記憶部73に、第1MFP51ないし第3MFP53の各々についてのMFP位置情報240が、予め記憶されているとしてもよい。そして第1サーバ71は、携帯電話10の位置情報のみを携帯電話10から受信するとしてもよい。この場合、第1サーバ71は、携帯電話10の位置情報とMFP位置情報240とを比較することで、携帯電話10の周囲に存在するMFPを検索するとすればよい。これにより、第1サーバ71に携帯電話10の位置情報を送信することで、携帯電話10の周囲に存在するMFPについてのMFP位置情報240および識別情報を、第1サーバ71から受け取ることが可能となる。よって、第1MFP51ないし第3MFP53が、GPS部44等の位置測定機器を備える必要がないため、構成を簡略化することが可能となる。
また、相対方向241を決定する方法は、S125の方法に限られない。携帯電話10がMFPからデータを受信したときの電波の特性に基づいて、相対方向241を特定するとしてもよい。具体例としては、携帯電話10が指向性アンテナを備えることで、電波を発信してくるMFPの相対方向241を得る方法が挙げられる。また例えば、携帯電話10がアンテナを複数備えており、電波の受信タイムラグから、電波を発信してくるMFPの相対方向241を得る方法が挙げられる。これにより、携帯電話10の位置情報やMFP位置情報240が取得できない場合においても、相対方向241を取得することが可能となる。
また、相対距離242を決定する方法は、S125の方法に限られない。無線通信の電波強度に基づいて、相対距離242を算出するとしてもよい。これにより、携帯電話10の位置情報やMFP位置情報240が取得できない場合においても、相対距離242を取得することが可能となる。
また携帯電話10に代えて、ノートパソコンなどの通信機能を有する機器を用いることも可能である。この場合、通信プログラム28は、ノートパソコンにインストールされている、各種のドライバソフトであってもよい。また、通信システムに接続されるMFPの台数は、3台に限られず、多数存在してもよい。また、第1アクセスポイント62および第2アクセスポイント63と、第1MFP51ないし第3MFP53との間の通信は、無線LAN方式に限らず、有線LAN方式によって行われても良い。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
CPU11はコンピュータの一例である。携帯電話の位置情報は第1情報の一例である。第1MFP51ないし第3MFP53は候補装置の一例である。MFP位置情報240は第2情報の一例である。撮影部の一例は、カメラ部27と、CPU11によるOS(Operating System)などの実行によって実現される。方向情報は第3情報の一例である。表示部の一例は、パネル18と、CPU11によるOSなどの実行によって実現される。画像特定手段の一例は、CPU11によるS139の実行によって実現される。通信部の一例は、無線送受信部15と、CPU11によるOSなどの実行によって実現される。S140に到る処理を実行するCPU11は、通信制御手段、通信制御ステップ、通信手段の一例である。
バルーン情報B1ないしB3は候補装置情報の一例である。S314を実行するCPU11は、候補装置情報表示制御手段の一例である。操作部の一例は、加速度センサ26、コンパス部25などと、CPU11によるOSなどの実行によって実現される。S125を実行するCPU11は、相対方向特定部の一例である。S134を実行するCPU11は、情報決定部の一例である。
なお、各プログラムは一つのプログラムモジュールから構成されるものであってもよいし、複数のプログラムモジュールから構成されるものであってもよい。また、各一例は置換可能な他の構成であってもよく、本発明の範疇である。プログラム(通信プログラム28など)に基づく処理を実行するコンピュータ(CPU11など)であってもよいし、オペレーティングシステムや他のアプリケーションなど、画像処理プログラム以外のプログラムに基づく処理を実行するコンピュータであってもよいし、コンピュータの指示に従って動作するハード構成(パネル18など)であってもよいし、コンピュータとハード構成とが連動した構成であってもよい。もちろん、複数のプログラムに基づく処理を連動させて処理を実行するコンピュータであってもよいし、複数のプログラムに基づく処理を連動させて処理を実行するコンピュータの指示に従って動作するハード構成であってもよい。