(57)【特許請求の範囲】
【請求項１】
駆動機構を制御するための複数の制御データを生成して、メモリに記憶する制御データ生成手段と、
計時データを受信したときに時間計測動作を開始し、受信した計時データにより指定された時間が経過したときにタイムアップ信号を出力する計時手段と、
前記制御データ生成手段に起動されて、前記制御データ中の前記計時データを前記計時手段に転送し、その後当該計時手段から出力される前記タイムアップ信号に同期して前記メモリから前記各種制御データを駆動機構及び前記計時手段に順次転送するダイレクトメモリアクセス手段と、
前記転送された複数の制御データを順次受信し、当該受信した制御データに基づいて駆動機構の動作を制御する駆動機構制御手段と、
前記駆動機構の動作部が第１の基準位置に到達したときに位置検出信号を出力する位置検出手段と、
所定のデータが設定されるレジスタの記憶内容と第２の基準位置で初期設定され前記タイムアップ信号を受信する度にカウントアップされるカウンタのカウンタ値が一致するか確認する比較器により、駆動機構の動作部の理論上の動作位置を割り出す駆動確認手段と、
を備え、
前記駆動確認手段は、前記理論上の動作位置と前記位置検出信号に基づく実際の動作位置とを比較することにより、前記駆動機構が前記制御データに基づき正常に動作しているか否かを確認する駆動機構制御装置。
【請求項２】
前記位置検出手段は、前記駆動機構の動作部が前記第１の基準位置に到達したときに前記位置検出信号を出力するセンサからなり、
前記駆動確認手段は前記レジスタを２個備え、第１のレジスタは前記第２の基準位置からから前記第１の基準位置までの理論上の駆動量の下限値を記憶し、第２のレジスタは前記第２の基準位置から前記第１の基準位置まで理論上の駆動量の上限値を記憶するレジスタからなり、
前記比較器は、前記第１のレジスタの記憶値及び前記第２のレジスタの記憶値と、前記カウンタ値とを夫々比較する比較器からなり、
前記駆動確認手段は、前記位置検出手段からの前記位置検出信号が前記理論上の下限値と前記理論上の上限値の間で検出されたときに正常に動作しているものと判定し、前記理論上の下限値以下または前記理論上の上限値以上のカウント値で前記検出信号を検出したときは動作異常信号を出力することを特徴とする請求項１に記載の駆動機構制御装置。
【請求項３】
前記第１の基準位置は、印字禁止領域に設けられており、前記駆動確認手段は、駆動動作時に位置検出信号を受信したときには動作異常信号を出力することを特徴とする請求項２に記載の駆動機構制御装置。
【請求項４】
前記制御データ生成手段は、所定のタイミングで、前記駆動機構の動作部を前記第１の基準位置まで移動させる駆動確認動作のための制御データを生成してメモリに記憶し、前記駆動確認手段は、前記理論上の位置と位置検出信号による実際の動作位置とを比較することにより、駆動機構が前記制御データに基づき正常に動作しているか否かを確認することを特徴とする請求項３に記載の駆動機構制御装置。
【請求項５】
前記動作異常信号は、中央処理装置（ＣＰＵ）への割込信号からなり、前記ＣＰＵは前記割込信号に基づき所定のエラー対応処理を実行することを特徴とする請求項４に記載の駆動機構制御装置。
【請求項６】
前記動作異常信号はさらに、駆動機構の動作を停止させる駆動停止信号からなることを特徴とする請求項５に記載の駆動機構制御装置。
【請求項７】
前記駆動機構はステップモータによる駆動機構からなり、前記制御信号は前記ステップモータの位相変更の切換えタイミングを起動するための計時信号と、前記切換タイミング毎の位相パターンと、前記切換タイミング毎の供給電流値からなることを特徴とする請求項１〜６のいずれか１項に記載の駆動機構制御装置。
【請求項８】
前記駆動機構はステップモータにより駆動されるキャリッジからなることを特徴とする請求項７に記載の駆動機構制御装置。
【請求項９】
前記駆動機構は、インクジェットからなる印字ヘッドのキャリッジ駆動機構からなり、前記駆動確認手段は、所定のタイミングで行われる前記印字ヘッドのダミーのインク噴出動作のためのキャリッジ駆動動作の際に、駆動機構が前記制御データに基づき正常に動作しているか否かを確認することを特徴とする請求項８に記載の駆動機構制御装置。
【請求項１０】
以下の工程を備えることを特徴とする駆動機構の制御方法。
（ａ）連続する所定のタイミング毎にダイレクトメモリアクセス制御によりメモリに記憶している所定の制御データを駆動機構に順次転送し、当該制御データに基づき駆動機構を連続して駆動する工程と、
（ｂ）転送される前記制御データに基づいて、前記制御データの転送回数をカウントし、所定のデータが設定されるレジスタの記憶内容と一致するか確認することで駆動機構の駆動量を算出する工程と、
（ｃ）前記算出した駆動量から算出される理論上の動作位置と、駆動機構の動作部が所定の位置に達したときに出力される位置検出信号により認識される現実の動作位置とを比較する工程と、
（ｄ）前記理論上の動作位置と前記現実の動作位置との差が所定の範囲外のときに中央処理装置に割り込み信号を出力する工程。
【請求項１１】
前記工程（ｄ）は、さらに前記理論上の動作位置と前記現実の動作位置が前記所定の範囲外のときに駆動機構の動作を停止させる停止信号をさらに出力する工程とを含むことを特徴とする請求項１０の駆動機構の制御方法。
【請求項１２】
前記駆動機構がモータにより駆動されるキャリッジ駆動機構からなり、前記制御データがモータの位相パターンの切換タイミングを制御する切換タイミン制御データと、各切換タイミング毎の位相パターンデータと、各切換タイミング毎に供給する電流制御データとからなり、前記工程（ｂ）において前記切換タイミング制御データの転送回数をカウントすることにより駆動量を算出することを特徴とする請求項１０〜１１のいずれか1項に記載の駆動機構の制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、正確な動作が要求されるモータの駆動制御装置に関し、特にダイレクトメモリアクセス（Direct memory Access ：以下ＤＭＡと称する）装置を用いて駆動機構の一連の駆動動作を制御する駆動機構制御装置及びその駆動方法に関する。
【０００２】
【従来の技術】
最近の電子機器の駆動機構は、極めて高速かつ精確な動作が要求される。そのため、例えばプリンタにおいては、印字用紙の駆動又はキャリッジの駆動等にステップモータが採用され、精確な動作制御が行われている。
【０００３】
駆動機構の制御には、専用ハードウェアによる制御方式又は外部から制御データを送信して制御する２種類の方式がある。しかし、最近の電子機器では、開発期間の短縮化が可能でありかつ制御動作の変更へも柔軟に対応でき、さらに開発及び製造コストを低く抑えることが可能である等の理由で、外部から制御データを送信し、そのデータに基づいて駆動機構を制御する制御方式が多く用いられている。
【０００４】
外部から制御データを送信して制御する方式として、ステップモータ（以下モータと称する）の駆動制御を用いて説明する。モータを駆動するためには、モータの回転速度、加速及び減速等に応じてモータに供給する位相パターンを順次切り替えるとともに、加減速の状況に対応して供給する電流の大きさも順次変化させなければならない。このような位相パターンの切換及び電流値の制御は、例えば、位相切換えのタイミングの度に、中央処理装置（Central Processing Unit ：以下ＣＰＵという）により位相パターンデータ及び電流制御データ（これらを制御データと称する）をメモリから読み出して、モータ制御部に送信することにより行われ、これにより精確な駆動動作を実現している。
【０００５】
上述のようＣＰＵにより制御データを送信して駆動機構を制御する方式においては、位相切り替えタイミングの度にＣＰＵの割り込み処理が必要でありＣＰＵの負荷が大きくなる。そのため、ＣＰＵの処理能力が十分でない場合には割込処理時間にばらつき生じて、高速かつ高精度の駆動が困難となる場合がある。
【０００６】
本願発明の発明者等は、このようなＣＰＵによる割込処理のばらつきによる駆動制御の不安定要素を取り除き、高精度のモータ駆動を可能にするために、ＤＭＡにより駆動機構の一連の駆動動作を制御するという制御方式を開発した。この新しい制御方式によると、切り替えタイミングの管理、及び各位相切り替えタイミング毎の位相パターンデータ、電流値などの各種制御データの転送をＤＭＡのみで制御するものである。これにより、ＣＰＵの介在に伴なう上述の問題を解決することができた。
【０００７】
【発明が解決しようとする課題】
上述のように、精確な駆動を要求される駆動機構では、制御データに基づいて緻密な駆動制御が行われる。しかし、何らかの原因により、実際の動作が制御データ通りに駆動できない場合が発生することもある。
【０００８】
例えば、印字ヘッドのキャリッジ駆動機構において、何らかの原因（ペーパージャム等）によりキャリッジの進路が妨げられて、キャリッジの動きが阻止されたとする。このような状況下で、モータに電流を負荷してもキャリッジが動くことができずモータは回転できない状況になることがある。このような状態が発生した場合、制御部が制御データに基づいて計算上認識しているキャリッジの位置（キャリッジの本来あるべき位置：理論上の動作位置）と、実際にキャリッジが存在している位置（現実の動作位置）とが異なり、キャリッジの精確な駆動制御を行うことができない。
【０００９】
そのため、プリントヘッドのキャリッジ等の駆動機構においては、センサ等により実際の位置を検出することにより、キャリッジが正しく駆動されているかどうかを確認している。このような位置確認動作は、ＣＰＵ制御の下で、定期的（例えば６秒間に一回の割合）に所定のホームポジション間でキャリッジを移動させて、キャリッジの検出を行うことにより行われる。
【００１０】
この場合も、ＣＰＵが制御データを送信することによりモータを駆動することによりキャリッジをホームポジション方向に移動させる。その場合に、制御データに基づいて計算したキャリッジの位置と実際にキャリッジがホームポジションで検出された位置とのずれから駆動動作の精度を確認する。
【００１１】
図９に、ＣＰＵを用いた従来の駆動確認処理を説明するためのブロック図を示す。ＣＰＵ１は位相切り替えタイミング毎に、メモリ２に記憶されている制御データテーブルからモータ駆動のための制御データを読み出し、モータ駆動制御部７に送信する。モータ駆動制御部７は制御データに基づきモータドライバ８を駆動してモータ９を回転させる。モータ９が回転すると動力伝達機構１１を介してキャリッジ１０が、移動通路内を左右に移動する。ＣＰＵ１は、制御データの送信と同時に送信した制御データからモータ駆動量を算出し、それに基づきキャリッジ１０の理論上の現在位置を把握している。
【００１２】
キャリッジ１０の移動通路には、ホームポジションの位置にフォトセンサのような検出器１２が設けられており、キャリッジ１０がホームポジション位置に到達すると、検出回路１３によりキャリッジの存在を検出する。検出回路１３は、キャリッジ１０がホームポジション位置にあることを検出すると、ＣＰＵ１に対して割り込み信号（ＨＰ検出信号）を送出する。ＣＰＵ１は、割り込み信号を受信した時に、キャリッジ１０の計算上の位置とホームポジションとを比較することにより、キャリッジ１０が正常に駆動されているかどうかを確認し、計算上の位置がホームポジション位置から大きくずれているときには駆動異常と判断して所定のエラー処理を行う。
【００１３】
このような位置確認動作を定期的に繰り返してモータが正常に駆動されていることを確認することにより、精確なモータの駆動制御が可能となる。
【００１４】
しかし、ＤＭＡによるモータ駆動制御では、ＣＰＵを介在させないことにより、高速かつ高精度の駆動を行うものであるため、これらの駆動確認動作もＤＭＡによる駆動制御のみで行えることが望ましい。そこで本発明は、ＣＰＵの介在無しに駆動機構の駆動エラー検出が可能な駆動制御装置及びその制御方法を提供することを目的とする。また、本発明の他の目的は、制御データに基づく理論上の駆動量と、実際に駆動された量とを比較することにより駆動制御が正しく行われているかどうかを確認し、精確な駆動制御を行うことのできる駆動制御装置を提供することである。
【００１５】
【課題を解決するための手段】
本発明者達は、上述の問題点を解決すべく研究を重ね、ＣＰＵとは独立しておりＤＭＡによる制御データの転送に同期して動作可能な駆動確認手段を設けることにより上記課題を解決した。
【００１６】
ＤＭＡによる駆動機構の制御では、位相切り替えのタイミングを制御するタイミングデータと駆動機構の動作を制御する各種制御データをＤＭＡにより計時手段及び制御部に転送し、駆動機構の一連の動作をＤＭＡだけで制御する。そのために、本発明では、ＤＭＡにより転送される制御データから理論上の動作量を算出し、位置検出手段により検出した現実の動作位置と比較してそのずれ量から駆動制御の異常を検出するものである。
【００１７】
本発明の駆動制御装置の第１の態様は、駆動機構の動作の制御に必要な複数の制御データを生成してメモリに記憶する制御データ生成手段と、計時データを受信したときに時間計測動作を開始し受信した計時データにより指定された時間が経過したときにタイムアップ信号を出力する計時手段と、制御データ生成手段に起動されて制御データ中の計時データを計時手段に転送し、その後計時手段から出力されるタイムアップ信号に同期してメモリから各種制御データを駆動機構及び計時手段に順次転送するダイレクトメモリアクセス手段と、転送された複数の制御データを順次受信し、受信した制御データに基づいて駆動機構の動作を制御する駆動機構制御手段と、駆動機構の動作部が所定の動作位置に達したときに位置検出信号を出力する位置検出手段と、所定のデータが設定されるレジスタの記憶内容と第２の基準位置で初期設定され前記タイムアップ信号を受信する度にカウントアップされるカウンタのカウンタ値が一致するか確認する比較器により、駆動機構の動作部の理論上の動作位置を割り出す駆動確認手段と、を備え、前記駆動確認手段は、前記理論上の動作位置と前記位置検出信号に基づく実際の動作位置とを比較することにより、前記駆動機構が前記制御データに基づき正常に動作しているか否かを確認する駆動確認手段とを備えることを特徴とする。
【００１８】
この構成における計時手段は、例えばタイマでよく、計時データは所定の時間を表す時間データでよい。これらの計時データが駆動機構の動作を切り替えるタイミングデータとなる。また、複数の制御データの内容と種類は、制御される駆動機構及び制御の態様によって異なる。例えば後述するステップモータでは、タイミングデータ以外に２種類の制御データを使用するが、駆動機構の制御の態様に合わせて、これ以上多くても少なくてもよい。各種制御データは切換えの回数に合わせて夫々の制御データ毎に複数個用意される。各制御データの転送が終了してから次の制御データの転送への移行は、ＤＭＡによる割込処理を用いても、駆動制御部からＤＭＡへの割込信号を用いてもよい。また、位置検出手段としては、例えば、フォトセンサ、超音波センサ等を使用可能である。理論上の位置を計算する手段は、例えば、制御データに基づく単位駆動量の数を基準となる所定の位置からカウントすることにより、理論上の駆動量が算出できる。
【００２０】
タイムアップ信号を受信したときに転送される制御データによって単位駆動量だけ駆動する制御方式の場合には、タイムアップ信号をカウントすることにより、理論上の駆動量を算出可能である。カウンタの初期設定は、第１の基準位置と第２の基準位置との関係に応じて自由に設定できる。例えば、カウンタを初期設定時にクリアするようにしてもよいし、位置検知手段までの距離に応じて所定のカウント値を設定してもよい。
【００２１】
本発明の駆動制御装置の第３の態様は、位置検出手段が、駆動機構の動作部が第１の基準位置に到達したときに検出信号を出力するセンサからなり、駆動確認手段はレジスタを２個備え、第１のレジスタは第２の基準位置から第１の基準位置までの理論上の駆動量の下限値を記憶し、第２のレジスタは前記第２の基準位置から前記第１の基準位置までの理論上の駆動量の上限値を記憶するレジスタからなり、比較器は、第１のレジスタの記憶値及び第２のレジスタの記憶値と、カウンタ値とを夫々比較する比較器からなり、駆動確認手段が位置置検出手段からの位置検出信号が理論上の下限値と理論上の上限値の間で検出されたときに正常に動作しているものと判定し、理論上の下限値以下または理論上の上限値以上のカウント値で検出信号を検出したときは動作異常信号を出力することを特徴とする。
【００２２】
位置検知手段は、例えば、光源と光センサを組み合せたもの、メカニカルセンサ、超音波発信器と超音波検出器を組み合せたもの等の駆動機構に応じて各種センサを使用可能である。
【００２３】
本発明の駆動制御装置の第４の態様は、第１の基準位置は、印字禁止領域に設けられており、駆動確認手段は、駆動動作時に位置検出信号を受信したときには動作異常信号を出力することを特徴とする。
【００２４】
例えば、キャリッジ駆動機構の場合等のホームポジションを第１の基準位置として定める。
【００２５】
本発明の駆動制御装置の第５の態様は、制御データ生成手段が、所定のタイミングで、駆動機構の動作部を第１の基準位置まで移動させる駆動確認動作のための制御データを生成してメモリに記憶し、駆動確認手段は、理論上の位置と位置検出信号による実際の動作位置とを比較することにより、駆動機構が制御データに基づき正常に動作しているか否かを確認することを特徴とする。
【００２６】
このような駆動制御は、通常、制御プログラムに従ってＣＰＵによりメモリに所定の制御データが設定される。どのような周期でどのように駆動させるかは制御プログラムにより自由に設定可能である。
【００２７】
本発明の駆動制御装置の第６の態様は、動作異常信号が、中央処理装置（ＣＰＵ）への割込信号からなり、ＣＰＵは割込信号に基づき所定のエラー対応処理を実行することを特徴とする。駆動制御異常を発見したときには、ＤＭＡ制御から切り離し、ＣＰＵにコントロールを渡して、ＣＰＵによるエラー制御を可能とするものである。
【００２８】
本発明の駆動制御装置の第７の態様は、動作異常信号がさらに、駆動機構の動作を停止させる駆動停止信号からなることを特徴とする。駆動機構の動作異常はジャム等により発生している可能性が高い。そのような状態を長時間放置すると駆動機構の損傷を招来する恐れもあるため、駆動機構の動作を停止するものである。
【００２９】
本発明の駆動制御装置の第８の態様は、駆動機構がステップモータによる駆動機構からなり、制御信号は前記ステップモータの位相変更の切換えタイミングを起動するための計時信号と、前記切換タイミング毎の位相パターンと、前記切換タイミング毎の供給電流値からなることを特徴とする。
【００３０】
本発明の駆動制御装置の第９の態様は、駆動機構がステップモータにより駆動されるキャリッジからなることを特徴とする。
【００３１】
本発明の駆動制御装置の第１０の態様は、駆動機構がインクジェットからなる印字ヘッドのキャリッジ駆動機構からなり、所定のタイミングで行われる前記印字ヘッドのダミーのインク噴出動作のためのキャリッジ駆動動作の際に、駆動確認手段が前記制御データに基づき駆動機構が正常に動作しているか否かを確認することを特徴とする。インクジェットプリンタのダミーのインク噴出動作の際のキャリッジの動作を利用して駆動状態の確認をするものである。これにより、駆動確認だけのためのキャリッジの動作をする必要がなくなる。
【００３２】
本発明の第１１の態様にかかる駆動機構の制御方法は、（ａ）連続する所定のタイミング毎にダイレクトメモリアクセス制御によりメモリに記憶している所定の制御データを駆動機構に順次転送し、当該制御データに基づき駆動機構を連続して駆動する工程と、（ｂ）転送される前記制御データに基づいて、駆動機構の駆動量を算出する工程と、（ｃ）前記算出した駆動量から算出される理論上の動作位置と、駆動機構の動作部が所定の位置に達したときに出力される位置検出信号により認識される現実の動作位置とを比較する工程と、（ｄ）前記理論上の動作位置と前記現実の動作位置との差が所定の範囲外のときに中央処理装置に割り込み信号を出力する工程とを備えることを特徴とする。
【００３３】
本発明の第１２の態様にかかる駆動機構の制御方法は、駆動機構の駆動量を算出する工程（ｂ）が、工程（ａ）において連続する所定のタイミング毎に転送される制御データの転送回数をカウントする工程からなることを特徴とする。
【００３４】
本発明の第１３の態様にかかる駆動機構の制御方法は、工程（ｄ）がさらに、理論上の動作位置と現実の動作位置が前記所定の範囲外のときに駆動機構の動作を停止させる停止信号を出力する工程とを含むことを特徴とする。
【００３５】
本発明の第１４の態様にかかる駆動機構の制御方法は、駆動機構がモータにより駆動されるキャリッジ駆動機構からなり、制御データがモータの位相パターンの切換タイミングを制御する切換タイミン制御データと、各切換タイミング毎の位相パターンデータと、各切換タイミング毎に供給する電流制御データとからなり、工程（ｂ）において前記切換タイミング制御データの転送回数をカウントすることにより駆動量を算出することを特徴とする。
【００３６】
【発明の実施の形態】
以下、図面を参照しつつ、本発明の実施形態を詳細に説明する。
【００３７】
本発明を理解するためには、駆動機構の制御動作を理解する必要がある。そのため、まずＤＭＡ制御に基づく駆動機構の制御動作について説明する。
【００３８】
図１は、本発明の実施例にかかる駆動機構制御装置の構成の概略を示すブロック図であり、駆動機構としてシリアルプリンタの印字ヘッドを印字ラインに沿って横方向に移動させるキャリッジ駆動機構を示している。キャリッジ駆動機構６はステップモータで駆動され、ステップモータの位相を精確に変化させていくことにより、キャリッジを精確に移動させている。尚、図１では説明をわかりやすくするため、主要な入出力装置である計時手段４と、キャリッジ駆動機構６だけしか示していないが、必要に応じて各種手段が設けられる。
【００３９】
ＣＰＵ１は、中央処理装置であり、メモリ２に記憶されたプログラム（ファームウェア、ＯＳを含む）に従い各種演算、処理及び制御を行う。ＤＭＡ３はダイレクトメモリアクセス制御部であり、ＣＰＵ１の介在なしに各種入出力装置とメモリ２間でのデータの転送を実行する装置である。
【００４０】
メモリ２には、ＣＰＵの動作を制御するファームウェア、ＯＳ（オペレーティングシステム）及び各種プログラム等が記憶されている他、キャリッジ駆動機構６を制御するために必要な各種制御データ等が記憶される。メモリ２からデータを読み出すためのアドレス及び、メモリ２から読み出したデータの転送先は、アドレスライン１９により指定され、読み出されたデータはデータバス２０を介して転送される。
【００４１】
メモリ２から計時手段４にタイミングデータが転送されると、計時手段４は受信したタイミングデータに従って時間を計測し、所定の時間が経過したときにタイムアップ信号をＤＭＡ３に出力する。これによりＤＭＡ３はメモリ２からキャリッジ駆動機構６のモータ制御部７へ所定のデータを転送する。モータ制御部はこれらの制御データに従ってモータドライバ８を駆動し、モータ９を回転させる。モータ９が回転すると動力伝達機構（歯付きベルト、ギヤ等により構成される）１１により、キャリッジ１０が印字ラインに沿ってキャリッジ移動通路内を移動する。
【００４２】
キャリッジ通路内には、キャリッジ移動通路内のホームポジションにホームポジション検出センサ（以下、ＨＰ検出センサと称する）１２が設けられている。ＨＰ検出センサとしては、光センサ、超音波センサ、メカニカルセンサ等の各種センサを使用可能である。
【００４３】
ＨＰ検出センサ１２の出力信号は、駆動確認手段５に送出される。位置検出手段５は、キャリッジ１０の計算上の位置を順次追跡しており、ＨＰ検出センサ１２がキャリッジを検出した時のキャリッジ１０の計算上の位置から、計算上キャリッジの位置と実際のキャリッジの位置とのずれを検出して、ずれが所定の範囲より大きいときに、ＣＰＵに割り込み信号を送出する。ＣＰＵは位置検出手段からの割り込み信号により所定のエラー対応処理を実行する。
【００４４】
次に、図２を用いて本発明の第１の実施例を説明する。図２は図１に示すキャリッジ駆動機構制御装置の動作をより詳細に説明するための機能ブロック図である。図中、メモリ２には、各種制御データ２１乃至２３が記憶されている。これらの制御データ２１乃至２３は、これから動かすキャリッジの移動に応じてモータの駆動を制御するためのデータであり、モータ駆動制御プログラム等（図示せず）により作成されて、モータ駆動動作の開始前にメモリ２に記憶される。
【００４５】
２１は、モータの動作を切り替えるタイミングを制御するための制御データ（計時データ）を記憶しているタイミングデータ記憶手段である。２２は、各切り替えタイミング毎にモータに供給する電圧の位相パターンデータを記憶している位相パターン記憶手段、２３は、各切り替えタイミング毎にモータに流される電流値を記憶している相電流値記憶手段である。
【００４６】
尚、図２では、３個の制御データを記憶している例を示しているが、被駆動機構の種類に応じて、３個以上又は３個以下の制御データを記憶するように構成してもよい。また、これらのデータをメモリ２ではなく、メモリー２とは別のレジスタ等の記憶手段（図示せず）に記憶するように構成してもよい。
【００４７】
メモリ２に記憶された制御データ２１乃至２３は、それぞれＤＭＡ３の位相切換タイミング制御手段２５、位相パターン制御手段２６及び相電流制御手段２７により読み出されて、所定の各部に転送される。これらの制御手段２５乃至２７はＤＭＡで構成されており、各制御手段２５乃至２７がメモリ２から順次制御データの転送を行う。これらのＤＭＡによる最初の転送動作は、ＣＰＵ１からの動作開始信号により起動され、その後は各転送処理の終了またはタイムアップ信号により各制御手段（ＤＭＡ）２５乃至２７が順次起動され、転送動作が実行される。
【００４８】
まずタイミングデータが、位相切換タイミング制御手段２５によりタイミングデータ記憶手段２１から計時手段４に転送される。計時手段４は受信したタイミングデータに基づき時間経過を計測し、タイムアップ信号を位相パターン制御手段２６及び駆動確認手段５に出力する。位相パターン制御手段２６はタイムアップ信号の受信に応じて位相パターンデータを位相パターンデータ記憶手段２２からモータ駆動制御部７に転送する。モータ駆動制御部７は、受信した位相パターンデータをモータドライバ８に出力する。次に、相電流制御手段２７が相電流値記憶手段２３から相電流値を読み出しモータ駆動制御部７に転送する。モータ駆動制御部は受信した相電流値をモータドライバ８に出力し、これによりモータ９が回転を開始する。モータ９が回転すると動力伝達機構１１を介して、キャリッジ１０が移動通路内を移動を開始する。
【００４９】
相電流値の転送が完了すると、相電流制御手段２７はコントロールを位相切換タイミング手段２５に渡す。これに応じて位相切換タイミング手段２５は、次のタイミングデータを読み出して、計時手段４に転送する。計時手段４はタイミングデータで指定された時間の経過後にタイムアップ信号を送出し、位相パターン制御手段２６を起動し、次の位相パターンを転送する。以下順次同様の処理が行われ、モータ９が順次加速されながら駆動されキャリッジ１０が移動する。
【００５０】
図３は、キャリッジの移動に伴なうモータの駆動速度を示すグラフである。以下の説明において使用する番号では、図１または図２の番号も引用する。モータ９は駆動開始時に次第に加速され、所定の速度に達すると一定速度で駆動され、目的の位置の前で次第に減速されて停止する。モータ停止後にも、モータの振動を早期に抑制するため、所定の微電流が流される。
【００５１】
タイミングデータその他の制御データは、駆動しようとするキャリッジ１０の移動距離に合わせて、モータ９の加速、一定速度での駆動、減速及び停止までの駆動動作を逐次制御するのに必要な全てのデータが、モータ駆動の開始前に生成され、メモリ２に記憶される。各制御手段２１乃至２３は、タイミングデータに基づくタイムアップ信号の発生時にこれらの制御データを計時手段４及びモータ駆動制御部７に順次転送する。図３中の数字１〜ｎは位相切換タイミング、すなわちステップ数を表す。加速時にステップの間隔が徐々に短くなり、減速時には徐々に長くなるように設定される。これらの時間間隔は切換タイミングデータにより制御され、各切換タイミング毎に位相パターンデータ、電流値データがモータ駆動制御部７に転送される。
【００５２】
図４を用いてキャリッジの移動経路について説明する。図４は、シリアルプリンタのキャリッジの移動可能領域１４、印字可能領域１５、印字禁止領域１６及びホームポジションの位置を示す図である。図の左端から右方向に向かう移動通路の大部分は印字可能領域１５であり、キャリッジ１０がこの領域を移動しながら、印字ヘッド（図示せず）により印字を行う。印字可能領域はプリンタの種類により異なるが、図４では説明を簡単にするために１種類しか示していない。図の右端から一定の範囲は印字禁止領域１６である。印字禁止領域１６では、キャリッジ１０の移動は可能であるが、印字はできない。
【００５３】
印字禁止領域１６にはホームポジション（以下ＨＰと称する）と呼ばれる所定の位置（第１の基準位置に相当する）に、ＨＰ検出センサ（位置検出器に相当する）１２（図１、図２参照）が設けられている。キャリッジ１０が移動して、ＨＰ検出センサを横切るとＨＰ検出センサによりキャリッジ１０が検出されて、キャリッジ１０が実際にホームポジションの位置まで移動したことを確認することが可能となる。ＨＰ検出センサ１２がキャリッジを検出すると検出信号を駆動確認手段５に送出する。
【００５４】
キャリッジ１０の移動はモータ９を駆動することにより行われる。例えば印字をする場合には、印字する範囲が連続して１ラインある場合には、現在のキャリッジ１０の位置（通常は印字可能領域の左端位置）から印字可能領域の左端まで移動する。印字終了後、その位置で停止しているか、印字可能領域の左端まで戻すかは、自由に設計できる。これらの１ライン分の印字のためのキャリッジ１０の一連の移動動作は、前述の通り、予めその駆動のために必要なモータ制御データを作成して、メモリに記憶しておきこれらの制御データをＤＭＡで順次読み出すことにより行われる。制御データの設定は、次の印字に対応して所定のプログラムの制御下においてＣＰＵが行う。
【００５５】
キャリッジ駆動動作が正確に行われているかどうかの確認のためのキャリッジ駆動動作（以下駆動状態確認動作と称する）も、印字の場合と同様に予め当該駆動状態確認動作のための制御データをメモリに設定し、それをＤＭＡにより順次読み出して転送することにより実行される。これらは、正確な駆動動作が実行されているかを確認し、精確な駆動制御を実現するために、少なくとも一定の短い時間間隔毎に行われる。
【００５６】
例えばインクジェットプリンタ等では、長期間印字を行わない場合の印字ヘッドの乾燥を防ぐために、印字がないときには定期的にダミーのインク墳出動作を行っている。ダミーのインク噴出動作をするためには、インク噴出を受け入れるインクレセプタが必要になる。インクレセプタは、通常、印字禁止領域１６内のホームポジション近傍に設けられているため、キャリッジは、ダミーのインク噴出のために、定期的に（例えば６秒から１０秒以内に一回等）印字禁止領域に移動する。従って、このインク噴出動作のときにこれと同時に駆動確認処理を行うように構成することも可能である。この場合、キャリッジ１０の駆動動作はダミーのインク噴出動作と共通であるが、ダミーのインク噴出のための印字ヘッド制御と並行して、駆動確認処理を同時に行うことが必要である。
【００５７】
図５を用いて、駆動確認処理動作について説明する。図５は、駆動確認の処理の際の各状態を示す遷移図である。
【００５８】
その前に、駆動状態確認のためのキャリッジ駆動動作の典型例を簡単に説明する。まず、キャリッジは、待機状態において、第２の基準位置（第４図Ｓ）に停止している。この状態で、駆動状態確認動作のための制御データがメモリに設定されてＤＭＡに駆動開始信号が出力されると、ＤＭＡがそれらの制御データを読み出して、モータ９の動作を開始する。この動作においてはキャリッジ１０は制御データによるコントロールの下、第２の基準位置Ｓから右方向に順次移動していく。キャリッジがホームポジションＨＰを通過すると、ＨＰセンサから検出信号が出力される。
【００５９】
次に、以上のようなキャリッジの移動過程において、どのようにして駆動異常が判定されるかを説明する。駆動確認処理を行っていない待機状態３０では、全てのフラグ、カウンタ等がクリアされている。駆動確認処理の動作を開始するためには、キャリッジ１０を駆動確認のためにホームポジションＨＰの方に駆動するために、ＣＰＵ１が駆動状態確認のための制御データ２１乃至２３を生成し、メモリ２に記憶する。これらの制御データの記憶が完了すると、ＣＰＵ１はＤＭＡ３の位相切換タイミング制御手段２５（図２参照）を起動し、モータ９の動作を開始させる。この駆動状態確認のための駆動動作の起動信号は、同時に駆動確認処理を起動し、図５の下限値待ち状態３１に入る。
【００６０】
下限値待ち状態３１では、キャリッジ１０の計算上の位置が、ホームポジションＨＰの位置として許容し得る計算上の下限値に達したかどうかを確認する。キャリッジ１０の計算上の位置が所定の下限値に達するまでの間に、ＨＰ検出信号を検出した場合には、計算上のキャリッジの位置が実際のキャリッジの位置と比較して、図４におけるホームポジションＨＰから見て、左側に大きくずれているものと判断して、駆動エラーとみなすこととしている。
【００６１】
そのため、下限値に達するまでの間、位相切換タイミング毎にホームポジションＨＰを検出したか否かを確認する（ＨＰ判定１）。この状態でホームポジションＨＰが検出ると駆動異常として、エラー処理３３のためにＣＰＵ１に割り込み信号が出力される。ＨＰ判定１でホームポジションＨＰが検出されないと、下限待ち状態３１が継続される。
【００６２】
計算上の下限値に達すると、上限値待ち状態３２に移行する。上限値待ち状態３２では、キャリッジ１０の計算上の位置が、ホームポジションＨＰの位置として許容し得る計算上の上限値に達したかどうかを確認する。キャリッジ１０の計算上の位置が所定の上限値に達するまでの間に、ＨＰ検出信号を検出できない場合には、計算上のキャリッジの位置が実際のキャリッジの位置と比較して図４の右側方向に大きくずれているものと判断して、駆動エラーとみなす。
【００６３】
この状態を検出するために、上限値に達するまでの間、位相切換タイミング毎にホームポジションＨＰを検出したか否かを確認する（ＨＰ判定２）。上限値に達するまでにホームポジションＨＰが検出しない場合には駆動異常として、ＣＰＵ１を起動して所定のエラー処理を行うためＣＰＵ１に割り込み信号が出力する（エラー処理３３）。ＣＰＵ１にエラー割り込みが行われると、ＣＰＵ１は駆動動作異常を表示したり、エラーの状況に応じて調整動作処理を行う。
【００６４】
ＨＰ判定２でホームポジションＨＰが検出されると、計算上のキャリッジ位置と実際のキャリッジ位置のずれが適正な範囲内であるとして、駆動確認処理を正常に終了させる正常終了処理３４が行われる。正常終了処理３４では、ホームポジションＨＰを検出後、キャリッジを印字可能領域１５の右端位置まで移動する駆動動作等が行われる。
【００６５】
図６に本発明の駆動確認手段５の構成の一実施例を示す。
【００６６】
駆動確認手段５は、ホームポジションＨＰの位置として許容し得る計算上の下限値を記憶するための下限レジスタ４１と、許容し得る計算上の上限値を記憶するための上限レジスタ４５を有している。下限レジスタ４１及び上限レジスタ４５には、データバス２０を介してＣＰＵ１より上限値及び下限値がセットされる。また、駆動確認手段５は、相切換信号（タイムアップ信号）によりカウントアップされるカウンタ４３が設けられている。カウンタ４３は、駆動確認処理開始前に制御部４０からの信号によりクリアされる。カウントアップされたカウンタ４３の値は、比較器４２、４４により、下限レジスタ４１及び上限レジスタ４５と比較される。カウンタ４３の値（カウント値）が下限レジスタ４１または上限レジスタ４５と一致すると、マッチ信号が制御部に送られる。
【００６７】
制御部４０は制御レジスタ４６のデータに基づき制御され、駆動確認処理後の状態は状態レジスタ４７に記憶される。制御レジスタ４６にはＣＰＵ１からデータが書き込まれ、状態レジスタ４７の内容はＣＰＵ１から読み取り可能である。また、カウンタ４３のカウンタ値もデータバス２０を介して、ＣＰＵ１から読み取り可能である。制御部４０には、マッチ信号、相切換信号（タイムアップ信号）、ホームポジション信号（ＨＰ信号）等が入力され、比較器４２及び４４からのマッチ信号の出力タイミングとＨＰ信号の受信タイミングにより、駆動エラーか否かを判定する。
【００６８】
図４、図６及び図７等を用いて、制御部４０の動作を説明する。図７は、駆動確認手段４の制御部４０の確認動作処理を示すフローチャートである。いま、キャリッジ１０は図４のＳの位置に停止しているとする。
【００６９】
駆動確認動作を開始する前にＣＰＵ１は、前述の通り、まずモータ駆動のための制御データをメモリ２に設定する。それと同時に、ＣＰＵ１は、下限レジスタ４１、上限レジスタ４５、制御レジスタ４６等の設定及びカウンタのクリアを行う。上限レジスタ４５及び下限レジスタ４１をどのような値にセットするかは、どの位の精度でエラー検出するかにより、自由に設定可能である。ここでは、下限レジスタ４１に下限値“１０００”を設定し、上限レジスタ４５に上限値“１０２０”を設定するものとして説明する。
【００７０】
ＣＰＵ１がＤＭＡ３の位相切換タイミング手段２５を起動すると、同時に駆動確認手段５も起動する（Ｓ６０）。位相切換タイミング手段２５（図２参照）からの計時データに基づき、計時手段４は位相切換タイミング毎にタイムアップ信号を出力する。これらのタイムアップ信号に基づき、位相パターン制御手段２６乃び相電流制御手段２７は、モータ駆動制御部７に位相パターンデータ及び相電流値を転送する。モータ駆動制御部７はこれらの制御データによりモータ９を駆動し、キャリッジ１０がホームポジションＨＰに向かって移動を開始する。
【００７１】
一方、駆動確認処理動作を開始した駆動確認手段５では、計時手段４からタイムアップ信号が出力される度に、カウンタ４３がカウントアップされる（Ｓ６１、Ｓ６２）。次にＨＰ検出センサ１２から、検出信号が出力されたかどうかを確認し（Ｓ６３；Ｎｏ）、ＨＰ検出信号が出力されていなければ、カウンタ４３の値と下限レジスタ４１の値を比較する（Ｓ６４）。カウンタ４３の値が下限値に到達していなければ（Ｓ６４；Ｎｏ）、再び同様の処理を繰り返す（Ｓ６１、Ｓ６２、Ｓ６３、Ｓ６４）。
【００７２】
この段階でＨＰ検出信号が検出されるということは、計算上ではキャリッジ１０は下限値“１０００”にも到達していないはずなのに、実際にはキャリッジ１０がホームポジションＨＰに到達していることを意味しており、エラー状態と判断され（Ｓ６３；Ｙｅｓ）、ＣＰＵ１に割り込み信号が出力される（Ｓ６９）。その後、各種レジスタ４１、４５等がクリアされ（Ｓ７１）、待機状態になる（Ｓ６０）。ＣＰＵ１は割り込みによりエラー処理により、カウンタ４３の値、及び状態レジスタ４７の内容を参照可能である。
【００７３】
カウンタ４３がカウントアップされて“１０００”になると、下限レジスタ４１の値とカウンタ４３の値が一致し（Ｓ６４；Ｙｅｓ）、上限値待ちモード３２（図５参照）となり、次のタイムアップ信号を待つ（Ｓ６５；Ｎｏ）。タイムアップ信号を受信すると（Ｓ６５；Ｙｅｓ）カウンタ４３が＋１され（Ｓ６６）、その後ＨＰ検出信号が出力されているかどうかを確認する（Ｓ６７）。ＨＰ検出信号が出力されていないと（Ｓ６７；Ｎｏ）、上限レジスタ４５の値とカウンタ４３の値が等しいか確認され（Ｓ６８）、等しくない場合（Ｓ６８；Ｎｏ）には同様の処理が繰り返される（Ｓ６５、Ｓ６６、Ｓ６７，Ｓ６８）。
【００７４】
この間、ＨＰ検出信号が出力される（Ｓ６７；Ｙｅｓ）と、
下限値“１０００”＜カウンタ値＜上限値“１０２０”
の範囲で、キャリッジ１０が実際にホームポジションＨＰに到達したことになるので、計算値と実際のキャリッジ１０の位置が許容値内にあり、駆動動作は正常であると判定し、カウンタ４３、レジスタ４２、４５等を全てクリアして（Ｓ７０）、待機状態３０（図５参照）となる。
【００７５】
カウンタの値が“１０２０”になると、上限レジスタ４５の値とカウンタ４３の値が一致する（Ｓ６８；Ｙｅｓ）。これは、計算上の上限値“１０２０”まで駆動しているはずであるのに、実際にはキャリッジ１０がホームポジションに到達していないことを意味しており、駆動エラーと判断される。
【００７６】
ホームポジションＨＰを検出した後のキャリッジ１０の動作としては、エラーとの判定がされた場合には、ＣＰＵ１への割り込みにより、ＣＰＵ１でモータ９の駆動停止をさせ、または、所定の位置まで復帰させるようモータ９を駆動させることが可能となる。正常終了の場合には、駆動確認動作のための制御データの生成及びメモリ２への設定時に、ステップ数（カウンタ４３のカウント値と同じ）が上限値である“１０２０”または“１０２１”を超えたら、所定の位置（例えば第２の基準位置である図４の“Ｓ”の位置）までキャリッジを戻すように制御データを設定しておくことなどが可能である。
図８及び図２を用いて、キャリッジ１０の駆動制御（モータ９の駆動制御）と駆動確認手段の関係を説明する。
【００７７】
図８は、モータ駆動開始の要求から切換タイミングデータ、位相パターンデータ及び相電流データの設定を経て、次の切換タイミングを設定する一連の制御動作と、その動作中における駆動確認処理動作の関係を示す状態変移図である。
【００７８】
ＣＰＵ１により駆動確認動作のための駆動開始が伝えられると、タイミングデータ記憶手段２１から最初のタイミングデータを読み出して、計時手段４に転送する。尚、タイミングデータは、計時手段４にセットする時間データであるため、図８では、時間データと記載している。計時手段４は、転送された時間データに基づき、所定の時間経過を監視する（第１の状態：５０）。
【００７９】
計時手段４が所定の時間の経過を検知すると、計時手段４がタイムアップ信号を出力する。これに基づき、位相パターン制御手段２６は、位相パターンデータ記憶手段２２から最初の位相パターンデータを読み出して、モータ駆動制御部７に位相の設定を行う（第２の状態：５１）。これと同時に、タイムアップ信号に基づいて、駆動確認手段５が、カウンタ５をカウントアップする。
【００８０】
最初の位相パターンデータの転送が終わると、相電流制御手段２７が相電流値記憶手段２３から最初の相電流値を読み出して、モータ駆動制御部７に相電流値の設定を行う。相電流値の設定が行われると、モータ９が駆動を開始する(第３の状態：５２)。
【００８１】
相電流の転送が終了すると、再び位相切換タイミング制御手段２５が駆動され、タイミングデータ記憶手段２１から次の（２番目の）タイミングデータが読み出されて計時手段４に設定される（第１の状態：５０）。計時手段４がこの２番目もタイミングデータに基づいてタイムアップ信号を出力するまでの期間、第１番目の位相パターン及び相電流値によるモータ９の駆動が行われる。
【００８２】
計時手段４が所定の時間の経過を検知し、タイムアップ信号を出力すると、位相パターン制御手段２６により次の（２番目の）位相パターンがモ−タ駆動制御部７に設定され（第２の状態：５１）、同時に駆動確認手段５のカウンタ４３が＋１される。続いて、相電流制御手段２７により、すぐに次の（２番目の）相電流値が設定される（第３の状態：５２）。これにより、次の（第３番目の）タイムアップ信号が出力されるまで、第２番目の位相パターン及び相電流値によるモータ９の駆動が行われる。
【００８３】
以上の説明からわかるように、第１番目のタイミングデータは最初の位相パターン、相電流値を設定するためのダミーの値である。モータ９は、第２番目のタイミングデータ（時間データ）で指定された期間が経過して位相パターン等が変更されるまで、最初に設定された位相パターン及び相電流値にしたがって駆動される。同様に次の位相パターン及び相電流値に従って次の切換タイミングまでモータ９が駆動される。
【００８４】
このようにして、モータ９は、図３（ａ）に示すように第２番目の切換タイミングから駆動を開始し、所定の切換タイミングデータ及び制御データに従って、その駆動動作が制御される。その間、駆動確認手段５のカウンタ４３は、タイムアップ信号が出力される度に＋１され、下限レジスタ４１及び上限レジスタ４５の値と比較される。
【００８５】
尚、以上の駆動確認の動作は、メモリ内の動作プログラムにより制御される。例えば、プリンタでは、上述の実施例でも説明したように、通常、印字領域から離れた位置にホームポジションセンサを設けており、一定期間内に少なくとも一回、キャリッジをこのホームポジションセンサに検知させるよう駆動することにより駆動確認が行われる。このような駆動確認動作をどの位の頻度で行うかは、駆動制御プラグラム作成段階において、当業者が自由に設計できる事項である。例えば、所定の時間間隔で定期的に行うようにしたり、駆動機構の動作状況に応じて確認動作のタイミングを変化させることもできる。
【００８６】
また、第１の基準位置を印字領域から離れたホームポジションに設定した場合には、印字中にホームポジションを検出したら直ちにエラーとすることも可能である。但し、第１の基準位置が必ず印字領域の範囲外に設けなければならないものではなく、印字領域内に第１の基準位置を設定して、そこに位置検知センサを設けて、印字中に駆動制御状態の確認を行うようにすることも可能である。
【００８７】
さらに、位置検出センサを複数設けて、これらに対応した駆動確認手段を設けてもよい。例えば、位置検出センサを移動通路の左右に設けることも、印字領域内に1個以上設けることも、移動通路の左右及び印字領域内に選択的に配置することも可能である。このように複数個の位置検出センサと駆動確認手段を設けることにより、さらにきめ細かな駆動動作の確認が可能となり、信頼性を向上させることができる。
【００８８】
また、インクジェットプリンタにおいては、正常な印字を実行するため、一定の頻度でダミーのインク噴出動作を行っている。そのため、ホームポジション近くに、ダミーのインク噴出ようのインク受容口を設けておくことにより、このダミーのインク噴出動作のためのキャリッジの駆動動作を利用して、駆動確認処理を行うようにすることができる。
【００８９】
尚、以上の説明では、プリンタの印字ヘッドのキャリッジの駆動機構を中心に説明したが、これに限らず、例えば、印字用紙の搬送機構、紙幣の搬送機構、磁気ヘッドその他のヘッドの駆動機構等、本発明の技術思想が適用可能なあらゆる分野を対象とするものである。その場合も、第１の基準位置及び第２の基準位置をどこに設けるかは、当該技術分野の技術常識により適宜設定可能である。
【００９０】
さらに、ステップモータに限らずリニアモータ、超音波振動子等の各種駆動源を用いた駆動機構であっても本発明が適用可能あることは、当業者にとって明らかである。
【００９１】
【発明の効果】
以上説明したように本発明によると、ＤＭＡ制御により転送する駆動制御データに基づいて理論上の動作位置を計算し、理論上の動作位置と実際の動作位置とを比較することにより、駆動機構をＤＭＡ制御の下で駆動させながら駆動機構が制御データに従って精確に駆動しているかどうかをＣＰＵを介在させずに監視することが可能となる。そのため、駆動確認のための動作を含め、一連の駆動動作を全てＤＭＡ制御下でコントロールすることが可能となり、駆動機構の精確な制御を可能とするだけでなく、ＣＰＵの負荷を大幅に軽減させることができる。
【００９２】
また、インクジェットプリンタのキャリッジ駆動機構に本発明を適用する場合には、ダミーのインク噴出動作のためのキャリッジの駆動動作中に、駆動確認処理を行うようにすることにより、駆動確認動作のためキャリッジ駆動動作を省略し、効率的な駆動機構の制御が可能となる。
【図面の簡単な説明】
【図１】本発明の実施例にかかる駆動機構制御装置の構成の概略を示すブロック図であり、駆動機構としてシリアルプリンタの印字ヘッドを印字ラインに沿って横方向に移動させるキャリッジ駆動機構を示す図である。
【図２】図１に示すキャリッジ駆動機構制御装置の動作をより詳細に説明するための機能ブロック図である。
【図３】ステップモータを駆動する場合のモータの制御の典型例を示すグラフである。
【図４】シリアルプリンタのキャリッジの移動可能領域１４、印字可能領域１５、印字禁止領域１６及びホームポジションの位置を示す図である。
【図５】、駆動確認の処理の際の各状態を示す遷移図である。
【図６】本発明の駆動確認手段５の構成の一実施例を示す。
【図７】駆動確認手段４の制御部４０の確認動作処理を示すフローチャートである。
【図８】モータ駆動開始の要求から切換タイミングデータ、位相パターンデータ及び相電流データの設定を経て、次の切換タイミングを設定する一連の制御動作と、その動作中における駆動確認処理動作の関係を示す状態遷移図である。
【図９】ＣＰＵを用いた従来の駆動確認処理を説明するブロック図である。
【符号の説明】
１  ＣＰＵ
２  メモリ
３  ＤＭＡ
４  計時手段
５  駆動確認手段
６  駆動機構
７  モータ駆動制御部
８  モータドライバ
９  モータ
１０  キャリッジ
１１  駆動伝達機構
１２  ＨＰ検出手段
【図１】
0004631131.tif 000002
【図２】
0004631131.tif 000003
【図３】
0004631131.tif 000004
【図４】
0004631131.tif 000005
【図５】
0004631131.tif 000006
【図６】
0004631131.tif 000007
【図７】
0004631131.tif 000008
【図８】
0004631131.tif 000009
【図９】
0004631131.tif 000010