(57)【要約】【課題】ＣＰＵが低電力モードに移行したときにリアルタイムＯＳで使用するシステムタイマの周期が短時間であるために、短時間で低電力モードがキャンセルされる。【解決手段】実行準備状態のタスクがなく、すべてのタスクが待機状態であれば、装置が省エネモード状態であるか否かの判定を行い、装置が省エネモードの場合は、最初に時間待機状態のタスクのうち起床するタスクの起床までの時間（起床時間）を計算し、通常のシステムタイマ周期と起床までの時間の最小公倍数をシステムタイマの周期として設定し直した後、ＷＡＩＴ命令を発行して低電力モードに移行する。【選択図】図７
2009220459.tif 000002
【特許請求の範囲】
【請求項１】
未実行状態になった場合に命令により低電力モードに移行するＣＰＵを有し、
機器の状態として消費電力を抑える省エネモードに移行したときに、実行タスクの有無を判別して、前記実行タスクがないときには前記ＣＰＵを起床させる割り込みを発生するリアルタイムＯＳのシステムタイマの割込み周期を長く設定して、前記ＣＰＵを低電力モードに移行させる
ことを特徴とする機器の制御装置。
【請求項２】
請求項１に記載の機器の制御装置において、前記ＣＰＵを低電力モードに移行したときのシステムタイマの割り込み周期を、次に起動するタスクの起動時間に設定することを特徴とする機器の制御装置。
【請求項３】
請求項１又は２に記載の機器の制御装置において、前記システムタイマの誤差を補正する手段を有することを特徴とする機器の制御装置。
【請求項４】
請求項１ないし３のいずれかに記載の機器の制御装置を備えていることを特徴とする画像形成装置。
【請求項５】
未実行状態になった場合に命令により低電力モードに移行するＣＰＵに対して前記低電力モードへの移行及び起床を行わせる処理をコンピュータに実行させるプログラムであって、
機器の状態として消費電力を抑える省エネモードに移行したときに、実行タスクの有無を判別して、前記実行タスクがないときには前記ＣＰＵを起床させる割り込みを発生するリアルタイムＯＳのシステムタイマの割込み周期を長く設定して、前記ＣＰＵを低電力モードに移行させる処理を実行させる
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は機器の制御装置、画像形成装置、プログラムに関し、特に機器が省エネモードに移行するときに自身も低電力モードに移行することが可能なＣＰＵを有する機器の制御装置、画像形成装置、及び当該ＣＰＵを制御するプログラムに関する。
【背景技術】
【０００２】
例えば、プリンタ、ファクシミリ、複写装置、プロッタ、これらの複合機等の画像形成装置として、例えばインク液滴を吐出する記録ヘッドを用いた画像形成装置としてインクジェット記録装置などが知られている。この液体吐出記録方式の画像形成装置は、記録ヘッドからインク滴を、搬送される用紙に対して吐出して、画像形成（記録、印字、印写、印刷も同義語で使用する。）を行なうものであり、記録ヘッドが主走査方向に移動しながら液滴を吐出して画像を形成するシリアル型画像形成装置と、記録ヘッドが移動しない状態で液滴を吐出して画像を形成するライン型ヘッドを用いるライン型画像形成装置がある。
【０００３】
なお、本願において、「画像形成装置」は、紙、糸、繊維、布帛、皮革、金属、プラスチック、ガラス、木材、セラミックス等の媒体にインクを着弾させて画像形成を行い、あるいは、電子写真方式で画像形成を行い、その他の画像形成手段を用いて画像形成を行う装置を意味し、また、「画像形成」とは、文字や図形等の意味を持つ画像を媒体に対して付与することだけでなく、パターン等の意味を持たない画像を媒体に付与すること（液体吐出方式では単に液滴を媒体に着弾させること）をも意味する。また、「インク」とは、インクと称されるものに限らず、記録液、定着処理液、液体などと称されるものなど、画像形成を行うことができるすべての液体の総称として用いる。また、「用紙」とは、材質を紙に限定するものではなく、上述したＯＨＰシート、布なども含み、インク滴が付着されるものの意味であり、被記録媒体、記録媒体、記録紙、記録用紙などと称されるものを含むものの総称として用いる。
【０００４】
従来、特許文献１には、複数のタスクで表示や音楽のデバイスを制御する場合、各タスクからデバイスの使用、未使用状態をレポートしてもらい、その情報とデバイスの実行状態を考慮することにより、最適なデバイスの低電力設定を計算することによって、省エネを図ることが記載されている。また、特許文献２にも同様な目的の構成が記載されている。
【特許文献１】特開２００５−１８２２２３号公報
【特許文献２】特開２００６−２３５９０７号公報
【０００５】
特許文献３には、ファクシミリ等の印刷装置で省エネモードに移行しても、外部からのデータ受信によって自動的に省エネモードから復帰する構成が記載されている。
【特許文献３】特開２００６−３５２９１４公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
リアルタイムＯＳをベースとした組み込み機器（システム）では、システム時間を管理しており、これは周期タイマによる周期的な割り込みを用いて実装することが知られている。例えば、画像形成装置においては、消費電力を抑えるために、省エネモードに移行した場合、各部の電源供給をカットするとともに、ＣＰＵの処理も例外ではなく、省エネモード状態では実行するタスク（プログラム）がないため、リアルタイムＯＳはＷＡＩＴ命令を発行して、電力消費の少ないモード（低電力モード）に移行させるようにしている。
【０００７】
しかしながら、これまでのリアルタイムＯＳのＷＡＩＴ命令によるＣＰＵの低電力モードへの移行では、システムタイマが所定の周期（例えば１ｍｓｅｃ）に設定されているため、実行すべきタスク（プログラム）がなくても、常に１ｍｓｅｃという短い周期でタイマ割り込みが発生してＣＰＵが起床され、十分に低電力で低電力モードを実行できないという課題がある。この場合、逆に、システムタイマの周期を低電力効果のある長時間に設定しなおすと、通常動作で各タスク（プログラム）がハードリアルタイム性を守れないという課題がある。
【０００８】
本発明は上記の課題に鑑みてなされたものであり、通常時のハードリアルタイム性を確保しつつ、省エネをより効果的に行うことができるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明に係る機器の制御装置は、
未実行状態になった場合に命令により低電力モードに移行するＣＰＵを有し、
機器の状態として消費電力を抑える省エネモードに移行したときに、実行タスクの有無を判別して、前記実行タスクがないときには前記ＣＰＵを起床させる割り込みを発生するリアルタイムＯＳのシステムタイマの割込み周期を長く設定して、前記ＣＰＵを低電力モードに移行させる
構成とした。
【００１０】
ここで、前記ＣＰＵを低電力モードに移行したときのシステムタイマの割り込み周期を、次に起動するタスクの起動時間に設定する構成とできる。
【００１１】
また、前記システムタイマの誤差を補正する手段を有する構成とできる。
【００１２】
本発明に係る画像形成装置は、本発明に係る機器の制御装置を備えた構成とした。
【００１３】
本発明に係るプログラムは、
未実行状態になった場合に命令により低電力モードに移行するＣＰＵに対して前記低電力モードへの移行及び起床を行わせる処理をコンピュータに実行させるプログラムであって、
機器の状態として消費電力を抑える省エネモードに移行したときに、実行タスクの有無を判別して、前記実行タスクがないときには前記ＣＰＵを起床させる割り込みを発生するリアルタイムＯＳのシステムタイマの割込み周期を長く設定して、前記ＣＰＵを低電力モードに移行させる処理を実行させる
構成とした。
【発明の効果】
【００１４】
本発明に係る機器の制御装置、画像形成装置、プログラムによれば、機器の状態として消費電力を抑える省エネモードに移行したときに、実行タスクの有無を判別して、実行タスクがないときにはＣＰＵを起床させる割り込みを発生するリアルタイムＯＳのシステムタイマの割込み周期を長く設定して、ＣＰＵを低電力モードに移行させるので、通常時のハードリアルタイム性を確保しつつ、省エネをより効果的に行うことができるようになる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態について添付図面を参照して説明する。まず、本発明に係る機器でもある画像形成装置の一例について図１及び図２を参照して説明する。なお、図１は同画像形成装置の全体構成を説明する側面説明図、図２は同装置の要部平面説明図である。
この画像形成装置はシリアル型インクジェット記録装置であり、装置本体１の左右の側板２１Ａ、２１Ｂに横架したガイド部材である主従のガイドロッド３１、３２でキャリッジ３３を主走査方向に摺動自在に保持し、図示しない主走査モータによってタイミングベルトを介して図２で矢示方向（キャリッジ主走査方向）に移動走査する。
【００１６】
このキャリッジ３３には、イエロー（Ｙ）、シアン（Ｃ）、マゼンタ（Ｍ）、ブラック（Ｋ）の各色のインク滴を吐出するための液体吐出ヘッドからなる記録ヘッド３４ａ、３４ｂ（区別しないときは「記録ヘッド３４」という。）を複数のノズルからなるノズル列を主走査方向と直交する副走査方向に配列し、インク滴吐出方向を下方に向けて装着している。
【００１７】
記録ヘッド３４は、それぞれ２つのノズル列を有し、記録ヘッド３４ａの一方のノズル列はブラック（Ｋ）の液滴を、他方のノズル列はシアン（Ｃ）の液滴を、記録ヘッド３４ｂの一方のノズル列はマゼンタ（Ｍ）の液滴を、他方のノズル列はイエロー（Ｙ）の液滴を、それぞれ吐出する。
【００１８】
なお、記録ヘッド３４としては、図３に示すように、１つのノズル面３４Ｎにノズル３４ｎを並べた各色のノズル列３４Ｋ、３４Ｃ、３４Ｍ、３４Ｙを備えるものなどを用いることもできる。
【００１９】
また、キャリッジ３３には、記録ヘッド３４のノズル列に対応して各色のインクを供給するための第２インク供給部としてのサブタンクであるサブタンク３５ａ、３５ｂ（区別しないときは「サブタンク３５」という。）を搭載している。このサブタンク３５には、カートリッジ装填部４に着脱自在に装着される各色の第１インク供給部であるインクカートリッジ１０ｙ、１０ｍ、１０ｃ、１０ｋから、供給ポンプユニット５によって各色の供給チューブ３６を介して、各色の記録液が補充供給される。
【００２０】
一方、給紙トレイ２の用紙積載部（圧板）４１上に積載した用紙４２を給紙するための給紙部として、用紙積載部４１から用紙４２を１枚ずつ分離給送する半月コロ（給紙コロ）４３及び給紙コロ４３に対向し、摩擦係数の大きな材質からなる分離パッド４４を備え、この分離パッド４４は給紙コロ４３側に付勢されている。
【００２１】
そして、この給紙部から給紙された用紙４２を記録ヘッド３４の下方側に送り込むために、用紙４２を案内するガイド部材４５と、カウンタローラ４６と、搬送ガイド部材４７と、先端加圧コロ４９を有する押さえ部材４８とを備えるとともに、給送された用紙４２を静電吸着して記録ヘッド３４に対向する位置で搬送するための搬送手段である搬送ベルト５１を備えている。
【００２２】
この搬送ベルト５１は、無端状ベルトであり、搬送ローラ５２とテンションローラ５３との間に掛け渡されて、ベルト搬送方向（副走査方向）に周回するように構成している。また、この搬送ベルト５１の表面を帯電させるための帯電手段である帯電ローラ５６を備えている。この帯電ローラ５６は、搬送ベルト５１の表層に接触し、搬送ベルト５１の回動に従動して回転するように配置されている。この搬送ベルト５１は、図示しない副走査モータによってタイミングを介して搬送ローラ５２が回転駆動されることによって図２のベルト搬送方向に周回移動する。  
【００２３】
さらに、記録ヘッド３４で記録された用紙４２を排紙するための排紙部として、搬送ベルト５１から用紙４２を分離するための分離爪６１と、排紙ローラ６２及び排紙コロである拍車６３とを備え、排紙ローラ６２の下方に排紙トレイ３を備えている。
【００２４】
また、装置本体１の背面部には両面ユニット７１が着脱自在に装着されている。この両面ユニット７１は搬送ベルト５１の逆方向回転で戻される用紙４２を取り込んで反転させて再度カウンタローラ４６と搬送ベルト５１との間に給紙する。また、この両面ユニット７１の上面は手差しトレイ７２としている。
【００２５】
さらに、図２に示すように、キャリッジ３３の走査方向一方側の非印字領域には、記録ヘッド３４のノズルの状態を維持し、回復するための維持回復機構８１を配置している。この維持回復機構８１には、記録ヘッド３４の各ノズル面をキャピングするための各キャップ部材（以下「キャップ」という。）８２ａ、８２ｂ（区別しないときは「キャップ８２」という。）と、ノズル面をワイピングするためのワイパ部材（ワイパブレード）８３と、増粘した記録液を排出するために記録に寄与しない液滴を吐出させる空吐出を行うときの液滴を受ける空吐出受け８４と、キャリッジ３３をロックするキャリッジロック８７などとを備えている。また、このヘッドの維持回復機構８１の下方側には維持回復動作によって生じる廃液を収容するための廃液タンク１００が装置本体に対して交換可能に装着される。
【００２６】
また、図２に示すように、キャリッジ３３の走査方向他方側の非印字領域には、記録中などに増粘した記録液を排出するために記録に寄与しない液滴を吐出させる空吐出を行うときの液滴を受ける空吐出受け８８を配置し、この空吐出受け８８には記録ヘッド３４のノズル列方向に沿った開口部８９などを備えている。
【００２７】
このように構成したこの画像形成装置においては、給紙トレイ２から用紙４２が１枚ずつ分離給紙され、略鉛直上方に給紙された用紙４２はガイド４５で案内され、搬送ベルト５１とカウンタローラ４６との間に挟まれて搬送され、更に先端を搬送ガイド３７で案内されて先端加圧コロ４９で搬送ベルト５１に押し付けられ、略９０°搬送方向を転換される。
【００２８】
このとき、帯電ローラ５６に対してプラス出力とマイナス出力とが交互に繰り返すように、つまり交番する電圧が印加され、搬送ベルト５１が交番する帯電電圧パターン、すなわち、周回方向である副走査方向に、プラスとマイナスが所定の幅で帯状に交互に帯電されたものとなる。このプラス、マイナス交互に帯電した搬送ベルト５１上に用紙４２が給送されると、用紙４２が搬送ベルト５１に吸着され、搬送ベルト５１の周回移動によって用紙４２が副走査方向に搬送される。
【００２９】
そこで、キャリッジ３３を移動させながら画像信号に応じて記録ヘッド３４を駆動することにより、停止している用紙４２にインク滴を吐出して１行分を記録し、用紙４２を所定量搬送後、次の行の記録を行う。記録終了信号又は用紙４２の後端が記録領域に到達した信号を受けることにより、記録動作を終了して、用紙４２を排紙トレイ３に排紙する。
【００３０】
そして、記録ヘッド３４のノズルの維持回復を行うときには、キャリッジ３３をホーム位置である維持回復機構８１に対向する位置に移動して、キャップ部材８２によるキャッピングを行ってノズルからの吸引を行うノズル吸引、画像形成に寄与しない液滴を吐出する空吐出などの維持回復動作を行うことにより、安定した液滴吐出による画像形成を行うことができる。
【００３１】
次に、この画像形成装置の制御部の概要について図３を参照して説明する。なお、同図は同制御部の全体ブロック説明図である。
この制御部５００は、この画像形成装置全体の制御を司る本発明に係る機器の制御装置であって、この画像形成装置の全体の制御を行うＣＰＵ５１１と、ＣＰＵ５１１が実行する本発明に係るプログラムを含むプログラム、その他の固定データを格納するＲＯＭ５０２と、画像データ等を一時格納するＲＡＭ５０３と、装置の電源が遮断されている間もデータを保持するための書き換え可能な不揮発性メモリ５０４と、画像データに対する各種信号処理、並び替え等を行う画像処理やその他装置全体を制御するための入出力信号を処理するＡＳＩＣ５０５とを備えている。
【００３２】
また、記録ヘッド３４を駆動制御するためのデータ転送手段、駆動信号発生手段を含む印刷制御部５０８と、キャリッジ３３側に設けた記録ヘッド３４を駆動するためのヘッドドライバ（ドライバＩＣ）５０９と、キャリッジ３３を移動走査する主走査モータ５５４、搬送ベルト５１を周回移動させる副走査モータ５５５、維持回復機構８１の維持回復モータ５５６を駆動するためのモータ駆動部５１０と、帯電ローラ５６にＡＣバイアスを供給するＡＣバイアス供給部５１１などを備えている。
【００３３】
また、この制御部５００には、この装置に必要な情報の入力及び表示を行うための操作パネル５１４が接続されている。
【００３４】
この制御部５００は、ホスト側とのデータ、信号の送受を行うためのＩ／Ｆ５０６を持っていて、パーソナルコンピュータ等の情報処理装置、イメージスキャナなどの画像読み取り装置、デジタルカメラなどの撮像装置などのホスト６００側から、ケーブル或いはネットワークを介してＩ／Ｆ５０６で受信する。
【００３５】
そして、制御部５００のＣＰＵ５０１は、Ｉ／Ｆ５０６に含まれる受信バッファ内の印刷データを読み出して解析し、ＡＳＩＣ５０５にて必要な画像処理、データの並び替え処理等を行い、この画像データを印刷制御部５０８からヘッドドライバ５０９に転送する。なお、画像出力するためのドットパターンデータの生成はホスト６００側のプリンタドライバ６０１で行っている。
【００３６】
印刷制御部５０８は、上述した画像データをシリアルデータで転送するとともに、この画像データの転送及び転送の確定などに必要な転送クロックやラッチ信号、制御信号などをヘッドドライバ５０９に出力する以外にも、ＲＯＭに格納されている駆動パルスのパターンデータをＤ／Ａ変換するＤ／Ａ変換器及び電圧増幅器、電流増幅器等で構成される駆動信号生成部を含み、１の駆動パルス或いは複数の駆動パルスで構成される駆動信号をヘッドドライバ５０９に対して出力する。
【００３７】
ヘッドドライバ５０９は、シリアルに入力される記録ヘッド３４の１行分に相当する画像データに基づいて印刷制御部５０８から与えられる駆動信号を構成する駆動パルスを選択的に記録ヘッド７の液滴を吐出させるエネルギーを発生する駆動素子（例えば圧電素子）に対して印加することで記録ヘッド７を駆動する。このとき、駆動信号を構成する駆動パルスを選択することによって、例えば、大滴、中滴、小滴など、大きさの異なるドットを打ち分けることができる。
【００３８】
Ｉ／Ｏ部５１３は、装置に装着されている各種のセンサ群５１５からの情報を取得し、プリンタの制御に必要な情報を抽出し、印刷制御部５０８やモータ制御部５１０、ＡＣバイアス供給部５１１の制御に使用する。センサ群５１５は、用紙の位置を検出するための光学センサや、機内の温度を監視するためのサーミスタ、帯電ベルトの電圧を監視するセンサ、カバーの開閉を検出するためのインターロックスイッチなどがあり、Ｉ／Ｏ部５１３は様々のセンサ情報を処理することができる。
【００３９】
このように構成したこの画像形成装置においては、給紙トレイ２から用紙４２が１枚ずつ分離給紙され、略鉛直上方に給紙された用紙４２はガイド４５で案内され、搬送ベルト５１とカウンタローラ４６との間に挟まれて搬送され、更に先端を搬送ガイド３７で案内されて先端加圧コロ４９で搬送ベルト５１に押し付けられ、略９０°搬送方向を転換される。
【００４０】
このとき、ＡＣバイアス供給部５１１から帯電ローラ５６に対してプラス出力とマイナス出力とが交互に繰り返すように、つまり交番する電圧が印加され、搬送ベルト５１が交番する帯電電圧パターン、すなわち、周回方向である副走査方向に、プラスとマイナスが所定の幅で帯状に交互に帯電されたものとなる。このプラス、マイナス交互に帯電した搬送ベルト５１上に用紙４２が給送されると、用紙４２が搬送ベルト５１に吸着され、搬送ベルト５１の周回移動によって用紙４２が副走査方向に搬送される。
【００４１】
そこで、キャリッジ３３を移動させながら画像信号に応じて記録ヘッド３４を駆動することにより、停止している用紙４２にインク滴を吐出して１行分を記録し、用紙４２を所定量搬送後、次の行の記録を行う。記録終了信号又は用紙４２の後端が記録領域に到達した信号を受けることにより、記録動作を終了して、用紙４２を排紙トレイ３に排紙する。
【００４２】
そして、記録ヘッド３４のノズルの維持回復を行うときには、キャリッジ３３をホーム位置である維持回復機構８１に対向する位置に移動して、キャップ部材８２によるキャッピングを行ってノズルからの吸引を行うノズル吸引、画像形成に寄与しない液滴を吐出する空吐出などの維持回復動作を行うことにより、安定した液滴吐出による画像形成を行うことができる。
【００４３】
次に、この画像形成装置に適用した本発明の実施形態について説明する。
まず、図４に示す機能ブロック説明図を参照して、制御部のＣＰＵ（中央演算処理装置）５０１は、メモリ（ＲＯＭ５０２）上に載ったアプリケーション６０１やミドルウェア（制御プログラム）の命令に従って、この画像形成装置の制御を行う。制御プログラムの規模が大きいため、リアルタイムＯＳ６００を用いて、プログラムの管理を行っている。
【００４４】
クロック（ＣＬＫ）６０２は、ＣＰＵ５０１に対して実行クロックを与え、ＣＰＵ５０１はこの実行クロックをさらに分周して、命令を実行する。ＣＰＵ５０１はなにも実行する制御プログラムがなくなった場合、リアルタイムＯＳ６００からＣＰＵ５０１にＷＡＩＴ命令を発行し、ＣＰＵ５０１を低電力モード（ＣＰＵ自体の省エネモード）に移行させる。
【００４５】
この低電力モードは、ＣＰＵ５０１の実行クロックの周期の分周率をあらくして省電力化したり、ＲＡＭ５０３を書き込みができないがデータを保持できるようなモードに移行させたりして省電力化を行うモードである。
【００４６】
タイマモジュール（ＴＩＭ）６０３を有しており、リアルタイムＯＳ６００は、タイマモジュール６０３から一定時間周期で、割り込みを発生させ、絶対時間の管理やタスクの待ち時間の管理を行う。これを「システムタイマ」と称する。
【００４７】
次に、一般的なリアルタイムＯＳのタスクの状態遷移について図５を参照して説明する。
タスク６０７（６０７ａ〜６０７ｅ）は、実行状態６０８、待機状態６０９、実行準備状態６１０のいずれかの状態に遷移する。初期状態６１１はタスク６０７が起動していない状態である。デスパッチ６１２では実行準備状態のタスク６０７のうち優先度の高いタスク６０７を実行状態に遷移させる。プリエンプト６１３では、実行状態のタスクよりより優先度の高いタスクがデスパッチ６１２された場合、実行中のタスクは実行準備状態に遷移する。起床６１４では、待機状態１０９のタスクを実行準備状態１１０に遷移させる。
【００４８】
ここで、機器自体の省エネモードのような機器（画像形成装置）が何もしていない状態の場合、すべてのタスク６０７は待機状態６０８に遷移する。実行するタスク６０７がないため、リアルタイムＯＳ６００のタスク管理プログラムは、ＣＰＵ５０１に対してＷＡＩＴ命令を発行して、ＣＰＵ５０１を低電力モードに移行させる。低電力モードからの復帰は、割り込みによって行う。
【００４９】
ここで、画像形成装置のコントローラは前述したようにモータ等の制御を行うため、ハードリアルタイム性を求められるので、これに対応するためにシステムタイマを１ｍｓｅｃ単位で割り込みを発生させるようにすると、１ｍｓごとに低電力モードからの復帰を行うことになり、ＣＰＵ５０１の低電力モードにおける十分な低電力効果が得られなくなる。
【００５０】
次に、本発明と対比するために通常のシステムタイマの割り込み処理について図６に示すフロー図を参照して説明する。
システムタイマの割り込みの起動により、ステップＳ１（以下、単に「Ｓ１」というように表記する。）にてシステム時間の更新処理を行う。この更新処理では、リアルタイムＯＳは電源投入時からの経過時間をシステム時間として管理しているので、システム時間にタイマの周期時間を加算する処理を行い、これにより時間の管理を行う。その後、Ｓ２にて待機状態のタスクのうち、時間の経過により起床を待っているタスクの待機時間を調査する。ここで、Ｓ３にて起床が必要なタスクがあった場合、Ｓ４にてリアルタイムＯＳのタスクスケジューリング機能を用いて、起床処理を行う。
【００５１】
ここで、画像形成装置が省エネモードに移行した場合、ハードリアルタイム性を要求される機能はない。そのため、一定の周期で実行するタスクも、印刷等の処理は実行していないので、リアルタイム性を保証しなくとも、支障をきたす問題は発生しない。
【００５２】
そこで、本発明では、機器としての画像形成装置が省エネモードに移行し、すべてのタスクが待ち状態に遷移した場合に、システムタイマの割り込み周期を通常モードの整数倍で安全な値に変更し、システムタイマを含むすべての割り込みでタスクの起床が発生した場合に、システムタイマの周期を通常の設定に戻すようにする。これにより、システムタイマの短い周期でＣＰＵの低電力モード（省エネモード）が阻害される比率が削減されるため、省エネモード時の電流を下げることが可能となる。
【００５３】
そこで、本発明におけるリアルタイムＯＳ内のタスクスケジューリングを行うプログラムによる処理について図７に示すフロー図を参照して説明する。
タスクスケジューラは実行状態のタスクを円滑に制御するためのプログラムである。プログラムの実行前に、実行状態のタスク、実行準備状態のタスク、待機状態のタスクをキチンと整理した状態となっている必要がある。
【００５４】
まず、Ｓ１１にて実行状態のタスクがあるか否かの判定を行う。このとき、実行状態のタスクがあれば、Ｓ１２にて実行状態タスクへの実行へ移行し、そのタスクの前に終了した次のプログラムから実行を始める。なお、Ｓ１２の後の終了はタスクスケジューラの呼び出し後のプログラム位置に戻るという意味ではない。
【００５５】
これに対し、実行状態のタスクがない場合、Ｓ１３にて次に実行状態に遷移するタスクを探す（実行準備状態のタスクの調査）。そして、Ｓ１４にて実行準備状態のタスクがあるか否かを判定する。
【００５６】
このＳ１４の判定の結果で実行準備状態のタスクがある場合、このタスクをデスパッチして、Ｓ１１の実行状態タスクのありなし判定の前に戻る。
【００５７】
これに対し、Ｓ１４の判定の結果で実行準備状態のタスクなしであれば、すべてのタスクが待機状態ということになるので、Ｓ１５に移行して、装置が省エネモード状態であるか否かの判定を行う。
【００５８】
この判定で装置が省エネモード状態でなければ、Ｓ１８に進んでＷＡＩＴ命令を発行して低電力モードに移行する。
【００５９】
これに対し、装置が省エネモードの場合は、Ｓ１６にて、最初に時間待機状態のタスクのうち起床するタスクの起床までの時間（起床時間）を計算し、Ｓ１７で通常のシステムタイマ周期と起床までの時間の最小公倍数をシステムタイマの周期として設定し直した後、Ｓ１８に進んでＷＡＩＴ命令を発行して低電力モードに移行する。
【００６０】
なお、Ｓ１６の起床までの時間の算出は必須ではない。これは、画像形成装置の省エネモードでは、リアルタイム性が保障できなくても、動作には支障はないためである。この場合、システムに支障がなく、通常のシステムタイマ周期の倍数を設定すれば、本発明の作用効果は達成できる。また、通常システムタイマ周期の倍数の設定も、システム時間の管理が不要なシステムでは必須ではない。
【００６１】
このように、プログラムによれば、機器の状態として消費電力を抑える省エネモードに移行したときに、実行タスクの有無を判別して、実行タスクがないときにはＣＰＵを起床させる割り込みを発生するリアルタイムＯＳのシステムタイマの割込み周期を長く設定して、ＣＰＵを低電力モードに移行させることで、通常時のハードリアルタイム性を確保しつつ、省エネをより効果的に行うことができるようになる。
【００６２】
つまり、省エネモードで機器の動作を制約するとき、ＣＰＵも低電力モードに移行するが、リアルタイムＯＳで使用するシステムタイマの周期が短時間の場合、システムタイマの割込みにより、短時間で低電力モードがキャンセルされる（ＣＰＵが起床される）ことになって省電力化を図れなくなる。そこで、省エネモードで機器の動作を制約するときにＣＰＵも低電力モードに移行させ、ＣＰＵを起床させるシステムタイマの割込み周期をシステム設定上問題ない長時間に設定し直すことによって、ＣＰＵの起床までの時間が長くなり、より省電力化を図ることができる。
【００６３】
この場合、上述したようにＣＰＵを低電力モードに移行したときのシステムタイマの割り込み周期を次に起動するタスクの起動時間に設定することで、省エネモード時の省電力化とともに、精度の高いリアルタイム性を得ることができる。
【００６４】
次に、このシステムで使用するすべての割り込みの割り込みルーチンについて図８のフロー図を参照して説明する。
前述したように、割り込みにより待機状態のタスクは実行準備状態に遷移する。なお、この割り込み処理の開始に当たって、割り込み発生後リアルタイムＯＳにてタスク状態の遷移以外の管理プログラムを追加している場合、この時点で終了しているものとする。
【００６５】
Ｓ３１にて通常の割り込み処理を行う。その結果、実行準備タスクが発生した場合、Ｓ３２の判定で本発明に係る処理を行う。つまり、Ｓ３３でシステムタイマの周期が省エネモード状態の長い周期（省エネ時周期）か通常周期かの判定を行って、省エネ時周期であれば、Ｓ３４にてシステムタイマの周期を通常の周期に戻す。その後、Ｓ３５にて次のシステムタイマの割り込みでシステム時間の誤差が発生しないように補正を行う。
【００６６】
ここで、システム時間の補正について説明すると、システム時間はＲＴＣ（リアルタイムクロック）がないシステムの場合には、時計の代わりに使用する場合もあり、誤差が発生するとシステム上不具合が発生する場合がある。そこで、システム時間の誤差補正を行う。この補正は、次の（１）、（２）のようにして行うことができる。
【００６７】
（１）既存のタイマロジックを使用する場合
まず。一般的なタイマとして用いられるコンペアマッチタイマのポート図を図９に示している。
コンペアマッチカウンタ７０１は、クロックの入力回数分カウンタを加算する。この値がコンペアマッチコンスタントカウンタ７０２の値と一致するとゼロにクリアされ、コンペアマッチフラグ７０３が「１」に遷移します。一致した時点で、コンペアマッチ割り込み許可設定７０４が「１」の場合、割り込みが発生する。スタートレジスタ７０５に「１」を設定すると、コンペアマッチカウンタ７０１の加算を開始する。コンペアマッチコンスタントカウンタ７０２の値をシステムタイマの割り込み周期に設定すると、リアルタイムＯＳで使用するタイマとして使用することできる。
【００６８】
そこで、タスクスケジューラ中の省エネ周期をシステムタイマに設定する処理について図１０に示すフロー図を参照して説明する。
Ｓ４１にてコンペアマッチカウンタ７０１から現在の値を取り出す。たとえば、通常周期が１ｍｓｅｃの場合、１ｍｓｅｃ以内の経過時間がカウンタ値として取り出せる。Ｓ４２でスタートレジスタ７０５に「０」をセットしタイマを停止する。そして、Ｓ４３にてコンペアマッチコンスタントカウンタ７０２を省エネ時のシステムタイマのカウンタ値（に設定し直す（省エネ周期に変更する）。次いで、Ｓ４４でコンペアマッチカウンタ７０１を再設定して、Ｓ４５でスタートレジスタ７０５を「１」にしてタイマを再スタートする（カウンタスタート）。このとき、コンペアマッチカウンタ７０１の値は、新しい周期でも引き継がれるので、割り込みは通常周期の倍数のタイミングで発生する。このとき、タイマ設定時の処理誤差（処理に要する時間分の誤差）は発生するものの、最小で抑えることができる。
【００６９】
次に、各割り込みルーチン内の省エネ周期から通常周期に復帰する部分の処理について図１１に示すフロー図を参照して説明する。
まず、Ｓ５１にて現在のコンペアマッチカウンタ７０１の値を取り出す。そして、Ｓ５２にてスタートレジスタ７０５を「０」に設定して、カウンタを停止する。Ｓ５３にてコンペアマッチカウンタ７０１から取り出した値を、通常周期の場合にコンペアマッチコンスタントカウンタ７０２に設定する値で割った商をシステム時間に加算する。この値は、通常タイマの場合に割り込むはずであった割り込み回数である。
【００７０】
次いで、Ｓ５４でコンペアマッチコンスタントカウンタ７０２を通常周期に設定し直す（変更する。）。その後、Ｓ５５でコンペアマッチカウンタ７０１から取り出した値を、通常周期の場合にコンペアマッチコンスタントカウンタ７０２に設定する値で割った余りをコンペアマッチカウンタ７０１に設定し直す（再設定する）。この値は、通常周期での割り込みまでの経過時間をカウンタ値として表した値である。そして、Ｓ５６でスタートレジスタ７０５を「１」にしてシステムタイマの再スタートを行う。
【００７１】
この場合、図１０で説明したと同様に、割り込み間隔の誤差が補正値としてコンペアマッチタイマに反映されるので、システムタイマの周期間隔は守られ、システム時間の誤差を最小に抑えることができる。
【００７２】
（２）専用のタイマロジックを使用する場合
まず、システムタイマ用の専用タイマロジックのタイマポート図を図１２に示している。
コンペアマッチカウンタ７０１、コンペアマッチコンスタントレジスタ７０２、コンペアマッチフラグ７０３、コンペアマッチ割込み許可７０４、スタートレジスタ７０５は、前述したと同様である。これらに加えて、コンペアマッチカウンタ７０１がコンペアマッチコンスタントカウンタ７０２と一致した回数をカウントする割込みコンペアマッチカウンタ７０６、割込みコンペアマッチコンスタントカウンタ７０７、割込みコンペアマッチフラグ７０８を有している。
【００７３】
このロジックでは、コンペアマッチカウンタ７０１とコンペアマッチコンスタントカウンタ７０２とが一致しただけでは割り込みは発生せず、割り込みコンペアマッチカウンタ７０６が、割込みコンペアマッチコンスタントカウンタ７０７と一致した場合、割込みが発生するようにしている。割込みコンペアマッチフラグ７０８は、割込みコンペアマッチカウンタ７０６と割込みコンペアマッチコンスタントレジスタ７０７が一致した場合、「１」に遷移する。
【００７４】
そこで、タスクスケジューラ中の省エネ周期をシステムタイマに設定する処理について図１３に示すフロー図を参照して説明する。
前提条件として、コンペアマッチコンスタントカウンタ７０２には通常周期、割込みコンペアマッチコンスタントカウンタ７０７には「１」が設定されているものとする。
そして、Ｓ６１にて省エネ周期の割込みコンペアマッチコンスタント値をセットする。この値は「１」より大きな値であり（１の場合はなにもしない）、割込み禁止としておけばタイマをとめなくても、十分に設定は可能である。このように、タイマを停止しないため、設定誤差が発生しなくなる。
【００７５】
次に、各割り込みルーチン内の省エネ周期から通常周期に復帰する部分の処理について図１４に示すフロー図を参照して説明する。
Ｓ７１にて割込みコンペアマッチカウンタ７０６の値を取り出し、システム時間に加算する。この値は、省エネ周期で割込みとして発生しなかったカウント数である。Ｓ７２、Ｓ７２で割込みコンペアマッチカウンタ７０６に「０」、割込みコンペアマッチコンスタントカウンタ７０７に「１」を設定することにより、通常周期に戻す。このように、タイマを停止させないため、設定誤差は発生しない。
【００７６】
このように、システムタイマの誤差を補正する手段を有することで、システム時間の保証を行うことができる。
【００７７】
なお、上記実施形態においては、本発明に係る機器の制御装置を画像形成装置の制御装置に適用した例で説明しているが、これに限るものではない。また、本発明に係る画像形成装置もインクジェット記録装置に限るものではなく、電子写真方式の画像形成装置であってもよく、また、液体吐出方式の画像形成装置としてもインク以外の液体（記録液）、例えばレジスト、医療分野におけるＤＮＡ試料などを吐出させる画像形成装置などにも適用することができる。また、上記実施形態で説明した処理をコンピュータに行わせるプログラムは、記憶媒体に格納することができ、またホスト側の情報処理装置にダウンロードして機器にインストールする構成とすることもできる。
【図面の簡単な説明】
【００７８】
【図１】本発明に係る画像形成装置の機構部の全体構成を説明する側面概略構成図である。
【図２】同機構部の要部平面説明図である。
【図３】同装置の制御部を説明する概略ブロック説明図である。
【図４】同画像形成装置に適用した本発明の実施形態の説明に供する要部機能ブロック説明図である。
【図５】一般的なリアルタイムＯＳのタスクの状態遷移の説明に供する説明図である。
【図６】通常のシステムタイマの割り込み処理の説明に供するフロー図である。
【図７】本発明におけるリアルタイムＯＳ内のタスクスケジューリングを行うプログラムによる処理の説明に供するフロー図である。
【図８】同実施形態のシステムで使用するすべての割り込みの割り込みルーチンの説明に供するフロー図である。
【図９】システム時間補正の第１例の説明に供する一般的なタイマとして用いられるコンペアマッチタイマのポート図である。
【図１０】同例におけるタスクスケジューラ中の省エネ周期をシステムタイマに設定する処理の説明に供するフロー図である。
【図１１】同じく各割り込みルーチン内の省エネ周期から通常周期に復帰する部分の処理の説明に供するフロー図である。
【図１２】システム時間補正の第２例の説明に供するシステムタイマ用の専用タイマロジックのタイマポート図である。
【図１３】同例におけるタスクスケジューラ中の省エネ周期をシステムタイマに設定する処理の説明に供するフロー図である。
【図１４】同じく各割り込みルーチン内の省エネ周期から通常周期に復帰する部分の処理の説明に供するフロー図である。
【符号の説明】
【００７９】
３３…キャリッジ
３４、３４ａ、３４ｂ…記録ヘッド（液体吐出ヘッド）
５０１…ＣＰＵ
５０２…ＲＯＭ
６００…リアルタイムＯＳ６００
【図１】
2009220459.tif 000003
【図２】
2009220459.tif 000004
【図３】
2009220459.tif 000005
【図４】
2009220459.tif 000006
【図５】
2009220459.tif 000007
【図６】
2009220459.tif 000008
【図７】
2009220459.tif 000009
【図８】
2009220459.tif 000010
【図９】
2009220459.tif 000011
【図１０】
2009220459.tif 000012
【図１１】
2009220459.tif 000013
【図１２】
2009220459.tif 000014
【図１３】
2009220459.tif 000015
【図１４】
2009220459.tif 000016