(57)【特許請求の範囲】
【請求項１】
画像を描画して表示部に表示させる描画部を備える機器であって、
前記描画部が描画するために保持する前記表示部に表示する情報を定義したデータと同じ定義データを保持し、前記定義データを送信すべき外部機器を指定する仮想描画部と、
前記仮想描画部からの前記外部機器の指定に応答して、前記仮想描画部から指定された前記外部機器へ前記定義データを転送し、前記定義データに基づき画像を描画させ、前記外部機器の画面に前記表示部に表示された画像と同じ画像を表示させるデータ転送部と、
前記外部機器からイベント通知を受け取る受信部と、
前記イベント通知により通知されたイベントを判断する判断部と、
前記イベントが、前記機器または当該機器が備える機能の制御である場合に、当該機器または当該機能の制御を実行する制御部とを含み、
前記イベントが前記画面遷移である場合、前記データ転送部は、当該イベントに対応する定義データを前記外部機器へ転送する、機器。
【請求項２】
前記表示部に表示される前記画像の変更に応答して、前記仮想描画部は、対応する前記定義データを前記データ転送部へ送信する、請求項１に記載の機器。
【請求項３】
前記表示部は、前記機器と通信可能な複数の前記外部機器を表示し、前記定義データを転送すべき外部機器の選択を受け付ける、請求項１に記載の機器。
【請求項４】
前記定義データは、画面サイズ、画像の表示を開始する位置の座標、表示する色、表示するフォント、表示する画像のサイズ、表示内容を含む属性情報を有する、請求項１に記載の機器。
【請求項５】
請求項１〜４のいずれか１項に記載の機器と外部機器とを含み、前記機器と前記外部機器との間でデータ転送を行うシステムであって、前記外部機器は、
前記機器から転送された前記定義データを受信し、前記定義データに基づき画像を描画して表示させる外部機器描画部と、
表示された前記画像に対して画面遷移または前記機器もしくは当該機器が備える機能の制御に関する入力を受け付ける外部機器入力部と、
前記入力により生成されたイベント通知を、前記機器へ送信する外部機器送信部とを備える、データ転送システム。
【請求項６】
前記外部機器入力部は、前記定義データの取得を要求するための入力を受け付け、前記外部機器送信部は、前記定義データの取得要求を前記機器へ送信する、請求項５に記載のデータ転送システム。
【請求項７】
前記外部機器入力部は、前記定義データを初期化するための入力を受け付け、前記外部機器送信部は、前記定義データを初期化するための初期化データを前記機器へ送信する、請求項５に記載のデータ転送システム。
【請求項８】
前記外部機器入力部は、前記外部機器と通信可能な複数の前記機器を表示し、前記イベント通知を送信すべき機器の選択を受け付ける、請求項５に記載のデータ転送システム。
【請求項９】
前記外部機器は、同一セグメント内または当該外部機器から無線通信可能な範囲内にある機器を検索する装置検索部をさらに備える、請求項５に記載のデータ転送システム。
【請求項１０】
前記外部機器は、前記機器へ前記表示部の表示を無効にするための制御データを送信し、前記表示部が入力を受け付けないようにする、請求項５に記載のデータ転送システム。
【請求項１１】
外部機器と機器との間でデータ転送を行う方法であって、
前記機器の表示部に表示する情報を定義した定義データを、前記機器から指定された前記外部機器へ転送するステップと、
前記外部機器において前記定義データを受信し、前記定義データに基づき画像を描画して、前記外部機器が有する画面に前記表示部に表示された画像と同じ画像を表示するステップと、
前記外部機器において表示された前記画像に対して画面遷移または前記機器もしくは当該機器が備える機能の制御に関する入力を受け付けるステップと、
前記入力により生成されたイベント通知を、前記外部機器から前記機器へ送信するステップと、
前記機器において前記イベント通知により通知されたイベントを判断するステップと、
前記イベントが前記機器または前記機能の制御である場合、前記機器において当該機器または当該機能の制御を実行するステップと、
前記イベントが前記画面遷移である場合、当該イベントに対応する定義データを前記機器から前記外部機器へ転送するステップとを含む、方法。
【請求項１２】
前記表示部に表示される画像の変更に応答して、対応する前記定義データを前記機器から前記外部機器へ転送するステップをさらに含む、請求項１１に記載の方法。
【請求項１３】
前記表示部が、前記機器と通信可能な複数の前記外部機器を表示し、前記定義データを転送すべき外部機器の選択を受け付けるステップをさらに含む、請求項１１に記載の方法。
【請求項１４】
前記入力を受け付けるステップは、前記定義データの取得を要求するための入力を受け付けるステップを含み、前記送信するステップは、前記定義データの取得要求を前記機器へ送信するステップを含む、請求項１１に記載の方法。
【請求項１５】
前記入力を受け付けるステップは、前記定義データを初期化するための入力を受け付けるステップを含み、前記送信するステップは、前記定義データを初期化するための初期化データを前記機器へ送信するステップを含む、請求項１１に記載の方法。
【請求項１６】
前記入力を受け付けるステップは、前記外部機器と通信可能な複数の前記機器を表示し、前記イベント通知を送信すべき機器の選択を受け付けるステップを含む、請求項１１に記載の方法。
【請求項１７】
さらに、同一セグメント内または前記外部機器から無線通信可能な範囲内にある機器を検索するステップをさらに含む、請求項１１に記載の方法。
【請求項１８】
前記送信するステップは、前記機器へ前記表示部の表示を無効にするための制御データを送信するステップを含み、前記表示部が入力を受け付けないようにする、請求項１１に記載の方法。
【請求項１９】
前記定義データは、画面サイズ、画像の表示を開始する位置の座標、表示する色、表示するフォント、表示する画像のサイズ、表示内容を含む属性情報を有する、請求項１１に記載の方法。
【請求項２０】
請求項１１〜１９のいずれか１項に記載の方法を実行させるためのコンピュータにより読み取り可能なプログラム。
【請求項２１】
請求項２０に記載のコンピュータにより読み取り可能なプログラムが記録された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置の表示部に表示する情報を定義したデータを外部機器へ転送し、画像形成装置の表示部に表示された画像と同じ画像をその外部機器の画面に表示させる画像形成装置、この画像形成装置および外部機器を含むデータ転送システム、データ転送方法、その方法を実現するためのコンピュータ可読なプログラムおよび記録媒体に関する。
【背景技術】
【０００２】
従来、プリンタは、画面表示する領域が乏しく、機能が制約されている。これは、高機能な画面にするにはコストがかかるため、ユーザには受け入れられないケースが多いからである。身の回りを見れば、携帯電話、ＰＤＡ（Personal Data Assistance）、ＰＣ（Personal Computer）等の様々な画面をもつデバイスが存在するが、機能が制約された現状では、プリンタとこれらのデバイスの画面は物理的に接続することができない。
【０００３】
これに対し、プリンタ機能、コピー機能、スキャナ機能、ファクシミリ機能を有する複合機は、プリンタより高機能な画面を有する。この複合機は、ＰＣ等と同様に、ＣＰＵおよびメモリを備えており、プリンタ機能等の各機能をアプリケーションの制御により実現している。また、この複合機は、インターネット等のネットワークに接続するためのネットワークＩ／Ｆ部を備えており、ネットワークに接続されたサーバ等の外部機器との通信を可能にしている。
【０００４】
この複合機には、ＨＴＭＬ（Hyper Text Markup Language）データに基づいて操作パネルに操作画面を表示させるためのＭＦＰ（Multi Function Peripheral）ブラウザを備えるものがある（例えば、特許文献１参照）。このＭＦＰブラウザは、ＨＴＴＰリクエストを、ネットワークを介してＷｅｂサーバへ送り、Ｗｅｂサーバが生成し、返信したＨＴＭＬデータを、ネットワークを介して受け取り、複合機の操作パネルに操作画面を表示することができる。このため、様々な機能の実現が可能とされている。
【特許文献１】特開２００６−３５２８４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の複合機では、ユーザがどのように操作してよいかわからない場合に、コールセンタにいるオペレータが、どのような画面が出て困っているのかを、その画面を見ることができないため瞬時に把握することはできない。このため、コールセンタからその複合機を操作することができるにしても、容易かつ適切にその操作をすることはできない。
【０００６】
複合機に比較して機能が制約されたプリンタにおいても、複合機と同様の画面を表示することができるようにして、機能を充実させ、また、外部のＰＣ等から操作ができるようにすることが望まれている。
【課題を解決するための手段】
【０００７】
本発明は、上記課題に鑑み、プリンタや複合機といった画像形成装置の操作画面に画像を描画して表示させる描画部とは別に、描画部が描画するために保持する表示部に表示する情報を定義したデータと同じ定義データを保持し、その定義データを送信すべき外部機器を指定する仮想描画部と、仮想描画部からの外部機器の指定に応答して、仮想描画部から指定された外部機器へ定義データを転送するデータ転送部とを備え、定義データに基づき画像を描画させ、外部機器の画面に表示部に表示された画像と同じ画像を表示させる構成とする。
【０００８】
画面を有していないプリンタに、上記の仮想描画部を追加することで、携帯電話、ＰＤＡ、ＰＣ等の画面を有するデバイスに画面表示することが可能となる。なお、描画部、表示部、仮想描画部およびデータ転送部は、外付け機器として提供することができ、プリンタに外付けして上記機能を実現することができる。上記携帯電話等の外部機器へ定義データを容易に転送して画面を表示させることができるため、その外部機器で画面内容を瞬時に把握することができるようになる。また、画像データをそのまま転送しないため、転送負荷を軽減することができ、性能が低いデバイスでも画面表示が可能となる。
【０００９】
本発明では、画像形成装置の表示部に表示される画像の変更に応答して、仮想描画部は、対応する定義データをデータ転送部へ送信し、データ転送部がその指定された外部機器へ送信することができる。画面が更新されるたびに定義データを送信することで、画面ログを取得したり、操作履歴を管理することができ、また、コールセンタ等では、外部機器でユーザのオペレーションを確認し、適切な操作をサポートすることが可能となる。
【００１０】
表示部は、画像形成装置と通信可能な複数の外部機器を表示し、定義データを転送すべき外部機器の選択を受け付けることができる。これにより、デモンストレーションやテレビ会議等で特定の複数のリモート端末に画面イメージを表示し、画面情報を共有することが可能となる。
【００１１】
定義データは、画面サイズ、画像の表示を開始する位置の座標、表示する色、表示するフォント、表示する画像のサイズ、表示内容を含む属性情報を有する。属性データ等の描画する情報のみのデータを利用することにより転送負荷を軽減することができる。
【００１２】
本発明によれば、上記の画像形成装置と外部機器とを含み、その外部機器から画像形成装置を制御することを可能にしたシステムを提供することもできる。このシステムでは、上記の画像形成装置に加え、外部機器が、画像形成装置から転送された定義データを受信し、定義データに基づき画像を描画して表示させる外部機器描画部と、表示された画像に対して入力を受け付ける外部機器入力部と、入力により生成された画像形成装置を制御するための制御データを、当該画像形成装置へ送信する外部機器送信部とを備える。画面を有していないプリンタや表示機能に乏しいプリンタに対して携帯電話、ＰＤＡ、ＰＣ等の画面を有するデバイスで、離れた距離にあるデバイスを操作することが可能となる。
【００１３】
この外部機器入力部は、定義データを取得するために、その取得要求を行うためのユーザからの入力を受け付け、外部機器送信部は、定義データの取得要求を画像形成装置へ送信することができる。
【００１４】
また、この外部機器入力部は、定義データを初期化するための入力を受け付け、外部機器送信部は、定義データを初期化するための初期化データを画像形成装置へ送信することができる。外部機器から画像形成装置のアプリケーションを初期化することで、ネットワーク上の障害等の何かしらの理由で外部機器と画像形成装置の画面遷移に障害が発生した場合の復旧やユーザがオペレーションを失敗したときに最初から操作することが可能となる。
【００１５】
外部機器入力部は、外部機器と通信可能な複数の画像形成装置を表示し、制御データを送信すべき画像形成装置の選択を受け付けることができる。１つの外部機器で複数の画像形成装置を管理することにより、機器管理者はリモートから全ての装置のメンテナンスをすることができる。
【００１６】
外部機器は、同一セグメント内または当該外部機器から無線通信可能な範囲内にある画像形成装置を検索する装置検索部をさらに備えることができる。外部機器が複数の画像形成装置を検索し、検索された装置を管理することにより、外部機器で設定する手間や設定ミスを減らすことができる。
【００１７】
また、外部機器は、画像形成装置へ表示部の表示を無効にするための制御データを送信し、表示部が入力を受け付けないようにすることができる。画像形成装置の画面をもつアプリケーションを外部機器から画像形成装置の表示を無効に切り替えることでアプリケーションの二重起動防止や画像形成装置で操作を行うユーザに注意を促すことができる。
【００１８】
本発明では、外部機器から画像形成装置を制御する方法を提供することができる。この方法は、画像形成装置の表示部に表示する情報を定義した定義データを、画像形成装置から外部機器へ転送するステップと、外部機器において定義データを受信し、定義データに基づき画像を描画して外部機器が有する画面に表示するステップと、外部機器において表示された画像に対して入力を受け付けるステップと、入力により生成された画像形成装置を制御するための制御データを、外部機器から画像形成装置へ送信するステップとを含む。
【００１９】
また、本発明によれば、その方法を実現するためのコンピュータ可読なプログラム、さらにはそのプログラムを格納した記録媒体を提供することができる。
【発明を実施するための最良の形態】
【００２０】
以下、図面を参照して本実施形態の画像形成装置およびデータ転送システムについて詳細に説明する。図１は、本実施形態のデータ転送システムの構成例を示した図である。このデータ転送システムは、画像形成装置１００と外部機器１１０とから構成され、これらはネットワーク１２０に接続され、互いに通信可能とされている。
【００２１】
画像形成装置１００は、ＭＦＰやレーザプリンタ（ＬＰ）とすることができ、ＬＰである場合には、簡易的な画面の描画が提供される。この画像形成装置１００は、図示しない表示部としての操作パネルと、操作パネルで受け付けた入力に対して処理を実行するアプリケーション１０１とを備える。また、操作パネルに操作画面の画像を描画して表示させる描画部１０２と、外部機器１１０との間でデータのやり取り行うネットワーク部１０３と、プリンタ等の制御を行う装置制御部１０４とを備えている。
【００２２】
外部機器１１０は、画面を有するデバイスであればいかなるデバイスであってもよく、例えば、携帯電話、ＰＤＡ、ＰＣ等を挙げることができる。この外部機器１１０は、画像形成装置１００から送信されたデータを受信し、そのデータに基づき処理を行うアプリケーション１１１と、画像を描画して表示させる描画部１１２と、表示した画面に対してユーザの入力を受け付ける入力部１１３と、画像形成装置１００との間でデータのやり取りを行うネットワーク部１１４とを備えている。
【００２３】
この画像形成装置１００は、さらに、仮想描画部１０５を備える。仮想描画部１０５は、アプリケーション１０１が描画部１０２に対し、画像を描画して表示させるために送信した、画面に表示する情報を定義したデータと同じ定義データをアプリケーション１０１から受け取り、画像形成装置１００と通信可能な外部機器１１０を識別するための識別情報とともに保持する。仮想描画部１０５は、定義データを送信すべき外部機器１１０を指定し、その識別情報をデータ転送部としてのネットワーク部１０３へ送り、ネットワーク部１０３がその識別情報を有する外部機器１１０へ定義データを送信する。なお、定義データについての詳細は後述する。
【００２４】
外部機器１１０は、その定義データを受け取ると、描画部１１２が、その定義データをもとに、外部機器１１０が有する画面に画像を描画して表示する。このようにして、画像形成装置１００が有する操作パネルに表示した画像と同じ画像を、外部機器１１０が有する画面に表示させることができる。
【００２５】
画像形成装置１００がＬＰである場合、携帯電話やＰＤＡといったＬＰに比較して高機能な画面を有するデバイスに表示させることができ、また、その画面を瞬時に外部機器１１０に表示させることができるため、ユーザがどのように操作していいかわからない場合にコールセンタでどのような画面で迷っているのかをオペレータが瞬時に把握することが可能となる。
【００２６】
また、外部機器１１０は、入力部１１３でユーザの入力を受け付け、アプリケーション１１１がその入力に基づき画像形成装置１００を制御するための制御データを生成し、ネットワーク部１１４が画像形成装置１００へ送信することができるため、外部機器１１０から画像形成装置１００を制御することが可能となる。このため、ユーザがどのように操作していいかわからない場合に、ユーザに代わって、外部機器１１０から適切な操作を行うことも可能となる。
【００２７】
図２は、画像形成装置の構成を示す機能ブロック図である。この画像形成装置１００は、上述したように、アプリケーション１０１、描画部１０２、仮想描画部１０５、ネットワーク部１０３、装置制御部１０４を含む。この画像形成装置を複合機とした場合、これらの各部を実現するために、プリンタ２０１、スキャナ、ファクシミリ、コピー、ハードディスク２０２、メモリ２０３、ネットワークインタフェース２０４、操作パネル２０５等のハードウェアリソース２００に加え、プラットフォーム２１０と、アプリケーション２２０と、ソフトウェア開発キット（ＳＤＫ）の一部または全部として提供される仮想アプリケーションサービス（ＶＡＳ）２３０とから構成されるソフトウェア群を備えている。ハードウェアリソース２００とソフトウェア群とは、エンジンＩ／Ｆ２０６を介して接続されている。
【００２８】
ＶＡＳ２３０は、プラットフォーム２１０とアプリケーション２２０との間に配置され、プラットフォーム２１０が備えるコントロールサービスをサーバとした場合にはクライアントプロセスとして、アプリケーション２２０をクライアントとした場合にはサーバプロセスとして動作することができる。ＶＡＳ２３０は、アプリケーション２２０が送信した定義データを受け取り、その定義データに基づき画像を描画して操作パネルに画像を表示する、プラットフォーム２１０が備えるコントロールサービスへその定義データを送信するとともに、外部機器１１０へ送信するためにその定義データをハードディスク２０２等に記憶させることができる。ＶＡＳ２３０は、記憶した定義データを読み出し、プラットフォーム２１０が備えるコントロールサービスへ送り、外部機器１１０へと転送するために、ＩＰアドレス等を指定してネットワークインタフェース２０４へと出力する。
【００２９】
プラットフォーム２１０は、アプリケーションからの処理要求を解釈してハードウェアリソース２００の獲得要求を発生させるコントロールサービスと、１または複数のハードウェアリソース２００の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャと、オペレーティングシステム（ＯＳ）とを含む。
【００３０】
コントロールサービスは、複数のサービスモジュールから構成され、システムコントロールサービス（ＳＣＳ）２１１と、エンジンコントロールサービス（ＥＣＳ）２１２と、メモリコントロールサービス（ＭＣＳ）２１３と、オペレーションパネルコントロールサービス（ＯＣＳ）２１４と、ファックスコントロールサービス（ＦＣＳ）２１５と、ネットワークコントロールサービス（ＮＣＳ）２１６とから構成されている。このプラットフォーム２１０は、予め定義された関数によりアプリケーション２２０から処理要求を受信可能とするアプリケーションプログラムインタフェース（ＡＰＩ）２１７を備えている。
【００３１】
ＯＳ２１８は、ＵＮＩＸ（登録商標）やＬＩＮＵＸ等の汎用のオペレーティングシステムとすることができ、プラットフォーム２１０およびアプリケーション２２０の各ソフトウェアをそれぞれプロセスとして並列実行する。
【００３２】
ＳＲＭ２１９のプロセスは、ＳＣＳ２１１とともにシステムの制御およびハードウェアリソース２００の管理を行う。ＳＲＭ２１９のプロセスは、スキャナやプリンタ等のエンジンやメモリ等のハードウェアリソース２００を利用するアプリケーション２２０からの要求に従って調停を行い、実行制御を行う。
【００３３】
このＳＲＭ２１９は、要求されたハードウェアリソース２００が利用可能であるかを判断し、利用可能であると判断した場合、その旨をアプリケーション２２０へ伝える。また、ＳＲＭ２１９は、アプリケーション２２０からの要求に対してハードウェアリソース２００の利用スケジューリングを行い、要求内容を直接実施する。具体的には、プリンタエンジンによる紙搬送や作像動作、メモリ確保、ファイル生成等である。
【００３４】
ＳＣＳ２１１のプロセスは、アプリケーション２２０の管理、操作パネル２０５の制御、操作パネル２０５への画面表示、ＬＥＤ表示、ハードウェアリソース２００の管理、割り込みアプリケーションの制御等を行う。
【００３５】
ＥＣＳ２１２のプロセスは、プリンタ、スキャナ、コピー、ファクシミリ等からなるハードウェアリソース２００のエンジンの制御を行う。ＭＣＳ２１３のプロセスは、画像メモリの取得およびその解放、ハードディスク２０２の利用、画像データの圧縮および伸張等を行う。ＦＣＳ２１５のプロセスは、システムコントローラの各アプリケーション層からＰＳＴＮ／ＩＳＤＮ網を利用したファクシミリの送受信、バックアップＳＲＡＭで管理されている各種ファクシミリデータの登録および引用、ファクシミリの読み取り、印刷を行うためのＡＰＩを提供する。
【００３６】
ＮＣＳ２１６のプロセスは、ネットワークＩ／Ｏを必要とするアプリケーション２２０に対して共通に利用できるサービスを提供するためのプロセスであり、ネットワークから各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーション２２０からデータをネットワークへ送信する際の仲介を行う。ｆｔｐｄ、ｈｔｔｐｄ、ｓｍｔｐｄ等のサーバデーモンや、ｈｔｔｐ、ｆｔｐ、ｓｍｔｐ等のプロトコルのクライアント機能を有している。このＮＣＳ２１６は、ネットワーク部１０３として機能する。
【００３７】
ＯＣＳ２１４のプロセスは、ユーザと本体制御間の情報伝達手段となる操作パネル２０５の制御を行う。ＯＣＳ２１４は、操作パネル２０５からキー押下をキーイベントとして取得し、取得したキーイベントに対応したイベント関数をＳＣＳ２１１へ送信するＯＣＳ２１４のプロセス部分と、アプリケーション２２０またはコントロールサービスからの要求により操作パネル２０５に各種画面を描画出力する描画関数やその他の操作パネルに対する制御を行う関数等が予め登録されたＯＣＳライブラリ部分とから構成される。ＯＣＳライブラリは、アプリケーション２２０およびコントロールサービスの各モジュールにリンクされて実装されている。このＯＣＳ２１４は、描画部１０２として機能する。
【００３８】
アプリケーション２２０は、ページ記述言語（ＰＤＬ）、ＰＣＬおよびポストスクリプト（ＰＳ）を有するプリンタ用のアプリケーションであるプリンタアプリケーション２２１と、コピー用のアプリケーションであるコピーアプリケーション２２２と、ファクシミリ用のアプリケーションであるファックスアプリケーション２２３と、スキャナ用のアプリケーションであるスキャナアプリケーション２２４とを有している。アプリケーション２２０の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信を行いつつ、印刷、コピー、スキャナ、ファックス等の画像形成処理を実現している。これらアプリケーション２２０は、図１でいうアプリケーション１０１に相当するものである。
【００３９】
画像形成装置のハードウェア構成を、図３に例示する。図３は、画像形成装置が複合機である場合のハードウェア構成である。この画像形成装置は、コントローラ３００と、表示部としての操作パネル３２０と、プリンタ等の画像形成処理に特有のハードウェア資源であるエンジン３３０と、ファクシミリ装置を制御するファックスコントロールユニット（ＦＣＵ）３４０とを備える。コントローラ３００は、ＣＰＵ３０１と、ＲＡＭやＲＯＭを含むシステムメモリ３０２と、ノースブリッジ（ＮＢ）３０３と、サウスブリッジ（ＳＢ）３０４と、ＡＳＩＣ３０５と、ローカルメモリ３０６と、ＨＤＤ３０７と、ネットワークに接続するためのネットワークインタフェースカード３０８と、ＳＤカード用スロット３０９と、ＵＳＢデバイス３１０と、ＩＥＥＥ１３９４デバイス３１１と、画像形成装置をＰＣに接続するためのセントロニクス３１２とを含む。エンジン３３０は、コントローラ３００のＡＳＩＣ３０５にＰＣＩバスで接続されている。
【００４０】
システムメモリ３０２は、インストールされたアプリケーション、各種設定データ等を格納し、ＣＰＵ３０１は、装置全体の制御を行う装置制御部１０４としての役割を担い、また、システムメモリ３０２からアプリケーションを読み出して実行する。上記の定義データは、ローカルメモリ３０６あるいはＨＤＤ３０７に格納され、ＡＳＩＣ３０５が操作パネル３２０へ描画を行うために読み出される。ＣＰＵ３０１は、ローカルメモリ３０６等に格納された定義データをＡＳＩＣ３０５に指示して、ＮＢ３０３を介してネットワークインタフェースカード３０８等へ送らせ、ネットワークインタフェースカード３０８等が外部機器１１０へと転送する。外部機器１１０からのデータは、ネットワークインタフェースカード３０８等が受け取り、ＣＰＵ３０１で実行されるアプリケーションへ渡され、ＣＰＵ３０１上で処理が実行される。
【００４１】
プリンタによっては、画面も、システムメモリやネットワークインタフェース等を持たないものもあり、この場合、これら画面やシステムメモリ等を備えるプリンタ用の外付け機器として提供することが可能である。この外付け機器と、外部機器１１０との間で通信を行うことで、画面の共有および外部機器１１０からプリンタの制御を行うことができる。
【００４２】
図４は、仮想描画部１０５が保持する定義データを例示した図である。定義データは、図４に示すフォーマットで定義され、このフォーマットに従ってデータが生成され、外部機器１１０への転送のために使用される。ＯＳとしてＷｉｎｄｏｗｓ（登録商標）を使用する場合、このＷｉｎｄｏｗｓ（登録商標）で提供されているリモートデスクトップでは画像のビットマップイメージと座標情報が転送される。これでは、データの転送量が多く、また、画像表示するためにある程度のメモリが必要となる。しかしながら、この仮想描画部１０５で管理するフォーマットでは、ビットマップイメージを転送しないため、データの転送量が少なく、画面に表示する内容をテキスト形式でメモリ上、あるいはファイルで管理することができる。
【００４３】
図４に示すフォーマットでは、定義データは、画面サイズ、画面名、文字コード、オブジェクトといった属性情報とされている。画面サイズは、表示する画面サイズを定義するもので、ここでは「ｘ＝１０２４、ｙ＝１２８０」とされている。これらの数値は、水平方向であるｘ軸方向の画素数および鉛直方向であるｙ軸方向の画素数を表すものである。
【００４４】
画面名は、画面の名称を定義する。画面名は、その画面を特定しやすい名称を付けることができ、ここでは「Ｍｅｎｕ」という名称が付けられている。文字コードは、表示する文字コードを定義するもので、ここでは「ＵＴＦ−８」、すなわち８ビット単位の情報の組み合わせで文字を表記するものとされている。
【００４５】
オブジェクトは、テキストを表示する情報を定義する。その１つには、オブジェクトの名称がある。オブジェクト名は、テキストオブジェクトの名称を定義するものである。ここでは「ｔｅｘｔ１」とされている。オブジェクトの座標情報は、そのオブジェクトのどの座標位置から開始するかを表す開始座標を定義する。ここでは「ｘ＝１０、ｙ＝３」、すなわち左側から１０、上から３個目の画素から開始することを表している。
【００４６】
また、オブジェクトの色情報は、表示する色を定義する。数値で表された色、ここでは「１２３４」とされている。オブジェクトのフォントは、表示するフォントを定義する。ここでは「Ｃｅｎｔｕｒｙ」とされている。オブジェクトのサイズは、表示するサイズを定義する。ここでは「１０」とされている。オブジェクトの表示内容は、表示する内容を定義する。ここでは「Ｗｅｌｃｏｍｅ！！！」とされている。
【００４７】
図５は、画像形成装置１００が外部機器１１０へ定義データを転送する処理の流れを示したシーケンス図である。まず、外部機器１１０が、画像形成装置１００のネットワーク部１０３に対し、定義データを受信するためのネットワークポートを開く。ここで、図１に示すネットワーク１２０はＬＡＮ等とすることができ、ＬＡＮ環境で使用可能なＳｏｃｋｅｔ、ＨＴＴＰ、ＦＴＰ等のデータ転送可能なプロトコルを使用して通信を行うことができる。また、ＬＡＮとは別に、Ｂｌｕｅｔｏｏｔｈでデータ転送を行うことも可能である。ステップ５００では、外部機器１１０がネットワークポートを開くことで、定義データの転送を待機する。
【００４８】
次に、ステップ５１０で、画像形成装置１００が有するアプリケーション１０１は、データ転送先を仮想描画部１０５に設定する。このデータ転送先は、外部機器１１０を表し、具体的には、外部機器１１０を識別するためのＩＰアドレスやＭＡＣアドレス等の識別情報である。これらの情報は、ユーザが予め設定したり、ブロードキャスト等を行って外部機器１１０からの応答を受け取ることにより取得することができる。
【００４９】
アプリケーション１０１により画面が更新される場合、アプリケーション１０１は、描画部１０２に加え、仮想描画部１０５へも定義データを送信する（ステップ５２０）。仮想描画部１０５は、図４に示すフォーマット形式に定義データを保存する。このフォーマット形式の定義データは、アプリケーション１０１で作成され、仮想描画部１０５は、アプリケーション１０１から受け取ったままのフォーマット形式で保存することもできる。仮想描画部１０５は、受信した定義データをメモリやファイルに保存する。また、高機能なＧＵＩ（Graphical User Interface）の設定や簡易的なＧＵＩのデータ形式にしてフレキシブルに仮想描画部１０５のデータを保存することもできる。
【００５０】
ステップ５３０において仮想描画部１０５は、ユーザにより設定されたデータ転送先を指定し、ネットワーク部１０３へ定義データを送信する。ステップ５４０においてネットワーク部１０３は、受け取った定義データをネットワーク１２０上に送信する。
【００５１】
ステップ５５０において外部機器１１０のアプリケーション１１１は、外部機器１１０が備えるネットワーク部１１４で受け取った定義データを、ネットワーク部１１４から受信する。アプリケーション１１１は、受信した定義データから画面サイズ、座標、フォント等の属性情報を基に、外部機器１１０がもつ画面に展開することができる形に変換する。ステップ５６０において描画部１１２は、変換したデータを受け取り、画像を描画して表示部に表示させる。
【００５２】
図６は、外部機器１１０が画像形成装置１００から定義データを取得する処理の流れを示したシーケンス図である。まず、画像形成装置１００を起動させた後、ステップ６００において仮想描画部１０５は、外部機器１１０からネットワーク１２０の接続待ち状態にする。アプリケーション１０１の起動後、ステップ６１０においてアプリケーション１０１が表示させる初期画面のデータを描画部１０２に加え、仮想描画部１０５へも送信する。
【００５３】
外部装置１１０は、画像形成装置１００へと接続するための接続先を指定し、定義データを取得するために接続を確立する。その接続の確立後、ステップ６２０において、定義データを取得するためのメッセージを、その画像形成装置１００へ取得要求として送信する。ステップ６３０において、外部装置１１０のネットワーク部１１４は、ネットワーク１２０上にそのメッセージを送信する。
【００５４】
画像形成装置１００のネットワーク部１０３は、そのメッセージをネットワーク１２０上から受信し、仮想描画部１０５へ送り、ステップ６４０において仮想描画部１０５は、ネットワーク部１０３からそのメッセージを受信する。仮想描画部１０５は、アプリケーション１０１から定義データが送信され、その定義データを保持しているため、ステップ６５０において、この定義データをネットワーク部１０３へ送り、ステップ６６０において、ネットワーク部１０３がその定義データをネットワーク１２０上に送信する。
【００５５】
ステップ６７０において、外部機器１１０が備えるアプリケーション１１１は、ネットワーク部１１４で受け取った定義データを受信する。受信したデータから、画面サイズ、座標、フォント等の属性情報を得、その属性情報をもとに外部機器１１０がもつ画面に展開できる形に変換する。ステップ６８０において、アプリケーション１１１は、変換したデータを描画部１１２へ渡し、描画部１１２が画像を描画して表示部に表示させる。
【００５６】
図７は、外部機器１１０が画像形成装置１００の画面を初期化する処理の流れを示したシーケンス図である。外部機器１１０は、すでに画像形成装置１００から定義データを受信している状態にある。画面の初期化を行う場合、まず、ステップ７００において、外部機器１１０を使用するユーザが入力部１１３に対して入力を行い、画像形成装置１００の画面を初期化する旨の要求をアプリケーション１１１へ送る。例えば、表示された初期化ボタンに対応する入力部１１３のボタンを押下することにより、その要求をアプリケーション１１１へ送ることができる。この要求は、ネットワーク障害等の何かしらの理由で外部機器１１０と画像形成装置１００との間で定義データの転送に障害が発生した場合に利用することができる。
【００５７】
外部機器１１０のアプリケーションは、その要求を受け取り、初期化するための画面初期化データを生成して、ステップ７１０において、ネットワーク部１１４へ送る。ステップ７２０において、ネットワーク部１１４は、画面初期化データをネットワーク１２０上に送信する。
【００５８】
ステップ７３０において、画像形成装置１００のアプリケーション１０１は、ネットワーク部１０３が受信した画面初期化データを受け取り、画面を再起動させる。ステップ７４０において、再起動後、アプリケーション１０１は、仮想描画部１０５へ定義データを送信する。仮想描画部１０５は、定義データを保持し、転送先を指定して、ステップ７５０において、ネットワーク部１０３へ定義データを送る。ステップ７６０において、ネットワーク部１０３は、その転送先へ送信するために定義データをネットワーク１２０上に送信する。
【００５９】
ステップ７７０において、外部機器１１０のアプリケーション１１１は、ネットワーク部１１４がネットワーク１２０上から受信した定義データを受信する。アプリケーション１１１は、受信したデータから、画面サイズ、座標、フォント等の属性情報をもとに外部機器１１０がもつ画面に展開できる形に変換する。ステップ７８０において、アプリケーション１１１は、変換したデータを描画部１１２へ送り、描画部１１２が、画像を描画して表示部に表示させる。
【００６０】
図８は、外部機器１１０から画像形成装置１００の画面を操作する処理の流れを示したシーケンス図である。外部機器１１０は、すでに画像形成装置１００から定義データを受信している状態にある。まず、ステップ８００において、外部機器１１０を使用するユーザが、表示部に表示されている画面に対し、入力部１１３から入力を行い、操作を開始する。
【００６１】
ステップ８１０において、外部機器１１０のアプリケーション１１１は、どのオブジェクトが操作されたかの情報をネットワーク部１１４へ通知する。画像形成装置１００から受信した定義データには、オブジェクトの属性情報が含まれており、アプリケーション１１１は、ユーザの操作により、どのオブジェクトが操作されたかを検出してイベントを生成し、画像形成装置１００へそのイベントを通知する。
【００６２】
ステップ８２０において、ネットワーク部１１４は、画像形成装置１００へそのイベントを送信するために、ネットワーク１２０上にそのイベントを送信する。
【００６３】
ステップ８３０において、画像形成装置１００のネットワーク部１０３は、そのイベントを受け取り、仮想描画部１０５へ渡す。仮想描画部１０５は、ネットワーク部１０３からイベントを受信し、ステップ８４０において、アプリケーション１０１へそのイベントを送信する。アプリケーション１０１は、そのイベントを受け取り、画像形成装置１００の表示部に対して入力されたのと同じ処理を実行する。これは、アプリケーション１０１が描画部１０２に対して送信するイベントと同じ処理になるため、アプリケーション１０１を変更することなく、外部機器１１０からのイベントを受信し、同じコードを実行する。
【００６４】
ステップ８５０において、このイベントの通知を受けたアプリケーション１０１は、装置制御部１０４へ制御データを送り、スキャン、コピー等の機器や機能を制御する。イベントが画面遷移である場合、ステップ８６０において、その定義データを仮想描画部１０５へ送り、ステップ８７０において、仮想描画部１０５からネットワーク部１０３へ定義データが送られ、ステップ８８０において、ネットワーク部１０３がその定義データを外部機器１１０へ転送する。
【００６５】
ステップ８９０において、外部機器１１０のアプリケーション１１１は、ネットワーク部１１４がネットワーク１２０上から受け取った定義データを受信する。受信したデータから、画面サイズ、座標、フォント等の属性情報をもとに外部機器１１０がもつ画面に展開できる形に変換する。ステップ９００において、アプリケーション１１１は、変換したデータを描画部１１２へ送り、描画部１１２は、画像を描画して表示部に表示させる。
【００６６】
画像形成装置１００が接続を確立する外部機器１１０は１つに限られるものではなく、ネットワーク１２０に接続された複数の外部機器と接続を確立し、それら複数の外部機器に定義データを送り、それらの画面に表示させることもできる。接続可能な複数の外部機器のすべてに定義データを送るのではなく、定義データを送るべき外部機器を指定することも可能である。
【００６７】
外部機器１１０を指定するための入力画面を図９に示す。この入力画面は、外部機器のＩＰアドレスや機器を識別するための機器名等のホスト名と、ＨＴＴＰといったプロトコル名やＢｌｕｅｔｏｏｔｈといった無線通信の規格等のネットワーク設定と、それらを有効にするか無効にするかを決定するために入力されるチェックボックスとを含む。ユーザは、チェックボックスにチェックを入れることで、いずれの機器を有効にするかを指定することができる。
【００６８】
外部機器１１０が接続を確立する画像形成装置１００は１つに限られるものではなく、１つの外部機器とネットワークに接続された複数の画像形成装置との間に接続を確立し、外部機器からそれら複数の画像形成装置に上記の定義データ取得要求、イベント、初期化要求等を送信することができる。この場合、１つの画面には、１つの画像形成装置の画面と同じ画面しか表示することができないので、切り替えることにより他の画像形成装置の画面を表示することができる。
【００６９】
画像形成装置１００を切り替えるための画面を図１０に示す。この画面は、画像形成装置１００のＩＰアドレスや装置を識別するための機器名等のホスト名と、ＨＴＴＰといったプロトコル名やＢｌｕｅｔｏｏｔｈといった無線通信の規格等のネットワーク設定と、画面を切り替えるための切り替えボタンとを含んでいる。切り替えボタンが押下されると、そのボタンに関連した装置の画面が表示され、その表示された装置の画面を操作することができるようになる。
【００７０】
上記の例では、仮想描画部１０５が接続可能な複数の外部機器１１０のアクセス情報を保持し、外部機器１１０も、接続を確立した複数の画像形成装置１００のアクセス情報を保持している。なお、アクセス情報は、装置あるいは機器のＩＰアドレスや機器名といったホスト名、ＨＴＴＰやＢｌｕｅｔｏｏｔｈといったネットワーク設定情報である。
【００７１】
外部機器１１０が保持するアクセス情報に含まれてはいないが、ネットワーク１２０に接続され、アクセス可能な画像形成装置が存在する場合がある。例えば、ネットワーク１２０に新たに追加された画像形成装置である。この場合、外部機器１１０は、その装置のアクセス情報を保持していないため、アクセスすることはできない。そこで、装置検索部を設け、接続可能な装置を検索し、検索された装置に上記要求等を送り、その装置の画面を操作することができる。装置の検索は、図１１に示す画面で行うことができ、検索ボタンを押下することにより実行される。
【００７２】
Ｂｌｕｅｔｏｏｔｈの通信方式を利用する場合、ＢｌｕｅｔｏｏｔｈのＤｉｓｃｏｖｅｒｙ機能を利用して検索することができる。Ｂｌｕｅｔｏｏｔｈでは、検索する側の機器と検索される側の装置の認証・暗号化の設定を合わせておき、検索される側の装置を探索可能状態に設定し、検索する側の機器から探索操作を行う。そうすると、検索する側の機器は、探索可能状態にある周囲のＢｌｕｅｔｏｏｔｈ機器の一覧を検索結果として取得することができ、その中から所望の接続先を指定することができる。Ｄｉｓｃｏｖｅｒｙ機能とは、この探索可能状態にある周囲のＢｌｕｅｔｏｏｔｈ機器を探索する機能である。なお、指定した装置との間の通信を傍受・解読されないように、通信を行う双方にパスキー（認証鍵）を入力し、設定する。図１２に示す実施形態では、外部機器１１０から所定距離内にあり、双方の認証・暗号化の設定が合った装置１００ａ〜１００ｄが検索されることになる。
【００７３】
ＨＴＴＰ等の通信プロトコルを用いたＬＡＮ環境のネットワークを利用する場合、同一セグメント内にある装置へブロードキャストすることにより検索する。この場合、同一の構内通信網に接続された装置のすべてに対し、同じ情報を同時に送信し、図１１に示すように、応答を返信した装置を検索結果として画面に表示する。なお、各装置の画面は、切替ボタンを押下することにより切り替えることができる。
【００７４】
外部機器１１０から画像形成装置１００を操作している間に、画像形成装置１００を他のユーザが操作すると、アプリケーション１０１が同時に実行されることになる。アプリケーション１０１はどちらの処理を実行してよいか判断することができないため、外部機器１１０から操作を行う場合、画像形成装置１００の画面の表示を無効にし、外部機器１１０からの操作を優先的に行えるようにすることが望ましい。具体的には、画像形成装置１００へ操作パネルの表示を無効にするための制御データを送信し、操作パネルが入力を受け付けないようにする。この結果、画像形成装置１００の表示を切り替え、優先的に画面を占有することができる。
【００７５】
これまで、画像形成装置、その画像形成装置と外部機器とを含むデータ転送システムを図面に示した実施形態を参照して詳細に説明してきた。本発明では、データ転送システムが行う処理を、データ転送方法として提供することもでき、また、その方法を実現するためのコンピュータ可読なプログラムとして提供することもできる。このプログラムは、コンピュータにより読み取り可能な記録媒体に格納して提供することができる。記録媒体としては、ＨＤＤのほか、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＳＤカード等を挙げることができる。
【００７６】
また、本発明の画像形成装置およびデータ転送システムは、上述した実施形態に限定されるものではなく、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【図面の簡単な説明】
【００７７】
【図１】本実施形態のデータ転送システムの構成を示した図。
【図２】画像形成装置の機能ブロック図。
【図３】画像形成装置のハードウェア構成を示した図。
【図４】仮想描画部が保持する定義データのフォーマットを例示した図。
【図５】画像形成装置が外部機器へ定義データを転送する処理の流れを示したシーケンス図。
【図６】外部機器が画像形成装置から定義データを取得する処理の流れを示したシーケンス図。
【図７】外部機器が画像形成装置の画面を初期化する処理の流れを示したシーケンス図。
【図８】外部機器から画像形成装置の画面を操作する処理の流れを示したシーケンス図。
【図９】外部機器を指定するための接続先設定画面を例示した図。
【図１０】表示する画面を切り替えるための画像形成装置設定画面を例示した図。
【図１１】画像形成装置を検索するための検索画面を例示した図。
【図１２】ネットワークに外部機器と複数の探索可能状態に設定された画像形成装置とを含む構成を示した図。
【符号の説明】
【００７８】
１００…画像形成装置、１０１…アプリケーション、１０２…描画部、１０３…ネットワーク部、１０４…装置制御部、１０５…仮想描画部、１１０…外部機器、１１１…アプリケーション、１１２…描画部、１１３…入力部、１１４…ネットワーク部、１２０…ネットワーク、２００…ハードウェアリソース、２０１…プリンタ、２０２…ハードディスク、２０３…メモリ、２０４…ネットワークインタフェース、２０５…操作パネル、２０６…エンジンＩ／Ｆ、２１０…プラットフォーム、２１１…ＳＣＳ、２１２…ＥＣＳ、２１３…ＭＣＳ、２１４…ＯＣＳ、２１５…ＦＣＳ、２１６…ＮＣＳ、２１７…ＡＰＩ、２１８…ＯＳ、２１９…ＳＲＭ、２２０…アプリケーション、２２１…プリンタアプリケーション、２２２…コピーアプリケーション、２２３…ファックスアプリケーション、２２４…スキャナアプリケーション、２３０…ＶＡＳ、３００…コントローラ、３０１…ＣＰＵ、３０２…システムメモリ、３０３…ＮＢ、３０４…ＳＢ、３０５…ＡＳＩＣ、３０６…ローカルメモリ、３０７…ＨＤＤ、３０８…ＮＩＣ、３０９…ＳＤカード用スロット、３１０…ＵＳＢデバイス、３１１…ＩＥＥＥ１３９４デバイス、３１２…セントロニクス、３２０…操作パネル、３３０…エンジン、３４０…ＦＣＵ
【図１】
0005108571.tif 000002
【図２】
0005108571.tif 000003
【図３】
0005108571.tif 000004
【図４】
0005108571.tif 000005
【図５】
0005108571.tif 000006
【図６】
0005108571.tif 000007
【図７】
0005108571.tif 000008
【図８】
0005108571.tif 000009
【図９】
0005108571.tif 000010
【図１０】
0005108571.tif 000011
【図１１】
0005108571.tif 000012
【図１２】
0005108571.tif 000013