(57)【要約】      （修正有）【課題】モーターの停止制御における停止判定を様々な状況に対して可変させられるようにし効率的なタスク間の排他制御を行い、トータルの記録時間を短縮することのできる記録装置を提供する。【解決手段】上位装置から送られたデータに基づいて、記録ヘッドを用いて記録を行う記録装置であって、記録ヘッドを搭載したキャリッジを走査・駆動する手段と、前記データを解析する解析手段を備え、データの解析結果に基づいて、次の走査開始位置と走査終了位置を算出し、その算出した位置に基づいて前記駆動手段の停止条件を求め、その停止条件に基づいて停止処理を行う。【選択図】      図３
2004209763.tif 000002
【特許請求の範囲】
【請求項１】
上位装置から送られたデータに基づいて、記録ヘッドを用いて記録を行う記録装置であって、
記録ヘッドを搭載したキャリッジを走査させる走査手段と、
前記走査手段を駆動する駆動手段と、
前記データを解析する解析手段と、
前記解析手段が解析した結果に基づいて、走査開始位置と走査終了位置を算出する手段と、
前記算出した位置に基づいて前記駆動手段の停止条件を求め、前記停止条件に基づいて停止処理を行う制御手段と
を備えることを特徴とする記録装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記録装置し、より詳細には記録動作におけるモータの制御に関する。
【０００２】
【従来の技術】
一般に、プリンタなどのファームウェアではリアルタイムＯＳを用いてシステム制御部、ＣＲモーター制御部、ＬＦモーター制御部それぞれに対してタスクが介在しそれら資源を排他制御することで印刷の処理を行っているシステムが多い。そういったシステムの中において、ＤＣモーターやパルスモーター等のモーター制御は、多種多様な全てのシーケンスで、目標位置、目標ステップ数を設定しモーターを駆動させ、モーターの特性でもあるダンピング等の振動がなくなり正しい位置へ完全に停止するまで資源を開放しないようにさせている。
【０００３】
【発明が解決しようとする課題】
しかし、実際のシーケンスの中には正しい位置に完全に停止しなくても制御上問題ないケースが多々ある。
【０００４】
例えば、あるタスク（タスク１）がＣＲモーターを駆動して印字する場合、別のタスク（タスク２）が印字中に別の命令によりＣＲ制御を禁止した排他制御をおこなっているシステム構成で、タスク１がＣＲモーター資源を獲得してからモーターを駆動し目標位置まで移動させている間に、印刷の停止命令を受けたタスク２がＣＲをホームポジションに移動させようとした場合でも、タスク１のＣＲモーター制御の中で、ＣＲモーターの停止制御における停止判定を満たすまではＣＲモーター資源を解放しないために、タスク２はタスク１がＣＲを完全に停止してＣＲモーター資源を解放してからＣＲをホームポジションへ移動させるようになる。しかし、実際には印刷停止命令であるために、タスク１は速やかにＣＲの停止判定を終えて資源を解放し、タスク２に資源を与えてあげることが望ましい。
【０００５】
図７は２スキャンの印字データの左右端情報が異なった場合の従来の印字制御を示している。詳細を説明すると横軸に移動距離、縦軸に速度をとって往復印字させたときのＣＲ移動中の処理内容を示している。また、分かりやすくするためにも減速距離と加速距離を同一にしている。
【０００６】
そして、図９はこの処理に対して、横軸を時間にして２スキャンの印字で行われる処理内容を時系列で表している。
【０００７】
図７、９から、これまでの処理においてはＳｃａｎ＿２の印字データ右端位置がＳｃａｎ＿１のＣＲモーター停止目標位置に対して余裕があるためにＳｃａｎ＿１の停止位置はある程度、誤差があってもＳｃａｎ＿２の印字に影響を与えるようなことはないにも関わらず、停止判定条件を一律にしていたため、Ｓｃａｎ＿１の停止制御では通常の停止判定条件を満たすまで（停止判定制御を行って完全に目標位置にＣＲが完全に停止するまで）はＳｃａｎ＿２の印字処理に移行することができなかった。
【０００８】
本発明は、以上のような状況を鑑みてなされたものであり、モーターの停止制御における停止判定を様々な状況に対して可変させられるようにし効率的なタスク間の排他制御を行い、トータルの記録時間を短縮することのできる記録装置を提供することを目的としている。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本発明の記録装置は、上位装置から送られたデータに基づいて、記録ヘッドを用いて記録を行う記録装置であって、記録ヘッドを搭載したキャリッジを走査させる走査手段と、前記走査手段を駆動する駆動手段と、前記データを解析する解析手段と、前記解析手段が解析した結果に基づいて、走査開始位置と走査終了位置を算出する手段と、前記算出した位置に基づいて前記駆動手段の停止条件を求め、前記停止条件に基づいて停止処理を行う制御手段とを備える。
【００１０】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照しながら説明する。
【００１１】
図１は、本発明の実施形態に関わる印刷装置を適用した印刷システムを示す図であり、プリンタＰとパーソナルコンピュータＰＣとが双方向に通信が可能な所定のインタフェースを介して接続されている。
【００１２】
図２は、本発明の実施形態に関わる印刷装置のシステム構成を表す図である。
【００１３】
ホストインタフェース部（２−１）は、データ処理装置（以下ホスト）とインタフェースケーブルを介して接続され、主にホストからの印字データコマンド受信処理とホストからの印刷停止命令受信処理とインタフェースケーブルの接続状態監視処理を行っている。ホストインタフェース部（２−１）はホストから印刷データコマンドを受信するとデータ展開処理部（２−３）に渡す役割と、ホストからの印刷停止命令をシステム制御部（２−４）に通知する役割と、インタフェースケーブルの接続が途絶えた時にシステム制御部（２−４）に通知する役割を果たしている。
【００１４】
パネルインタフェース部（２−２）は、使用者が印刷を停止したい場合にパネルオペレーションを検出する役割と使用者が印字ヘッドを交換したい場合におけるカバーの開閉の検出をする役割と検出した情報をシステム制御部（２−４）に通知する役割を果たしている。
【００１５】
データ展開処理部（２−３）は、ホストインタフェース部（２−１）から通知された印刷データコマンドを解析し搭載している印字ヘッドの構成に合った形へプリントバッファにデータ展開処理を行う役割とプリントバッファに１スキャン分のデータを展開し終えたらシステム制御部（２−４）に通知する役割を果たしている。
【００１６】
モーター制御部（２−５）は、ＣＲ、ＬＦ、ＰＧ、ＡＳＦそれぞれのモーター制御から構成されている。ＣＲモーター部（２−５−１）は印字ヘッドを搭載できるＣＲユニットと連携し、ＣＲモーターを制御することで印字制御を実現する役割を果たしていて、ＬＦモーター部（２−５−２）はＬＦモーターを制御することで記録用紙を搬送する役割を果たしていて、ＰＧモーター部（２−５−３）はＰＧモーターを制御することで印字ヘッドのメンテナンス処理を行う役割を果たしていて、ＡＳＦモーター部（２−５−４）はＡＳＦモーターを制御することで記録用紙のピックアップを自動的に行う役割を果たしている。
【００１７】
システム制御部（２−４）はデータ展開処理部（２−３）、ホストインタフェース部（２−１）、パネルインタフェース部（２−２）から指令を受け、その指令に従って必要な前記モーター制御部（２−５）の資源を獲得し指令ごとに行われる処理同士が正しく動作するように排他制御している。また、印字処理でＣＲの開始位置、停止位置の算出処理により、ＣＲの停止判定を決定する処理も行われる。
【００１８】
図３は本発明の実施例をフローチャートに表したもので、ホストからホストインタフェース部（２−１）が印字データコマンドを受信してデータ展開処理部（２−３）でプリントバッファへ印字ヘッドに合った印字データに展開してから１スキャン印字するまでのシステム処理部（２−４）の処理フローである。
【００１９】
まず、プリントバッファに１スキャン分印字データの展開が終了したかどうかを判断し、展開が終了しない場合は終了するまで待つ（３−１でＮｏを選択）。展開が終了した場合（３−１でＹｅｓを選択）現在の印字モードに対応したＤＣモーターおよびパルスモーター制御で使用するテーブル（図５）をもとに加減速距離を求めＣＲモーターの制御に必要な印字左右端情報をとして、ＣＲモーター起動開始位置とＣＲモーター停止目標位置（Ｐ１、Ｐ２）を算出する（３−２）。また、次の次のスキャンにおける印字データに対して展開が終わり左右端情報が確定しているかを判断し（３−３）、分かっていた場合（３−３でＹｅｓを選択）現在の印字方向指定が双方向指定なのかを判断し（３−４）、印字方向が双方向の場合（３−４でＹｅｓを選択）前述同様（３−２）にＣＲモーター起動開始位置Ｐ３を算出する（３−５）。
【００２０】
求めた次のＣＲモーター停止目標位置Ｐ２と次の次のスキャンにおけるＣＲモーター起動開始位置Ｐ３を現在のＣＲの位置を基準にして比較する（３−６）。その結果、次の次のＣＲモーター起動開始位置Ｐ３に比べて次のＣＲモーター停止位置Ｐ２の方が遠いと判断した場合（３−６でＹｅｓを選択）、Ｐ２とＰ３の距離ｄ１を求める（３−７）。ＣＲの停止目標位置ＰをＰ２とし、求めたｄ１の距離をもとに停止判定テーブル（図６）から停止誤差距離Ｄｊを求める（３−８）。
【００２１】
また、（３−３）で次の次のスキャン（次々回のスキャン）における左右端情報が分からないと判断した場合（３−３でＮｏを選択）、ＣＲの目標位置ＰをＰ２に設定し（３−９）停止誤差距離Ｄｊを停止判定テーブルからＤｉｓ＿４（最も停止判定時間が長い）に設定する（３−１０）。停止位置がわからないので、最も厳しい停止精度を確保するためである。
【００２２】
また、（３−４）で印字方向指定が双方向指定でないと判断した場合（３−４でＮｏを選択）ＣＲの停止目標位置ＰをＰ２とし、停止判定誤差距離Ｄｊを停止判定テーブルからＤｉｓ＿０（最も停止判定時間が短い）に設定する（３−１２）。厳しい停止精度は不要であるからである。
【００２３】
また、（３−６）で次のＣＲモーター停止目標位置Ｐ２と次の次のスキャンにおけるＣＲモーター起動開始位置Ｐ３を比較した結果、Ｐ２の方が近いと判断した場合（３−６でＮｏを選択）ＣＲの停止目標位置をＰ３に設定し（３−１１）、次の次のスキャンで正しく定速印字をさせるために停止誤差距離Ｄｊを停止判定テーブルからＤｉｓ＿０に設定する（３−１０）。
【００２４】
ＣＲの停止目標位置Ｐと停止判定誤差Ｄｊを求めたら、他の処理と排他制御を行うためにＣＲモータ資源を獲得できるまで待つ（３−１３でＮｏを選択）。獲得ができた場合（３−１３でＹｅｓを選択）前述のＣＲモーター目標停止位置Ｐと停止誤差距離ＤｊをもとにＣＲモーターの割り込み処理を起動する（３−１４）。
【００２５】
割り込みを起動したら、割り込み処理がＣＲモーターを停止したと通知を受けるまで待ち（３−１５でＮｏを選択）、割り込み処理からＣＲモーターを停止が完了したと通知を受けた場合（３−１５でＹｅｓを選択）前記排他制御用のＣＲモーター資源を解放し（３−１６）、再度次の１スキャン分のデータ展開処理待ちを行う（３−１）。
【００２６】
以上のように、システム制御部（２−４）は、データ展開処理部（２−３）で１スキャン分印字データがプリントバッファに展開が終了してから印字に至るまで上記処理を繰り返す。
【００２７】
図４では、システム制御部から上記ＣＲモーターの割り込み処理を起動した場合の、ＣＲモーター制御部（２−５−１）における割込み処理フローを表している。ＣＲモーター割り込み処理が起動されると設定された目標位置に対して、現在の印字モードによるＣＲテーブルをもとにＤＣモータの制御で公知のサーボ制御を使って行う（４−１）。ＣＲユニットが停止判定基準Ｄｊを満たすまではサーボ制御を行い（４−２でＮｏを選択）、上記の停止判定基準Ｄｊを満たした場合（４−２でＹｅｓを選択）、システム制御部（２−４）に対してＣＲモーターの停止完了通知を行う（４−３）。
【００２８】
以上のように、ＤＣモーター制御部（２−５−１）ではシステム制御部（２−４）がＣＲモーター目標停止位置を指定し割込み処理を起動してから、同じくシステム制御部で求めた停止判定基準を満たすまでＤＣモーターのサーボ制御を行う。
【００２９】
図８は、上記実施例同様、印字左右端情報によって、停止判定を可変させる制御を図示した。同図は横軸をＣＲの移動距離、縦軸をＣＲの速度としＳｃａｎ＿１はＳｃａｎ＿２に比べて印字範囲が長い場合の印字制御を表している。また、同図はＳｃａｎ＿１の減速領域では、Ｓｃａｎ＿１のＣＲ停止目標位置に対してＳｃａｎ＿２のＣＲ起動開始位置までの距離が十分にあると判断できるために、Ｓｃａｎ＿１の減速制御における停止誤差のばらつきを±Ａと緩く設定してＣＲを停止させる制御を表している。
【００３０】
図１０は図８の条件で、横軸を時間、縦軸を速度とし従来の制御で行われていた停止制御を省けた形になり、図９における停止判定時間分、早くＳｃａｎ＿２の印字処理に移行できることが可能になったことを表している。
【００３１】
図８、１０からも分かるように、これまで図９のように全てのＣＲの停止制御において一律に同じ停止判定時間Ｔｊかかっていたのに比べて、停止判定時間を可変にすることで、このＴｊ時間について短縮できるようになった。
【００３２】
図６は、停止条件を示すもので、停止判定の誤差の幅を示し、α１＞α２＞α３＞α４＞α５となっている。停止条件が最も緩やか（誤差範囲が最も広い）であるのがＬＥＶＥＬ０（レベル０）であり、停止条件が最も厳しい（誤差範囲が最も狭い）のがＬＥＶＥＬ４（レベル４）である。このレベルが厳しいほど、停止のための管理を厳しくする。
【００３３】
例えば、１スキャン目の印字終了位置が２スキャン目の印字開始位置よりα３だけ長い場合（α３以上α４未満）は、判定レベルＬｅｖｅｌ２が求まる。この判定レベルより停止処理を距離で制御する場合には、距離Ｄｉｓ＿２が求まる。あるいは、停止処理を時間で制御する場合には、時間Ｔ＿２が求められる。
【００３４】
このように、次回の走査、次々回の走査のＣＲ起動開始位置（あるいは印字開始位置）、ＣＲ停止位置（印字終了位置）、ＣＲ（キャリッジ）の動作モード（例えば、印字モード）に応じた停止処理の管理を行うことができる。
【００３５】
以上のように、本発明の実施態様の例を以下に列挙する。
【００３６】
［実施態様１］
上位装置から送られたデータに基づいて、記録ヘッドを用いて記録を行う記録装置であって、記録ヘッドを搭載したキャリッジを走査させる走査手段と、前記走査手段を駆動する駆動手段と、前記データを解析する解析手段と、前記解析手段が解析した結果に基づいて、走査開始位置と走査終了位置を算出する手段と、前記算出した位置に基づいて前記駆動手段の停止条件を求め、前記停止条件に基づいて停止処理を行う制御手段とを備えることを特徴とする記録装置。
【００３７】
【発明の効果】
本発明により、停止精度が求められない条件において、停止精度の条件を緩やかにすることで、停止制御時間を短縮でき、スループット向上を図ることがきる。
【図面の簡単な説明】
【図１】本発明の実施形態を示す印刷システムの図である。
【図２】本発明の実施形態を示す印刷装置のシステムブロック図である。
【図３】本発明の実施例を表す、システム制御部における処理フローである。
【図４】本発明の実施例を表す、ＣＲモーター制御部の割込み処理フローである。
【図５】本発明の実施例を表す、各種モーターのテーブルであり、印字モードに対するモーターの制御情報が格納されている。
【図６】本発明の実施例を表す、各種モーターの停止判定テーブルで判定レベルに対する停止判定基準を表している。
【図７】従来の技術を表す、印字データ位置により停止判定が変わらない場合を図示したものである。
【図８】本発明の実施例を表す、印字データ位置により停止判定領域が可変するのを図示したものである。
【図９】従来の技術を表す、図７で時間軸を使って図示したものである。
【図１０】本発明の実施例を表す、図８で時間軸を使って図示したものである。
【図１】
2004209763.tif 000003
【図２】
2004209763.tif 000004
【図３】
2004209763.tif 000005
【図４】
2004209763.tif 000006
【図５】
2004209763.tif 000007
【図６】
2004209763.tif 000008
【図７】
2004209763.tif 000009
【図８】
2004209763.tif 000010
【図９】
2004209763.tif 000011
【図１０】
2004209763.tif 000012