(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-31
(45)【発行日】2022-11-09
(54)【発明の名称】情報処理装置、情報処理方法、プログラム、および画像形成システム
(51)【国際特許分類】
H04N 1/00 20060101AFI20221101BHJP
B41J 29/38 20060101ALI20221101BHJP
G06F 3/12 20060101ALI20221101BHJP
【FI】
H04N1/00 127Z
B41J29/38 801
G06F3/12 303
G06F3/12 329
(21)【出願番号】P 2019051904
(22)【出願日】2019-03-19
【審査請求日】2022-01-13
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100089118
【氏名又は名称】酒井 宏明
(72)【発明者】
【氏名】吉見 駿
【審査官】橋爪 正樹
(56)【参考文献】
【文献】特開2013-008293(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/00
B41J 29/38
G06F 3/12
(57)【特許請求の範囲】
【請求項1】
外部モジュールから、断続的に、当該外部モジュールの状態を取得する取得部と、
前記取得部により取得した変化前の前記状態、当該変化前の状態の次に取得した変化後の前記状態、および前記外部モジュールの状態遷移図に基づいて、前記取得部によって前記状態が取得されないポーリング期間中において、前記外部モジュールが状態遷移した欠損状態を補完する補完部と、
を備える情報処理装置。
【請求項2】
前記補完部は、前記状態遷移図に基づいて、前記ポーリング期間中に前記外部モジュールが複数の状態遷移を行っているか否かを判断し、前記ポーリング期間中に前記外部モジュールが複数の状態遷移を行っている場合、前記ポーリング期間中の前記外部モジュールの状態遷移の数の分、前記欠損状態を補完する請求項1に記載の情報処理装置。
【請求項3】
前記補完部は、前記変化前の状態から前記変化後の状態への状態遷移のパスが複数存在する場合、前記複数のパスのうち最短の前記パスで前記外部モジュールが状態遷移した場合の前記欠損状態を補完する請求項1または2に記載の情報処理装置。
【請求項4】
前記補完部は、前記変化前の状態から前記変化後の状態への状態遷移のパスが複数存在する場合、前記複数のパスのうち最も発生率の高い前記パスで前記外部モジュールが状態遷移した場合の前記欠損状態を補完する請求項1または2に記載の情報処理装置。
【請求項5】
複数のアプリケーションを実行し、
前記補完部は、さらに、補完した前記欠損状態を、前記複数のアプリケーションのそれぞれに通知する請求項1から4のいずれか一に記載の情報処理装置。
【請求項6】
前記取得部は、さらに、前記ポーリング期間中の前記外部モジュールの前記状態を記憶する記憶部を前記外部モジュールが有する場合、当該記憶部から、前記ポーリング期間中の前記外部モジュールの前記状態を取得し、
前記補完部は、前記記憶部から取得した前記状態を、前記欠損状態として補完する請求項1から5のいずれか一に記載の情報処理装置。
【請求項7】
情報処理装置で実行される情報処理方法であって、
取得部が、外部モジュールから、断続的に、当該外部モジュールの状態を取得する工程と、
補完部が、前記取得部により取得した変化前の前記状態、当該変化前の状態の次に取得した変化後の前記状態、および前記外部モジュールの状態遷移図に基づいて、前記取得部によって前記状態が取得されないポーリング期間中において、前記外部モジュールが状態遷移した欠損状態を補完する工程と、
を含む情報処理方法。
【請求項8】
コンピュータを、
外部モジュールから、断続的に、当該外部モジュールの状態を取得する取得部と、
前記取得部により取得した変化前の前記状態、当該変化前の状態の次に取得した変化後の前記状態、および前記外部モジュールの状態遷移図に基づいて、前記取得部によって前記状態が取得されないポーリング期間中において、前記外部モジュールが状態遷移した欠損状態を補完する補完部と、
として機能させるためのプログラム。
【請求項9】
画像形成装置と情報処理装置とを有する画像形成システムであって、
前記情報処理装置は、
前記画像形成装置から、断続的に、当該画像形成装置の状態を取得する取得部と、
前記取得部により取得した変化前の前記状態、当該変化前の状態の次に取得した変化後の前記状態、および前記画像形成装置の状態遷移図に基づいて、前記取得部によって前記状態が取得されないポーリング期間中において、前記画像形成装置が状態遷移した欠損状態を補完する補完部と、
を備える画像形成システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、プログラム、および画像形成システムに関する。
【背景技術】
【0002】
スマートデバイスやMFP(Multifunction Peripheral/Product/Printer)等の複数のモジュールを有するシステムにおいて、一方のモジュール(スマートデバイス等の情報処理装置)が、他方のモジュール(MFP等の画像形成装置)から、断続的に、当該他方のモジュールの状態を取得する技術が開発されている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、上記の技術では、他方のモジュールの状態の取得処理のポーリング期間中に、他方のモジュールが状態遷移を複数回行った場合、一方のモジュールが取得する他方のモジュールの状態に欠損が生じ、他方のモジュールの状態遷移を正確に把握することが困難である。
【0004】
本発明は、上記に鑑みてなされたものであって、他方のモジュールの状態遷移を正確に把握することが可能な情報処理装置、情報処理方法、プログラム、および画像形成システムを提供することを目的とする。
【課題を解決するための手段】
【0005】
上述した課題を解決し、目的を達成するために、本発明は、外部モジュールから、断続的に、当該外部モジュールの状態を取得する取得部と、取得部により取得した変化前の状態、当該変化前の状態の次に取得した変化後の状態、および外部モジュールの状態遷移図に基づいて、取得部によって状態が取得されないポーリング期間中において、外部モジュールが状態遷移した欠損状態を補完する補完部と、を備える。
【発明の効果】
【0006】
本発明によれば、他方のモジュールの状態遷移を正確に把握することが可能となる、という効果を奏する。
【図面の簡単な説明】
【0007】
【
図1】
図1は、第1の実施の形態にかかる画像形成システムの構成の一例を示す図である。
【
図2】
図2は、第1の実施の形態にかかる画像形成システムが有する情報処理装置のハードウェア構成の一例を示すブロック図である。
【
図3】
図3は、第1の実施の形態にかかる画像形成システムが有する画像形成装置のハードウェア構成の一例を示すブロック図である。
【
図4】
図4は、第1の実施の形態にかかる情報処理装置および画像形成装置の機能構成の一例を示す図である。
【
図5】
図5は、第1の実施の形態にかかる情報処理装置の機能提供アプリおよび第1接続アプリの特徴的な機能構成の一例を示す図である。
【
図6】
図6は、第1の実施の形態にかかる画像形成装置の状態遷移図の一例を示す図である。
【
図7】
図7は、第1の実施の形態にかかる情報処理装置による欠損状態の補完処理の詳細の一例を説明するための図である。
【
図8】
図8は、第1の実施の形態にかかる画像形成システムにおける欠損状態の補完処理の流れの一例を示すシーケンス図である。
【
図9】
図9は、第3の実施の形態にかかる画像形成装置の状態遷移図の一例を示す図である。
【
図10】
図10は、第3の実施の形態にかかる情報処理装置が記憶する発生率テーブルの一例を示す図である。
【発明を実施するための形態】
【0008】
以下に添付図面を参照して、情報処理装置、情報処理方法、プログラム、および画像形成システムの実施の形態を詳細に説明する。
【0009】
(第1の実施の形態)
図1は、第1の実施の形態にかかる画像形成システムの構成の一例を示す図である。
図1に示すように、本実施の形態にかかる画像形成システム1は、情報処理装置2と、画像形成装置3と、を有する。
【0010】
そして、情報処理装置2および画像形成装置3は、インターネット等の通信ネットワークNTを介して互いに通信可能に接続されている。
【0011】
次に、
図2を用いて、本実施の形態にかかる情報処理装置2のハードウェア構成の一例について説明する。
図2は、第1の実施の形態にかかる画像形成システムが有する情報処理装置のハードウェア構成の一例を示すブロック図である。
【0012】
情報処理装置2は、PC(Personal Computer)やサーバ等によって構築されている。具体的には、情報処理装置2は、
図2に示すように、CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、HDD(Hard Disk Drive)204、HDDコントローラ205、ディスプレイ206、外部機器接続I/F(Interface)207、ネットワークI/F208、データバス209、キーボード210、ポインティングデバイス211、DVD-RW(Digital Versatile Disk Rewritable)ドライブ212、およびメディアI/F213を備えている。
【0013】
CPU201は、情報処理装置2全体の動作を制御する。
【0014】
ROM202は、IPL(Initial Program Loader)等のCPU201の駆動に用いられるプログラムを記憶する。
【0015】
RAM203は、CPU201のワークエリアとして使用される。
【0016】
HDD204は、プログラム等の各種データを記憶する。
【0017】
HDDコントローラ205は、CPU201の制御に従ってHDD204に対する各種データの読み出し又は書き込みを制御する。
【0018】
ディスプレイ206は、カーソル、メニュー、ウィンドウ、文字、または画像などの各種情報を表示する。
【0019】
外部機器接続I/F207は、各種の外部機器を接続するためのインタフェースである。ここで、外部機器は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。
【0020】
ネットワークI/F208は、通信ネットワークNTを利用してデータ通信をするためのインタフェースである。
【0021】
データバス209は、
図2に示されているCPU201等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
【0022】
キーボード210は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。
【0023】
ポインティングデバイス211は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。
【0024】
DVD-RWドライブ212は、着脱可能な記録媒体の一例としてのDVD-RW214に対する各種データの読み出しまたは書き込みを制御する。ここで、DVD-RWドライブ212により各種データの読み出しまたは書き込みを行う記録媒体は、DVD-RW214に限らず、DVD-R等であってもよい。
【0025】
メディアI/F213は、フラッシュメモリ等の記録メディア215に対するデータの読み出しまたは書き込み(記憶)を制御する。
【0026】
次に、
図3を用いて、本実施の形態にかかる画像形成装置3のハードウェア構成について説明する。
図3は、第1の実施の形態にかかる画像形成システムが有する画像形成装置のハードウェア構成の一例を示すブロック図である。
【0027】
画像形成装置3は、MFP(Multifunction Peripheral/Product/Printer)等により構築されている。画像形成装置3は、コントローラ310、近距離通信回路320、エンジン制御部330、操作パネル340、ネットワークI/F350を備えている。
【0028】
コントローラ310は、画像形成装置3全体の制御を行い、例えば、描画、通信、操作パネル340からの入力等を制御する。具体的には、コントローラ310は、コンピュータの主要部であるCPU301、システムメモリ(MEM-P)302、ノースブリッジ(NB)303、サウスブリッジ(SB)304、ASIC(Application Specific Integrated Circuit)305、記憶部であるローカルメモリ(MEM-C)306、HDDコントローラ307、および、記憶部であるHDD308を有し、NB303とASIC305との間をAGP(Accelerated Graphics Port)バス309で接続した構成となっている。
【0029】
CPU301は、画像形成装置3の全体制御を行う制御部である。
【0030】
NB303は、CPU301と、MEM-P302、SB304、およびAGPバス309とを接続するためのブリッジであり、MEM-P302に対する読み書きなどを制御するメモリコントローラと、PCI(Peripheral Component Interconnect)マスタおよびAGPターゲットと、を有する。
【0031】
MEM-P302は、コントローラ310の各機能を実現させるプログラムやデータの格納用メモリであるROM302a、プログラムやデータの展開およびメモリ印刷時の描画用メモリなどとして用いるRAM302bとからなる。
【0032】
ROM302aに記憶されているプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、CD-R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0033】
SB304は、NB303とPCIデバイス、周辺デバイスとを接続するためのブリッジである。
【0034】
ASIC305は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGPバス309、PCIバス311、HDD308およびMEM-C306をそれぞれ接続するブリッジの役割を有する。
【0035】
ASIC305は、PCIターゲットおよびAGPマスタ、ASIC305の中核をなすアービタ(ARB)、MEM-C306を制御するメモリコントローラ、ハードウェアロジックなどにより画像データの回転などを行う複数のDMAC(Direct Memory Access Controller)、並びに、スキャナ部331およびプリンタ部332との間でPCIバス311を介したデータ転送を行うPCIユニットとからなる。
【0036】
ASIC305には、USB(Universal Serial Bus)のインタフェースや、IEEE1394(Institute of Electrical and Electronics Engineers 1394)のインタフェースを接続するようにしてもよい。
【0037】
MEM-C306は、コピー用画像バッファおよび符号バッファとして用いるローカルメモリである。
【0038】
HDD308は、画像データの蓄積、印刷時に用いるフォントデータの蓄積、フォームの蓄積を行うためのストレージである。HDDコントローラ307は、CPU301の制御に従ってHDD308に対するデータの読出又は書込を制御する。
【0039】
AGPバス309は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレータカード用のバスインタフェースであり、MEM-P302に高スループットで直接アクセスすることにより、グラフィックスアクセラレータカードを高速にすることができる。
【0040】
また、近距離通信回路320には、近距離通信回路920aが備わっている。近距離通信回路320は、NFC、Bluetooth(登録商標)等の通信回路である。
【0041】
エンジン制御部330は、スキャナ部331およびプリンタ部332によって構成されている。スキャナ部331またはプリンタ部332には、誤差拡散やガンマ変換などの画像処理部分が含まれている。
【0042】
操作パネル340は、現在の設定値や選択画面等を表示させ、操作者からの入力を受け付けるタッチパネル等のパネル表示部340a、並びに、濃度の設定条件などの画像形成に関する条件の設定値を受け付けるテンキーおよびコピー開始指示を受け付けるスタートキー等からなる操作パネル340bを備えている。
【0043】
画像形成装置3は、操作パネル340のアプリケーション切り替えキーにより、ドキュメントボックス機能、コピー機能、プリンタ機能、およびファクシミリ機能を順次に切り替えて選択することが可能となる。ドキュメントボックス機能の選択時にはドキュメントボックスモードとなり、コピー機能の選択時にはコピーモードとなり、プリンタ機能の選択時にはプリンタモードとなり、ファクシミリモードの選択時にはファクシミリモードとなる。
【0044】
ネットワークI/F350は、通信ネットワークNTを利用してデータ通信をするためのインタフェースである。近距離通信回路320およびネットワークI/F350は、PCIバス311を介して、ASIC305に電気的に接続されている。
【0045】
次に、
図4を用いて、本実施の形態にかかる情報処理装置2および画像形成装置3の機能構成の一例について説明する。
図4は、第1の実施の形態にかかる情報処理装置および画像形成装置の機能構成の一例を示す図である。
【0046】
まず、
図4を用いて、情報処理装置2の機能構成について説明する。
【0047】
図4に示すように、情報処理装置2は、各種のソフトウェアに対してハードウェアの機能のインタフェースを提供するオペレーティングシステムであって例えばAndroid(登録商標)などのOS(Operating System)401、第1接続アプリ402、機能提供アプリ403、汎用アプリ404、およびホームアプリ405を備えている。
【0048】
OS401は、一機能としてWebAPI接続クラス401aを備える。WebAPI接続クラス401aは、OS401とは異なるソフトウェアによって実現されても良い。OS401には、システムの動作に必要な各種のアプリケーションを含んでいても良い。
【0049】
汎用アプリ404は、情報処理装置2で利用できる汎用的なアプリケーションである。汎用アプリ404としては、例えば、画像加工アプリ、メールアプリ等が挙げられる。情報処理装置2には、複数の汎用アプリ404をインストールすることができ、汎用アプリ404は、それぞれ異なる機能を有していても良い。また、汎用アプリ404の一つとして、ホームアプリ405を有していても良い。
【0050】
ホームアプリ405は、情報処理装置2のディスプレイ206上にメイン画面を表示する。ホームアプリ405は、ユーザがメイン画面のアイコンを押下することによっていずれかの機能提供アプリ403および汎用アプリ404を選択する操作をした場合に、押下されたアイコンに対応する機能提供アプリ403および汎用アプリ404を起動する。例えば、ホームアプリ405は、機能提供アプリ403および汎用アプリ404に対して、起動を指示する指示信号を送信することによって、機能提供アプリ403を起動する。
【0051】
ユーザがホームアプリ405を介さず、所望の機能提供アプリ403および汎用アプリ404を起動しても良いし、他の機能提供アプリ403および汎用アプリ404から所望の機能提供アプリ403を起動しても良い。また、ホームアプリ405は、機能提供アプリ403のみメイン画面に表示するものとしても良い。また、ホームアプリ405を設けることに代えて、ホームアプリ405が有する機能を第1接続アプリ402や機能提供アプリ403など、他のアプリが有するものとしても良い。
【0052】
情報処理装置2には、複数の機能提供アプリ403をインストールすることができる。インストールされた複数の機能提供アプリ403は、それぞれ異なる機能を有していても良い。機能提供アプリ403としては、例えば情報処理装置2が接続される通信対象が画像形成装置3である場合、画像形成装置3で実行するコピー、スキャン、プリント、FAXなどの種々の機能に関して、設定および実行指示を行うためのユーザインタフェース画面を提供するアプリケーションが挙げられる。例えば、プリントアプリはプリント機能に関して、ファックスアプリはファックス機能に関して、それぞれ設定および実行指示を行うためのユーザインタフェース画面を提供できる。
【0053】
機能提供アプリ403は、WebAPIWrapper403aを有する。WebAPIWrapper403aは、機能提供アプリ403が動作環境を意識せずに画像形成装置3と通信接続できるようにするための、WebAPI接続クラス401aをラップしたクラスを提供するライブラリである。これにより、機能提供アプリ403は、WebAPIWrapper403aのインスタンスを生成することで、第1接続アプリ402から、現在接続されている画像形成装置3との通信接続に関する通信接続情報(例えば、接続先のホスト名、接続先のポート番号等)を取得することができ、当該通信接続情報を用いて、画像形成装置3に対する機能の実行要求を送信することができる。
【0054】
第1接続アプリ402は、少なくとも情報処理装置2にインストールされて動作するように作成されたアプリであり、画像形成装置3との通信接続を行う。また、第1接続アプリ402は、WebAPIWrapper403aに対し、画像形成装置3との通信接続に関する通信接続情報を提供する。
【0055】
また、第1接続アプリ402は、情報処理装置2にインストールされた機能提供アプリ403のアイコンを一覧表示するホーム画面を生成する機能や、情報処理装置2が接続する画像形成装置3を選択する画面や選択した画像形成装置3に対してログインするために必要な認証情報を受け付ける画面を表示する機能を有していても良い。
【0056】
次に、
図4を用いて、画像形成装置3の機能構成について説明する。
【0057】
図4に示すように、画像形成装置3は、情報処理装置2とは異なる独立したOS411、ECS(Engine Control Service)412、NCS(Network Control Service)413、SCS(System Control Service)414、およびCCS(Certification Control Service)415を備える。
【0058】
ECS412は、プリンタ部332やスキャナ部331などを備える画像エンジンのハードの管理・調停などを行う。
【0059】
NCS413は、画像形成装置3が有するネットワークI/Fのハードの管理・調停などを行い、WebAPI接続クラス401aからのWebAPIリクエスト(例えば、HTTPリクエスト、HTTPSリクエスト等)を受け付ける。
【0060】
SCS414は、画像形成装置3の省エネ復帰の管理やジョブの管理などシステム全般に関わる動作管理やカウンタ/画面/設定等の制御を行う。
【0061】
CCS415は、画像形成装置3のユーザ認証/認証状態/利用制限の管理を行う。
【0062】
ECS412、NCS413、SCS414、CCS415、OS411、画像エンジンは、所定の機能を実行する機能部を構成する一例である。また、機能部は、上記以外にも、コピー、スキャン、プリント、FAXなどの種々の機能を提供するためのソフトウェアおよびハードウェアを含んでも良い。
【0063】
画像形成装置3は通信対象の外部モジュールの一例であり、通信対象は情報処理装置2と通信を行う。通信対象は画像形成装置3に限定されず、電子黒板やプロジェクタを含むオフィス機器など、各種の電子機器であっても良い。
【0064】
次に、
図5を用いて、本実施の形態にかかる情報処理装置2の機能提供アプリ403および第1接続アプリ402の特徴的な機能について説明する。
図5は、第1の実施の形態にかかる情報処理装置の機能提供アプリおよび第1接続アプリの特徴的な機能構成の一例を示す図である。
【0065】
図5に示すように、機能提供アプリ403は、実行要求部501を備える。また、
図5に示すように、第1接続アプリ402は、取得部502、および補完部503を備える。
【0066】
機能提供アプリ403が備える実行要求部501は、画像形成装置3が有する各種機能(例えば、コピー、スキャン、プリント、FAX)の実行指示を行うためのユーザインタフェース画面において、実行指示された入力される機能を受け付ける。そして、実行要求部501は、第1接続アプリ402から取得した通信接続情報を用いて、実行指示を受け付けた機能の実行要求を画像形成装置3に送信する。
【0067】
第1接続アプリ402が備える取得部502は、画像形成装置3から、断続的に、当該画像形成装置3の状態を取得する。本実施形態では、取得部502は、画像形成装置3から、予め設定された周期で、当該画像形成装置3の状態を取得するが、画像形成装置3から、断続的に、当該画像形成装置3の状態を取得するものであれば、これに限定するものではない。例えば、取得部502は、情報処理装置2のユーザによって、画像形成装置3の状態の取得が指示されたタイミングなど、任意のタイミングにおいて、画像形成装置3の状態を取得しても良い。
【0068】
ここで、画像形成装置3の状態とは、画像形成装置3が、実行要求部501から実行要求に応じて遷移する状態である。本実施形態では、画像形成装置3の状態には、待機状態、処理状態、停止状態、およびメンテナンス状態が含まれる。待機状態は、情報処理装置2等の外部装置からの各種機能の実行要求を待っている状態である。処理状態は、画像形成装置3において各種機能を実行している状態である。停止状態は、画像形成装置3において各種機能の実行が中断している状態である。メンテナンス状態は、画像形成装置3のメンテナンスが実行されている状態である。
【0069】
第1接続アプリ402が備える補完部503は、取得部502によって取得した状態のうち任意のタイミングに取得された状態(以下、変化前状態と言う)、取得部502によって変化前状態の次に取得した状態(以下、変化後状態と言う)、および画像形成装置3の状態遷移図に基づいて、ポーリング期間中に、画像形成装置3が状態遷移した状態(以下、欠損状態と言う)を補完する。
【0070】
これにより、画像形成装置3の状態の取得が行われないポーリング期間中に、画像形成装置3が状態遷移を複数回行った場合でも、ポーリング期間中に画像形成装置3が遷移した状態を補完することが可能となる。その結果、画像形成装置3の状態遷移を正確に把握することができる。
【0071】
ここで、ポーリング期間は、取得部502によって状態が取得されない期間である。言い換えると、ポーリング期間は、変化前状態が取得されてから、変化後状態が取得されるまでの期間である。また、ここで、状態遷移図とは、画像形成装置3が状態遷移する複数の状態間の遷移を表す図である。
【0072】
また、補完部503は、取得部502に取得した変化後状態と、補完した欠損状態と、を、機能提供アプリ403(例えば、実行要求部501)に通知する。これにより、機能提供アプリ403は、取得した画像形成装置3の状態に応じて、当該画像形成装置3に対する各種機能の実行要求が送信可能となる。
【0073】
次に、
図6を用いて、本実施の形態にかかる画像形成装置3の状態遷移図の一例について説明する。
図6は、第1の実施の形態にかかる画像形成装置の状態遷移図の一例を示す図である。
【0074】
図6に示すように、画像形成装置3は、その電源が投入されると、まず、待機状態Ph1へ状態遷移する。そして、画像形成装置3は、待機状態Ph1において、情報処理装置2等の外部装置から各種機能(例えば、コピー)の実行要求を受信すると、処理状態Ph2へ、直接的に状態遷移する。ここで、直接的に状態遷移するとは、画像形成装置3の現在の状態から、ある状態へ状態遷移する場合に、他の状態を経ずに、状態遷移することである。また、画像形成装置3は、待機状態Ph1において、外部装置からメンテナンスの実行要求を受信した場合も、メンテナンス状態Ph4へ直接的に状態遷移する。また、画像形成装置3は、待機状態Ph1である場合、停止状態Ph3へは直接的に状態遷移することはなく、処理状態Ph2を経て、停止状態Ph3へ状態遷移する。
【0075】
また、
図6に示すように、画像形成装置3は、処理状態Ph2において、各種機能の実行が終了すると、待機状態Ph1へ直接的に状態遷移する。また、画像形成装置3は、処理状態Ph2において、画像形成装置3の異常等によって各種機能が実行できなくなった場合、停止状態Ph3へ、直接的に状態遷移する。また、画像形成装置3は、処理状態Ph2である場合、メンテナンス状態Ph4へは直接的に状態遷移することはなく、待機状態Ph1を経て、メンテナンス状態Ph4へ状態遷移する。
【0076】
また、
図6に示すように、画像形成装置3は、停止状態Ph3において、画像形成装置3の異常の解消等によって各種機能が再開可能となった場合、処理状態Ph2へ、直接的に状態遷移する。また、画像形成装置3は、停止状態Ph3である場合、待機状態Ph1へは直接的に状態遷移することはなく、処理状態Ph2を経て、待機状態Ph1へ状態遷移する。また、画像形成装置3は、停止状態Ph3である場合、メンテナンス状態Ph4へは直接的に状態遷移することはなく、処理状態Ph2および待機状態Ph1を経て、メンテナンス状態Ph4へ状態遷移する。
【0077】
また、
図6に示すように、画像形成装置3は、メンテナンス状態Ph4において、画像形成装置3のメンテナンスが終了すると、待機状態Ph1へ、直接的に状態遷移する。また、画像形成装置3は、メンテナンス状態Ph4である場合、処理状態Ph2へは直接的に状態遷移することはなく、待機状態Ph1を経て、処理状態Ph2へ状態遷移する。また、画像形成装置3は、メンテナンス状態Ph4である場合、停止状態Ph3へは直接的に遷移することはなく、待機状態Ph1および処理状態Ph2を経て、停止状態Ph3へ状態遷移する。
【0078】
したがって、例えば、変化前状態が処理状態Ph2で、変化後状態がメンテナンス状態Ph4である場合、処理状態Ph2からメンテナンス状態Ph4へ直接的に状態遷移することはないため、補完部503は、
図6に示す状態遷移図を参照して、処理状態Ph2からメンテナンス状態Ph4へ状態遷移する際に経る待機状態Ph1を、欠損状態として補完する。そして、補完部503は、欠損状態として待機状態Ph1を補完した画像形成装置3の状態遷移を、機能提供アプリ403に通知する。
【0079】
次に、
図7を用いて、本実施の形態にかかる情報処理装置2による欠損状態の補完処理の詳細について説明する。
図7は、第1の実施の形態にかかる情報処理装置による欠損状態の補完処理の詳細の一例を説明するための図である。
【0080】
欠損状態の補完に先立って、補完部503は、
図7に示すように、画像形成装置3の状態遷移図に基づいて、変化前状態と変化後状態の組合せと、当該組合せにおいて機能提供アプリ403に通知する状態と、を対応付けるテーブル(以下、状態遷移テーブルと言う)を生成する。そして、補完部503は、取得部502により取得される変化前状態および変化後状態と、状態遷移テーブルと、を用いて、機能提供アプリ403に対して状態を通知する。
【0081】
例えば、変化前状態および変化後状態が共に同じ状態(例えば、待機状態)である場合、補完部503は、欠損状態の補完を行わず、機能提供アプリ403への状態の通知も行わない。
【0082】
また、変化前状態が待機状態Ph1でありかつ変化後状態が処理状態Ph2である場合、画像形成装置3は待機状態Ph1から処理状態Ph2へ直接的に状態遷移可能である。この場合、状態遷移テーブルにおいて、変化前状態としての待機状態Ph1および変化後状態としての処理状態Ph2の組合せと対応付けられる状態はない。そのため、補完部503は、欠損状態の補完を行わず、機能提供アプリ403に対して、変化後状態である処理状態Ph2を機能提供アプリ403に通知する。
【0083】
また、変化前状態が待機状態Ph1でありかつ変化後状態が停止状態Ph3である場合、画像形成装置3は処理状態Ph2を経なければ停止状態Ph3へ状態遷移することができない。この場合、状態遷移テーブルにおいて、変化前状態としての待機状態Ph1および変化後状態としての停止状態Ph3の組合せと対応付けられる状態が、停止状態Ph3および処理状態Ph2である。そのため、補完部503は、処理状態Ph2を欠損状態として補完する。そして、補完部503は、機能提供アプリ403に対して、変化後状態である停止状態Ph3に加えて、変化後状態である停止状態Ph3および補完した処理状態Ph2を、機能提供アプリ403に通知する。
【0084】
また、変化前状態が停止状態Ph3でありかつ変化後状態がメンテナンス状態Ph4である場合、画像形成装置3は待機状態Ph1および処理状態Ph2を経なければメンテナンス状態Ph4へ状態遷移することはできない。この場合、状態遷移テーブルにおいて、変化前状態としての停止状態Ph3および変化後状態としてのメンテナンス状態Ph4の組合せと対応付けられる状態が、メンテナンス状態Ph4、待機状態Ph1、および処理状態Ph2である。
【0085】
そのため、補完部503は、複数の状態、すなわち、待機状態Ph1および処理状態Ph2を欠損状態として補完する。そして、補完部503は、機能提供アプリ403に対して、変化後状態であるメンテナンス状態Ph4に加えて、補完した待機状態Ph1および処理状態Ph2を、機能提供アプリ403に通知する。すなわち、補完部503は、状態遷移図に基づいて、ポーリング期間中に画像形成装置3が複数の状態遷移を行っているか否かを判断する。そして、ポーリング期間中に画像形成装置3が複数の状態遷移を行っている場合、補完部503は、ポーリング期間中の画像形成装置3の状態遷移の数の分、欠損状態を補完する。
【0086】
ここでは説明を省略するが、補完部503は、その他の変化前状態および変化後状態の組合せについても同様にして、状態遷移テーブルに基づいて、機能提供アプリ403に対する状態の通知を行うものとする。
【0087】
次に、
図8を用いて、本実施の形態にかかる画像形成システム1における欠損状態の補完処理の流れの一例について説明する。
図8は、第1の実施の形態にかかる画像形成システムにおける欠損状態の補完処理の流れの一例を示すシーケンス図である。
【0088】
機能提供アプリ403の実行要求部501は、画像形成装置3の機能(例えば、コピー)の実行指示が入力されると、第1接続アプリ402に対して、画像形成装置3の機能の実行指示が入力されたことを通知するイベント受付処理を実行する(ステップS801)。次いで、実行要求部501は、実行指示を受け付けた機能の実行要求を、画像形成装置3に送信する(ステップS802)。
【0089】
第1接続アプリ402の取得部502は、機能提供アプリ403から、画像形成装置3の機能の実行指示が入力されたことが通知されると、第1接続アプリ402の取得部502は、画像形成装置3に対して、断続的に、画像形成装置3の状態の取得要求を送信する(ステップS803)。さらに、取得部502は、取得要求に応じて、画像形成装置3から送信される当該画像形成装置3の状態を取得する(ステップS804)。
【0090】
第1接続アプリ402の補完部503は、取得部502によって画像形成装置3の状態が取得される度に、当該取得された状態(すなわち、変化後状態)が、1つ前に取得した状態(すなわち、変化前状態)と同一か否かを判断する。変化後状態が変化前状態と同一である場合、画像形成装置3の状態遷移は行われていない可能性が高いため、補完部503は、機能提供アプリ403に対する画像形成装置3の状態の通知を行わない。
【0091】
一方、変化後状態が変化前状態と異なる場合、補完部503は、状態遷移図に基づいて、変化前状態から変化後状態へ直接的に状態遷移が可能か否かを判断する。そして、変化前状態から変化後状態へ直接的に状態遷移することができないと判断した場合、補完部503は、状態遷移図に基づいて、変化前状態が取得されてから、変化後状態が取得されるまでのポーリング期間中に画像形成装置3が状態遷移した状態である欠損状態を補完する(ステップS805)。その際、補完部503は、ポーリング期間中における画像形成装置3の状態遷移の回数の分、欠損状態を補完する。
【0092】
次いで、補完部503は、変化後状態および補完した欠損状態を機能提供アプリ403に通知する状態通知処理を実行する(ステップS806)。
【0093】
このように、第1の実施の形態にかかる画像形成システム1によれば、画像形成装置3の状態の取得が行われないポーリング期間中に、画像形成装置3が状態遷移を複数回行った場合でも、ポーリング期間中に画像形成装置3が遷移した状態を補完することが可能となる。その結果、画像形成装置3の状態遷移を正確に把握することができる。
【0094】
(第2の実施の形態)
本実施の形態は、変化前状態から変化後状態への状態遷移のパスが複数存在する場合、当該複数のパスのうち最短のパスで画像形成装置が状態遷移した場合の欠損状態を補完する例である。以下の説明では、第1の実施の形態と同様の構成については説明を省略する。
【0095】
本実施の形態では、補完部503は、状態遷移図に基づいて、変化前状態から変化後状態への状態遷移のパスを特定する。次いで、補完部503は、複数のパスが特定された場合、状態遷移図に基づいて、当該複数のパスのうち最短のパスを特定する。ここで、最短のパスとは、変化前状態から変化後状態までの状態遷移の回数が最も少ないパスである。そして、補完部503は、最短のパスで画像形成装置3が状態遷移した場合の欠損状態を補完する。
【0096】
これにより、画像形成装置3の状態の取得が行われないポーリング期間中に画像形成装置3が状態遷移可能なパスが複数存在する場合、最短のパスによって画像形成装置3が状態遷移した場合における欠損状態を補完できる。
【0097】
例えば、変化前状態が待機状態Ph1でありかつ変化後状態がメンテナンス状態Ph4である場合、画像形成装置3は、待機状態Ph1からメンテナンス状態Ph4へ直接的に状態遷移可能であり、欠損状態を補完する必要が無いとも考えられる。しかしながら、ポーリング期間が長かった場合等においては、画像形成装置3は、変化前状態である待機状態Ph1から始まり、処理状態Ph2および待機状態Ph1を経て、変化後状態であるメンテナンス状態Ph4に状態遷移した可能性もある。つまり、変化前状態と変化後状態のみからだけでは、画像形成装置3がポーリング期間中にどのように状態遷移したかを一意に特定することは困難である。
【0098】
そのため、本実施の形態では、補完部503は、変化前状態から変化後状態への状態遷移のパスが複数存在する場合、当該複数のパスのうち最短のパスで画像形成装置3が状態遷移した場合の欠損状態を補完する。
【0099】
このように、第2の実施の形態にかかる画像形成システム1によれば、画像形成装置3の状態の取得が行われないポーリング期間中に画像形成装置3が状態遷移可能なパスが複数存在する場合、最短のパスによって画像形成装置3が状態遷移した場合における欠損状態を補完できる。
【0100】
(第3の実施の形態)
本実施の形態は、変化前状態から変化後状態への状態遷移のパスが複数存在する場合、複数のパスのうち最も発生率の高いパスで画像形成装置が状態遷移した場合の欠損状態を補完する例である。以下の説明では、第1の実施の形態と同様の構成については説明を省略する。
【0101】
本実施の形態では、HDD204は、変化前状態から変化後状態への画像形成装置3の状態遷移のパス毎に、各パスの発生率を記憶している。
【0102】
本実施の形態では、補完部503は、状態遷移図に基づいて、変化前状態から変化後状態への状態遷移のパスを特定する。次いで、補完部503は、複数のパスが特定された場合、HDD204に記憶される各パスの発生率に基づいて、当該複数のパスのうち最も発生率が高いパスを特定する。そして、補完部503は、発生率が最も高いパスで画像形成装置3が状態遷移した場合の欠損状態を補完する。
【0103】
これにより、画像形成装置3の状態の取得が行われないポーリング期間中に画像形成装置3が状態遷移可能なパスが複数存在する場合、最も発生する可能性が高いパスによって画像形成装置3が状態遷移した場合における欠損状態を補完できるので、欠損状態の補完の精度を向上させることができる。
【0104】
次に、
図9および
図10を用いて、本実施の形態にかかる情報処理装置2による欠損状態の補完処理の一例について説明する。
図9は、第3の実施の形態にかかる画像形成装置の状態遷移図の一例を示す図である。
図10は、第3の実施の形態にかかる情報処理装置が記憶する発生率テーブルの一例を示す図である。
【0105】
本実施の形態では、HDD204は、
図10に示すように、変化前状態から変化後状態へ画像形成装置3が状態遷移するパスP1~Pn(以下、パスP1~Pnを区別する必要がない場合には、パスPと記載する)毎に、当該各パスPの発生回数と、当該パスPの発生率と、を記憶している。
【0106】
そして、例えば、
図9に示す状態遷移図に従って画像形成装置3が状態遷移を行う場合に、変化前状態が状態Aでありかつ変化後状態が状態Cであったとすると、補完部503は、画像形成装置3が状態Aから状態Cへ状態遷移するパスPとして、複数のパスP1~Pnを特定する。
【0107】
例えば、パスP1は、状態Aから状態Cに直接的に状態遷移するパスである。また、パスP2は、状態A、状態B、状態Cの順に状態遷移するパスである。また、パスP3は、状態A、状態B、状態A、状態Cの順に状態遷移するパスである。
【0108】
そして、補完部503は、特定したパスP1~P3のうち、HDD204に記憶される発生率が最も高いパス(例えば、パスP2)に従って画像形成装置3が状態遷移した場合の欠損状態(
図8に示す状態B)を特定する。
【0109】
このように、第3の実施の形態にかかる画像形成システム1によれば、画像形成装置3の状態の取得が行われないポーリング期間中に画像形成装置3が状態遷移可能なパスが複数存在する場合、最も発生する可能性が高いパスによって画像形成装置3が状態遷移した場合における欠損状態を補完できるので、欠損状態の補完の精度を向上させることができる。
【0110】
(第4の実施の形態)
本実施の形態は、情報処理装置が複数のアプリケーションを実行する場合に、補完した欠損状態を、複数のアプリケーションのそれぞれに通知する例である。以下の説明では、上述の実施の形態と同様の構成については説明を省略する。
【0111】
本実施の形態では、情報処理装置2において、第1接続アプリ402以外に、機能提供アプリ403を含む複数のアプリケーションが実行される場合、補完部503は、補完した欠損状態を、複数のアプリケーションに通知する。これにより、情報処理装置2において実行される全てのアプリケーションに対して、欠損状態を補完する機能を実装する必要がなくなるので、情報処理装置2において実行されるアプリケーションの開発の容易化を図ることができる。ここで、複数のアプリケーションは、画像形成装置3の状態を監視する必要があるアプリケーションであるものとする。
【0112】
このように、第4の実施の形態にかかる画像形成システム1によれば、情報処理装置2において実行される全てのアプリケーションに対して、欠損状態を補完する機能を実装する必要がなくなるので、情報処理装置2において実行されるアプリケーションの開発の容易化を図ることができる。
【0113】
(第5の実施の形態)
本実施の形態は、ポーリング期間中の状態を記憶する記憶部を画像形成装置が有する場合、当該記憶部から取得した状態を、欠損状態として補完する例である。以下の説明では、上述の実施の形態と同様の構成については説明を省略する。
【0114】
本実施の形態では、画像形成装置3のHDD308等の記憶部が、ポーリング期間中に画像形成装置3が状態遷移した状態を記憶している。
【0115】
本実施の形態では、取得部502は、画像形成装置3のHDD308から、ポーリング期間中に画像形成装置3が状態遷移した状態を取得する。そして、補完部503は、画像形成装置3のHDD308から取得した状態を、ポーリング期間中の欠損状態として補完する。
【0116】
このように、第5の実施の形態にかかる画像形成システム1によれば、ポーリング期間中に画像形成装置3が実際に状態遷移した状態に基づいて、欠損状態を補完することができるので、欠損状態の補完の精度を向上させることができる。
【0117】
上記で説明した実施の形態の各機能(例えば、機能提供アプリ403が有する実行要求部501、第1接続アプリ402が有する取得部502および補完部503)は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)や従来の回路モジュール等のデバイスを含むものとする。
【0118】
本実施の形態の情報処理装置2で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【0119】
また、本実施の形態の情報処理装置2で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施の形態の情報処理装置2で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【0120】
また、本実施形態の情報処理装置2で実行されるプログラムを、ROM等に予め組み込んで提供するように構成してもよい。本実施の形態の情報処理装置2で実行されるプログラムは、上述した各部(実行要求部501、取得部502、補完部503)を含むモジュール構成となっており、実際のハードウェアとしてはCPU201(プロセッサ)が上記記憶媒体からプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、実行要求部501、取得部502、補完部503が主記憶装置上に生成されるようになっている。
【符号の説明】
【0121】
1 画像形成システム
2 情報処理装置
3 画像形成装置
201 CPU
202 ROM
203 RAM
401 OS
402 第1接続アプリ
403 機能提供アプリ
501 実行要求部
502 取得部
503 補完部
【先行技術文献】
【特許文献】
【0122】