説明

画像形成装置及び画像形成システム

【課題】ユーザアプリケーションによる複数の機能の連続実行において、適切な時点で画像形成装置での操作からコンピュータによるリモートコントロールへ容易に切替可能にする。
【解決手段】
宛先を示す変数F_Adr又はE_adrが空文字である場合に、命令"RemoteControl(192.168.1.28)"が実行され、現在実行中のユーザアプリケーションがホストコンピュータへ送信される。ホストコンピュータ25には、画像形成装置10の簡易テキスト言語処理プログラム38に対応したプログラムが常駐し、ステップS12を除き図1と同じ処理を実行し、ステップS12に対応して命令文を画像形成装置へ送信し、画像形成装置でこの命令文を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像入出力機能を備えた画像形成装置及び画像形成システムに係り、特に、ユーザアプリケーションを解釈実行するテキスト言語処理プログラム(インタープリタ)が格納されている記憶手段を備えた画像形成装置及び画像形成システムに関する。
【背景技術】
【0002】
画像形成装置、特に複合機では、様々なユーザの要求に応えるために多機能化が進んでいる。
【0003】
しかしながら、多機能化によりメニュー項目が増加するので、メニュー構造が複雑になり、操作性が悪化する。すなわち、ユーザにとって使用しない機能が多くなると共に、使用したい機能を実行するのに操作パネル上で押下すべき釦数が多くなり、操作性が悪くなる。特に、複数の機能を連続的に実行する場合にこの問題が顕著になる。
【0004】
そこで、下記特許文献1には、複数の操作を組み合わせた命令語をXML言語で記述してその処理を実行させることが開示されている。
【0005】
一方、下記特許文献2には、ファクシミリ装置で原稿画像を読み取り、これに接続されたコンピュータシステムで宛先を指定して送信指示する構成が開示されている。
【特許文献1】特開2005−080019号公報
【特許文献2】特開平10−13602号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかし、上記特許文献1では、操作パネルと無関係に処理が実行されるので、プログラムに不慣れなユーザにとっては使い勝手が良くない。
【0007】
また、上記特許文献2では、リモートコントロールがファクシミリ送信に限定されており、例えば、スキャナで読み取った原稿画像を第1の宛先にファクシミリ送信し第2の宛先に添付ファイルとして電子メール送信するといった、ユーザの希望に応じた複数機能を自動的に実行することができない。
【0008】
原稿画像をファクシミリ送信する場合、原稿を画像形成装置にセットしなければならないので、通常、ユーザが画像形成装置を直接操作して送信することが行われている。画像形成装置に宛先が登録されていないことを確認した場合、画像形成装置で宛先を入力するのは、コンピュータシステムでの入力よりも操作性が良くない。
【0009】
本発明の目的は、このような問題点に鑑み、ユーザアプリケーションによる複数の機能の連続実行において、適切な時点で画像形成装置での操作からコンピュータによるリモートコントロールへ容易に切替可能な画像形成装置及び画像形成システムを提供することにある。
【課題を解決するための手段】
【0010】
本発明による画像形成装置の第1態様では、プロセッサと、テキスト言語処理プログラムが格納された記憶手段と、通信インターフェイスとを備えた画像形成装置において、
該記憶手段にはさらにユーザアプリケーションが格納され、該ユーザアプリケーションには、第1宛先アドレスをパラメータとして含むリモートコントロール命令が記述され、
該テキスト言語処理プログラムは該プロセッサに対し、該ユーザアプリケーションを解釈させ、該リモートコントロール命令に基づき、
(a)該ユーザアプリケーションを該第1宛先アドレスのコンピュータへ送信させ、
(b)該ユーザアプリケーションに基づいて該コンピュータから供給される指令を実行させる。
【0011】
本発明による画像形成装置の第2態様では、第1態様において、操作パネルをさらに備え、該ユーザアプリケーションにはさらに、アイコンの属性と処理との組が記述され、該リモートコントロール命令は該処理に含まれ、該テキスト言語処理プログラムは該プロセッサに対し、
該アイコンの属性に基づき該操作パネル上又は該通信インターフェイスを介したリモートコンソール上にアイコンを表示させ、
該アイコンのオンに応答して該処理を実行させる。
【0012】
本発明の第3態様では、上記いずれかの画像形成装置と、該画像形成装置の通信インターフェイスに結合されるコンピュータシステムとを備えた画像形成システムであって、該コンピュータシステムはコンソールを備え、
該コンピュータは、該画像形成装置から受信したユーザアプリケーションに基づいて、
該アイコンの属性に基づき該コンソールに第2アイコンを表示させ、
該第2アイコンのオンに応答して、該処理を実行させるための指令を該画像形成装置へ送信する。
【発明の効果】
【0013】
上記第1態様の構成によれば、ユーザアプリケーションに含まれるリモートコントロール命令に基づき、この命令で指定された宛先アドレスのコンピュータへユーザアプリケーションを送信させ、該ユーザアプリケーションに基づいて該コンピュータから供給される指令を実行するので、画像形成装置に格納されたユーザアプリケーションの内容を、適切な時点で、コンピュータから確認しながら順次実行させることが容易にできるという効果を奏する。
【0014】
上記第2態様の構成によれば、ユーザアプリケーションに基づき操作パネルに表示されたアイコンのオンに応答して、該リモートコントロール命令を含む処理が行われるので、例えば送信の宛先が指定されていない場合に該リモートコントロール命令を実行することにより、適切な時点でリモートコントロールが可能となるという効果を奏する。
【0015】
上記第3態様の構成によれば、簡単な構成により、ユーザアプリケーションに基づいてコンピュータ側から画像形成装置へ順次指示することができるという効果を奏する。
【0016】
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
【実施例1】
【0017】
図10は、本発明の実施例1に係る画像形成装置10のハードウェア構成を示す概略ブロック図である。
【0018】
この画像形成装置10では、MPU11がインターフェイス12を介して、PROM13、DRAM14、操作パネル15、プリンタ16、スキャナ17、NIC18、FAXモデム19、USBポート20、トナー残量検出器21、ICカードリーダ22、電子タグリーダ23及びタイマTMに結合されている。図10では、簡単化のため、複数のインターフェイスを1つのブロックで示している。
【0019】
PROM13は、例えばフラッシュメモリであり、これには、オペレーティングシステム(OS)と、OSの上層で動作する各種プログラムと、各種設定値とが格納されている。各種プログラムは、画像形成装置10を複合機として機能させるためのものであり、この機能には、コピー、スキャン、プリント、ファクシミリ送受信、電子メール送受信及びHTTP通信がある。DRAM14は、ワークエリア用である。
【0020】
操作パネル15は、表示部とキー入力部とを備えており、設定情報又は指示を入力し、選択画面や設定画面などを表示させるためのものである。プリンタ16は、プリントエンジン、定着器並びに用紙の給紙部、搬送部及び排紙部を備えており、印刷データとして供給されるビットマップデータに基づきプリントエンジンの感光ドラムに静電潜像を形成し、これをトナーで現像し、用紙に転写し定着させた後に排紙する。スキャナ17は、コピー及びファクシミリ送信での画像入力用である。NIC18は、ネットワーク上のホストコンピュータ及びサーバに結合されてプリントジョブ及び消耗品発注に用いられる。FAXモデム19は、ファクシミリ送受信用である。
【0021】
トナー残量検出器21は、プリンタ16用のトナーカートリッジに収容されているトナーの残量を検出してその信号を出力する。ICカードリーダ22は、所定範囲内に存在するICカードとの間で電波を介し信号を送受して、ユーザのID及びパスワード情報を読取り、これらを画像形成装置10に対する認証情報として出力する。電子タグリーダ23は、トナーカートリッジに固着された電子タグからそのIDを読み出して出力する。このIDには、トナーカートリッジの型式及びシリアル番号が含まれる。
【0022】
トナー残量検出器21及び電子タグリーダ23の出力は、プログラムに従ってMPU11によりそれぞれ定期的に及びトナーカートリッジ装着時に読取られ、図2に示すようにそれぞれToner.Level及びToner.RFIDとしてDRAM14に格納される。
【0023】
ポート20に接続されるUSBメモリ24Aは、例えばフラッシュメモリチップを備えている。
【0024】
ホストコンピュータ25は、そのNICがハブを介してNIC18に結合されるとともに、不図示のルータを介してインターネット26に結合される。このインターネット26には、不図示のルータを介してWebサーバマシン27が結合されている。一方、画像形成装置10のFAXモデム19とWebサーバマシン27のFAXモデムとは、公衆回線網28を介して結合される。
【0025】
タイマTMは、現時刻検出用及びMPU11に対するタイマ割込用である。
【0026】
図9は、本発明の実施例1に係る画像形成装置のソフトウェア階層構造を示す概略ブロック図である。
【0027】
OS30は、そのカーネル、例えばLinuxに、各種ハードウェアのそれぞれに対応したデバイスドライバ31が組み込まれている。
【0028】
OS30の上層には、OS30内の各種機能を利用するためのAPI32を介し、ミドルウェアとしての基本サービスプログラム33が備えられている。基本サービスプログラム33は、操作パネル制御モジュール330と、画像入力モジュールとしてのスキャンモジュール331と、入力データを処理するデータ処理モジュールと、処理された画像データを出力する画像出力モジュールとしてのプリントモジュール332と、入出力モジュールとを備えている。
【0029】
操作パネル制御モジュール330は、操作パネル15上に操作釦を表示させ、その押下を検出させるためのものである。入出力モジュールには、FAX送受信モジュール333、電子メール送受信モジュール334及びHTTP処理モジュール339が含まれる。データ処理モジュールには、ICカード制御モジュール335、RFID制御モジュール336、画像データのフォーマットを変換するフォーマット変換モジュール337並びに不図示の集約処理モジュール及び頁付モジュール等が含まれる。基本サービスプログラム33にはさらに、ユーティリティモジュールとして、ファクシミリ及び電子メールの宛先指定に用いられるアドレス帳モジュール338が含まれる。
【0030】
基本サービスプログラム33の上層には、外部API34を介してアプリケーション35が備えられている。アプリケーション35は、外部API34を介し基本サービスプログラム33のモジュールを用いて作成されたプログラムである。アプリケーション35には、コピーモジュール350、プリントモジュール351、FAXモジュール352、電子メールモジュール353、ジョブ管理モジュール354及び操作パネルモジュール355が含まれている。例えば、コピーモジュール350は、スキャンモジュール331とプリントモジュール332とを組み合わせて構成されている。また、FAXモジュール352は、FAX送受信モジュール333とアドレス帳モジュール338とを組み合わせて構成されている。
【0031】
画像形成装置10のソフトウェアはさらに、ユーザアプリケーション37に対するインタプリタである簡易テキスト言語処理プログラム38を備えている。このプログラム簡易テキスト言語処理プログラム38は、ユーザアプリケーション37の命令文を解釈し、外部API34、外部API36又はAPI32を介してそれぞれ基本サービスプログラム33、アプリケーション35又はOS30に含まれている関数を利用することにより、ユーザアプリケーション37を実行させるためのものである。
【0032】
ユーザアプリケーション37は、例えばホストコンピュータ25で作成され、文法チェックされ、USBメモリ24A内にコピーされ、ポート20を介してDRAM14に読み込まれる。ユーザアプリケーション37は、前処理により、その各行に行番号が付される。図5(A)〜(C)及び図6(A)〜(C)はユーザアプリケーション37の具体例を示す。
【0033】
ここで、操作パネル15上には図3(A)に示すようなメインメニュー画面が表示されており、この画面上の"USER APPLICATION"釦をタッチ(押下)すると、図3(B)の"USER APPLICATION"以外の表示及びこれに関係した処理が図1に示すフローに従って行われる。
【0034】
図1は、ユーザアプリケーション37に対する簡易テキスト言語処理プログラム38の処理を示す概略フローチャートである。
【0035】
この処理は、タイマ割込により、例えば20msec毎に開始される。以下、括弧内は図中のステップ識別番号である。
【0036】
(S0)ユーザアプリケーション37の次処理対象行番号を示すカウンタLCを0に初期設定する。
【0037】
(S1)カウンタLCが示す行をユーザアプリケーション37から読み出し、現行カウンタCLCにLCの値を代入し、現行カウンタCLCが示す行のステートメントの次のステートメントの行番号を、次行カウンタLCに代入する。ステートメントの区切り記号は、C言語と同様にセミコロン";"又は閉じ括弧"}"である。図5(A)の場合、LC=0の次はLC=1、その次は、条件文が成立しなければLC=7、成立すれば、後述のステップS10でLC=2となる。
【0038】
(S2)ステップS1で読み込むべき行が存在しなかった場合には処理を終了し、存在した場合にはステップS3へ進む。
【0039】
(S3)ステートメントがResetEnd文であればステップS4へ進み、そうでなければステップS7へ進む。
【0040】
(S4)消耗品管理終了を示すエンドフラグEFが‘0’であればステップS1へ戻り、‘1’であればステップS5へ進む。
【0041】
(S5)ResetEnd文の括弧内に記述された条件式(REC)の成否を判定し、肯定判定した場合にはステップS6へ進み、そうでなければ図1の処理を終了する。
【0042】
(S6)エンドフラグEFをリセットし、操作パネル15上の、後述の発注済表示をクリアして、ステップS1へ戻る。
【0043】
(S7)CLCの行が条件句であればステップS8へ進み、そうでなければステップS11へ進む。
【0044】
図5(A)の場合、LC=1の行"If Toner.Level<Level.Low1 {"及びLC=2の行"Button (120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) {"はいずれも条件句である。
【0045】
後者は、条件句(釦句)"If Button (120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) is pushed {"を省略記載したものである。この省略記載により、条件文のネスト構造が見かけ上隠蔽されるので、ユーザアプリケーション37が見易くなるとともに、ユーザアプリケーション37の作成が容易になる。
【0046】
(S8)現行番号CLCの行が釦句であればその引数に基づいて釦の表示データを作成し、例えば図3(B)中の釦40のように、操作パネル15上に表示させる。
【0047】
LC=2の釦句の場合、引数(120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) のうち、(120, 80)は操作パネル15上での釦の左上頂点のX−Y座標であり、(60, 30)は釦の幅及び高さであり、「カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚」は釦上のテキストである。ここに &は文字の連結演算子であり、 CrLfは復帰改行の制御コードを示しており、Toner.Level.ToPagesは上述のトナー残量検出値を平均印刷枚数で換算したものを示している。釦の表示データ作成処理及び表示処理は、操作パネル制御モジュール330及び操作パネルモジュール355に含まれる関数を用いて行われる。
【0048】
この表示処理後に、内部フラグFを立てておき、次回以降、ステップS8でこのフラグFがセットされていればこの釦表示データ作成処理を省略する。
【0049】
(S9)条件句中の条件式の成否を判定し、成立していればステップS10へ進み、そうでなければステップS1へ戻る。
【0050】
(S10)次行カウンタLCの内容を、条件成立時の行番号に変更する。すなわち、LC=CLC+1とする。次に、ステップS1へ戻る。
【0051】
(S11)現行番号CLCの行がEnd文であればステップS13へ進み、そうでなければステップS12へ進む。
【0052】
(S12)現行番号CLCの行の内容を処理し、ステップS1へ戻る。
【0053】
(S13)エンド文Endを実行して、図1の処理を終了する。すなわち、ステップS8で表示した操作パネル15上の釦をクリアし、上記内部フラグFをリセットするとともに、エンドフラグEFをセットする。
【0054】
次に、図1の処理の具体例を、ユーザアプリケーション37が図5(A)に示すものである場合について説明する。なお、エンドフラグEFは‘1’に初期設定されている。
【0055】
(1)タイマ割込により、まず、ステップS0でLC=0となる。ステップS1でLC=0の行ResetEnd(Toner.Level>Level.High)が読み出され、CLC=0、LC=1となる。ステップS2、S3及びS4を通ってステップS5でResetEnd文の条件式"Toner.Level>Level.High"が判定される。カートリッジ交換直後は、この条件式"Toner.Level>Level.High"が成立し、ステップS6でEF=0となる。ここに閾値Level.Highは、後述の閾値Level.Low1、Level.Low2、・・・とともに、図2に示すように予めPROM13に格納されている。
【0056】
ステップS1へ戻り、LC=1の行"If Toner.Level<Level.Low1 {"が読み出され、CLC=1、LC=7となる。ステップS2、S3、S7、S8を通りステップS9で条件式"Toner.Level<Level.Low1"が否定判定されてステップS1へ戻る。ステップS1でLC=7の行が読み出され、これがNullであるので、ステップS2で肯定判定されて終了する。
【0057】
(2)次のタイマ割込で、まず、ステップS0においてLC=0となる。ステップS1でLC=0の行"ResetEnd(Toner.Level>Level.High)"が読み出され、CLC=0、LC=1となる。ステップS2及びS3を通ってステップS4で肯定判定されステップS1へ戻る。ステップS1で、LC=1の行"If Toner.Level<Level.Low1 {"が読み出され、CLC=1、LC=7となる。ステップS2、S3、S7、S8を通りステップS9で条件式"Toner.Level<Level.Low1"が否定判定されてステップS1へ戻る。LC=7の行が読み出され、これがNullであるので、ステップS2で肯定判定されて終了する。
【0058】
その後も、ステップS9で否定判定されればこのような処理(2)が行われる。
【0059】
図4に示すように、時間の経過とともにトナー残量Toner.Levelが低下して、これが、予め設定された閾値Level.Low1未満になると、条件"Toner.Level<Level.Low1"が成立する。
【0060】
(3)タイマ割込により、まず、ステップS0でLC=0となる。ステップS1でLC=0の行"ResetEnd(Toner.Level>Level.High)"が読み出され、CLC=0、LC=1となる。ステップS2及びS3を通ってS4で肯定判定されステップS1へ戻る。ステップS1で、LC=1の行"If Toner.Level<Level.Low1 {"が読み出され、CLC=1、LC=7となる。ステップS2、S3、S7、S8を通りステップS9で条件式"Toner.Level<Level.Low1"が肯定判定されてステップS10へ進む。ステップS10でLC=2となり、ステップS1へ戻る。
【0061】
ステップS1で、LC=2の行"Button (120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) {"
が取り出され、CLC=2、LC=7(文の区切り記号の場合には次の行)となり、ステップS2、S3及びS7を通ってステップS8で、上述のように釦40の表示データが作成されてこれが操作パネル15上に表示されるとともに内部フラグFがセットされる。まだ釦40の表示範囲(120, 80, 60, 30)内がタッチ(押下)されていないので、ステップS9で否定判定され、ステップS1へ戻る。
【0062】
ステップS1で、LC=7の行Nullが取り出され、ステップS2を通って終了する。
【0063】
その後も、釦40が押下されなければ、このような処理(3)が行われる。
【0064】
(4)釦40が押下されると、ステップS9で肯定判定され、ステップS10でLC=3となり、ステップS1へ戻る。
【0065】
ステップS1で、LC=3の行"Order (Toner.RFID To DefaultDealer)"が取り出され、CLC=3、LC=4となる。ステップS2、S3、S7及びS11を通って、ステップS12でCLC=3の行が処理される。すなわち、Toner.RFIDに含まれるトナーカートリッジ型式と、Orderには隠蔽されているユーザIDとを含むHTTPリクエストメッセージを生成して、NIC18及びインターネット26を介し、宛先DefaultDealer(例えば図2に示すhttp://km.com:80)であるWebサーバマシン27へ送信する。このメッセージのリクエスト行は例えば、
GET /cgi-bin/order.cgi?UserID=21035&Type=KM102 HTTP/1.0
である。ここにUserID=21035は、図2に示すようにPROM13に予め格納されている。また、Type=KM102は、Toner.RFIDの内容の一部であるトナーカートリッジ型式である。HTTPメッセージの送受信は、HTTP処理モジュール339及びOS30を用いて行われる。
【0066】
Webサーバマシン27はこのHTTPリクエストメッセージに応答して、これに含まれるクエリ文字列UserID=21035&Type=KM102を引数とし該メッセージに含まれるパス名/cgi-bin/order.cgiのCGIプログラムを起動させる。これにより、図10に示すように、受信した日時を受注日時とし、トナーカートリッジ型式、顧客ID及び発送予定日がテーブルTBL1に記入される。顧客IDは、上記UserIDと同一である。発送予定日は、該型式をキーとして在庫データベース29を検索し、その結果得られる在庫状況に基づき決定される。テーブルTBL1内の完了フラグは、受注時にはリセットされており、発送時にこれがセットされる。
【0067】
このテーブルTBL1は、顧客ID、会社名、住所、担当者名、所属部課名、電話番号、ファクシミリ番号などのフィールドを含む顧客情報テーブルTBL2とリンクされて、リレーショナルデータベースが構成される。
【0068】
Webサーバマシン27は、受注日時を発注日時とし、これとトナーカートリッジの型式と発送予定日とを含むHTTPリスポンスメッセージを、テンプレートファイルに基づき生成し、画像形成装置10へ送信する。
【0069】
画像形成装置10はこれに応答して、受信したメッセージの内容を、図3(C)に示すように操作パネル15に表示させる。
【0070】
このようなCLC=3の行の処理が完了すると、ステップS1へ戻り、LC=4の行Endが取り出され、CLC=4、LC=7となる。ステップS2、S3、S7及びS11を通って、ステップS13でCLC=4の行Endが処理される。すなわち、操作パネル15上の釦40の表示がクリアされ、内部フラグFがリセットされるとともに、エンドフラグEFがセットされる。
【0071】
これにより、トナーカートリッジを交換するまでは、タイマ割込により図1の処理が開始されても、ステップS4及びS5で共に否定判定され、図3(C)に示す如く、トナーカートリッジ発注釦40は操作パネル15に表示されず、発注済みの表示が維持される。
【0072】
このような処理(4)の後に、図4に示すようにトナーカートリッジを交換すると、ResetEnd文の条件が成立して、上述の処理(1)が行われ、ステップS5からステップS6へ進み、EF=0となり、操作パネル15上の発注済みの表示がクリアされる。
【0073】
トナーカートリッジの在庫があるためトナーカートリッジを発注する必要がない場合、トナーカートリッジ交換時に、上述のように電子タグリーダ23の出力が、図1とは別のプログラムに従ってMPU11によりに読取られ、これが図2に示すToner.RFIDとしてDRAM14に格納される。この際、該プログラムにより、図1のステップS13と同じ処理が行われる。これにより、次にToner.Level<Level.Low1が成立するまでトナーカートリッジ発注釦40は操作パネル15に表示されない。
【0074】
本実施例1によれば、条件付リセットエンド命令ResetEndと、釦40の属性とOrder命令との組とが記述されたユーザアプリケーションを用い、簡易テキスト言語処理プログラム38に従って、条件付リセットエンド命令ResetEndの条件成否に応じ釦40のオンを検出し、該オンの検出に応答してOrder命令を実行するので、条件文が実質的にネストしていても、条件に応じてユーザインターフェイスを変更するユーザアプリケーションの構造が簡単になるという効果を奏する。
【0075】
また、If文により条件文がさらにネストしても、条件に応じてユーザインターフェイスを変更するユーザアプリケーションの構造が簡単になるという効果を奏する。
【0076】
また、アイコンとしての釦40の属性(120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) と消耗品発注命令Order (Toner.RFID To DefaultDealer)とが対になって記述された簡単なユーザアプリケーションの該属性に基づいて操作パネル15に釦40を表示させ、そのオンの検出に応答して、該消耗品発注命令に基づきNIC18を介し消耗品発注情報を宛先へ送信させるので、簡単なユーザアプリケーションの記述により、ユーザが容易に消耗品を発注できるとともに、消耗品消耗速度が予測に反して急増し又は急減してもこれに対処できるという効果を奏する。
【0077】
また釦40の属性として消耗状態の記述「残り& Toner.Level.ToPages & 枚」が含まれ、検出された消耗状態がこの記述に基づき操作パネル15に表示されるので、簡単な記述により、適切なタイミングで消耗品を発注できるという効果を奏する。
【0078】
さらに、釦40の表示領域(120, 80, 60, 30)内に消耗状態が表示されるので、ユーザの操作性が向上するという効果を奏する。
【0079】
また、ステップS4をステップS5の前に配置しているので、エンドフラグEFが一旦リセットされればリセットエンド命令ResetEndの条件式が判定されず、トナー残量検出値が機械的振動により変動しても、ユーザアプリケーションを複雑化させることなく釦40のオン検出を継続して行うことができるという効果を奏する。
【0080】
また、消耗品発注情報の送信後に、操作パネル15上に消耗品を発注したことが表示されるので、複数のユーザによる消耗品重複発注を防止できるという効果を奏する。
【0081】
さらにまた、消耗品発注情報の送信後に、操作パネル15上の釦40の表示が削除されるので、操作性が向上するとともに、誤操作や複数のユーザによる消耗品重複発注を防止できるという効果を奏する。
【0082】
また、ユーザアプリケーションに含まれるエンド命令Endに基づき該削除が行われるので、簡単な記述で該削除を行わせるか否かの選択を行うことができるという効果を奏する。
【0083】
またトナーカートリッジの型式が電子タグから自動的に読み出されて発注情報として用いられるという効果を奏する。
【0084】
図5(B)及び(C)は、図5(A)と発注形態のみが異なるユーザアプリケーションを示す。
【0085】
図5(B)の場合、カートリッジ発注処理として、
"Fax cartridgeOrderFile.pdf to アドレス帳(dealer1, fax)"が、図1のステップS12において、FAXモジュール352を用いて実行される。このステートメントにより、ファイルcartridgeOrderFile.pdfの内容が、宛先へ送信される。この宛先は、関数であるアドレス帳(dealer1,fax)の戻り値となる。アドレス帳には、宛先毎にファクシミリ番号と電子メールアドレスとが記入されており、引数faxは、引数dealer1で示されるレコードのファクシミリ番号がこの関数の戻り値となることを示している。
【0086】
図5(C)の場合、カートリッジ発注処理として、"Email cartridgeOrderFile.pdf to アドレス帳(dealer1,email)"が、図1のステップS12において、電子メールモジュール353を用いて実行される。このステートメントにより、ファイルcartridgeOrderFile.pdfの内容が、宛先へ送信される。この宛先は、関数であるアドレス帳(dealer1,email)の戻り値である。引数emailは、引数dealer1で示されるレコードの電子メールアドレスがこの関数の戻り値となることを示している。
【0087】
図1の処理は、消耗品発注とは無関係なユーザアプリケーションにも適用可能であり、その具体例を図6(A)〜(C)に示す。
【0088】
次に、図6(A)に示すユーザアプリケーションに対する図1の処理を説明する。
【0089】
(5)タイマ割込により、まず、ステップS0でLC=0となる。ステップS1でLC=0の行”Button (20, 30, 60, 30, 伝票送信) {”が読み出され、CLC=0、LC=5となる。ステップS2、S3及びS7を通って、ステップS8で図3(B)に示すような釦41が表示されるとともに、内部フラグFがセットされる。まだ釦41の表示範囲(20, 30, 60, 30)内が押下されていないので、ステップS9で否定判定され、ステップS1へ戻る。ステップS1で、LC=5の行Nullが取り出され、ステップS2を通って終了する。
【0090】
その後も、釦41が押下されなければ、このような処理(5)が行われる。
【0091】
(6)ユーザが画像形成装置10の原稿台に原稿を載置して釦41を押下すると、ステップS9で肯定判定され、ステップS10でLC=1となり、ステップS1へ戻る。
【0092】
ステップS1で、LC=1の行"file.pdf=Scan"が取り出され、CLC=1、LC=2となる。ステップS2、S3、S7及びS11を通って、ステップS12でCLC=1の行が処理される。すなわち、スキャナ17が動作して原稿画像が読み取られ、そのデータがpdfフォーマットに変換されてfile.pdfにされる。
【0093】
ステップS1へ戻り、LC=2の行"Fax file.pdf to アドレス帳(本社経理部, fax)"が読み出され、CLC=2、LC=3となる。ステップS2、S3、S7及びS11を通って、ステップS12でCLC=2の行が処理される。すなわち、アドレス帳(本社経理部, fax)の戻り値である宛先へ、ファイルfile.pdfの内容が送信される。
【0094】
ステップS1へ戻り、LC=3の行"Email file.pdf to アドレス帳(佐々木太郎, email)"が読み出され、CLC=3、LC=5となる。ステップS2、S3、S7及びS11を通って、ステップS12でCLC=3の行が処理される。すなわち、アドレス帳(佐々木太郎, email)の戻り値である宛先へ、ファイルfile.pdfが電子メール送信される。例えば、ファクシミリ送信内容の控えが、自分宛へ送信される。
【0095】
ステップS1へ戻り、LC=5のNull行が読み出され、ステップS2を通って図1の処理を終了する。釦41は、操作パネル15上に表示されたままである。
【0096】
図6(B)の場合、上述と同じ処理が行われ、電子メール送信後にさらに、End文が処理されて、ステップS13で操作パネル15上の釦41の表示がクリアされ、内部フラグFがリセットされるとともに、エンドフラグEFがセットされる。
【0097】
図6(C)の場合、図6(B)の処理の前に、ステップS12においてCLC=1の行"ResetEnd(ICcardID=KM01)"が処理される。すなわち、ユーザのICカード24Bに格納されている、ユーザIDとパスワードを暗号化したものとが、電波を介してICカードリーダ22により読み出される。そして、PROM13に登録されている、ユーザIDと例えば2回暗号化されているパスワードとが読み出され、後者が1回復号され、両者が照合される。両者のそれぞれが一致し、かつ、ユーザIDが、"ICcardID=KM01"のKM01と一致すれば、すなわちIDがKM01のユーザ認証が成功すれば、ResetEnd文の条件が成立したことになり、ステップS5で肯定判定され、ステップS6でEF=0となる。その後、図6(B)の場合と同じ処理が行われる。
【0098】
前記ユーザ認証が失敗した場合には、ステップS5で否定判定されて図1の処理が終了し、釦41が操作パネル15上に表示されない。
【0099】
したがって、特定のユーザのみに対し、毎回、操作パネル15上に釦41が表示されて上述のシーケンス処理が行われ、処理が終わると釦41が操作パネル15上から消失する。すなわち、簡単なユーザアプリケーションにより、ユーザ毎のユーザインターフェイスを構成できるという効果を奏する。
【実施例2】
【0100】
図6(A)〜(C)に示すユーザアプリケーションでは、ファクシミリ送信及び電子メール送信の宛先が固定であり、ユーザアプリケーション実行時に変更することができなかった。
【0101】
そこで本実施例2では、図7(A)に示すようなユーザアプリケーションにより、ユーザアプリケーション実行時に宛先アドレスを変更可能にしている。これを実現するために、釦文の前のLC=0及びLC=1のステートメント中にそれぞれ、操作パネル15上にアドレス帳を表示するための命令"F_Adr=アドレス帳(fax, 150, 20)"及び"E_Adr=アドレス帳(e-mail, 150, 38)"を記述している。括弧内の第1パラメータ"fax"及び"e-mail"はそれぞれファクシミリ及び電子メールのアドレス帳を指定するものである。括弧内の第2及び第3パラメータは操作パネル上のアドレス帳配置座標である。
【0102】
図7(B)は、図7(A)のユーザアプリケーションを実行したときの操作パネル15上の表示画面を示す。この画面上のファクシミリアドレス帳42及び電子メールアドレス帳43はそれぞれ、LC=0及びLC=1のアドレス帳表示命令を実行することにより表示される。各アドレス帳は、ファクシミリであるか電子メールであるかを示すラベルと、選択した宛先が表示されるテキストボックスと、矢印部とを有し、この矢印部をマウスでクリックすると、宛先のドロップダウンリストが表示され、その中の1つをマウスで選択すると、それがテキストボックスに表示される。
【0103】
これらアドレス帳表示命令は、図7(C)に示すようなアドレス帳テーブルTBL3を用いた関数に対応している。アドレス帳テーブルTBL3は、宛先名と、電子メールアドレスと、ファクシミリ番号とをフィールドとして含む。
【0104】
ファクシミリアドレス帳42で選択された宛先名を含む、アドレス帳テーブルTBL3上のレコードのファクシミリ番号が、"アドレス帳(e-mail, 150, 38)"の戻り値となる。したがって、LC=0のステートメントを実行すると、この選択が行われていればその戻り値が変数F_Adrに代入される。戻り値は、上記ドロップダウンリスト中の項目をマウスでクリックしたときのイベントに対するイベントハンドラで取得され、変数F_Adrへの戻り値の代入は、図1のステップS12で行われる。
【0105】
LC=1のステートメントについても前記同様である。
【0106】
LC=2〜5のステートメントは、アドレス帳表示命令の替わりに変数を用いている他は、図6(A)のLC=0〜3のステートメントと同一である。
【0107】
本実施例2によれば、簡単なユーザアプリケーションにより、原稿をスキャンし、その画像をファクシミリ送信するとともに電子メール送信するという一連の処理を自動的に行い、この処理前に、ファクシミリ及び電子メールの宛先をユーザが選択できるという効果を奏する。
【実施例3】
【0108】
実施例2において、宛先がアドレス帳に登録されていれば、ユーザは画像形成装置10に原稿をセットした後、宛先を選択して送信釦を押下することにより、複数の処理を容易に自動実行させることができる。
【0109】
しかし、宛先がアドレス帳に登録されていない場合、操作パネル15上の不図示のソウフトウェアキー又はハードウェアキーを操作してファクシミリアドレス帳42又は電子メールアドレス帳43のテキストボックスにファクシミリ番号又は送信アドレスを入力しなければならず、操作性が良くない。
【0110】
一方、アドレス帳42又は43を閲覧して、宛先がアドレス帳に登録されていないことに気づくことがある。
【0111】
そこで、本実施例3では、アドレス帳42又は43に宛先が記入されていない状態で送信釦41を押下すると、操作がホストコンピュータ25によるリモートコントロールに切り替えられるように構成されている。
【0112】
図8(A)は、これを実現するためのユーザアプリケーションを示す。このプログラムでは、LC=0及びLC=4〜6の命令文が、図7(A)のプログラムに付加されている。
【0113】
LC=0の命令"Label ( 20, 62, 宛先無指定で送信釦を押下するとPCに切替)"は、操作パネル15上に文字列「宛先無指定で送信釦を押下するとPCに切替」を表示させるものであり、その開始位置座標は(20,62)である。
【0114】
LC=4〜6の条件文
If (F_Adr="" or E_adr=""){
RemoteControl(192.168.1.28);
}
は、LC=1又は2において変数F_Adr又はE_adrが空文字である場合に、命令"RemoteControl(192.168.1.28)"が実行されることを意味している。この命令の括弧内のパラメータは、画像形成装置10に接続されているホストコンピュータ25のIPアドレスであり、このIPアドレスのコンピュータに、画像形成装置10に対する操作が切り替わることを意味している。なお、IPアドレスの代わりにコンピュータ名を用い、NetBEUIプロトコル等で名前解決してIPアドレスに変換する構成であってもよい。
【0115】
図9は、図1のステップS12の処理のより詳細を示すフローチャートである。図10は画像形成装置10とホストコンピュータ25との間の信号の流れを示すシーケンス図である。
【0116】
(S20)LC行がリモートコントロール命令であればステップS21へ進み、そうでなければステップS25へ進む。
【0117】
(S21)上記タイマ割込をマスクすることにより、タイマ割込を禁止する。
【0118】
(S22)現在実行中のユーザアプリケーションをホストコンピュータ25へ送信する。
【0119】
ホストコンピュータ25には、画像形成装置10の簡易テキスト言語処理プログラム38に対応したプログラムが予めインストールされ、これがホストコンピュータ25に常駐して待機状態になっている。このプログラムは、画像形成装置10からの信号の受信イベントに応答して動作が開始され、ステップS12を除き図1と同じ処理を実行し、ステップS12に対応して命令文を画像形成装置10へ送信し、画像形成装置10でこの命令文を実行する。このような画像形成装置10とホストコンピュータ25との連携で、図1の処理が実行される。
【0120】
具体的には、ホストコンピュータ25の表示装置に、操作パネル15に対応したコントロールパネルが表示される。ユーザは、キーボードやマウス等の対話型入力装置でファクシミリ又は電子メールの宛先アドレスを入力し、コントロールパネル上の伝票送信釦を押下する。
【0121】
これにより、図8のLC=4〜9の行が順次実行される。LC=4の条件は不成立であり、次にLC=7の行が実行される。
【0122】
すなわち、LC=7のステートメント"file.pdf = Scan"がホストコンピュータ25から画像形成装置10へ送信され、画像形成装置10はこれを受け付けて実行し、この実行が完了すると、画像形成装置10は完了したことを示す応答信号をホストコンピュータ25へ送信する。ホストコンピュータ25はこれに応答して、次のステートメントの"F_Adr"に値を代入した"Fax file.pdf to 123-456-789"を画像形成装置10へ送信する。画像形成装置10はこれを受け付けて実行し、この実行が完了すると、画像形成装置10は完了したことを示す応答信号をホストコンピュータ25へ送信する。ホストコンピュータ25はこれに応答して、次のステートメントの"E_Adr"に値を代入した"Email file.pdf to suzuki@xyz.com"を画像形成装置10へ送信する。
【0123】
このようにして、ユーザは適切な時点で、通常使用して慣れている画像形成装置10の操作画面と同じ画面で画像形成装置10をリモートコントロールすることが可能となる。この場合、複数の機能の実行がユーザアプリケーションに従って確認しながら自動的に行われるとともに、操作性の良い対話型入力装置を用いて宛先を指定することができるという効果を奏する。
【0124】
なお、本発明には外にも種々の変形例が含まれる。
【0125】
例えば、ユーザアプリケーションは入力インターフェイスを介して画像形成装置に格納されればよく、フラッシュメモリカード等の他のリブーバブルメモリや通信インターフェイスの入力インターフェイスを介する構成であってもよい。
【0126】
また、操作パネル15の替わりに、画像形成装置の通信インターフェイスを介して結合されたコンピュータシステムの対話型入出力装置、すなわちリモートコンソールを用いる構成であってもよい。この場合、アイコンは例えばマウスのクリックによりオンにされる。
【図面の簡単な説明】
【0127】
【図1】本発明の実施例1に係る画像形成装置に格納されている、ユーザアプリケーションに対する簡易テキスト言語処理プログラムの処理を示す概略フローチャートである。
【図2】この画像形成装置のPROM及びDRAMに格納されているデータの一部説明図である。
【図3】(A)は該画像形成装置の操作パネル上のメインメニュー画面を示す図であり、(B)は(A)の"USER APPLICATION"釦を押下したときに表示されるメニュー画面を示す図であり、(C)は(B)の釦40を押下した後の画面を示す図である。
【図4】時間の経過に対するトナー残量のグラフを示す、図1の処理説明図である。
【図5】(A)〜(C)はトナーカートリッジ発注に関するユーザアプリケーションの具体例を示す図である。
【図6】(A)〜(C)は伝票のスキャン、ファクシミリ送信及び電子メール送信に関するユーザアプリケーションの具体例を示す図である。
【図7】(A)は本発明の実施例2に係るユーザアプリケーションを示す図であり、(B)は(A)のユーザアプリケーションを実行することにより表示される操作画面を示す図である。
【図8】(A)は本発明の実施例3に係るユーザアプリケーションを示す図であり、(B)は(A)のユーザアプリケーションを実行することにより表示される操作画面を示す図であり、(C)はアドレス帳テーブル説明図である。
【図9】該画像形成装置のソフトウェア階層構造を示す概略ブロック図である。
【図10】該画像形成装置のハードウェア構成を示す概略ブロック図である。
【符号の説明】
【0128】
10 画像形成装置
11 MPU
12 インターフェイス
13 PROM
14 DRAM
15 操作パネル
16 プリンタ
17 スキャナ
18 NIC
19 FAXモデム
20 ポート
21 トナー残量検出器
22 ICカードリーダ
23 電子タグリーダ
24A USBメモリ
24B ICカード
25 ホストコンピュータ
26 インターネット
27 Webサーバマシン
28 公衆回線網
30 OS
31 デバイスドライバ
32 API
33 基本サービスプログラム
330 操作パネル制御モジュール
331 スキャンモジュール
332 プリントモジュール
333 FAX送受信モジュール
334 電子メール送受信モジュール
335 ICカード制御モジュール
336 RFID制御モジュール
337 フォーマット変換モジュール
338 アドレス帳モジュール
339 HTTP処理モジュール
34、36 外部API
35 アプリケーション
350 コピーモジュール
351 プリントモジュール
352 FAXモジュール
353 電子メールモジュール
354 ジョブ管理モジュール
355 操作パネルモジュール
37 ユーザアプリケーション
38 簡易テキスト言語処理プログラム
40、41 釦
42 ファクシミリアドレス帳
43 電子メールアドレス帳
TBL1、TBL2 テーブル
TBL3 アドレス帳テーブル

【特許請求の範囲】
【請求項1】
プロセッサと、テキスト言語処理プログラムが格納された記憶手段と、通信インターフェイスとを備えた画像形成装置において、
該記憶手段にはさらにユーザアプリケーションが格納され、該ユーザアプリケーションには、第1宛先アドレスをパラメータとして含むリモートコントロール命令が記述され、
該テキスト言語処理プログラムは該プロセッサに対し、該ユーザアプリケーションを解釈させ、該リモートコントロール命令に基づき、
(a)該ユーザアプリケーションを該第1宛先アドレスのコンピュータへ送信させ、
(b)該ユーザアプリケーションに基づいて該コンピュータから供給される指令を実行させる、
ことを特徴とする画像形成装置。
【請求項2】
該テキスト言語処理プログラムは該プロセッサに対しさらに、
(c)処理(b)の実行完了を該コンピュータへ通知させる、
ことを特徴とする請求項1に記載の画像形成装置。
【請求項3】
操作パネルをさらに備え、
該ユーザアプリケーションにはさらに、アイコンの属性と処理との組が記述され、該リモートコントロール命令は該処理に含まれ、
該テキスト言語処理プログラムは該プロセッサに対し、
該アイコンの属性に基づき該操作パネル上又は該通信インターフェイスを介したリモートコンソール上にアイコンを表示させ、
該アイコンのオンに応答して該処理を実行させる、
ことを特徴とする請求項1又は2に記載の画像形成装置。
【請求項4】
該処理には、該第1宛先アドレスが指定されていなければ該リモートコントロール命令を実行する条件文と、第2宛先アドレスをパラメータとして含むファックス送信命令とが含まれ、該ファックス送信命令は該条件文の後に記述され、
処理(b)の指令は該ファックス送信命令に基づくファックス送信指令である、
ことを特徴とする請求項3に記載の画像形成装置。
【請求項5】
該処理には、該第1宛先アドレスが指定されていなければ該リモートコントロール命令を実行する条件文と、第2宛先アドレスをパラメータとして含む電子メール送信命令とが含まれ、該ファックス送信命令は該条件文の後に記述され、
処理(b)の指令は該電子メール送信命令に基づく電子メール送信指令である、
ことを特徴とする請求項3に記載の画像形成装置。
【請求項6】
請求項3乃至5のいずれか1つに記載の画像形成装置と、該画像形成装置の通信インターフェイスに結合されるコンピュータシステムとを備えた画像形成システムであって、該コンピュータシステムはコンソールを備え、
該コンピュータは、該画像形成装置から受信したユーザアプリケーションに基づいて、
該アイコンの属性に基づき該コンソールに第2アイコンを表示させ、
該第2アイコンのオンに応答して、該処理を実行させるための指令を該画像形成装置へ送信する、
ことを特徴とする画像形成システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2009−88748(P2009−88748A)
【公開日】平成21年4月23日(2009.4.23)
【国際特許分類】
【出願番号】特願2007−253077(P2007−253077)
【出願日】平成19年9月28日(2007.9.28)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Linux
【出願人】(000006150)京セラミタ株式会社 (13,173)
【Fターム(参考)】