説明

画像形成装置

【目的】 他の計算機システムを利用することなく、画像形成装置で動作するプログラムを開発出来るようにする。
【構成】 HDD11にソースコードファイル20とコンパイラプログラムオブジェクト23とデバッガプログラムオブジェクト24を格納し、CPU8がコンパイラプログラムオブジェクト23を実行してソースコードファイル20をコンパイルして動作可能な形式のオブジェクトを作成し、そのオブジェクトファイル21をHDD11に格納し、そのオブジェクトファイル21を動作させると共に、デバッガプログラムオブジェクト24を実行してデバッグを行い、デバッグ情報ファイル22をHDD11に格納し、そのデバッグ情報ファイル22の内容を解析することによってオブジェクトの実行結果を解析し、異常終了の原因になったアドレス値等の情報を操作パネル2の出力表示部7に表示する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、複写機、画像読取装置、印刷装置を含む画像形成装置に関する。
【背景技術】
【0002】
従来、画像形成装置で動作するプログラムは、当該画像形成装置以外の計算機を利用してソースコードをコンパイルし、作成したオブジェクトを当該画像形成装置内部の記憶媒体に格納するという手順で開発されていた。
例えば、特許文献1では、ソースコードをコンパイルしてオブジェクトを生成する処理をプリンタ内部で実行する方式が説明されているが、その方式は異なるプリンタ間でエミュレーションプログラムのソースコードを共通使用することが目的であり、エミュレーションプログラムそのものの開発は不可能である。
【0003】
そこで、画像形成装置自体が高性能化し、搭載するメモリやHDDなど記憶媒体の容量が増加するとともに、画像形成装置に対するユーザからの機能要求も多岐に渡るため、より個々のユーザ要望に合致した機能を提供する手段としてソフトウエア開発キット(Software Development Kit:SDK)が用意されるようになった。
そのSDKは、画像形成装置本体では無く他の計算機にインストールされ、ソースコードの作成や編集やコンパイル等のソフトウエア開発作業のほとんどが、SDKをインストールした計算機システム上で実施される。
そのようなSDKを使って作成した、画像形成装置上で動作するプログラムを画像形成装置上に格納して実行させることにより、画像形成装置の機能や動作のカスタマイズが可能になる。
【特許文献1】特開2001−277614号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、上述した従来のSDKは画像形成装置以外の計算機が必要であるために、ソフトウエア開発の初期投資費用が高いという問題があった。
また、ユーザがSDKを使ってソフトウエア開発する場合、ソースコード作成に必要なヘッダファイルや、オブジェクト生成に必要なライブラリファイルが必要だが、それらのヘッダファイルやライブラリファイルが画像形成装置以外の計算機にインストールされているために、SDKに含まれていた内容と、画像形成装置に搭載されている内容とでバージョンが一致せずに動作不具合が発生する可能性があるという問題もあった。
【0005】
さらに、ヘッダファイルやライブラリファイルに、画像形成装置の開発元の非公開情報が含まれている場合、SDKの使用を希望するユーザに対して、機密保持契約の締結を求めなければならず、SDKによるソフトウエア開発の普及の障壁になっているという問題もあった。。
この発明は上記の点に鑑みてなされたものであり、他の計算機システムを利用することなく、画像形成装置で動作するプログラムを開発出来るようにすることを目的とする。
【課題を解決するための手段】
【0006】
この発明は上記の目的を達成するため、次の画像形成装置を提供する。
(1)プログラムのソースコードを格納するソースコード格納手段と、そのソースコード格納手段に格納されたソースコードをコンパイルして動作可能な形式のオブジェクトを作成するコンパイル手段と、そのコンパイル手段によって作成されたオブジェクトを格納するオブジェクト格納手段と、そのオブジェクト格納手段に格納されたオブジェクトを動作させる実行手段と、その実行手段によって実行したオブジェクトの実行結果を保存する保存手段と、その保存手段に保存したオブジェクトの実行結果を解析する解析手段を備えた画像形成装置。
(2)上記(1)の画像形成装置において、上記ソースコードを編集する編集手段を設けた画像形成装置。
【0007】
(3)上記(2)の画像形成装置において、上記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段をオプションとして搭載可能にした画像形成装置。
(4)上記(2)の画像形成装置において、入力操作部と出力表示部を有し、上記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段を使用する際に、上記入力操作部と上記出力表示部を利用するようにした画像形成装置。
(5)上記(2)の画像形成装置において、入力操作部を有し、出力表示部を持つ出力装置を接続可能であり、上記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段を使用する際に、上記入力操作部と上記出力装置の出力表示部を利用するようにした画像形成装置。
【0008】
(6)上記(2)の画像形成装置において、出力表示部を有し、入力操作部を持つ入力装置を接続可能であり、上記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段を使用する際に、上記入力装置の入力操作部と上記出力表示部を利用するようにした画像形成装置。
(7)上記(2)の画像形成装置において、入力操作部と出力表示部を持つ端末装置を接続可能であり、上記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段を使用する際に、上記端末装置を利用するようにした画像形成装置。
【発明の効果】
【0009】
この発明による画像形成装置は、他の計算機システムを利用することなく、画像形成装置で動作するプログラムを開発することができる。
【発明を実施するための最良の形態】
【0010】
以下、この発明を実施するための最良の形態を図面に基づいて具体的に説明する。
図1は、この発明の実施例の画像形成装置の機能構成を示すブロック図である。
この画像形成装置1は、操作パネル2、スキャナ部3、印字部4、コントローラ5から成り、操作パネル2は押下スイッチ又はキーボードを含む入力操作部6とCRT又はLCDを含む出力表示部7を備えている。また、コントローラ5は、CPU8、フラッシュ(FLASH)ROM9、RAM10、ハードディスク装置(HDD)11、ASIC12、SDカード(CARD)インタフェース(I/F)13、LANインタフェース(I/F)14、シリアル(serial)インタフェース(I/F)15、USBインタフェース(I/F)16を備えている。
そして、上記HDD11が、ソースコード格納手段、オブジェクト格納手段、保存手段の各手段の機能を果たす。また、上記CPU8が、コンパイル手段、実行手段、解析手段、編集手段の各手段の機能を果たす。
【0011】
〔実施例1〕
図2は、図1に示す画像形成装置における実施例1の説明に供する図である。
実施例1の画像形成装置1は、HDD11に、プログラムのソースコードであるソースコードファイル20が格納されている。
また、コントローラ5のCPU8がHDD11に格納されているコンパイラプログラムオブジェクト23とデバッガプログラムオブジェクト24を実行することによってそれぞれコンパイラとデバッガの機能を実現している。
まず、操作パネル2の入力操作部6からユーザが指示を与えることにより、CPU8はコンパイルプログラムオブジェクト23を実行することによってコンパイラの動作を開始し、HDD11のソースコードファイル20のソースコードをコンパイルして動作可能な形式のオブジェクトを作成し、その作成したオブジェクトファイル21をHDD11に格納する。
【0012】
上記コンパイラが参照するヘッダファイルやライブラリファイルもやはりHDD11に格納されている。
また、オブジェクトの作成が完了したことは、操作パネル2の出力表示部7に表示されるので、ユーザは処理完了を即座に知ることができる。
次に、操作パネル2の入力操作部6からユーザが指示を与えることにより、CPU8はHDD11に格納されたオブジェクトファイル21を動作させて実行する。その際、操作パネル2の出力表示部7にオブジェクトファイル21中のデバッグ表示出力をさせることも可能である。
CPU8は、オブジェクトファイル21の実行途中に不正なアドレスにアクセスした等の理由で異常終了した場合、実行したオブジェクトの実行結果として異常終了の原因になったアドレス値等の情報をデバッグ情報ファイル22をHDD11に保存する。
【0013】
また、オブジェクトの実行が終了したことが、操作パネル2の出力表示部7に表示されるので、ユーザは実行完了を即座に知ることができる。
オブジェクトファイル21の実行が異常終了した場合、操作パネル2の入力操作部6からユーザが指示を与えることにより、CPU8は、デバッガプログラムオブジェクト24を実行することによってデバッガを動作させてデバッグを実行する。デバッガの実行が開始され、デバッグ情報ファイル22の内容を解析することによってオブジェクトの実行結果を解析し、異常終了の原因になったアドレス値等の情報を、操作パネル2の出力表示部7に表示する。
【0014】
こうして、操作パネル2の出力表示部7に表示された情報に基づいて、ユーザはソースコードファイル20のソースコードの瑕疵を発見することが可能になる。
また、より高度な解析手段を搭載すれば、デバッグ情報ファイル22の内容に基づいて、ソースコードファイル20のソースコードのどの箇所でエラーが発生したかを表示することも可能になる。
さらに、より高度な実行手段を搭載すれば、ソースコードファイル20のソースコードとオブジェクトファイル21のオブジェクトとを対比させながら、ソースコード一行毎に少しづつソースコードファイル20のプログラムを実行させるステップ実行と呼ばれる方式も可能になる。
【0015】
実施例1の画像形成装置によれば、画像形成装置以外の計算機に、コンパイラやヘッダファイルやライブラリ等の画像形成装置に依存した情報をインストールすること無く、画像形成装置で動作するプログラムを開発できるので、画像形成装置の内部に機密情報を隠蔽しておけるため、ソフトウエア開発者に機密保持契約を求める必要が無くなり、ユーザによるソフトウエア開発が容易になる。
また、ソフトウエア開発に不可欠な画像形成装置専用のライブラリやヘッダファイル等の固有情報を当該画像形成装置自体に収められるため、バージョン不整合による不具合が発生せず、ユーザによるソフトウエア開発が容易になる。
さらに、ユーザによるソフトウエア開発が容易になることにより、当該画像形成装置の機能をユーザ自身でカスタマイズ可能になり、当該画像形成装置のユーザに対する利便性が向上する。
【0016】
〔実施例2〕
図3は、図1に示す画像形成装置における実施例2の説明に供する図である。
実施例2の画像形成装置1は、LAN・I/F14にパーソナルコンピュータ(PC)を含む端末装置30を接続している。その端末装置30は、入力操作部と出力表示部(いずれも図示を省略する)を持っている。
この画像形成装置1では、ユーザは画像形成装置1に対して端末装置30からネットワーク経由で各種の指示を与える。
LAN・I/F14を介してネットワーク接続された端末装置30から、画像形成装置1にログインすると、端末装置30の出力表示部にはコマンド入力待ちを示すプロンプトが表示される。
【0017】
ここでユーザが端末装置30の入力操作部から、コンパイラの実行を意味するコマンドと、当該コマンドの引数としてソースコード(ソースコードファイル20)のファイル名と生成するオブジェクト(オブジェクトファイル21)のファイル名を入力することにより、CPU8が上述の実施例1の画像形成装置と同じようにしてコンパイラの実行を開始し、ソースコードファイル20からオブジェクトを生成してユーザから指定されたファイル名を持つオブジェクトファイル21をHDD11に格納する。
また、オブジェクトの作成が完了したことは、端末装置30にコマンド入力待ちを示すプロンプトが表示されることで、ユーザは即座に知ることができる。
次に、ユーザが端末装置30の入力操作部から、先に生成したオブジェクトの実行を意味するコマンドを入力することにより、CPU8が上述の実施例1の画像形成装置と同じようにして先に生成したオブジェクトファイル21の実行を開始する。
【0018】
CPU8は、オブジェクトファイル21の実行を開始すると、オブジェクトファイル21中のデバッグ表示出力を、操作パネル2の出力表示部7やLAN・I/F14を介してネットワーク接続された端末装置30の出力表示部7上に表示させることも可能である。
CPU8は、オブジェクトファイル21の実行途中に、不正なアドレスにアクセスした等の理由で異常終了した場合、異常終了の原因になったアドレス値等の情報をHDD11にデバッグ情報ファイル22として保存する。
また、オブジェクトの実行が終了したことが、端末装置30の出力表示部にコマンド入力待ちを示すプロンプトが表示されることで、ユーザは即座に知ることができる。
【0019】
オブジェクトファイル21が異常終了した場合、ユーザが端末装置30の入力操作部からデバッガの実行を意味するコマンドと、当該コマンドの引数として、先に異常終了したオブジェクトのファイル名を入力することにより、CPU8は、デバッガの実行を開始し、デバッガがHDD11のデバッグ情報ファイル22の内容を解析し、異常終了の原因になったアドレス値等の情報を端末装置30の出力表示部に表示する。
また、端末装置30の入力操作部からユーザが指示を与える方法については、コマンド入力である必要は無く、指示に必要なボタンだけがグラフィック表示され、そのボタンを端末装置30に付属のマウスでクリックすることで指示を与える等の方式でも良い。
【0020】
このようにして、ソフトウエア開発の効率を上げるために、画像形成装置以外に端末装置を利用する場合においても、画像形成装置に特化したソフトウエアを別途用意する必要が無い。
また、画像形成装置内部の情報が画像形成装置から外に出ないため、画像形成装置の制御に関するノウハウが外部に流出する危険が無い。
実施例2の画像形成装置によれば、画像形成装置以外の計算機を用意する必要無く、ソフトウエアのソースコードの作成や修正が可能になるため、ユーザによるソフトウエア開発が一層容易になる。
【0021】
〔実施例3〕
図4は、図1に示す画像形成装置における実施例3の説明に供する図である。
実施例3の画像形成装置1は、HDD11にCPU8が実行することによってソースコードを編集する編集手段の機能を実現するエディタプログラムオブジェクト25を格納しており、ユーザは端末装置30からネットワーク経由でソースコードの編集の指示を与え、CPU8がソースコードの編集を行う。
この画像形成装置1では、ユーザは画像形成装置1に対して端末装置30からネットワーク経由でソースコードの編集の指示を与える。
LAN・I/F14を介してネットワーク接続された端末装置30から、画像形成装置1にログインすると、端末装置30の出力表示部にはコマンド入力待ちを示すプロンプトが表示される。
【0022】
ここでユーザが端末装置30の入力操作部から、エディタの実行を意味するコマンドと、当該コマンドの引数としてソースコード(ソースコードファイル20)のファイル名を入力することにより、CPU8がHDD11のエディタプログラムオブジェクト25を実行してエディタの動作を開始し、ユーザは端末装置30の出力表示部の画面表示と入力操作部からの入力操作により画像形成装置1に格納されたソースコードを自由に編集することができる。
このようにして、編集手段も画像形成装置内部で動作するプログラムであるため、ユーザが編集可能なファイルと編集不可能なファイルを区別したり、ファイルの存在自体をユーザから隠す機能を、編集手段に設けるのは容易である。
そうすれば、画像形成装置内部の重要な情報やファイルをユーザが誤って書き換える危険を避けることができる。
【0023】
実施例3の画像形成装置によれば、画像形成装置でのソフトウエア開発に必要な機能や情報を、当該画像形成装置に後から追加することが可能になるため、ソフトウエア開発を希望するユーザに対してのみ、必要なソフトウエア開発機能を提供することができ、ユーザ満足度の向上につながる。
また、ソフトウエア開発機能をあらかじめ標準搭載しておいたり、画像形成装置のバージョンアップ作業時に同時にソフトウエア開発機能もインストールすることも可能であり、SDKの提供が容易になる。
【0024】
〔実施例4〕
図5は、図1に示す画像形成装置における実施例4の説明に供する図である。
実施例4の画像形成装置1では、SDカードからHDDにSDKをインストールする。
ここでは、画像形成装置1の標準状態では、コンパイラ、デバッガ、エディタ等のオブジェクトであるコンパイラプログラムオブジェクト23、デバッガプログラムオブジェクト24、エディタプログラムオブジェクト25がHDD11にインストールされていないものとする。
ユーザが別途SDKを購入すると、SDカード31にコンパイラプログラムオブジェクト23、デバッガプログラムオブジェクト24、エディタプログラムオブジェクト25が収められて納入される。
【0025】
画像形成装置1のSDカードI/F13にSDカード31を装着した後、操作パネル2の入力操作部6からユーザが指示を与えることにより、CPU8はSDカード31に格納されたコンパイラプログラムオブジェクト23、デバッガプログラムオブジェクト24、エディタプログラムオブジェクト25を読み出し、ASIC12を経由してHDD11に転送し、コンパイラプログラムオブジェクト23、デバッガプログラムオブジェクト24、エディタプログラムオブジェクト25を実行可能にHDD11に格納する。
その時、SDKの内容であるコンパイラプログラムオブジェクト23、デバッガプログラムオブジェクト24、エディタプログラムオブジェクト25を暗号化していても良く、暗号化している場合には、SDカード31からHDD11に転送する処理の中で、必要な復号処理を行えば良い。
【0026】
また、SDKの内容は、オブジェクトだけに限らず、コンパイルに必要なライブラリファイルやヘッダファイルを含むファイルを含めても良い。
さらに、画像形成装置1が通常動作している状態において、SDカード31をSDカードI/F13に装着すると、CPU8が自動的にSDカード31の内容をHDD11に転送するようにしても良い。
さらにまた、上述の説明ではSDカード31の内容をSDカード31からHDD11に転送しているが、ネットワーク接続された外部の端末装置からLAN・I/F14を介してネットワーク経由でHDD11に転送する方式も考えられる。
【0027】
〔実施例5〕
図6は、図1に示す画像形成装置における実施例5の説明に供する図である。
実施例5の画像形成装置1では、コントローラ5のUSB・I/F16を使い、画像形成装置1にキーボード32を接続し、そのキーボード32を使って入力操作を行うことにより、画像形成装置1の操作パネル2の押下スイッチを含む入力操作部6を使用するよりも、効率的な操作が可能になる。
〔実施例6〕
図7は、図1に示す画像形成装置における実施例6の説明に供する図である。
実施例6の画像形成装置1では、コントローラ5のシリアルI/F15を使い、画像形成装置1に端末装置30を接続し、その端末装置30の入力操作部を使って入力操作を、出力表示部を使って出力表示をそれぞれ行うことにより、効率的なソフトウエア開発が可能になる。
【0028】
実施例4〜6の画像形成装置によれば、画像形成装置単体だけでソフトウエア開発を行うことが可能であり、また必要であれば、より大きな表示領域を持つ表示出力部や、より快適に操作可能な入力操作部を利用することができるので、ソフトウエア開発作業の効率が向上する。
【産業上の利用可能性】
【0029】
この発明による画像形成装置は、デスクトップパソコン,ノートブックパソコン等のパーソナルコンピュータにおいても適用することができる。
【図面の簡単な説明】
【0030】
【図1】この発明の実施例の画像形成装置の機能構成を示すブロック図である。
【図2】図1に示す画像形成装置における実施例1の説明に供する図である。
【図3】図1に示す画像形成装置における実施例2の説明に供する図である。
【図4】図1に示す画像形成装置における実施例3の説明に供する図である。
【図5】図1に示す画像形成装置における実施例4の説明に供する図である。
【図6】図1に示す画像形成装置における実施例5の説明に供する図である。
【図7】図1に示す画像形成装置における実施例6の説明に供する図である。
【符号の説明】
【0031】
1:画像形成装置 2:操作パネル 3:スキャナ部 4:印字部 5:コントローラ 6:入力操作部 7:出力表示部 8:CPU 9:フラッシュ(FLASH)ROM 10:RAM 11:ハードディスク装置(HDD) 12:ASIC 13:SDカード(CARD)インタフェース(I/F) 14:LANインタフェース(I/F) 15:シリアル(serial)インタフェース(I/F) 16:USBインタフェース(I/F) 20:ソースコードファイル 21:オブジェクトファイル 22:デバッグ情報ファイル 23:コンパイラプログラムオブジェクト 24:デバッガプログラムオブジェクト 25:エディタプログラムオブジェクト 30:端末装置 31:SDカード 32:キーボード

【特許請求の範囲】
【請求項1】
プログラムのソースコードを格納するソースコード格納手段と、該ソースコード格納手段に格納されたソースコードをコンパイルして動作可能な形式のオブジェクトを作成するコンパイル手段と、該コンパイル手段によって作成されたオブジェクトを格納するオブジェクト格納手段と、該オブジェクト格納手段に格納されたオブジェクトを動作させる実行手段と、該実行手段によって実行したオブジェクトの実行結果を保存する保存手段と、該保存手段に保存したオブジェクトの実行結果を解析する解析手段を備えたことを特徴とする画像形成装置。
【請求項2】
前記ソースコードを編集する編集手段を設けたことを特徴とする請求項1記載の画像形成装置。
【請求項3】
前記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段をオプションとして搭載可能にしたことを特徴とする請求項2記載の画像形成装置。
【請求項4】
入力操作部と出力表示部を有し、前記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段を使用する際に、前記入力操作部と前記出力表示部を利用するようにしたことを特徴とする請求項2記載の画像形成装置。
【請求項5】
入力操作部を有し、出力表示部を持つ出力装置を接続可能であり、前記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段を使用する際に、前記入力操作部と前記出力装置の出力表示部を利用するようにしたことを特徴とする請求項2記載の画像形成装置。
【請求項6】
出力表示部を有し、入力操作部を持つ入力装置を接続可能であり、前記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段を使用する際に、前記入力装置の入力操作部と前記出力表示部を利用するようにしたことを特徴とする請求項2記載の画像形成装置。
【請求項7】
入力操作部と出力表示部を持つ端末装置を接続可能であり、前記各手段のいずれかひとつの手段、いずれか複数の手段、又は全ての手段を使用する際に、前記端末装置を利用するようにしたことを特徴とする請求項2記載の画像形成装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2006−319698(P2006−319698A)
【公開日】平成18年11月24日(2006.11.24)
【国際特許分類】
【出願番号】特願2005−140697(P2005−140697)
【出願日】平成17年5月13日(2005.5.13)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】