JP3700666B2 - モータ制御装置およびモータ制御方法 - Google Patents

モータ制御装置およびモータ制御方法 Download PDF

Info

Publication number
JP3700666B2
JP3700666B2 JP2002088731A JP2002088731A JP3700666B2 JP 3700666 B2 JP3700666 B2 JP 3700666B2 JP 2002088731 A JP2002088731 A JP 2002088731A JP 2002088731 A JP2002088731 A JP 2002088731A JP 3700666 B2 JP3700666 B2 JP 3700666B2
Authority
JP
Japan
Prior art keywords
resolution
target
signal
counting
driving distance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002088731A
Other languages
English (en)
Other versions
JP2003289686A (ja
Inventor
茂樹 秋山
充宏 野▲崎▼
勝 竹内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2002088731A priority Critical patent/JP3700666B2/ja
Priority to US10/383,587 priority patent/US7230401B2/en
Publication of JP2003289686A publication Critical patent/JP2003289686A/ja
Application granted granted Critical
Publication of JP3700666B2 publication Critical patent/JP3700666B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Character Spaces And Line Spaces In Printers (AREA)
  • Control Of Electric Motors In General (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、フィードバック制御によって、モータが駆動する制御対象の動作を制御する制御するモータ制御装置に関する。
【0002】
【従来の技術】
従来から、フィードバック制御によって、モータが駆動する制御対象の動作を制御する制御するモータ制御装置が利用されている。この種のモータ制御装置では、モータが駆動する制御対象の実駆動量(実際の動作量)がエンコーダによって検出され、実駆動量が目標駆動量(目標となる動作量)と一致するようにモータが制御される。
【0003】
また、このモータ制御装置では、実駆動量を示すエンコーダ信号の計数値がフィードバック入力となるため、実駆動量を目標駆動量に精度よく到達させるためには、エンコーダにより検出できる最小の駆動量(動作量)を小さく、つまり、制御対象の動作を高い分解能で検出できるように構成すればよいことになる。なお、分解能を高くするためには、例えば、エンコーダ信号の立ち上がりおよび立ち下がりの両エッジを計数するように構成したり、また、位相がずれた複数のエンコーダ信号を出力するエンコーダを利用し、複数のエンコーダ信号それぞれを計数するように構成することが行われている。
【0004】
【発明が解決しようとする課題】
しかし、制御対象の動作を高い分解能で検出するように構成した場合、目標駆動量に応じてエンコーダ信号の計数値が急激に増加するため、これに伴って、エンコーダ信号を計数するためのレジスタやフィードバック制御に関する演算を行う演算器などの記憶領域を大きく(ビット長を長く)しなければならない。
【0005】
また、レジスタや演算器などの記憶領域を小さくするために、制御対象の動作を低い分解能で検出するように構成した場合には、記憶領域を小さく抑えることはできるが、目標駆動量が小さいときの検出誤差が大きくなってしまい、実駆動量を目標駆動量に精度よく到達させることができなくなる。
【0006】
そのため、従来のモータ制御装置では、小さな目標駆動量に対応するために分解能を充分に高くしなければならず、また、高い分解能で大きな目標駆動量にも対応するためにレジスタや演算器などの記憶領域を充分に大きく(ビット長を充分に長く)しておく必要がある。しかし、この構成では、目標移動量が大きいとき、エンコーダ信号の大きな計数値に基づいて演算器による演算を行わなければならないため、フィードバック制御に拘わる処理の負荷が重くなってしまう。また、目標移動量が小さいときは、エンコーダ信号の計数値が充分に大きくならず、レジスタや演算器の利用効率が極端に低くなってしまう。
【0007】
本発明は、目標駆動量によって、フィードバック制御に拘わる処理の負荷が重くなったり、レジスタや演算器の利用効率が低下してしまうことのないモータ制御装置およびモータ制御方法を提供することを目的とする。
【0008】
【課題を解決するための手段および発明の効果】
上記問題を解決するため請求項1に記載のモータ制御装置は、モータによって駆動される駆動対象が所定量駆動される毎にパルス信号を繰り返し発生するパルス発生手段と、該パルス発生手段により発生されるパルス信号の立ち上がりエッジと立ち下がりエッジとの少なくとも一方を検知してエッジを計数する信号計数手段と、ユーザの操作を受けて、駆動距離の解像度を示す解像度モードを、高解像度のモードおよび低解像度のモードのいずれかに切り替えるモード切替手段と、該モード切替手段により切り替えられた解像度モードに対応する解像度の中から、前記目標駆動距離設定手段によって設定された目標駆動距離に応じて駆動距離の分解能を選択する分解能選択手段と、該分解能選択手段により選択された駆動距離の分解能に基づいて、前記目標駆動距離設定手段により設定された目標駆動距離に相当するエッジの計数値を算出する計数値算出手段と、前記信号計数手段により計数されたエッジの数と前記計数値算出手段により算出された計数値とを比較し、両者を一致させるべくフィードバック制御を行うフィードバック制御手段と、を備えていることを特徴とする。
【0009】
このように構成されたモータ制御装置によれば、分解能選択手段が目標駆動距離に応じた分解能を選択して、この選択された分解能に基づいて、計数値算出手段が目標駆動距離に相当するエッジの計数値を算出する。ここで、分解能選択手段によって、目標駆動距離が長いほど低い分解能が選択されるように構成すれば、信号計数手段による計数値が目標駆動距離の長さによって大きく変動しなくなる。そのため、目標駆動距離の値によって、フィードバック制御に拘わる処理の負荷が重くなったり、レジスタや演算器の利用効率が低下してしまうことがない。
【0010】
なお、上述したパルス発生手段は、駆動対象または駆動対象を駆動するモータが所定量動作する毎にパルス信号を繰り返し発生する手段であって、例えば、制御対象またはモータに取り付け、制御対象またはモータが所定量動作する毎にパルス状のエンコーダ信号を出力するロータリーエンコーダやリニアエンコーダなどを利用することができる。
【0011】
また、信号計数手段は、パルス発生手段により発生されるパルス信号の立ち上がりおよび立ち下がりエッジのうちいずれか一方または両方のエッジを検知して、エッジの数を計数する手段である。また、信号計数手段は、パルス信号のエッジを検知する検知手段と、検知手段により検知されたエッジの数を計数する計数手段とが、別の手段として構成されていてもよい。
【0012】
また、目標駆動距離設定手段は、駆動対象の目標駆動距離を設定(または入力)する手段である。ここで、目標駆動距離とは、駆動対象を動作させるべき目標となる駆動距離(動作量)である。また、分解能選択手段は、目標駆動距離設定手段により設定された目標駆動距離に応じて駆動距離の分解能を選択する手段である。ここで、駆動距離の分解能とは、制御対象の駆動距離を検出する最小の長さを示すものであって、分解能が高いほど短い駆動距離を検出できることになる。また、駆動距離の分解能は、信号計数手段によりエッジを計数する間隔に応じて変更されるため、「駆動距離の分解能」との記載を「エッジの分解能」と置き換えてもよい。本モータ制御装置では、駆動対象が所定量駆動される毎にパルス発生手段により繰り返しパルス信号が発生されるため、信号計数手段によりパルス信号のエッジを計数する間隔を変更すれば、駆動距離の分解能を変更することができる。具体的には、パルス信号の立ち上がりエッジのみをカウントし、エッジをカウントする間隔をパルス信号の周期とする場合よりも、立ち上がりおよび立ち下がりエッジをカウントし、エッジをカウントする間隔をパルス信号の1/2周期とする場合の方が、制御対象の駆動距離を検出する最小の長さが短くなる。
【0013】
また、計数値算出手段は、分解能選択手段により選択された駆動距離の分解能に基づいて、目標駆動距離に相当するエッジの計数値を算出、つまり、目標駆動距離をエッジの数に換算する手段である。ここでは、目標駆動距離を分解能で示される長さで除算した値が、目標駆動距離に相当するエッジの計数値として算出される。
【0014】
また、本モータ制御装置においては、フィードバック制御手段が、信号計数手段により計数されたエッジの数と計数値算出手段により算出された計数値とを比較するように構成されている。しかし、計数値算出手段のかわりに、分解能選択手段により選択された駆動距離の分解能と信号計数手段により計数されたエッジの数とを用いて駆動距離を算出する駆動距離算出手段を備え、フィードバック制御手段が、駆動距離算出手段により算出された駆動距離と目標駆動距離とを比較するように構成しても同様の効果を得ることができる。
【0015】
また、請求項2に記載のモータ制御装置は、前記分解能選択手段は、目標駆動距離が大きい場合には低い分解能を選択し、当該目標駆動距離が小さい場合には高い分解能を選択することを特徴とする。
【0016】
このように構成されたモータ制御装置によれば、目標駆動距離が大きい場合には低い分解能とし、目標駆動距離が小さい場合には高い分解能とすることができる。また、請求項3に記載のモータ制御装置は、前記パルス発生手段は、互いに所定の位相差を有する第1、第2のパルス信号を発生可能に構成され、前記信号計数手段は、前記第1のパルス信号の立ち上がりエッジを計数する第1信号計数手段と、前記第1のパルス信号の立ち下がりエッジを計数する第2信号計数手段と、前記第2のパルス信号の立ち上がりエッジを計数する第3信号計数手段と、前記第2のパルス信号の立ち下がりエッジを計数する第4信号計数手段とからなり、前記分解能選択手段は、エッジを計数する計数モードを、前記第1信号計数手段のみでエッジを計数して分解能が第1分解能となる第1計数モード、前記第1信号計数手段および前記第2信号計数手段でエッジを計数して分解能が前記第1分解能より高い第2分解能となる第2計数モード、前記第1から第4信号計数手段全てでエッジを計数して分解能が前記第2分解能より高い第3分解能となる第3計数モードのうちいずれかに切り換えることによって、駆動距離の分解能を選択することを特徴とする。
【0017】
このように構成されたモータ制御装置によれば、分解能選択手段によって、計数モードを切り換えることにより駆動距離の分解能を選択することができる。また、請求項4に記載のモータ制御装置は、前記分解能選択手段は、モータによる前記駆動対象の駆動距離が前記目標駆動距離設定手段により設定された目標駆動距離に近接したとき、より高い分解能を選択することを特徴とする。
【0018】
このように構成されたモータ制御装置によれば、駆動対象の駆動距離が目標駆動距離に近接したときに、近接する以前よりも高い分解能となる。そのため、例えば、目標駆動距離が長く設定されている場合であって、目標駆動距離(位置)付近までは速やかな移動を行うために、低い分解能が設定されている場合でも、制御対象の駆動距離が目標駆動距離に近接したときには分解能が高くなるため、制御対象の駆動距離を精度よく目標駆動距離に到達させることができる。
【0019】
なお、高い分解能を選択する条件である目標駆動距離への近接とは、例えば、駆動対象の駆動距離が目標駆動距離に到達するまでの残りの駆動距離があらかじめ定められたしきい値以下になった状態や、残り駆動距離が目標駆動距離における所定の割合(例えば、目標駆動距離の10%)に相当する値以下になった状態のことである。
【0020】
ところで、上述したモータ制御装置は、例えば、被印刷媒体または印字ヘッドを制御対象として、これらをモータにより相対移動させる印刷機に適用することができる。このような印刷機において、印字ヘッドは、印字ノズルからインク滴を吐出した後、制御対象である被印刷媒体または印字ヘッドが目標駆動量だけ動作した後、再度、印字ノズルからインク滴を吐出する。つまり、被印刷媒体と印字ヘッドとをモータにより相対移動させる印刷機において、目標駆動距離とは、印字ヘッドがインク滴を吐出する吐出間隔を示すことになる。
【0021】
このような吐出間隔が大きい場合、例えば、低解像度の画像を印刷するような場合には、高解像度の画像を印刷する場合と比べて、吐出間隔の精度が多少悪くても、印刷される最終的な画像の画質に大きな差が出ることは少ない。そのため、吐出間隔、つまり、目標駆動距離が大きくなるような場合には、制御対象の駆動距離を精度よく目標駆動距離に到達させなくてもよいことになる。
【0022】
また、上記吐出間隔が印字ヘッドのノズル列よりも大きい場合には、吐出間隔の間にインク滴により着色されない領域が存在する(例えば、主走査方向あるいは副走査方向に空白の間隔をおいて複数の画像が印刷される場合など)そのため、吐出間隔つまり目標駆動距離が所定距離以上大きい場合には、制御対象(被印刷媒体あるいは印字ヘッド)を目標駆動距離に精度よく到達させる必要はないが、その代わり速やかに到達させることが必要である。
【0023】
そこで、被印刷媒体と、インク滴を吐出して該被印刷媒体上に所望の画像を印刷する印字ヘッドとをモータにより相対的に移動させて印刷する印刷機におけるモータ制御装置において、被印刷媒体または印字ヘッドを前記駆動対象とし、該駆動対象の目標駆動距離が所定のしきい値よりも長い場合に、前記分解能選択手段は、最も低い分解能を選択するように構成するとよい。
【0024】
このように構成すれば、制御対象の駆動距離を精度よく目標駆動距離に到達させる必要がない場合に、分解能選択手段によって最も低い分解能が選択されるため、このような場合においては、目標駆動距離に速やかに到達させることができるとともに、エッジを計数する際の処理に拘わる負荷を軽くすることができる。
【0025】
なお、分解能選択手段が最も低い分解能を選択する条件となる目標駆動距離のしきい値は、例えば、制御対象の駆動距離を精度よく目標駆動距離に近づける必要がない値としてあらかじめ定められた値であればよい。具体的には、請求項5に記載のように、印字ヘッドの備える印字ノズル列の長さをしきい値とすることが考えられる。
【0026】
請求項5に記載のモータ制御装置は、被印刷媒体と、インク滴を吐出して該被印刷媒体上に所望の画像を印刷するための印字ノズル列を備えた印字ヘッドとをモータにより相対的に移動させて印刷する印刷機におけるモータ制御装置であって、被印刷媒体または印字ヘッドを前記駆動対象とし、該駆動対象の目標駆動距離が前記印字ノズル列よりも長い場合に、前記分解能選択手段は、最も低い分解能を選択することを特徴とする。
【0027】
このように構成されたモータ制御装置によれば、目標駆動距離が印字ノズル列よりも長い場合に、分解能選択手段によって最も低い分解能が選択されるため、このような場合においては、目標駆動距離に速やかに到達させることができるとともに、エッジを計数する際の処理に拘わる負荷を軽くすることができる。
【0028】
なお、印字ノズル列は、副走査方向の印刷に関しては、被印刷媒体が搬送される方向に向けて配設されているノズル列を意味し、主走査方向の印刷に関しては印字ヘッドが左右方向に往復移動される方向に向けて配設されているノズル列を意味するものである。
【0029】
また、請求項6に記載のモータ制御方法は、モータによって駆動される駆動対象が所定量駆動される毎に繰り返し発生されるパルス信号に基づいて、該パルス信号の立ち上がりエッジと立ち下がりエッジとの少なくとも一方を検知してエッジの数を計数して、前記駆動対象の目標駆動距離を設定して、ユーザにより高解像度のモードおよび低解像度のモードのいずれかに切り替えられた解像度モードに対応する解像度の中から、前記設定した目標駆動距離に応じて駆動距離の分解能を選択して、該選択した駆動距離の分解能に基づいて、前記設定した目標駆動距離に相当するエッジの計数値を算出して、前記計数したエッジの数と前記算出した計数値とを比較し、両者を一致させるべくフィードバック制御を行うことを特徴とする。
【0030】
このようなモータ制御方法でモータを制御すれば、請求項1に記載のモータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御方法を、目標駆動距離が大きい場合には低い分解能を選択し、当該目標駆動距離が小さい場合には高い分解能を選択するようにしてもよい。
【0031】
このようなモータ制御方法でモータを制御すれば、請求項2に記載のモータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御方法を、互いに所定の位相差を有する第1、第2のパルス信号のうち該第1のパルス信号の立ち上がりエッジのみを計数して分解能が第1分解能となる第1計数モード、前記第1のパルス信号の立ち上がりおよび立ち下がりエッジを計数して分解能が前記第1分解能より高い第2分解能となる第2計数モード、前記第1、第2のパルス信号の立ち上がりおよび立ち下がりエッジを計数して分解能が前記第2分解能より高い第3分解能となる第3計数モードのうちいずれかに、エッジを計数する計数モードを切り換えることによって、駆動距離の分解能を選択するようにしてもよい。
【0032】
このようなモータ制御方法でモータを制御すれば、請求項3に記載のモータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御方法を、モータによる前記駆動対象の駆動距離が前記設定した目標駆動距離に近接したとき、より高い分解能を選択するようにしてもよい。
【0033】
このようなモータ制御方法でモータを制御すれば、請求項4に記載のモータ制御装置と同様の作用・効果を得ることができる。
【0034】
【発明の実施の形態】
次に、本発明をプリンタに備えられている紙送り機構を駆動するLF(Line Feed)モータの制御に採用した場合の実施形態を説明する。
[第1実施形態]
プリンタ1は、図1に示すように、用紙搬送ローラとしてのメインローラ10、メインローラ10の回転状態を検出するロータリーエンコーダ(以降、単にエンコーダとする)12、排紙ローラ14b、LFモータ20などからなる紙送り機構(本発明における駆動対象)を備えている。
【0035】
エンコーダ12は、メインローラ10と共に回転する回転板12a、回転板12aが回転したことを検出するフォトインタラプタ12bなどにより構成されている。このエンコーダ12は、回転板12aが所定の角度回転する毎に、図2に示すように、フォトインタラプタ12bから相互に1/4周期の位相差を有する2種類のエンコーダ信号ENC1、ENC2を出力するように構成されている。なお、エンコーダ信号ENC1は、タイミング(エッジ)を検出するためのものとして利用され、エンコーダ信号ENC2は、回転方向を判別するためのものとして利用されることは一般のエンコーダと同じであるが、ここでは、エンコーダ信号ENC2はタイミング(エッジ)を検出するためにも利用される。
【0036】
また、回転板12aはメインローラ10と共に回転することから、エンコーダ信号ENC1、ENC2は、メインローラ10により用紙(被印刷媒体)が所定量(本発明においては1/1,500inch)搬送される毎に一周期のパルス信号が出力される。また、各エンコーダ信号ENC1、ENC2のエッジが立ち上がってから、メインローラ10により用紙が1/3,000inch搬送されると、各エンコーダ信号ENC1、ENC2のエッジが立ち下がり、また、エンコーダ信号ENC1のエッジが立ち上がって(または立ち下がって)から、メインローラ10により用紙が1/6,000inch搬送されると、エンコーダ信号ENC2のエッジが立ち上がる(または立ち下がる)ように構成されている。
【0037】
LFモータ20は、メインローラ10に直結し、メインローラ10を駆動する駆動プーリ(図示せず)との間に掛け渡されたベルト16aを介して、メインローラ10および回転板12aを回転させると共に、駆動プーリ(図示せず)の回転を伝達するためのベルト16b及びアイドルギア14aを介して、排紙ローラ14bを回転させることができる(図1における矢印c、d参照)。メインローラ10にはピンチローラ10aが圧接され、排紙ローラ14bには排出拍車14cが圧接されており、用紙は、それぞれの圧接点を通過し、メインローラ10と排紙ローラ14bの間(の経路中)で画像を記録された後、排紙ローラ14b、排出拍車14cの圧接点から排出される(図1における矢印e参照)。LFモータ20は、メインローラ10を、順方向(図1における矢印a参照)に回転させることによって、メインローラ10から排紙ローラ14bに向けて用紙を外部に向けて搬送することができる。
【0038】
また、プリンタ1には、図3に示すように、プリンタ1全体の動作を制御するCPU30、CPU30による処理手順および処理結果を記憶するメモリ(ROM、RAM)32、印刷時の解像度を切り換える解像度切換スイッチ34、例えば、USB(Universal Serial Bus)インターフェース等を介してコンピュータシステムなどの端末装置と接続される入出力インターフェース36、LFモータ20を駆動するモータ駆動回路40、モータ駆動回路40に入力するPWM信号を生成する信号生成回路100などが内蔵されており、これらによって、本発明におけるモータ制御装置を構成している。
【0039】
CPU30は、入出力インターフェース36を介して送信されてきた印刷データを受信した際に、後述する用紙送り処理(図4)を実行することによって、用紙を搬送する。この印刷データには、用紙を搬送すべき複数(第1から第n)の目標搬送量が指定されている。
【0040】
信号生成回路100は、いわゆるASIC(Application Specific Integrated Circuit)によって構成されており、LFモータ20の制御に用いる各種パラメータを格納するレジスタ群110、エンコーダ12から入力したエンコーダ信号に基づき用紙の搬送状態をチェックする搬送状態チェック部120、LFモータ20を制御するための制御信号を生成する信号生成部130、信号生成部130により生成された制御信号をPWM信号に変換する信号変換部140、クロック信号を信号生成回路100全体に供給可能なクロック生成部150などにより構成されている。なお、クロック生成部150は、エンコーダ12から入力されるエンコーダ信号の最短周期よりも短い周期のクロック信号を生成するように構成されている。
【0041】
これらのうち、レジスタ群110は、信号生成回路100を起動するための起動設定レジスタ111、後述する制御信号を生成する手順(図5)を行うタイミングを示す演算時間toをセットするタイミング設定レジスタ112、用紙の目標搬送量として目標搬送量Rに相当するエンコーダ信号の数を示す目標値rをセットする目標設定レジスタ113、搬送状態をチェックする際にエンコーダ信号のどのエッジを利用するかを設定する有効エッジ設定レジスタ114、信号生成部130が制御信号を生成する際に利用する積分ゲインF1、状態フィードバックゲインF2をセットする第1ゲイン設定レジスタ115、第2ゲイン設定レジスタ116などからなる。なお、各レジスタのうちの起動設定レジスタ111は、信号生成回路100を起動するための指令が書き込まれるレジスタであって、この起動設定レジスタ111への書き込みが行われることによって、信号生成回路100全体が起動する。
【0042】
また、搬送状態チェック部120は、エンコーダ12から入力したエンコーダ信号のエッジを検出する検出部121、検出部121により検出されたエッジの数をカウントするカウンタ122、用紙の搬送量が目標搬送量に到達した際に停止割込信号をCPU30へ出力する割込処理部123などからなる。この割込処理部123は、カウンタ122によるカウント値yが、目標設定レジスタ113にセットされている目標値r以上となった際、もしくは、目標値rに一致してから一定時間経過した後に停止割込信号を出力する。
【0043】
これらのうち、検出部121は、有効エッジ設定レジスタ114にセットされている設定値に基づいて、設定値が「01」であればエンコーダ信号ENC1の立ち上がりエッジのみを検出する。この場合、カウンタ122は、メインローラ10により用紙が1/1,500inch搬送される毎にカウント値を加算することになる。また、検出部121は、設定値が「10」であればエンコーダ信号ENC1の立ち上がりおよび立ち下がりエッジを検出する。この場合、カウンタ122は、メインローラにより用紙が1/3,000inch搬送される毎にカウント値を加算することになる。また、検出部121は、設定値が「11」であればエンコーダ信号ENC1、ENC2の立ち上がりおよび立ち下がりエッジを検出する。この場合、カウンタ122は、メインローラ10により用紙が1/6,000inch搬送される毎にカウント値を加算することになる(図8参照)。こうして、設定値「01」「10」「11」の順に、用紙の搬送量を細かく、つまり、高い分解能で検出できるようになる。
【0044】
また、信号生成部130は、LFモータ20を制御するための制御信号を生成する演算処理部131、クロック生成部150により生成されたクロック信号に基づいて時間をカウントするタイマー133などからなる。なお、図3には図示していないが、被印刷媒体である用紙の先端が検出されてから用紙が排出されるまでの間、エンコーダ信号ENC1、ENC2の立ち上がりおよび立ち下がりエッジを検出すると共に検出したエッジをカウントする累積カウンタが、カウンタ122とは別個に設けられており、この累積カウンタは、設定値が「11」に設定された場合のカウンタ122と同様のタイミングで計数動作を行うようになっている。
【0045】
[CPU30による用紙送り処理]
以下に、CPU30が行う用紙送り処理を図4に基づいて説明する。この用紙送り処理は、入出力インターフェース36を介して印刷データを受信した際に開始される。
【0046】
まず、CPU30は、初期化処理を行う(s11)。この処理においては、変数nに「1」がセット(1→n)される。なお、以降に記載の「n」は、変数nにセットされている値を示すものとする。次に、CPU30は、印刷データで指定された目標搬送量を抽出する(s12)。この処理においては、印刷データで指定されている複数の目標搬送量のうち、第nの目標搬送量Rが抽出される。
【0047】
次に、CPU30は、印刷時の解像度モードをチェックする(s13)。この処理においては、印刷時の解像度モードを、高解像度の精細な印刷を行うファインモードとするか、低解像度の粗い印刷を行うドラフトモードとするかが、解像度切換スイッチ34の切換状態によって判定される。
【0048】
このs13の処理で、印刷時の解像度モードがファインモードである場合(s13:YES)、CPU30は、用紙の目標搬送量に応じて3種類の値(01、10、11)のうちいずれかの値を有効エッジ設定レジスタ114にセットする(s14)。この処理においては、まず、用紙の目標搬送量がチェックされ、s12の処理で抽出された目標搬送量Rが1inchより大きければ(1<R)、有効エッジ設定レジスタ114に「01」がセットされる。また、目標搬送量Rが1/16inchより大きく1inch未満であれば(1/16<R≦1)、有効エッジ設定レジスタ114に「10」がセットされる。また、目標搬送量Rが1/16inch以下であれば(R≦1/16)、有効エッジ設定レジスタ114に「11」がセットされる。これによって、目標搬送量Rが小さいほど、有効エッジ設定レジスタ114にセットされる値に対応してカウンタ122がカウントすべきエッジが多くなり、用紙の搬送量を高い分解能で検出できるようになる。
【0049】
また、s13の処理で、印刷時の解像度モードがドラフトモードである場合(s13:NO)、CPU30は、用紙の目標搬送量に応じて2種類の値(01、11)のうちいずれかの値を有効エッジ設定レジスタ114にセットする(s15)。この処理においては、まず、用紙の目標搬送量がチェックされ、目標搬送量Rが1inchより大きければ(1<R)、有効エッジ設定レジスタ114に「01」がセットされる。また、目標搬送量Rが1inch以下であれば(R≦1)、有効エッジ設定レジスタ114に「11」がセットされる。これによって、目標搬送量Rが小さいほど、s14の処理と同様に、用紙の搬送量を高い分解能で検出できるようになる。
【0050】
こうして、s14の処理またはs15の処理を終えた後、CPU30は、レジスタ群110の各レジスタにパラメータをセットする(s16)。この処理においては、タイミング設定レジスタ112に演算時間toがセットされ、第1ゲイン設定レジスタ115に積分ゲインF1がセットされ、第2ゲイン設定レジスタ116に状態フィードバックゲインF2がセットされる。このとき、各ゲイン設定レジスタ115、116には、目標搬送量Rが大きいほど、絶対値の大きな積分ゲインF1、状態フィードバックゲインF2がセットされる。
【0051】
次に、CPU30は、レジスタ群110の目標設定レジスタ113に目標値rをセットする(s17)。この処理においては、s14の処理またはs15の処理で有効エッジ設定レジスタ114にセットされた設定値に基づいて算出された値が、目標値rとして目標設定レジスタ113にセットされる。
【0052】
具体的には、設定値が「01」であれば、目標搬送量Rを1/1,500inchで除算した値が目標値r(=R/(1/1,500))としてセットされる。また、設定値が「10」であれば、目標搬送量Rを1/3,000inchで除算した値が目標値r(=R/(1/3,000))としてセットされる。また、設定値が「11」であれば、目標搬送量Rを1/6,000inchで除算した値が目標値r(=R/(1/6,000))としてセットされる。こうして、目標値rとして目標設定レジスタ113にセットされる値は、目標搬送量R(分子)が小さくなるほど目標搬送量Rを除算する値(分母)も小さくなるため、目標搬送量Rによって大きく変動しない。
【0053】
次に、CPU30は、信号生成回路100を起動させる(s18)。この処理においては、レジスタ群110を構成する起動設定レジスタ111への書き込みが行われ、これによって、信号生成回路100全体が起動する。こうして、信号生成回路100が起動した後、信号生成回路100を構成する信号生成部130が、後述する制御信号を生成する手順(図5)に従って、制御信号を生成する。そして、この制御信号が信号変換部140を介してモータ駆動回路40に入力され、LFモータ20が用紙の搬送を開始する。この後、制御信号が繰り返しモータ駆動回路40に入力された後、用紙の搬送量が目標搬送量に到達すると、信号生成回路100を構成する搬送状態チェック部120の割込処理部123から、停止割込信号が出力されてくる。
【0054】
次に、CPU30は、搬送状態チェック部120の割込処理部123から停止割込信号を入力するまで待機し(s19:NO)、停止割込信号を入力したら(s19:YES)、変数nに「1」を加算(n+1→n)する(s20)。そして、CPU30は、第nの目標搬送量が指定されていれば(s21:YES)、s11の処理に戻り、以降、s11からs21の処理を印刷データで指定された目標搬送量全てに対して行った後(s21:NO)、本用紙送り処理を終了する。
【0055】
[信号生成部130により制御信号を生成する手順]
以下に、信号生成回路100の信号生成部130が制御信号を生成する手順を図5に基づいて説明する。この手順による制御信号の生成は、図4におけるs18の処理で起動設定レジスタ111への書き込みが行われた後に開始される。なお、信号生成回路100は、いわゆるASICからなり、ハードウェアとして動作するものであるが、ここでは理解を容易にするためにハードウェアとしての動作をフローチャートに置き換えて説明する。
【0056】
まず、信号生成部130は、タイマー133をスタートする(s31)。次に、信号生成部130は、演算を行うタイミングとなるまで待機する(s32:NO)。ここでは、タイマー133による計測時間tがタイミング設定レジスタ112にセットされている演算時間toに到達するまで(t<toの間)待機する。
【0057】
このs32の手順において、演算を行うタイミングとなったら(s32:YES)、信号生成部130は、用紙の搬送量が目標搬送量に到達しているかどうかをチェックする(s33)。ここでは、カウンタ122によるカウント値yと、目標設定レジスタ113にセットされている目標値rとが比較され、カウント値yが目標値rより小さければ(y<r)、用紙の搬送量が目標搬送量に到達していないと判断し、一方、カウント値yが目標値r以上であれば(y≧r)、用紙の搬送量が目標搬送量に到達したと判断される。
【0058】
このs33の手順において、用紙の搬送量が目標搬送量に到達していなければ(s33:NO)、信号生成部130は、演算処理部131によって、モータ駆動回路40に入力すべき制御信号を生成する(s34)。ここで、演算処理部131が制御信号を生成する詳細な手順は、後述の[演算処理部131による制御信号の生成](図6)において説明する。
【0059】
次に、信号生成部130は、制御信号を信号変換部140に出力する(s35)。制御信号を入力した信号変換部140では、制御信号をPWM信号に変換した後、モータ駆動回路40に出力する。次に、信号生成部130は、タイマー133をストップおよびリセットした後(s36)、s31の手順に戻る。
【0060】
そして、s31からs36の手順が繰り返し行われた後、s33の手順において、用紙の搬送量が目標搬送量に到達したら(s33:YES)、本制御信号を生成する手順を終了する。
[演算処理部131による制御信号の生成]
以下に、演算処理部131により制御信号を生成する手順を図6に基づいて説明する。信号生成部130の演算処理部131は、カウンタ122によるカウント値yが目標設定レジスタ113にセットされている目標値rと一致するようにフィードバック制御を行うものであって、第1加算器add1、積分器int、第1ゲイン積算器g1、状態推定器obs、第2ゲイン積算器g2、第2加算器add2などにより構成されている。
【0061】
この演算処理部131では、まず、第1加算器add1によって、目標設定レジスタ113にセットされている目標値rとカウンタ122によるカウント値yとの偏差(r−y)が演算される。次に、積分器intによって、第1加算器add1により演算された偏差をタイミング設定レジスタ112にセットされている演算時間toで離散積分した値、つまり、偏差の累積値(∫(r−y)dto)が演算される。
【0062】
次に、第1ゲイン積算器g1によって、積分器intにより演算された累積値と、第1ゲイン設定レジスタ115にセットされている積分ゲインF1とを積算した値「u1(=−F1*∫(r−y)dto)」を有する第1制御信号が生成される。
【0063】
また、状態推定器obsによって、モータ駆動回路40に入力する制御信号で示される制御入力uとカウンタ122によるカウント値yとに基づいて紙送り機構の内部状態を表す状態量xが推定される。次に、第2ゲイン積算器g2によって、状態推定器obsにより推定された状態量xと第2ゲイン設定レジスタ115にセットされている状態フィードバックゲインF2とを積算した値「u2(=−F2*x)」を有する第2制御信号が生成される。
【0064】
そして、第2加算器add2によって、第1制御信号と第2制御信号とを加算した値「u(=u1+u2)」を制御入力uとする制御信号が生成される。これによって、制御信号の制御入力uの値に応じた回転方向・角速度でLFモータ20が回転し、この回転に伴って、メインローラ10およびアイドルギア14aが回転する。ここで、LFモータ20は、制御信号の制御入力uが正の値である場合、制御入力uの絶対値に相当する速度だけメインローラ10の順方向(図1における矢印a参照)への角速度を増加させる。一方、制御信号の制御入力uが負の値である場合、制御入力uの絶対値に相当する速度だけメインローラ10の逆方向(図1における矢印b参照)への角速度を増加、つまり、順方向への角速度を減少させる。
【0065】
[第1実施形態の効果]
このように構成されたプリンタ1によれば、図4におけるs14またはs15の処理で、用紙の目標搬送量Rに応じた設定値(01、10、11)が有効エッジ設定レジスタ114にセットされる。この設定値は、カウンタ122がカウントするべきエッジを設定するものであって、目標搬送量Rが小さいほど、カウントされるエッジの数が多くなるため、同一の搬送量に対するカウント値が多くなる。これによって、目標搬送量Rが大きいほど用紙の搬送量が粗く、つまり、低い分解能で検出され、目標搬送量Rが小さいほど用紙の搬送量が細かく、つまり、高い分解能で検出されるようになり、カウンタ122によるカウント値が目標搬送量Rの長さによって大きく変動しなくなる。そのため、高い分解能で大きな目標搬送量Rに対応するためにカウンタ122や演算処理部131の各演算器の記憶領域を充分に大きく(ビット長を充分に長く)しておく必要がない。また、目標搬送量Rによって大きく変動しないカウント値に基づいて演算処理部131の各演算器による演算を行えばよいため、フィードバック制御に拘わる処理の負荷が目標搬送量Rの大きさによって重くなってしまうといったことがない。また、目標搬送量Rの大きさによってカウンタ122によるカウント値が大きく変動しないため、カウンタ122や演算処理部131の各演算器の利用効率が目標搬送量Rの大きさによって極端に低下するといったことがない。
【0066】
また、s14またはs15の処理で、用紙の目標搬送量Rに応じた設定値(01、10、11)を有効エッジ設定レジスタ114にセットすることによって、用紙の搬送量を検出する際の分解能を選択することができる。
[第2実施形態]
プリンタ2は、第1実施形態に記載のプリンタ1と同様の構成であって、[CPU30による用紙送り処理](図4)の処理手順が一部異なっているものであるため、この相違点についてのみ詳述する。
【0067】
[CPU30による用紙送り処理]
以下に、CPU30が行う用紙送り処理を図7に基づいて説明する。まず、CPU30は、初期化処理を行う(s41)。この処理においては、変数nに「1」がセット(1→n)される。
【0068】
次に、CPU30は、印刷データで指定された目標搬送量を抽出する(s42)。この処理においては、印刷データのうち第nの目標搬送量Rが抽出される。次に、CPU30は、有効エッジ設定レジスタ114に「01」をセットする(s43)。この処理では、カウンタ122によりカウントすべきエッジが最も少なくなり、用紙の搬送量が粗く、つまり、低い分解能で検出されるようになる。
【0069】
次に、CPU30は、レジスタ群110の各レジスタにパラメータをセットする(s44)。この処理は、第1実施形態の図4におけるs16の処理と同様の処理である。次に、CPU30は、レジスタ群110の目標設定レジスタ113に目標値rをセットする(s45)。この処理においては、s42の処理で抽出された目標搬送量Rから所定値dを減算し、この減算値を1/1,500inchで除算した値が目標値r(=(R−d)/(1/1,500))としてセットされる。この所定値dとは、目標搬送量に到達するまでの残り搬送量を示す値として、あらかじめ定められたものであって、以降の処理で、用紙の搬送量を検出する分解能を切り換える際に利用されるものである。なお、所定値dは、あらかじめ定められたもの以外に、目標搬送量Rにおける所定の割合に相当する値(例えば、目標搬送量の10%の値)としてもよい。
【0070】
次に、現在の用紙位置を示す累積カウンタのカウント値(Y1)をメモリ32に一時保存したのち、信号生成回路100を起動させる(s46)。この処理における信号生成回路100の起動は、第1実施形態の図4におけるs18の処理と同様の処理である。
【0071】
次に、CPU30は、搬送状態チェック部120の割込処理部123から停止割込信号を入力するまで待機し(s47:NO)、停止割込信号を入力したら(s47:YES)、当該停止位置における累積カウンタのカウント値(Y2)をメモリ32に一時保存したのち、有効エッジ設定レジスタ114に「11」をセットする(s48)。この処理では、カウンタ122によりカウントすべきエッジが最も多くなり、用紙の搬送量が細かく、つまり、高い分解能で検出されるようになる。こうして、用紙が目標搬送量に到達するまでの残り搬送量が所定値dとなったら、用紙の搬送量を検出する際の分解能が高い分解能に切り換えられる。
【0072】
次に、CPU30は、レジスタ群110の各レジスタにパラメータをセットし直す(s49)。この処理においては、第1ゲイン設定レジスタ115に積分ゲインF1がセットし直され、第2ゲイン設定レジスタ116に状態フィードバックゲインF2がセットし直される。このとき、各ゲイン設定レジスタ115、116には、所定値dの大きさに対応する絶対値の積分ゲインF1、状態フィードバックゲインF2がセットされる。
【0073】
次に、CPU30は、レジスタ群110の目標設定レジスタ113に目標値rをセットし直す(s50)。この処理においては、s42の処理で抽出された目標搬送量Rを1/6,000inchで除算した値(R/(1/6,000))から、累積カウンタによるカウント値「Y2」と「Y1」との差を示す値(Y2-Y1)を減算した値が目標値r((R/(1/6,000))−(Y2-Y1))としてセットされる。なお、累積カウンタによるカウント値「Y1」は、搬送開始時におけるカウント値を示しており、カウント値「Y2」は、直前の低い分解能で搬送された搬送量、すなわち搬送終了時におけるカウント値を示している。
【0074】
次に、信号生成回路100を再度起動させる(s51)。この処理は、s46の処理と同様の処理である。次に、CPU30は、搬送状態チェック部120の割込処理部123から停止割込信号を入力するまで待機し(s52:NO)、停止割込信号を入力したら(s52:YES)、変数nに「1」を加算(n+1→n)する(s53)。
【0075】
そして、CPU30は、第nの目標搬送量が指定されていれば(s54:YES)、s41の処理に戻り、以降、s41からs54の処理を印刷データで指定された目標搬送量全てに対して行った後(s54:NO)、本用紙送り処理を終了する。
【0076】
[第2実施形態の効果]
このように構成されたプリンタ2によれば、図7におけるs43の処理で有効エッジ設定レジスタ114に「01」がセットされた後、用紙の搬送量が目標搬送量に到達するまでの残りが所定値dとなるまで近接したときに、s48の処理で有効エッジ設定レジスタ114に「11」がセットし直される。設定値「11」は、設定値「01」のときよりも、カウンタ122によりカウントすべきエッジの数が多くなり、近接する以前よりも用紙の搬送量を高い分解能で検出することができるようになる。よって、用紙の搬送量が目標搬送量に近接するまでを、低い分解能で搬送を制御することにより目標位置(目標搬送量)付近まで速やかに用紙を搬送することができ、その後は、高い分解能で搬送を制御することにより、目標位置(目標搬送量)で精度よく用紙を停止させることができる。このため、分解能を切り換えない場合と比べて、用紙の搬送量を全体として精度よく、しかも速やかに目標搬送量に到達させることができる。
【0077】
[本発明との対応関係]
以上説明したプリンタ1において、エンコーダ12は、本発明におけるパルス発生手段であり、エンコーダ12により出力されるエンコーダ信号がパルス発生手段により発生されるパルス信号(エンコーダ信号ENC1:第1のパルス信号、エンコーダ信号ENC2:第2のパルス信号)に相当する。また、解像度切換スイッチ34は、本発明におけるモード切替手段に相当する。
【0078】
また、搬送状態チェック部120の検出部121およびカウンタ122は、本発明における信号計数手段である。また、レジスタ群110の目標設定レジスタ113は、本発明における目標駆動距離設定手段であり、目標設定レジスタ113にセットされる目標値rで示される目標搬送量Rが目標駆動距離に相当する。
【0079】
また、信号生成部130の演算処理部131は、本発明におけるフィードバック制御手段である。また、有効エッジ設定レジスタ114にセットされている設定値が「01」である場合にエンコーダ信号ENC1の立ち上がりエッジのみを検出する検出部121は、本発明における第1信号計数手段の一部である。また、設定値が「10」である場合にエンコーダ信号ENC1の立ち上がりおよび立ち下がりエッジを検出する検出部121は、本発明における第2信号計数手段の一部である。また、設定値が「11」である場合にエンコーダ信号ENC2の立ち上がりおよび立ち下がりエッジを検出する検出部121は、本発明における第3、第4信号計数手段の一部である。ここでは、有効エッジ設定レジスタ114にセットされる設定値によって、エッジをカウントする計数モードを切り換えていることになる。具体的には、設定値が「01」である場合は本発明における第1計数モード、設定値が「10」である場合は本発明における第2計数モード、設定値が「11」である場合は本発明における第3計数モードである。
【0080】
また、図4におけるs14およびs15の処理は、本発明における分解能選択手段である。ここでは、目標搬送量に応じた値を有効エッジ設定レジスタ114にセットすることによって、用紙の搬送量を検出する際の分解能が選択されている。
【0081】
また、図7におけるs43およびs48の処理は、本発明における分解能選択手段である。また、図4におけるs17の処理、図7におけるs45およびs50の処理は、本発明における計数値算出手段である。
【0082】
[変形例]
以上、本発明の実施形態について説明したが、本発明は上記の具体的な実施形態に限定されず、このほかにも様々な形態で実施することができる。例えば、本実施形態においては、本発明のモータ制御装置を、プリンタ1、2に備えられている紙送り機構を駆動するLFモータ20の制御に採用した場合の実施形態を例示した。しかし、本発明のモータ制御装置を、制御対象としてプリンタ1、2の備える印字ヘッドを搭載したキャリッジを動作させるために利用することもできる。この場合、キャリッジの動作状態は、例えば、リニアエンコーダなどの検出装置によって検出するように構成すればよい。
【0083】
また、本実施形態においては、紙送り機構の動作をロータリーエンコーダ12によって検出するように構成されているものを例示した。しかし、紙送り機構の動作を検出するためには、ロータリーエンコーダ12以外の検出装置を利用してもよい。
【0084】
また、本実施形態においては、エンコーダ12として、相互に1/4周期の位相差を有する2種類のエンコーダ信号ENC1、ENC2を出力するものを利用した構成を例示した。しかし、エンコーダとして、相互に位相差を有する3種類以上のエンコーダ信号を出力するものを利用した構成としてもよい。
【0085】
例えば、図8に示したように、相互に1/4周期の位相差を有する2種類のエンコーダ信号ENC1、ENC2の他に、エンコーダ信号ENC1から1/8周期遅れているエンコーダ信号ENC1aと、エンコーダ信号ENC2から1/8周期遅れているエンコーダ信号ENC2aを出力するエンコーダを利用してもよい。この場合、まず、搬送状態チェック部120の検出部121を、有効エッジ設定レジスタ114にセットされている設定値に基づいて、次のようなエッジを検出するように構成する。設定値が「001」であればエンコーダ信号ENC1の立ち上がりエッジのみを検出し、設定値が「010」であればエンコーダ信号ENC1の立ち上がりおよび立ち下がりエッジを検出し、設定値が「011」であればエンコーダ信号ENC1、ENC2の立ち上がりおよび立ち下がりエッジを検出し、設定値が「111」であれば全てのエンコーダ信号の立ち上がりおよび立ち下がりエッジを検出するように構成する。また、図4におけるs14の処理で、目標搬送量Rが1inchより大きければ(1<R)、有効エッジ設定レジスタ114に「001」がセットされ、目標搬送量が1/16inchより大きく1inch未満であれば(1/16<R≦1)、有効エッジ設定レジスタ114に「010」がセットされ、目標搬送量Rが1/32inchより大きく1/16inch未満であれば(1/32<R≦1/16)、有効エッジ設定レジスタ114に「011」がセットされ、目標搬送量Rが1/32inch未満であれば(1/32>R)、有効エッジ設定レジスタ114に「111」がセットされるように構成する。また、s17の処理で、有効エッジ設定レジスタ114にセットされた設定値が「001」であれば、目標搬送量Rを1/1,500inchで除算した値が目標値r(=R/(1/1,500))としてセットされ、設定値が「010」であれば、目標搬送量Rを1/3,000inchで除算した値が目標値r(=R/(1/3,000))としてセットされ、設定値が「011」であれば、目標搬送量Rを1/6,000inchで除算した値が目標値r(=R/(1/6,000))としてセットされ、設定値が「111」であれば、目標搬送量Rを1/12,000inchで除算した値が目標値r(=R/(1/12,000))としてセットされるように構成する。このように構成すれば、設定値が「111」である場合に、用紙の搬送量をより高い分解能で検出することができるようになる。
【0086】
また、上記実施形態においては、検出部121が有効エッジ設定レジスタ114にセットされている設定値に基づいて、用紙の搬送状態をチェックする際に利用するエッジを選択するように構成されたものを例示した。しかし、検出部121が常にエンコーダ信号ENC1、ENC2の立ち上がりおよび立ち下がりエッジを検出するようにし、カウンタ122が有効エッジ設定レジスタ114にセットされている設定値に基づいてカウントすべきエッジを選択するように構成してもよい。
【0087】
また、上記実施形態におけるプリンタ1、2において、印字ヘッドを備えるキャリッジ(図示されない)は、印字ノズルからインク滴を吐出し、用紙が目標搬送量だけ用紙が搬送された後、再度、印字ノズルからインク滴を吐出する。つまり、目標搬送量とは、印字ヘッドがインク滴を吐出する吐出間隔を示すことになる。このような吐出間隔が大きい場合、例えば、低解像度の画像を印刷するような場合には、高解像度の画像を印刷する場合と比べて、吐出間隔の精度が多少悪くても、印刷される最終的な画像の画質に大きな差が出ることは少ない。そのため、吐出間隔、つまり、目標搬送量が大きくなるような場合には、用紙の搬送量を精度よく目標搬送量に到達させなくてもよいことになる。また、上記吐出間隔が印字ヘッドのノズル列よりも大きい場合には、吐出間隔の間にインク滴により着色されない領域が存在する(例えば、主走査方向あるいは副走査方向に空白の間隔をおいて複数の画像が印刷される場合など)そのため、吐出間隔つまり目標駆動距離が所定距離以上大きい場合には、制御対象(用紙あるいは印字ヘッド)を目標駆動距離に精度よく到達させる必要はないが、その代わり速やかに到達させることが必要である。そこで、図4におけるs14またはs15の処理において、目標搬送量が所定のしきい値よりも長い場合に、有効エッジ設定レジスタ114に「01」がセットされ、用紙の搬送量が最も低い分解能で検出されるように構成してもよい。このように構成すれば、用紙の搬送量を精度よく目標搬送量に到達させる必要がない場合に、用紙の搬送量が最も低い分解能で検出されるようになるため、このような場合においては、目標駆動距離に速やかに到達させることができるとともに、エッジをカウントする際の処理に拘わる負荷を軽くすることができる。
【0088】
また、用紙の搬送量が最も低い分解能で検出されるための条件であるしきい値としては、例えば、キャリッジの備える印字ヘッドの印字ノズル列の長さとすればよい。具体的には、s14またはs15の処理において、目標搬送量が印刷ノズル列の長さよりも長い場合に、有効エッジ設定レジスタ114に「01」がセットされ、用紙の搬送量が最も低い分解能で検出されるようになるといった構成である。このように構成すれば、目標搬送量が印字ノズル列の長さよりも長い場合に、用紙の搬送量が最も低い分解能で検出されるようになるため、このような場合においては、エッジをカウントする際の処理に拘わる負荷を軽くすることができる。
【0089】
また、本実施形態においては、図4におけるs13の処理で、解像度切換スイッチ34の切換状態によって、解像度モードがチェックされるように構成されたものを例示した。しかし、s13の処理で解像度モードをチェックする方法は解像度切換スイッチ34を利用するものに限定されない。例えば、解像度モードをセットする解像度設定レジスタを、信号生成回路100のレジスタ群110やメモリ32内に設けておき、s13の処理で解像度設定レジスタによって解像度モードがチェックされるように構成してもよい。
【図面の簡単な説明】
【図1】プリンタの紙送り機構を示す側面図
【図2】エンコーダにより出力されるエンコーダ信号を示す図
【図3】プリンタの制御系統を示すブロック図
【図4】用紙送り処理の処理手順を示すフローチャート(第1実施形態)
【図5】制御信号を生成する手順を示すフローチャート
【図6】演算処理部の制御ブロックを示す図
【図7】用紙送り処理の処理手順を示すフローチャート(第2実施形態)
【図8】カウンタの動作を示す図
【図9】別の実施形態におけるエンコーダにより出力されるエンコーダ信号を示す図
【符号の説明】
1、2・・・プリンタ、10・・・メインローラ、10a・・・ピンチローラ、12・・・ロータリーエンコーダ、12a・・・回転板、12b・・・フォトインタラプタ、14a・・・アイドルギア、14b・・・排紙ローラ、14c・・・排出拍車、16a、16b・・・ベルト、20・・・LFモータ、30・・・CPU、32・・・メモリ、34・・・解像度切換スイッチ、36・・・入出力インターフェース、40・・・モータ駆動回路、100・・・信号生成回路、110・・・レジスタ群、111・・・起動設定レジスタ、112・・・タイミング設定レジスタ、113・・・目標設定レジスタ、114・・・有効エッジ設定レジスタ、115・・・第1ゲイン設定レジスタ、116・・・第2ゲイン設定レジスタ、120・・・搬送状態チェック部、121・・・検出部、122・・・カウンタ、123・・・割込処理部、130・・・信号生成部、131・・・演算処理部、133・・・タイマー、140・・・信号変換部、150・・・クロック生成部。

Claims (6)

  1. モータによって駆動される駆動対象が所定量駆動される毎にパルス信号を繰り返し発生するパルス発生手段と、
    該パルス発生手段により発生されるパルス信号の立ち上がりエッジと立ち下がりエッジとの少なくとも一方を検知してエッジを計数する信号計数手段と、
    ユーザの操作を受けて、駆動距離の解像度を示す解像度モードを、高解像度のモードおよび低解像度のモードのいずれかに切り替えるモード切替手段と、
    該モード切替手段により切り替えられた解像度モードに対応する解像度の中から、前記目標駆動距離設定手段によって設定された目標駆動距離に応じて駆動距離の分解能を選択する分解能選択手段と、
    該分解能選択手段により選択された駆動距離の分解能に基づいて、前記目標駆動距離設定手段により設定された目標駆動距離に相当するエッジの計数値を算出する計数値算出手段と、
    前記信号計数手段により計数されたエッジの数と前記計数値算出手段により算出された計数値とを比較し、両者を一致させるべくフィードバック制御を行うフィードバック制御手段と、を備えている
    ことを特徴とするモータ制御装置。
  2. 前記分解能選択手段は、目標駆動距離が大きい場合には低い分解能を選択し、当該目標駆動距離が小さい場合には高い分解能を選択することを特徴とする請求項1に記載のモータ制御装置。
  3. 前記パルス発生手段は、
    互いに所定の位相差を有する第1、第2のパルス信号を発生可能に構成され、前記信号計数手段は、前記第1のパルス信号の立ち上がりエッジを計数する第1信号計数手段と、
    前記第1のパルス信号の立ち下がりエッジを計数する第2信号計数手段と、
    前記第2のパルス信号の立ち上がりエッジを計数する第3信号計数手段と、
    前記第2のパルス信号の立ち下がりエッジを計数する第4信号計数手段とからなり、
    前記分解能選択手段は、
    エッジを計数する計数モードを、前記第1信号計数手段のみでエッジを計数して分解能が第1分解能となる第1計数モード、前記第1信号計数手段および前記第2信号計数手段でエッジを計数して分解能が前記第1分解能より高い第2分解能となる第2計数モード、前記第1から第4信号計数手段全てでエッジを計数して分解能が前記第2分解能より高い第3分解能となる第3計数モードのうちいずれかに切り換えることによって、駆動距離の分解能を選択する
    ことを特徴とする請求項1または請求項2に記載のモータ制御装置。
  4. 前記分解能選択手段は、モータによる前記駆動対象の駆動距離が前記目標駆動距離設定手段により設定された目標駆動距離に近接したとき、より高い分解能を選択する
    ことを特徴とする請求項1から請求項3のいずれかに記載のモータ制御装置。
  5. 被印刷媒体と、インク滴を吐出して該被印刷媒体上に所望の画像を印刷するための印字ノズル列を備えた印字ヘッドとをモータにより相対的に移動させて印刷する印刷機におけるモータ制御装置であって、
    被印刷媒体または印字ヘッドを前記駆動対象とし、該駆動対象の目標駆動距離が前記印字ノズル列よりも長い場合に、前記分解能選択手段は、最も低い分解能を選択する
    ことを特徴とする請求項1から請求項4のいずれかに記載のモータ制御装置。
  6. モータによって駆動される駆動対象が所定量駆動される毎に繰り返し発生されるパルス信号に基づいて、該パルス信号の立ち上がりエッジと立ち下がりエッジとの少なくとも一方を検知してエッジの数を計数して、
    前記駆動対象の目標駆動距離を設定して、
    ユーザにより高解像度のモードおよび低解像度のモードのいずれかに切り替えられた解像度モードに対応する解像度の中から、前記設定した目標駆動距離に応じて駆動距離の分解能を選択して、
    該選択した駆動距離の分解能に基づいて、前記設定した目標駆動距離に相当するエッジの計数値を算出して、
    前記計数したエッジの数と前記算出した計数値とを比較し、両者を一致させるべくフィードバック制御を行う
    ことを特徴とするモータ制御方法。
JP2002088731A 2002-03-27 2002-03-27 モータ制御装置およびモータ制御方法 Expired - Fee Related JP3700666B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002088731A JP3700666B2 (ja) 2002-03-27 2002-03-27 モータ制御装置およびモータ制御方法
US10/383,587 US7230401B2 (en) 2002-03-27 2003-03-10 Apparatus and method for controlling an electric motor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002088731A JP3700666B2 (ja) 2002-03-27 2002-03-27 モータ制御装置およびモータ制御方法

Publications (2)

Publication Number Publication Date
JP2003289686A JP2003289686A (ja) 2003-10-10
JP3700666B2 true JP3700666B2 (ja) 2005-09-28

Family

ID=29234514

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002088731A Expired - Fee Related JP3700666B2 (ja) 2002-03-27 2002-03-27 モータ制御装置およびモータ制御方法

Country Status (1)

Country Link
JP (1) JP3700666B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5609551B2 (ja) * 2010-11-02 2014-10-22 株式会社オーエスエム スクリーン装置

Also Published As

Publication number Publication date
JP2003289686A (ja) 2003-10-10

Similar Documents

Publication Publication Date Title
US7607661B2 (en) Control device, conveyance control device, conveyance system and image forming system
KR100547552B1 (ko) 잉크 제트 기록 장치 및 방법
JP2008068413A (ja) 印刷装置
US7377379B2 (en) Transport belt drive control device, image forming device, and transport belt drive control method
JP4457456B2 (ja) 印刷装置
JP4497703B2 (ja) 記録装置および記録媒体搬送機構制御方法
JP3700666B2 (ja) モータ制御装置およびモータ制御方法
JP2010036447A (ja) 印刷装置および印刷方法
JPH10157087A (ja) インクジェット記録装置
JP3570617B2 (ja) Dcモータ制御装置及び制御方法
JP4325151B2 (ja) 印刷装置およびコンピュータシステム
JP4506888B2 (ja) 印刷装置
JP4389432B2 (ja) 液体吐出装置、コンピュータシステム、及び、液体吐出方法
JP5853474B2 (ja) インクジェット記録装置
JP3885010B2 (ja) インクジェット記録装置およびインクジェット記録方法
JP2008280108A (ja) 記録装置
JP3552385B2 (ja) プリンタ
JP2001186785A (ja) モータの制御装置およびその制御方法ならびにモータの制御プログラムを記録した記録媒体
CN100371168C (zh) 控制喷墨打印时间的装置及方法
JP2000127456A (ja) プリンタおよびその制御方法
JP2005176518A (ja) 記録装置、モータ制御装置及び方法
JP2006289880A (ja) インクジェットプリンタ
JP2004129400A (ja) Dcモータを備えた印刷装置
JP2018183935A (ja) 記録装置および記録装置における電力制御方法
JP2006159695A (ja) 記録装置、及び記録制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050208

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050411

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050621

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050704

R150 Certificate of patent or registration of utility model

Ref document number: 3700666

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080722

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090722

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100722

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110722

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120722

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120722

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130722

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees