図1に、本願に係る第1実施形態として例示される通信システム1のブロック図を示す。通信システム1は、携帯電話10、第1MFP(Multifunction Peripheral)51ないし第3MFP53、第1アクセスポイント62、第2アクセスポイント63、第1サーバ71、基地局61を備える。携帯電話10、および、第1MFP51ないし第3MFP53は、既知の無線LAN端末装置としての機能を備える。また、第1MFP51ないし第3MFP53は、プリンタ機能、スキャナ機能、コピー機能、ファクシミリ機能などを備える多機能周辺装置である。また、第1MFP51ないし第3MFP53は、電話回線網100を使用した通信機能を備える。第1アクセスポイント62および第2アクセスポイント63は、既知の無線LANアクセスポイントとしての機能を備える。第1サーバ71は、インターネット70を介して第1アクセスポイント62に接続される。
なお、携帯電話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とデータ通信することが可能になる。なお、無線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とを備えている。これらの構成要素は、入出力ポート7を介して互いに通信可能とされている。
また、図11に、携帯電話10の概観図を示す。図11に示すように、携帯電話10の操作や通話がしやすいように、スピーカ3の開口部とマイク4の開口部は、パネル18の設置面に配置されている。また、スピーカ3の開口部とマイク4の開口部とが、使用者の口と耳の間程度離れるように、スピーカ3の開口部とパネル18とマイク4の開口部とは、携帯電話10の長手方向に並んで配置されている。また、パネル18の反対側の面には、カメラ部27が配置されている。
制御部6は、CPU(Central Processing Unit)11、記憶部12を備える。CPU11は、記憶部12に記憶されるプログラムを実行する。以降、印刷アプリケーション28やOS29など、プログラムを実行するCPU11のことを、単にプログラム名でも記載する場合がある。例えば「印刷アプリケーション28が」という記載は、印刷アプリケーション28を実行するCPU11が」を意味する場合がある。
記憶部12は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、HDD(ハードディスク)、CPU11が備えるバッファなどが組み合わされて構成されている。記憶部12は、プログラム21を記憶する。プログラム21は、印刷アプリケーション28、OS(Operating System)29等を含む。OS29は、携帯電話送受信部22に通信を実行させるためのプログラムや、無線送受信部15に無線通信201を実行させるためのプログラム等を含む。またOS29は、GPS部24などの各種のハードウェアが取得した情報を各プログラムが取得するための、もしくは、各プログラムが各種ハードウェアに指示をするためのAPI(Application Programming Interface)を提供するプログラムでもある。また印刷アプリケーション28は、後述する通信システム1の動作フローをCPU11に実行させるためのプログラムである。
また記憶部12は、設定値記憶領域12a、テーブル記憶領域12b、ファイル記憶領域12cを備える。設定値記憶領域12aには、後述する、撮影画像更新フラグ、所定時間、方向情報、位置情報などが記憶される。なお、撮影画像更新フラグは、利用者によって予め設定値記憶領域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である。MFP名称231は、第1MFP51ないし第3MFP53の各々にMFPの使用者や管理者が割り当てた名称、あるいは、生産者が工場出荷時に割り当てた名称である。また、MFP位置情報240は、第1MFPないし第3MFP53の物理的位置を示す情報であり、緯度、経度および高度の成分を有する。
相対方向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の型番情報251や、MFPが対応するファイルフォーマットを示すファイル情報252を含んでいる。ファイルフォーマットの一例としては、PDF(Portable Document Format)、XPS(XML Paper Specification)、JPEG(Joint Photographic Experts Group)などが挙げられる。
また、テーブル記憶領域12bには、表示テーブルTB2が記憶される。図7に、表示テーブルTB2の一例を示す。表示テーブルTB2は、表示位置画像情報とMFPとの対応を記憶しておくテーブルである。表示テーブルTB2は、画像位置261、MFP情報262、表示位置画像情報263を記憶する。画像位置261は、パネル18の表示領域内において、部分画像が表示されている位置(例:パネル18の右側端部など)を示す情報である。また、部分画像とは、パネル18に表示されている、カメラ部27により撮影された撮影画像内に含まれる様々な物体についての画像のうちの、第1MFP51ないし第3MFP53の画像である。また、部分画像は、利用者によって選択することができる画像であってもよい。MFP情報262は、画像位置261に対応するMFPを示す情報であり、画像位置261に対応するMFPのMFP名称231をコピーした情報である。表示位置画像情報263は、撮影画像上におけるMFPの部分画像の画像位置と表示位置画像B1ないしB3との対応、もしくは、MFPと表示位置画像B1ないしB3との対応を示す情報であり、表示位置画像B1ないしB3の識別情報である。
ファイル記憶領域12cには、各種のファイルが記憶される。ファイルには、画像ファイルやテキストファイルなどの各種のファイルが存在する。OS29は、データをファイル単位で管理する。本実施形態では、ファイル記憶領域12cに、ファイルAないしファイルCの3つのファイルが記憶されている場合を例として説明する。
無線送受信部15は、無線アンテナ部16を介して、無線LANのインフラストラクチャーモードに準拠する無線通信201および202を行う。そして、無線送受信部15により、各種のデータを構成するデジタル信号が送受信される。GPS部24は、GPS衛星からの電波を受信し、携帯電話10の物理的位置を示す位置情報を算出する部材である。なお、位置情報は、緯度、経度および高度の成分を有する。また、携帯電話送受信部22は、携帯電話アンテナ部23を介して、基地局61との間で携帯電話通信の方式に準拠する無線通信210を行う。
ボタン入力部17、GPS部24、コンパス部25、加速度センサ26、カメラ部27は、携帯電話10の使用者による操作を受け付ける操作手段である。ボタン入力部17は、タッチパネルとして、パネル18と一体に構成されている。パネル18は、携帯電話10の各種機能情報を表示する。コンパス部25は、携帯電話10の向きを取得する地磁気センサを備えている。加速度センサ26は、携帯電話10の加速度を計測するセンサである。カメラ部27は、CCD等により所定範囲を撮影して画像データを取得する部位である。
第1MFP51の構成について説明する。第1MFP51は、CPU32、記憶部33、無線送受信部36、無線アンテナ部37、ボタン入力部38、パネル39、モデム40、電話回線接続部41、プリンタ19、スキャナ20、GPS部44、表示灯45、を主に備えている。これらの構成要素は、入出力ポート43を介して互いに通信可能とされている。
CPU32は、記憶部33に記憶されるプログラムを実行する。なお、記憶部33は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、HDD(ハードディスク)などが組み合わされて構成されているとしてもよい。無線送受信部36は、無線アンテナ部37を介して第1アクセスポイント62との間で無線通信203を行うことにより、各種のデータを構成するデジタル信号を送受信する。
ボタン入力部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は、MFP情報記憶領域75を備える。MFP情報記憶領域75は、第1MFP51ないし第3MFP53についての、MFP識別情報230、MFP位置情報240、仕様情報250を記憶する領域である。通信部74は、様々な情報を、携帯電話10や第1MFP51ないし第3MFP53との間で通信する。
第1実施形態に係る通信システム1の動作を、図2ないし図11を用いて説明する。図2を用いて、MFP登録のフローを説明する。図2のフローは、第1MFP51ないし第3MFP53の各々で行われる処理である。例として、第1MFP51で図2のフローが実行される場合を説明する。
利用者がボタン入力部38を操作して登録指示を入力することに応じて、図2のフローが開始される。S101においてCPU32は、仕様情報250を第1サーバ71のMFP情報記憶領域75に記憶させる。具体的には、無線送受信部36、第1アクセスポイント62、インターネット70、通信部74を介した通信によって、仕様情報250を第1サーバ71へ送信する。S102においてCPU32は、第1MFP51のMFP識別情報230を第1サーバ71のMFP情報記憶領域75に記憶させる。
S103において、CPU32は、第1MFP51のMFP位置情報240を第1サーバ71のMFP情報記憶領域75に記憶させる。MFP位置情報240は、GPS部44が算出するとしてもよいし、利用者がボタン入力部38を操作して入力した位置情報を取得するとしてもよい。なお、第2MFP52および第3MFPで行われる動作も、第1MFP51と同様であるため、ここでは詳細な説明を省略する。
図3および図4を用いて、携帯電話10で行われるフローを説明する。図3および図4のフローは、携帯電話10の印刷アプリケーション28を起動することに応じて、実行が開始される。なお、本実施形態では、使用者が、データ通信の対象としたいMFPにカメラ部27を向けると、携帯電話10が、カメラ部27で撮影されたMFPをデータ通信の対象として、データ通信を行う、という実施形態である。例として、図5に示すような形態で第1MFP51ないし第3MFP53が配置されている場合に、方向情報V1の方向にカメラ部27が向けられる場合の動作を、以下に説明する。
図3のS110において、CPU11は、ファイル一覧画面301をパネル18に表示させる処理を実行する。具体的には、OS29のAPIを使って、ファイル記憶領域12cに記憶されているファイルAないしCのサムネイルをパネル18に表示させる。図8に、パネル18の上半分の領域に表示される、ファイル一覧画面301の一例を示す。ファイル一覧画面301内には、ファイルAのサムネイル311、ファイルBのサムネイル312、ファイルCのサムネイル313、が表示される。
サムネイルが表示されると、OS29からAPIによって、表示したサムネイル(コントロール)の識別情報が返ってくるため、この識別情報をファイルに対応付けて記憶部12に記憶する。以降、どの識別情報のサムネイル(コントロール)へタッチ、ドラッグ等か行われたかを示す情報(イベントメッセージ)がOS29から出力されるようになる。
利用者が携帯電話10のボタン入力部17を操作することで、印刷アプリケーション28を起動させると、カメラ部27で画像が取得される。図5の例では、カメラ部27の画角A0の範囲内の画像データが、カメラ部27によって取得される。画角A0は、カメラ部27で撮影される画像データに写される光景の範囲を表す角度である。
S112において、CPU11は、取得された撮影画像302をパネル18へ表示させる処理を実行する。具体的には、OS29のAPIを使って、パネル18の下半分を、カメラ部27のファインダ領域(カメラ部27からの出力を映し出す領域)とする。図5の配置において、カメラ部27で撮影された表示例を、図8に示す。図8では、撮影画像302がファインダ領域に表示されている状態を示している。図7に示すように、第1MFP51ないし第3MFP53の部分画像が、パネル18に表示される。
S113において、CPU11は、コンパス部25から携帯電話10の向きを示す情報を取得する処理を実行する。そしてCPU11は、取得した情報を用いて、携帯電話10のカメラ部27の位置を基準とした、携帯電話10の厚み方向の中心軸(カメラ部27から厚み方向に伸びる軸)(図11参照)の方向を算出する処理を実行する。すなわちCPU11は、携帯電話10が使用者から受け付けた撮影操作が、カメラ部27の位置を基準として、何れの方向を撮影する操作であったのかを示す情報を算出する。そして、算出した情報を方向情報として記憶部12に記憶させる処理を実行する。すなわち、方向情報は、カメラ部27が向いている方向を示す情報である。図5の例では、方向情報V1が取得される。なお、方向情報は、水平成分(コンパス部25の基準位置と携帯電話10のスピーカ3側の先端との相対位置を水平面に投影した場合の、コンパス部25の基準位置を基準とした、携帯電話10のスピーカ3側の先端が位置する方向)を有する。
S115において、CPU11は、携帯電話10の周囲に位置するMFPについての各種の情報を第1サーバ71から受信する処理を実行する。具体的には、CPU11は、無線送受信部15に、MFP識別情報230、MFP位置情報240、仕様情報250の取得要求を第1サーバ71へ送信させる。そしてCPU11は、第1サーバ71から、MFP識別情報230、MFP位置情報240、仕様情報250の返信を受信し、記憶テーブルTB1に一時的に記憶させる。
S117においてCPU11は、GPS部24が算出した携帯電話10の位置情報を算出する処理を実行する。そして、取得した携帯電話10の位置情報を記憶部12に一時的に記憶させる処理を実行する。
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は、記憶テーブルTB1に各種情報を記憶している全てのMFPについて、相対方向241および相対距離242を算出したか否かを判断する。全てのMFPについて算出を行っていない場合(S127:NO)には、S129へ進む。S129において、CPU11は、未算出のMFPを選択する処理を実行した上で、S125へ戻る。これにより、携帯電話10の周囲に位置する全てのMFPについて、相対方向および相対距離を取得することができる。一方、S127において、全てのMFPについて算出を行った場合(S127:YES)には、S139へ進む。
S139において、CPU11は、カメラ部27で撮影された撮影画像上における、MFPの部分画像の画像位置を特定する処理を実行する。すなわち、パネル18に表示される撮影画像302上の何れの箇所に、MFPが表示されているかを特定する。部分画像の画像位置は、例えば撮影画像上の座標データとして表されてもよい。
部分画像の画像位置の特定方法の具体例を説明する。例として、相対方向と方向情報との角度差に基づいて部分画像の画像位置を特定する方法を、図5および図8を用いて説明する。図5の例では、方向情報V1と、第2MFP52の相対方向241=「D2」とが一致しており、角度差がない。よって図8に示すように、第2MFP52の部分画像の画像位置は、画像位置261=「P2」(撮影画像302の中央)に特定される。また図5の例では、方向情報V1と、第1MFP51の相対方向241=「D1」とは、角度差A1を有している。よって図8に示すように、第1MFP51の部分画像の画像位置は、画像位置261=「P1」(撮影画像302の左側)に特定される。また図5の例では、方向情報V1と、第3MFP53の相対方向241=「D3」とは、角度差A2を有している。また、角度差A2はA1よりも大きい。よって図8に示すように、第3MFP53の部分画像の画像位置は、画像位置261=「P3」(撮影画像302の右側かつ端部)に特定される。
S140において、CPU11は、特定された部分画像の画像位置を、MFPと対応付けて表示テーブルTB2に記憶する。図5に示す第1MFP51ないし第3MFP53の配置例の場合には、図7の例に示すように、画像位置261が表示テーブルTB2に記憶される。
S141において、CPU11は、撮影画像302上におけるMFPの部分画像の画像位置に対応する位置に表示位置画像を合成する処理を実行する。表示位置画像は、矩形の点線の枠として表示される。
図9に、表示位置画像が合成された撮影画像302の表示例を示す。第1MFP51の画像位置261=「P1」に対応する位置には、第1MFP51に対応する表示位置画像B1が表示される。同様にして、第2MFP52の画像位置261=「P2」に対応する位置には、表示位置画像B2が表示される。また、第3MFP53の画像位置261=「P3」に対応する位置には、表示位置画像B3が表示される。
第1MFP51ないし第3MFP53と、撮影画像302内に表示される表示位置画像B1ないしB3との関係について説明する。表示位置画像B1ないしB3は、OS29のAPIを使って表示される。OS29からAPIによって、表示した表示位置画像(コントロール)の識別情報が返ってくるので、この識別情報を画像位置261に対応付けて記憶部12に記憶する。
図4のS222において、CPU11は、撮影画像302内に表示位置画像が複数表示されているか否かを判断する。この判断は、記憶部12が記憶しているコントロールの数に基づいて判断される。表示位置画像が複数表示されている場合(S222:YES)には、S226へ進む。一方、複数表示されていない場合(S222:NO)には、表示位置画像が1つのみ表示されていると判断され、S224へ進む。S224において、CPU11は、当該1つの表示位置画像に対応するMFPを、選択されているMFPとして記憶する処理を実行する。対象MFPとは、データ通信の対象となるMFPである。そしてS226へ進む。
S226において、CPU11は、ファイル一覧画面301に表示されているサムネイルのみが利用者に選択されている状態であるか否かを判断する。サムネイルの選択は、ファイル一覧画面301内に表示されているサムネイルを利用者がドラッグすることで行われる。サムネイルのみが利用者に選択されている状態とは、ファイル一覧画面301内のサムネイルが利用者にドラッグされたが、撮影画像302内の表示位置画像へそのサムネイルがドロップされていない状態である。サムネイルのみが選択されている場合(S226:YES)には、S228へ進む。
S228において、CPU11は、選択されているサムネイルに対応するファイルに、撮影画像302に表示されているMFPの各々が適合しているか否かを、仕様情報250に基づいて判断する。ファイルに適合しないMFPの例としては、現在選択中のファイルがPDFフォーマットである場合に、PDF印刷に対応していないMFPが挙げられる。また、現在選択中のファイルがXPSフォーマットに設定されている場合に、XPS印刷に対応していないMFPが挙げられる。
そしてCPU11は、選択されているサムネイルに対応するファイルに適合しないMFPについては、表示位置画像を表示させない処理を実行する。具体的には、表示位置画像を、OS29のAPIを使って透明に変更する処理を実行させる。また、選択されているファイルに適合するMFPについては、表示位置画像を表示させる処理を実行する。具体的には、表示位置画像を、OS29のAPIを使って黒色等に変更する処理を実行させる。そしてS242へ進む。
図10を用いて、S228での動作例を説明する。例として、サムネイル311に対応するファイルAが、XPSフォーマットのファイルである場合を説明する。また、第1MFP51および第2MFP52がXPSフォーマットに非対応であり、第3MFP53がXPSフォーマットに対応している場合を説明する。この場合、図10に示すように、利用者がサムネイル311をドラッグすると(S226:YES)、ファイルAに適合する第3MFP53の表示位置画像B3のみが表示される。これにより、選択されたファイルに適合するMFPを、パネル18上で目視によって認識できるため、利用者の利便性を高めることができる。
一方S226において、サムネイルのみが選択されている場合ではない場合(S226:NO)には、S230へ進む。S230において、CPU11は、撮影画像302に表示されているMFPのみが利用者に選択されている状態であるか否かを判断する。MFPの選択は、撮影画像302内に表示されている表示位置画像を利用者がタッチすることで行われる。MFPのみが利用者に選択されている状態とは、サムネイルがドラッグされていない状態で、かつ、撮影画像302内の表示位置画像が利用者にタッチされた、もしくは、S224で特定のMFPが選択されていると記憶された状態である。
MFPのみが選択されている場合(S230:YES)には、S232へ進む。S232において、CPU11は、選択されているMFPに、ファイル一覧画面301に表示されているサムネイルに対応するファイルの各々が適合しているか否かを判断する。そしてCPU11は、選択されているMFPに適合しないファイルについては、サムネイルを表示させない処理を実行する。具体的には、表示されているサムネイルを、OS29のAPIを使って削除する処理を実行させる。また、選択されているMFPに適合するファイルについては、サムネイルを表示させる処理を実行する。具体的には、OS29のAPIを使ってサムネイルの色を濃くする等する処理を実行する。
またS230において、MFPのみが選択されている場合ではない場合(S230:NO)には、S234へ進む。S234において、CPU11は、ファイル一覧画面301に表示されているファイルの少なくとも何れか1つと、撮影画像302に表示されているMFPの何れかが、利用者によって共に選択されている状態であるか否かを判断する。ファイルとMFPとの両方を選択する操作の一例としては、サムネイル311ないし313の少なくとも1つを指先でドラッグしたまま、指先を表示位置画像の何れか1つまで移動させる操作(ドラッグアンドドロップ操作)が挙げられる。また、表示位置画像の少なくとも1つを指先でドラッグしたまま、指先をサムネイル311ないし313の何れか1つまで移動させる操作(ドラッグアンドドロップ操作)が挙げられる。ファイルとMFPとが選択されていない場合(S234:NO)にはS242へ進み、選択されている場合(S234:YES)にはS236へ進む。
S236において、CPU11は、S234で選択されたファイルとMFPが、共に適合する組合せであるか否かを判断する。適合する組合せでない場合(S236:NO)にはS242へ進み、適合する組合せである場合(S236:YES)にはS237へ進む。S237において、CPU11は、利用者にタッチされた表示位置画像を特定する。そして、表示テーブルTB2(図7)を用いて、特定された表示位置画像情報263に対応するMFP名称231を、対象MFPのMFP名称として記憶部12に記憶する。
S238において、CPU11は、対象MFPのIPアドレスを取得する処理を実行する。具体的には、CPU11は、記憶テーブルTB1から対象MFPのMFP識別情報230(IPアドレス)を読み出す。
S240において、CPU11は、対象MFPに対応させた印刷データを作成する処理を実行する。具体的には、CPU11は、S234で選択されたファイルについて、仕様情報250に基づいて、対象MFPに適合するように、印刷データを作成する。これにより、選択されたファイルから作成した印刷データを、不適切な状態で対象MFPへ送信してしまう事態を防止することができる。
S241において、CPU11は、無線送受信部15に対象MFPへ印刷データを送信させる処理を実行する。具体的には、CPU11は、受信先を示すために対象MFPのIPアドレスを含んだ印刷データを送信させる。対象MFPは、印刷データを受信することに応じて、プリンタ19を用いた印刷データの印刷を実行する。
S242において、CPU11は、撮影画像を更新する設定であるか否かを判断する。具体的には、CPU11は、設定値記憶領域12aに記憶されている撮影画像更新フラグが「更新あり」になっているか否かを判断する。撮影画像を更新する設定ではない場合(S242:NO)には、S243へ進む。S243において、CPU11は、OS29のAPIを使ってファインダ領域を解除する処理を実行する。また、カメラ部27に静止画を撮影させる処理を実行する。そして、撮影した静止画を撮影画像302としてパネル18に表示させる処理を実行する。そしてS222へ戻る。一方、撮影画像を更新する設定である場合(S242:YES)には、S244へ進む。S244において、CPU11は、カメラ部27で取得された撮影画像302を更新する処理を実行する。そしてS112へ戻る。これにより、撮影画像302がリアルタイムに更新されることで、撮影画像302を動画としてパネル18に表示させることが可能となる。
以上説明した、第1実施形態の説明例に係る通信システム1の効果を説明する。通信システム1では、利用者が選択を希望するMFPの像を、カメラ部27を用いて携帯電話10に入力することにより、当該MFPを通信先として選択することができる。これにより、接続を希望するMFPの識別情報を、利用者が知っておいたり、調べておき、その識別情報を携帯電話10へ入力する必要がなくなる。よって、簡易な手続きで対象MFPを選択することが可能となる。またこれにより、使用者が所望していない方向に位置するMFPと通信が実行されてしまう事態を防止することができる。
また通信システム1では、ファイルのサムネイルの少なくとも1つを移動させて、MFPの表示位置画像の何れか1つに重ねるという操作(いわゆるドラッグアンドドロップ操作)や、MFPの表示位置画像の少なくとも1つを移動させて、ファイルのサムネイルの何れか1つに重ねるという操作によって、ファイルとMFPとの関連付けを行うことができる。これにより、何れのファイルをどのMFPで印刷するか、という関連付けを、簡易な手続きで実行することが可能となる。よって、使用者の利便性を高めることができる。
また、通信システム1では、選択されているファイルに適合しないMFPに関する表示位置画像が、表示されない。これにより、選択したファイルを印刷することが適切ではないMFPを、目視によって容易に認識することが可能となるため、利用者の利便性を高めることができる。
また、通信システム1では、選択されているMFPに適合しないファイルのサムネイルが、表示されない。これにより、選択されているMFPで印刷することが適切ではないファイルを、目視によって容易に認識することが可能となるため、利用者の利便性を高めることができる。
また、通信システム1では、ファイルとMFPとの組合せが適切な場合にのみ、ファイルをMFPで印刷可能とする制御を行うことができる。これにより、利用者が、ファイルを不適切なMFPで誤って印刷してしまう事態を防止することができる。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。以下に変形例を説明する。
<変形例>
本実施形態では、印刷アプリケーション28に基づいて実行するCPU11が、各種の処理を行う場合を説明した。しかし、この形態に限られない。変形例として、下記に示すように、印刷アプリケーション28に基づいて実行するCPU11が、OS29、他のプログラム、ハード構成(パネル18など)に対して、各種の処理を行わせる指示を出す形態であってもよい。
OS29によって行われる処理に基づいて、CPU11がMFPの部分画像の画像位置を特定する処理を実行してもよい。係る場合、例えばS139では、印刷アプリケーション28に基づいて実行するCPU11が、部分画像の画像位置を特定する処理を実行させる指示をOS29に出力する形態となる。
OS29によって行われる処理に基づいて、CPU11がMFPについての各種の情報を受信する処理を実行してもよい。係る場合、例えばS115では、印刷アプリケーション28に基づいて実行するCPU11が、受信処理を実行させる指示をOS29に対して出力する形態となる。
OS29によって行われる処理に基づいて、CPU11が印刷データを作成する処理を実行してもよい。係る場合、例えばS240では印刷アプリケーション28に基づいて実行するCPU11が、印刷データを作成する処理を実行させる指示をOS29に対して出力する形態となる。
S237において、対象MFPを決定する方法は、表示位置画像B1ないしB3を用いた方法に限られない。部分画像自体を用いて、対象MFPを決定してもよい。この場合、図3および図4のフローにおいて、S141、S230、S234を、以下に説明するように変更すればよい。S141のステップ(部分画像の画像位置に対応する位置に表示位置画像を合成するステップ)は、実行せずにスキップする。S230およびS234では、CPU11は、MFPの部分画像が選択されたか否かを判断する。具体的にはCPU11は、ボタン入力部17を用いて、選択画像の選択操作を受け付ける。選択画像とは、パネル18に表示されている、カメラ部27により撮影された撮影画像内に含まれる様々な物体についての画像のうち、利用者により選択された画像である。選択画像の選択操作は、ボタン入力部17がタッチパネルとして機能する場合には、選択画像が利用者により直接タッチされることで行われるとしてもよい。CPU11は、選択された選択画像が、部分画像(第1MFP51ないし第3MFP53の画像)であるか否かを判断する。判断方法の具体例としては、利用者によりタッチされた位置を、選択画像の画像位置として算出する。そして、表示テーブルTB2(図7)を用いて、選択画像の画像位置が、部分画像の画像位置261に対応するか否かを判断する。対応すると判断される場合には、特定された画像位置261に対応するMFP名称231を決定する。これにより、利用者によって選択された部分画像に関連しているMFPを、対象MFPとして決定することができる。また、S234において、サムネイル311ないし313の少なくとも1つをドラッグして部分画像の何れか1つにドロップする操作や、部分画像の少なくとも1つをドラッグしてサムネイル311ないし313の何れか1つにドロップ操作によって、ファイルとMFPとの両方を選択する操作を実行することができる。なお、さらなる変形例として、S141のステップ(表示位置画像を合成するステップ)を実行した上で、S230およびS234のステップ(MFPの部分画像が選択されたか否かを判断するステップ)を実行してもよい。
本実施形態では、印刷アプリケーション28に基づいて実行するCPU11が、撮影画像302上におけるMFPの部分画像の画像位置に対応する位置に表示位置画像を合成する場合を説明した(S141)。すなわち、CPU11が、印刷アプリケーション28によって動作する場合を説明した。しかし、この形態に限られない。例えば、OS29に基づいて実行するCPU11が、表示位置画像を合成してもよい。この場合、印刷アプリケーション28は表示位置画像合成の指示を出力し、APIがその指示に基づいて表示位置画像を合成する構成となる。また例えば、表示位置画像合成回路が、表示位置画像を合成してもよい。この場合、携帯電話10は表示位置画像合成回路のようなハード構成を備えていればよい。そして印刷アプリケーション28が表示位置画像合成の指示を出力し、表示位置画像合成回路がその指示に基づいて表示位置画像を合成する構成とすればよい。
S234において受け付けられる、ファイルとMFPとの両方を選択する操作は、ドラッグアンドドロップ操作に限られない。サムネイル311ないし313の少なくとも1つと表示位置画像の何れか1つとをパネル18上で共にタッチされている状態とする操作(マルチタップ操作)であってもよい。また、サムネイル311ないし313の少なくとも1つと表示位置画像の何れか1つとを、所定時間内にパネル18上で連続してタッチする操作(連続タッチ操作)であってもよい。これによっても、何れのファイルをどのMFPで印刷するか、という関連付けを、簡易な手続きで実行することが可能となる。また、表示位置画像をタッチする操作に代えて、MFPの部分画像をタッチする操作であってもよい。
MFP登録のフロー(図2)は、様々なトリガに応じて開始されてもよい。例えば、MFP本体が定期的に図2のフローを実行しても良い。また、MFPのIPアドレスや位置情報が変更されることに応じて、図2のフローを実行しても良い。
図3および図4のフローは、様々なトリガに応じて開始されてもよい。例えば、ファイル一覧画面301がパネル18に表示されている状態で、利用者がボタン入力部17を操作することにより、ファイルの印刷命令が入力されることに応じて開始されるとしてもよい。なおこの場合、図3のフローからは、S110が削除される。
S115(図3)において、MFPについての各種の情報を第1サーバ71から受信する形態を説明したが、この形態に限られない。MFPについての各種の情報を、携帯電話10内の記憶テーブルTB1に予め記憶しておき、S115において読み出す形態であってもよい。またMFPについての各種の情報は、利用者によって予め入力されるとしてもよい。
S226(図4)において、ファイル記憶領域12cに記憶されているファイルAないしCと、ファイル一覧画面301内に表示されるサムネイル311ないし313との関係付けは、様々な方法で実行可能である。また、S230において、第1MFP51ないし第3MFP53と、撮影画像302内に表示される表示位置画像B1ないしB3との関係付けは、様々な方法で実行可能である。例えば、サムネイルまたは表示位置画像の表示領域の座標を記憶させておくとともに、タッチがされた場合にはタッチ点の座標をOS29から取得するとしてもよい。これにより、タッチ点の座標がサムネイルの表示領域内である場合には、サムネイルに対応するファイルが選択されていると判断することが可能となる。また、タッチ点の座標が表示位置画像の表示領域内である場合には、表示位置画像に対応するMFPが選択されていると判断することが可能となる。
S228において、選択されているファイルに適合しないMFPに対応する表示位置画像の表示態様は、様々な形態であってよく、例えばグレーアウト表示を用いてもよい。この場合、表示位置画像の表示を削除してから、新たなグレー色の表示位置画像(コントロール)を表示し、新たな表示位置画像とMFPとの関連付けを記憶しなおす形態としてもよい。
S241において、対象MFPとの通信内容は、印刷データの送信に限られない。例えば、受信先を示すために対象MFPのIPアドレスを含んだデータを、対象MFPへの送信データとして送信し、対象MFPのIPアドレスを含んでいる(すなわち、対象MFPが送信した)データを受信データとして受信するデータ通信を実行してもよい。なお、データ通信にて扱うデータは、様々なデータが考えられる。例えば、処理データを対象MFPへ送信し、対象MFPに所定の処理を実行させてもよい。また、スキャン指示を対象MFPへ送信し、対象MFPがスキャナ20を用いて生成したスキャンデータを、対象MFPから受信するとしてもよい。また、IP電話指示を対象MFPへ送信し、対象MFPのモデム40および電話回線接続部41を介して、電話回線の先に存在する電話装置やファクシミリ装置を相手に、通話やファクシミリ通信を実行するとしてもよい。
S242において、撮影画像を更新する設定であるか否かを、判断部97に判断させない態様としてもよい。この場合、撮影画像302がリアルタイムに更新されるため、撮影画像302は動画としてパネル18に表示される。
S232において、選択されているMFPに適合しないファイルについての処理方法は、様々な態様であってよい。例えば、選択されているMFPに適合しないファイルの選択を無視する処理を、操作部93に実行させてもよい。選択を無視する処理の例としては、サムネイルのコントロールとファイルとの関係を示す情報を削除する方法が挙げられる。また、サムネイルのコントロールとファイルの関係を示す情報が無効である、というフラグを記憶して、タッチ等のメッセージがOS29から来ても、ファイルが選択されたと判断しないようにする方法が挙げられる。
S236のステップは省略することも可能である。例えば、S234において、選択されたファイルに適合しないMFPを選択できないようにする制御や、選択されたMFPに適合しないファイルを選択できないようにする制御が行われる場合には、S236を省略可能である。
S241において、様々な処理を印刷データに施した上で、印刷データを無線送受信部15に送信させるとしてもよい。例えば、印刷データにヘッダ情報を付加する処理を施してもよい。また、グレー加工、セピア加工など各種の加工処理を施してもよい。
S243において、静止画を取得する処理は、様々な形態であってよい。例えば、撮影画像302に表示中の画像をビットマップとして記憶することで、静止画を取得してもよい。
また携帯電話10に代えて、ノートパソコンなどの通信機能を有する機器を用いることも可能である。この場合、印刷アプリケーション28は、ノートパソコンにインストールされている、各種のドライバソフトであってもよい。また、通信システムに接続されるMFPの台数は、3台に限られず、多数存在してもよい。
MFPについての各種の情報(物理的位置など)は、S115で説明した、第1サーバ71から受信する形態に限られず、MFPから受信してもよい。例えば携帯電話10は、無線通信201や202を用いてMFPから物理的位置を示す情報を受信し、受信した情報を、当該MFPのMFP位置情報240として記憶テーブルTB1に記憶する形態であってもよい。
S115において、第1サーバ71から受信したMFP識別情報230、MFP位置情報240、仕様情報250を、携帯電話10にとって扱いやすい各種のデータ形式に変換した上で、記憶テーブルTB1へ記憶させる形態としてもよい。
記憶テーブルTB1に記憶される仕様情報250は、型番情報251やファイル情報252に限られない。例えば、用紙サイズ情報や、印刷タイプ情報を含んでいてもよい。用紙サイズ情報は、プリンタ19で使用される用紙のサイズを示す情報である。印刷タイプ情報は、プリンタ19がカラー印刷とモノクロ印刷のどちらに設定されているかを示す情報である。これにより、S228において、選択されているサムネイルに対応するファイルに、撮影画像302に表示されているMFPの各々が適合しているか否かを、用紙サイズ情報や印刷タイプ情報に基づいて判断することが可能となる。
S139における、撮影画像上における、MFPの部分画像の画像位置を特定する処理には、様々な方法を適用することが可能である。例えば、撮影画像302上のMFPの部分画像の画像位置を画像解析で算出し、携帯電話10の位置を中心としてMFPの相対的位置を算出してもよい。そして、算出した相対的位置と、携帯電話10の位置情報とから、MFPの絶対的位置を算出し、算出した絶対的位置と記憶テーブルTB1に記憶されたMFP位置情報を比較することで、各MFPの部分画像の画像位置を特定してもよい。
S141において、OS29から返ってくる表示位置画像(コントロール)の識別情報を、画像位置261に対応付けて記憶部12に記憶する場合を説明したが、この形態に限られない。表示位置画像の識別情報は、MFP名称231と対応づけて記憶してもよい。
撮影画像302内に表示位置画像が複数表示されているかの判断方法は、S222で説明した方法に限られない。OS29がパネル18の下半分に表示しているコントロールの数を示す情報を定期的に出力しており、当該情報に基づいて複数表示の判断を行ってもよい。
選択されているファイルに適合するMFPの表示態様や、選択されているMFPに適合するファイルの表示態様は、S228、S232等で説明した態様に限られない。適合するMFPやファイルの表示を現状維持する態様(例:透明に変更しない、削除しない、グレーアウト表示に変更しない)でもよい。
ファイルとMFPとの両方を選択する操作は、S234で説明した形態に限られず、各種の形態を適用することが可能である。例えば、サムネイルへタッチするとサムネイル選択状態になり、その状態でMFPへタッチすると、双方が選択されたことになる形態であってもよい。
カメラ部27と、CPU11によるOS21などの実行によって実現される手段によって、ファインダ領域に表示させる撮影画像302を常に更新する仕様であってもよい。この場合、撮影画像302の更新を実行する処理(S244)を実行する必要をなくすことができる。
第1MFP51が、第1アクセスポイント62との間で無線通信203を行う場合を説明したが、この形態に限られない。第1MFP51と第1アクセスポイント62とがLANケーブル等によって接続されており、有線通信を行う形態であってもよい。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
第1MFP51ないし第3MFP53は候補装置の一例である。CPU11はコンピュータの一例である。携帯電話10は携帯装置の一例である。印刷アプリケーション28はプログラムの一例である。携帯電話の位置情報は第1情報の一例である。MFP位置情報240は第2情報の一例である。方向情報は第3情報の一例である。S139に到る処理を実行するCPU11は画像特定手段、画像特定ステップの一例である。S139を実行するCPU11は画像特定手段の一例である。ファイルは画像形成データの一例である。サムネイルは画像形成データ画像の一例である。S110を実行するCPU11は画像形成データ画像表示制御手段、画像形成データ画像表示制御ステップの一例である。S141を実行するCPU11は候補装置情報表示制御手段の一例である。パネル18は表示手段の一例である。S241を実行するCPU11は通信制御手段、通信制御ステップの一例である。無線送受信部15は通信手段の一例である。表示位置画像B1ないしB3は候補装置情報の一例である。
なお、各プログラムは一つのプログラムモジュールから構成されるものであってもよいし、複数のプログラムモジュールから構成されるものであってもよい。また、各一例は置換可能な他の構成であってもよく、本発明の範疇である。画像処理プログラム(印刷アプリケーション28など)に基づく処理を実行するコンピュータ(CPU11など)であってもよいし、オペレーティングシステムや他のアプリケーションなど、画像処理プログラム以外のプログラムに基づく処理を実行するコンピュータであってもよいし、コンピュータの指示に従って動作するハード構成(パネル18など)であってもよいし、コンピュータとハード構成とが連動した構成であってもよい。もちろん、複数のプログラムに基づく処理を連動させて処理を実行するコンピュータであってもよいし、複数のプログラムに基づく処理を連動させて処理を実行するコンピュータの指示に従って動作するハード構成であってもよい。