(57)【特許請求の範囲】
【請求項１】
制御対象をモータで制御するための目標値を入力する目標入力手段と、
制御対象または該制御対象を駆動するモータの動作を検出する検出手段と、
該検出手段によって検出された検出結果と前記目標入力手段によって入力された前記目標値とに基づいて、第１制御信号を生成する第１信号生成手段と、
モータに入力する制御信号と前記検出手段によって検出された検出結果とに基づいて、制御対象の動作状態を示す状態量を推定する推定手段と、
該推定手段により推定された状態量に基づいて、第２制御信号を生成する第２信号生成手段と、
前記第１信号生成手段と前記第２信号生成手段とから、モータに入力する制御信号を生成する生成手段と、
制御対象または該制御対象を駆動するモータの動作が所望の動作方向となっている状況において、前記生成手段により生成された制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合に、制御対象の反対方向の動作が制限されるように修正した制御信号をモータに入力する制限入力手段とを備えている
ことを特徴とするモータ制御装置。
【請求項２】
前記制限入力手段は、前記生成手段により生成された制御信号が制御対象を所望の動作方向に動作させる制御信号である場合には、該制御信号をモータに入力する
ことを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記制限入力手段は、前記生成手段により生成された制御信号が制御対象を前記反対方向に動作させる制御信号である場合に、モータが回転を開始してから所定の期間を経過するまでの間だけ、制御対象の動作が制限されるように制御信号を修正する
ことを特徴とする請求項１または請求項２に記載のモータ制御装置。
【請求項４】
前記制限入力手段は、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値に応じて変更する
ことを特徴とする請求項３に記載のモータ制御装置。
【請求項５】
前記第１信号生成手段は、前記目標値と前記検出手段により検出された検出結果との偏差を積分演算する積分部と、該積分部による演算値に所定の第１ゲインを積算する第１ゲイン積算部とからなり、
前記第２信号生成手段は、前記推定手段により推定された状態量を示す値に所定の第２ゲインを積算する第２ゲイン積算部からなる
ことを特徴とする請求項１から請求項４のいずれかに記載のモータ制御装置。
【請求項６】
前記第１ゲイン積算部における前記第１ゲインの値が変更可能に構成されており、前記制限入力手段は、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値と前記第１ゲインの値とに応じて変更する
ことを特徴とする請求項５に記載のモータ制御装置。
【請求項７】
前記第２ゲイン積算部における前記第２ゲインの値が変更可能に構成されており、前記制限入力手段は、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値と前記第２ゲインの値とに応じて変更する
ことを特徴とする請求項５または請求項６に記載のモータ制御装置。
【請求項８】
制御対象が、モータと共に回転する回転体を備えており、前記検出手段が、前記回転体に取り付けられている
ことを特徴とする請求項１から請求項７のいずれかに記載のモータ制御装置。
【請求項９】
前記検出手段が、モータの回転軸に取り付けられている
ことを特徴とする請求項１から請求項７のいずれかに記載のモータ制御装置。
【請求項１０】
制御対象をモータで制御するための目標値を入力して、
制御対象または該制御対象を駆動するモータの動作を検出して、
該検出結果と、前記入力された前記目標値とに基づいて、第１制御信号を生成して、
モータに入力する制御信号と前記検出結果とに基づいて、該制御対象の動作状態を示す状態量を推定して、
該推定した状態量に基づいて、第２制御信号を生成して、
前記第１制御信号と、前記第２制御信号とから、モータに入力する制御信号を生成して、
制御対象または該制御対象を駆動するモータの動作が所望の動作方向となっている状況において、前記生成した制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合に、制御対象の反対方向の動作が制限されるように修正した制御信号をモータに入力する
ことを特徴とするモータ制御方法。
【請求項１１】
コンピュータシステムに、
制御対象をモータで制御するための目標値を入力する目標入力手順と、
制御対象または該制御対象を駆動するモータの動作を検出する検出手順と、
該検出手順において検出された検出結果と前記目標入力手順において入力された前記目標値とに基づいて、第１制御信号を生成する第１信号生成手順と、
モータに入力する制御信号と前記検出手順において検出された検出結果とに基づいて、制御対象の動作状態を示す状態量を推定する推定手順と、
該推定手順において推定された状態量に基づいて、第２制御信号を生成する第２信号生成手順と、
前記第１信号生成手順において生成された前記第１制御信号と、前記第２信号生成手順において生成された前記第２制御信号とから、モータに入力する制御信号を生成する生成手順と、
制御対象または該制御対象を駆動するモータの動作が所望の動作方向となっている状況において、前記生成手順において生成された制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合に、制御対象の反対方向の動作が制限されるように修正した制御信号をモータに入力する制限入力手順と
を実行させるためのモータ制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、状態推定器（オブザーバ）を使用したフィードバック制御によってモータを制御するモータ制御装置に関する。
【０００２】
【従来の技術】
従来から、状態推定器を使用したフィードバック制御によってモータを制御するモータ制御装置が利用されている。状態推定器を使用したフィードバック制御では、図７に示したように、まず、状態推定器Ｏが、モータＭに入力する制御信号で示される制御入力ｕと、モータＭが駆動する制御対象Ａの実際の動作状態を示す制御出力ｙとに基づいて、制御対象Ａの内部状態を表す状態量ｘを推定する。そして、推定された状態量ｘにゲインｇを積算した値と、目標となる制御量を示す目標値ｒと制御出力ｙとの偏差（積分）にゲインｇを積算した値とに基づいて、モータＭに入力する制御信号が生成され、これによって、制御出力ｙが目標値ｒに一致するようにモータＭの動作が制御される。
【０００３】
ここで、制御対象Ａの動作状態は、通常、モータＭが所定量回転することに伴いエンコーダ信号を出力するエンコーダによって検出しており、エンコーダ信号のカウント値が制御出力ｙとして検出される。また、制御信号を入力されたモータＭは、制御信号で示される制御入力ｕが正の値である場合、制御入力ｕの絶対値に応じて順方向（通常の使用状態において回転する方向）の角速度を増加させる。一方、制御信号で示される制御入力ｕが負の値である場合、制御入力ｕの絶対値に応じて逆方向の角速度を増加、つまり、順方向の角速度を減少させる。
【０００４】
【発明が解決しようとする課題】
しかし、上述のようなモータ制御装置では、モータ（または制御対象）を同一方向にのみ回転（または動作）させる状況である場合に、モータ（または制御対象）を一時的に反対方向へ回転（または動作）させてしまう恐れがあった。
【０００５】
制御対象の動作状態を検出するエンコーダは、エンコーダ信号を出力した直後にモータの回転が停止した状態から、再度、モータの回転を再開させると、モータが回転を再開してから所定量回転するまで最初のエンコーダ信号を出力できない。また、エンコーダ信号を出力する直前にモータの回転が停止した状態から、再度、モータの回転を再開させると、モータが回転を再開した直後に最初のエンコーダ信号を出力できる。このように、エンコーダが最初のエンコーダ信号を出力するタイミングは、以前にモータの回転が停止した状態によって、遅くなったり、早くなったりする。
【０００６】
例えば、エンコーダが最初のエンコーダ信号を遅く出力する場合、最初のエンコーダ信号が出力されるまでの間、状態推定器で推定された状態量ｘだけが増加していくため、モータには角速度を更に増加させる制御信号が入力される。これによって、エンコーダ信号のカウント値（制御出力ｙ）が増加すると、今度は、エンコーダ信号のカウント値が状態推定器で推定された状態量ｘよりも大きくなるため、モータには角速度を減少させる制御信号が入力される。モータが回転を開始した過渡期においては、モータの角速度が充分に速くないため、減少させるべき角速度の値が大きすぎると、モータの回転を止めるだけでなく、回転方向が逆転してしまう恐れがある。
【０００７】
一方、エンコーダが最初のエンコーダ信号を早く出力する場合、状態推定器で推定された状態量ｘが増加する前に、エンコーダ信号のカウント値（制御出力ｙ）が増加するため、モータには角速度を減少させる制御信号が入力される。この場合も、エンコーダが最初のエンコーダ信号を遅れて出力する場合と同様に、減少させるべき角速度の値が大きすぎると、モータの回転を止めるだけでなく、回転方向が逆転してしまう恐れがある。
【０００８】
このようにモータの回転方向が逆転した後は、エンコーダのカウント値（制御出力ｙ）よりも状態推定器で推定する状態量ｘの方が増加して、モータには角速度を増加させる制御信号が入力されるため、回転方向の逆転はすぐに収まる。しかし、こうした一時的な回転方向の逆転は、制御対象を一時的に反対方向に動作させてしまい、モータおよび制御対象を大きく振動させる要因となってしまう。
【０００９】
例えば、プリンタなどの紙送り機構を制御対象とした場合、モータの回転方向が一時的に逆転することは、紙送り機構が用紙を搬送している際に、用紙を反対方向に戻してしまい、用紙の停止精度が低下する要因となる恐れがあった。本発明は、モータ（または制御対象）を同一方向にのみ回転（または動作）させる状況である場合に、モータ（または制御対象）が反対方向に回転（または動作）してしまうことを抑制できるモータ制御装置、モータ制御方法、および、これらにおいて利用可能なモータ制御プログラムを提供することを目的とする。
【００１０】
【課題を解決するための手段および発明の効果】
上記問題を解決するため請求項１に記載のモータ制御装置は、制御対象をモータで制御するための目標値を入力する目標入力手段と、制御対象または該制御対象を駆動するモータの動作を検出する検出手段と、該検出手段によって検出された検出結果と前記目標入力手段によって入力された前記目標値とに基づいて、第１制御信号を生成する第１信号生成手段と、モータに入力する制御信号と前記検出手段によって検出された検出結果とに基づいて、制御対象の動作状態を示す状態量を推定する推定手段と、該推定手段により推定された状態量に基づいて、第２制御信号を生成する第２信号生成手段と、前記第１信号生成手段と前記第２信号生成手段とから、モータに入力する制御信号を生成する生成手段と、制御対象または該制御対象を駆動するモータの動作が所望の動作方向となっている状況において、前記生成手段により生成された制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合に、制御対象の反対方向の動作が制限されるように修正した制御信号をモータに入力する制限入力手段とを備えていることを特徴とする。
【００１１】
このように構成されたモータ制御装置によれば、生成手段により生成された制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合、制限入力手段によって、制御対象の動作が制限されるように修正した制御信号がモータに入力される。そのため、制御対象を同一方向にのみ動作させるべき状況である場合に、制御対象が所望の方向とは反対方向に動作してしまうことを抑制できる。
【００１２】
なお、上述した所望の動作方向とは、例えば、通常の使用状態で制御対象が動作する方向や、あらかじめ定められた動作方向などのことである。また、検出手段は、制御対象またはモータの動作を検出する手段であって、例えば、ロータリーエンコーダやリニアエンコーダなどを利用することができ、この場合、制御対象またはモータの動作を示す制御出力としてエンコーダ信号のカウント値が検出される。
【００１３】
また、生成手段は、モータに入力する制御信号を生成する手段であって、第１信号生成手段により生成された第１制御信号と、第２信号生成手段により生成された第２制御信号とに基づいて制御信号を生成する手段である。なお、この生成手段は、第１（または第２）信号生成手段により第１（または第２）制御信号が生成されていない場合に、第２（または第１）信号生成手段により生成された第２（または第１）制御信号のみに基づいて制御信号を生成するように構成してもよい。
【００１４】
また、制限入力手段は、制御対象の動作が制限されるように修正した制御信号をモータに入力する手段である。ここでは、制御対象が所望の動作方向とは反対方向に動作することを制限できればよく、例えば、モータが反対方向に回転しなくなるような制御信号に修正すればよい。また、この制限入力手段は、生成手段により生成された制御信号を直接モータに入力するように構成してもよいし、例えば、モータを駆動する駆動回路などを介して制御信号を間接的にモータに入力するように構成してもよい。
【００１５】
また、本発明における制限入力手段は、生成手段により生成された制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合に、制御信号を修正する手段である。しかし、生成手段により生成された制御信号が制御対象を所望の動作方向以外の方向に動作させる制御信号である場合に、制御信号を修正するように構成しても同様の効果を得ることができる。
【００１６】
また、請求項２に記載のモータ制御装置は、前記制限入力手段は、前記生成手段により生成された制御信号が制御対象を所望の動作方向に動作させる制御信号である場合には、該制御信号をモータに入力することを特徴とする。
【００１７】
このように構成されたモータ制御装置によれば、生成手段により生成された制御信号が制御対象を所望の動作方向に動作させる制御信号である場合、この制御信号をそのままモータに入力することができる。ところで、制限入力手段は、制御対象を所望の動作方向とは反対方向に動作させる制御信号を、モータが回転を開始した以降、常に修正するように構成すればよい。しかし、モータが回転を開始した以降に、モータが制御対象を所望の動作方向とは反対方向に動作させる状況が発生することがある。例えば、速い速度で動作している制御対象の動作を停止させる際に、モータが制御対象を所望の動作方向とは反対方向に動作させるような制御入力をモータに与えることによって、制御対象の動作にブレーキをかけるといった場合である。
【００１８】
そこで、制限入力手段を、モータが回転を開始してから所定の期間を経過するまでの間だけ、制御信号を修正するように構成するとよい。具体的な構成としては、請求項３に記載のように、前記制限入力手段は、前記生成手段により生成された制御信号が制御対象を前記反対方向に動作させる制御信号である場合に、モータが回転を開始してから所定の期間を経過するまでの間だけ、制御対象の動作が制限されるように制御信号を修正するとよい。
【００１９】
このように構成されたモータ制御装置によれば、モータが回転を開始してから所定の期間を経過するまでの間だけ制御信号が修正される。制御対象が所望の方向とは反対の方向に動作してしまうことは、モータが回転を開始した直後の過渡期において発生する。そのため、この過渡期に相当する期間を、制御対象の動作が制限されるように制御信号を修正する期間としておけば、モータが回転を開始した以降、モータにブレーキをかける必要がある状況が発生した際に、ブレーキをかけられなくなってしまうことを防止できる。
【００２０】
即ち、モータが回転を開始した直後の過渡期を過ぎた後は、制限入力手段による制御信号の修正を行わないため、過渡期を過ぎた後に制御対象の動作にブレーキを必要とする場合に適切な制動力が得られ、高速な動作が可能となる。なお、制御対象の動作が制限されるように制御信号を修正する期間としては、例えば、所定の時間が経過するまでの期間、検出手段による検出結果を示す値が所定の値になるまでの期間などを考えることができる。また、このような期間は、あらかじめ定められた期間であればよいが、何らかの条件によって変更されるように構成してもよい。例えば、目標入力手段により入力される目標値によって変更するように構成することを考えることができる。
【００２１】
具体的な構成としては、例えば、請求項４に記載のように、前記制限入力手段は、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値に応じて変更するように構成すればよい。このように構成されたモータ制御装置によれば、制限入力手段により制御信号の修正を行う期間を、目標入力手段により入力される目標値によって変更することができる。
【００２２】
なお、制御対象の動作速度（またはモータの角速度）は、通常、目標入力手段により入力される目標値に応じて決まる。例えば、目標値が大きい、つまり、制御対象の動作量（またはモータの回転量）が多くなる場合、制御対象の動作速度（またはモータの角速度）は速く、また、目標値が小さい、つまり、制御対象の動作量（またはモータの回転量）が小さくなる場合、制御対象の動作速度（またはモータの角速度）は遅くなる。
【００２３】
また、モータが回転を開始した直後の過渡期において、制御対象（またはモータ）が所望する方向とは反対の方向に動作（または回転）してしまうタイミングは、制御対象の動作速度（またはモータの角速度）が速いほど早くなる。また、制御対象が所望する方向とは反対の方向に動作してしまうまでに制御対象が動作する動作量（またはモータの回転量）は、制御対象の動作速度（またはモータの角速度）が速いほど多くなる。
【００２４】
これらのことから、目標入力手段により入力される目標値が大きいほど、制御対象が所望する方向とは反対の方向に動作してしまうタイミングは早く、また、制御対象が所望する方向とは反対方向に動作してしまうまでの制御対象の動作量（またはモータの回転量）は多いことになる。
【００２５】
そのため、例えば、制限入力手段により制御信号の修正を行う期間を所定の修正時間が経過するまでの期間とする場合であって、目標値の大小にかかわらず動作開始から一定の回転量に達するまでの期間を修正期間としたい場合には、制限入力手段は、目標入力手段により入力される目標値が大きいほど、修正時間が短くなるように変更すればよい。また、制限入力手段により制御信号の修正を行う期間を検出手段による検出結果を示す値が所定の値（以降、修正値とする）になるまでの期間とする場合であって、目標値の大小にかかわらず動作開始から一定時間が経過するまでの期間を修正期間としたい場合には、制限入力手段は、目標入力手段により入力される目標値が大きいほど、修正値が多くなるように変更すればよい。
【００２６】
また、請求項５に記載のモータ制御装置は、前記第１信号生成手段は、前記目標値と前記検出手段により検出された検出結果との偏差を積分演算する積分部と、該積分部による演算値に所定の第１ゲインを積算する第１ゲイン積算部とからなり、前記第２信号生成手段は、前記推定手段により推定された状態量を示す値に所定の第２ゲインを積算する第２ゲイン積算部からなることを特徴とする。
【００２７】
このように構成されたモータ制御装置によれば、第１信号生成手段、第２信号生成手段および推定手段によって、検出手段による検出結果が、目標入力手段により入力された目標値に一致するようにフィードバック制御を行うことができる。
【００２８】
また、制御対象の動作が制限されるように制御信号を修正する期間を、何らかの条件によって変更する別の構成として、請求項６に記載のような構成を考えることができる。請求項６に記載のモータ制御装置は、前記第１ゲイン積算部における前記第１ゲインの値が変更可能に構成されており、前記制限入力手段は、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値と前記第１ゲインの値とに応じて変更することを特徴とする。
【００２９】
このように構成されたモータ制御装置によれば、制限入力手段により制御信号の修正を行う期間を、目標入力手段により入力された目標値だけでなく、第１ゲイン積算部における第１ゲインの値に応じて変更することができる。なお、上述のように、目標入力手段により入力される目標値が大きい、つまり、制御対象の動作量（またはモータの回転量）が多くなるほど、制御対象の動作速度（またはモータの角速度）は速くなる。ここで、制御対象の動作速度（またはモータの角速度）は、第１ゲイン積算部における第１ゲインの値が大きいほど速くなる。
【００３０】
そのため、例えば、制限入力手段により制御信号の修正を行う期間を所定の修正時間が経過するまでの期間とする場合であって、目標値の大小にかかわらず動作開始から一定時間が経過するまでの期間を修正期間としたい場合には、制限入力手段は、第１ゲイン積算部における第１ゲインの値が大きいほど、修正時間が短くなるように変更すればよい。また、制限入力手段により制御信号の修正を行う期間を検出手段による検出結果が所定の修正値になるまでの期間とする場合であって、目標値の大小にかかわらず動作開始から一定の回転量に達するまでの期間を修正期間としたい場合には、制限入力手段は、第１ゲイン積算部における第１ゲインの値が大きいほど、修正値が多くなるように変更すればよい。
【００３１】
また、制御対象の動作が制限されるように制御信号を修正する期間を、何らかの条件によって変更する別の構成として、請求項７に記載のような構成を考えることができる。請求項７に記載のモータ制御装置は、前記第２ゲイン積算部における前記第２ゲインの値が変更可能に構成されており、前記制限入力手段は、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値と前記第２ゲインの値とに応じて変更することを特徴とする。
【００３２】
このように構成されたモータ制御装置によれば、制限入力手段により制御信号の修正を行う期間を、目標入力手段により入力された目標値だけでなく、第２ゲイン積算部における第２ゲインの値に応じて変更することができる。なお、上述のように、目標入力手段により入力される目標値が大きい、つまり、制御対象の動作量（またはモータの回転量）が多くなるほど、制御対象の動作速度（またはモータの角速度）は速くなる。ここで、制御対象の動作速度（またはモータの角速度）は、第２ゲイン積算部における第２ゲインの値が大きいほど速くなる。
【００３３】
そのため、例えば、制限入力手段により制御信号の修正を行う期間を所定の修正時間が経過するまでの期間とする場合であって、目標値の大小にかかわらず動作開始から一定時間が経過するまでの期間を修正期間としたい場合には、制限入力手段は、第２ゲイン積算部における第２ゲインの値が大きいほど、修正時間が短くなるように変更すればよい。また、制限入力手段により制御信号の修正を行う期間を検出手段による検出結果が所定の修正値になるまでの期間とする場合であって、目標値の大小にかかわらず動作開始から一定の回転量に達するまでの期間を修正期間としたい場合には、制限入力手段は、第２ゲイン積算部における第２ゲインの値が大きいほど、修正値が多くなるように変更すればよい。
【００３４】
また、上述した検出手段は、制御対象またはモータの動作を検出できるように構成すればよいが、例えば、制御対象の動作を検出するためには、請求項８に記載のように構成することが考えられる。請求項８に記載のモータ制御装置は、制御対象が、モータと共に回転する回転体を備えており、前記検出手段が、前記回転体に取り付けられていることを特徴とする。
【００３５】
このように構成されたモータ制御装置によれば、検出手段によって、制御対象が備える回転体の回転状態を検出することができる。また、検出手段により、モータの動作を検出するためには、請求項９に記載のように構成することが考えられる。
【００３６】
請求項９に記載のモータ制御装置は、前記検出手段が、モータの回転軸に取り付けられていることを特徴とする。このように構成されたモータ制御装置によれば、検出手段によって、モータの回転状態を直接検出することができる。
【００３７】
また、請求項１０に記載のモータ制御方法は、制御対象をモータで制御するための目標値を入力して、制御対象または該制御対象を駆動するモータの動作を検出して、該検出結果と、前記入力された前記目標値とに基づいて、第１制御信号を生成して、モータに入力する制御信号と前記検出結果とに基づいて、該制御対象の動作状態を示す状態量を推定して、該推定した状態量に基づいて、第２制御信号を生成して、前記第１制御信号と、前記第２制御信号とから、モータに入力する制御信号を生成して、制御対象または該制御対象を駆動するモータの動作が所望の動作方向となっている状況において、前記生成した制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合に、制御対象の反対方向の動作が制限されるように修正した制御信号をモータに入力することを特徴とする。
【００３８】
このようなモータ制御方法でモータを制御すれば、請求項１に記載のモータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御方法を、前記生成した制御信号が制御対象を所望の動作方向に動作させる制御信号である場合には、該制御信号をモータに入力するようにしてもよい。
【００３９】
このようなモータ制御方法でモータを制御すれば、請求項２に記載のモータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御方法を、前記生成した制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合に、モータが回転を開始してから所定の期間を経過するまでの間だけ、制御対象の動作が制限されるように制御信号を修正するようにしてもよい。
【００４０】
このようなモータ制御方法でモータを制御すれば、請求項３に記載のモータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御方法を、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値に応じて変更するようにしてもよい。
【００４１】
このようなモータ制御方法でモータを制御すれば、請求項４に記載のモータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御方法を、前記目標値と前記検出結果との偏差を積分演算し、該積分演算値に所定の第１ゲインを積算し、前記推定された状態量を示す値に所定の第２ゲインを積算して、前記第１ゲインを積算された演算値と前記第２ゲインを積算された演算値とに基づいて、モータに入力する制御信号を生成するようにしてもよい。
【００４２】
このようなモータ制御方法でモータを制御すれば、請求項５に記載のモータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御方法を、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値と前記第１ゲインの値とに応じて変更するようにしてもよい。
【００４３】
このようなモータ制御方法でモータを制御すれば、請求項６に記載のモータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御方法を、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値と前記第２ゲインの値とに応じて変更するようにしてもよい。
【００４４】
このようなモータ制御方法でモータを制御すれば、請求項７に記載のモータ制御装置と同様の作用・効果を得ることができる。
また、請求項１１に記載のモータ制御プログラムは、コンピュータシステムに、制御対象をモータで制御するための目標値を入力する目標入力手順と、制御対象または該制御対象を駆動するモータの動作を検出する検出手順と、該検出手順において検出された検出結果と前記目標入力手順において入力された前記目標値とに基づいて、第１制御信号を生成する第１信号生成手順と、モータに入力する制御信号と前記検出手順において検出された検出結果とに基づいて、制御対象の動作状態を示す状態量を推定する推定手順と、該推定手順において推定された状態量に基づいて、第２制御信号を生成する第２信号生成手順と、前記第１信号生成手順において生成された前記第１制御信号と、前記第２信号生成手順において生成された前記第２制御信号とから、モータに入力する制御信号を生成する生成手順と、制御対象または該制御対象を駆動するモータの動作が所望の動作方向となっている状況において、前記生成手順において生成された制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合に、制御対象の反対方向の動作が制限されるように修正した制御信号をモータに入力する制限入力手順とを実行させるためのプログラムである。
【００４５】
このようなプログラムによって制御されるコンピュータシステムは、請求項１に記載のモータ制御装置と同様の構成であるため、同モータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御プログラムを、前記制限入力手順において、前記生成手順で生成された制御信号が制御対象を所望の動作方向に動作させる制御信号である場合には、該制御信号をモータに入力するプログラムとしてもよい。
【００４６】
このようなプログラムによって制御されるコンピュータシステムは、請求項２に記載のモータ制御装置と同様の構成であるため、同モータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御プログラムを、前記制限入力手順において、前記生成手順で生成された制御信号が制御対象を所望の動作方向とは反対方向に動作させる制御信号である場合に、モータが回転を開始してから所定の期間を経過するまでの間だけ、制御対象の動作が制限されるように制御信号を修正するプログラムとしてもよい。
【００４７】
このようなプログラムによって制御されるコンピュータシステムは、請求項３に記載のモータ制御装置と同様の構成であるため、同モータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御プログラムを、前記制限入力手順において、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値に応じて変更するプログラムとしてもよい。
【００４８】
このようなプログラムによって制御されるコンピュータシステムは、請求項４に記載のモータ制御装置と同様の構成であるため、同モータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御プログラムを、前記第１信号生成手順において、前記目標値と前記検出手順において検出された検出結果との偏差を積分演算し、該積分演算値に所定の第１ゲインを積算して、前記第２信号生成手順において、前記推定手順で推定された状態量を示す値に所定の第２ゲインを積算するプログラムとしてもよい。
【００４９】
このようなプログラムによって制御されるコンピュータシステムは、請求項５に記載のモータ制御装置と同様の構成であるため、同モータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御プログラムを、前記制限入力手順において、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値と前記第１ゲインの値とに応じて変更するプログラムとしてもよい。
【００５０】
このようなプログラムによって制御されるコンピュータシステムは、請求項６に記載のモータ制御装置と同様の構成であるため、同モータ制御装置と同様の作用・効果を得ることができる。また、このモータ制御プログラムを、前記制限入力手順において、制御対象の動作が制限されるように制御信号を修正する期間を、前記目標値と前記第２ゲインの値とに応じて変更するプログラムとしてもよい。
【００５１】
このようなプログラムによって制御されるコンピュータシステムは、請求項７に記載のモータ制御装置と同様の構成であるため、同モータ制御装置と同様の作用・効果を得ることができる。なお、上述したモータ制御プログラムは、例えば、ＦＤ、ＣＤ−ＲＯＭなどの記録媒体、インターネットなどの通信回線網を介して、上述のモータ制御装置自身またはモータ制御装置を利用する利用者に提供されるものである。
【００５２】
また、モータ制御プログラムを実行するコンピュータシステムとしては、例えば、上述のモータ制御装置の備えるＣＰＵなどからなるコンピュータシステムを利用してもよいし、有線・無線を介してモータ制御装置に接続されるコンピュータシステムを利用してもよい。
【００５３】
【発明の実施の形態】
次に、本発明をプリンタに備えられている紙送り機構を駆動するＬＦ（Line Feed）モータの制御に採用した場合の実施形態を説明する。
［全体構成］
プリンタ１は、図１に示すように、用紙搬送ローラとしてのメインローラ（本発明における回転体）１０、メインローラ１０の回転状態を検出するロータリーエンコーダ（以降、単にエンコーダとする）１２、排紙ローラ１４ｂ、ＬＦモータ２０などからなる紙送り機構（本発明における制御対象）を備えている。
【００５４】
エンコーダ１２は、メインローラ１０と共に回転する回転板１２ａ、回転板１２ａが回転したことを検出するフォトインタラプタ１２ｂなどにより構成されている。このエンコーダ１２は、回転板１２ａが所定の角度回転する毎にエンコーダ信号を出力するように構成されており、回転板１２ａがメインローラ１０と共に回転することから、エンコーダ信号は、メインローラ１０により用紙が所定量（本実施形態においては１／１，５００inch）搬送される毎に出力される。
【００５５】
ＬＦモータ２０は、メインローラ１０に直結し、メインローラ１０を駆動する駆動プーリ（図示せず）との間に掛け渡されたベルト１６ａを介して、メインローラ１０および回転板１２ａを回転させると共に、駆動プーリ（図示せず）の回転を伝達するためのベルト１６ｂ及びアイドルギア１４ａを介して、排紙ローラ１４ｂを回転させることができる（図１における矢印ｃ、ｄ参照）。メインローラ１０にはピンチローラ１０ａが圧接され、排紙ローラ１４ｂには排出拍車１４ｃが圧接されており、用紙は、それぞれの圧接点を通過し、メインローラ１０と排紙ローラ１４ｂの間（の経路中）で画像を記録された後、排紙ローラ１４ｂ、排出拍車１４ｃの圧接点から排出される（図１における矢印ｅ参照）。ＬＦモータ２０は、メインローラ１０を、順方向（図１における矢印ａ参照）に回転させることによって、メインローラ１０から排紙ローラ１４ｂに向けて用紙を外部に向けて搬送することができる。
【００５６】
また、プリンタ１には、図２に示すように、プリンタ１全体の動作を制御するＣＰＵ３０、ＬＦモータ２０を駆動するモータ駆動回路４０、モータ駆動回路４０に入力するＰＷＭ信号を生成する信号生成回路１００などが内蔵されており、これらによって、本発明におけるモータ制御装置を構成している。
【００５７】
信号生成回路１００は、いわゆるASIC（Application Specific Integrated Circuit）であり、ＬＦモータ２０の制御に用いる各種パラメータを格納するレジスタ群１１０、エンコーダ１２から入力したエンコーダ信号に基づき用紙の搬送状態をチェックする搬送状態チェック部１２０、ＬＦモータ２０を制御するための制御信号を生成する信号生成部１３０、信号生成部１３０により生成された制御信号をＰＷＭ信号に変換する信号変換部１４０、クロック信号を信号生成回路１００全体に供給可能なクロック生成部１５０などにより構成されている。なお、クロック生成部１５０は、エンコーダ１２から入力されるエンコーダ信号の最短周期よりも短い周期のクロック信号を生成するように構成されている。
【００５８】
これらのうち、レジスタ群１１０は、信号生成回路１００を起動するための起動設定レジスタ１１１、後述する制御信号を生成する手順（図５）を行うタイミングを示す演算時間ｔｏをセットするタイミング設定レジスタ１１２、用紙の目標搬送量として目標搬送量に相当するエンコーダ信号の数を示す目標値ｒをセットする目標設定レジスタ１１３、後述する制御信号修正演算（図６）で制御信号を修正する期間を示す修正時間ｔｒをセットする修正設定レジスタ１１４、信号生成部１３０が制御信号を生成する際に利用する積分ゲインＦ１、状態フィードバックゲインＦ２をセットする第１ゲイン設定レジスタ１１５、第２ゲイン設定レジスタ１１６などからなる。なお、各レジスタのうちの起動設定レジスタ１１１は、信号生成回路１００を起動するための指令が書き込まれるレジスタであって、この起動設定レジスタ１１１への書き込みが行われることによって、信号生成回路１００全体が起動する。
【００５９】
また、搬送状態チェック部１２０は、エンコーダ１２からエンコーダ信号を入力したことを検出する検出部１２１、検出部１２１により検出されたエンコーダ信号の数をカウントするカウンタ１２２、用紙の搬送量が目標搬送量に到達した際に停止割込信号をＣＰＵ３０へ出力する割込処理部１２３などからなる。この割込処理部１２３は、カウンタ１２２によるカウント値ｙが、目標設定レジスタ１１３にセットされている目標値ｒ以上となった際に停止割込信号を出力する。
【００６０】
また、信号生成部１３０は、ＬＦモータ２０を制御するための制御信号を生成する演算処理部１３１、演算処理部１３１により生成された制御信号を修正する制限修正部１３２、クロック生成部１５０により生成されたクロック信号に基づいて時間をカウントする第１、第２タイマー１３３、１３４などからなる。
【００６１】
［ＣＰＵ３０による処理手順］
以下に、用紙を搬送する際にＣＰＵ３０が行う処理手順を図３に基づいて説明する。まず、ＣＰＵ３０は、レジスタ群１１０の各レジスタにパラメータをセットする（ｓ１１）。この処理においては、タイミング設定レジスタ１１２に演算時間ｔｏがセットされ、目標設定レジスタ１１３に目標値ｒがセットされ、修正設定レジスタ１１４に修正時間ｔｒがセットされ、第１ゲイン設定レジスタ１１５に積分ゲインＦ１がセットされ、第２ゲイン設定レジスタ１１６に状態フィードバックゲインＦ２がセットされる。
【００６２】
このとき、ＣＰＵ３０は、目標値ｒ毎にあらかじめ決められた値の積分ゲインＦ１および状態フィードバックゲインＦ２を各レジスタ１１５、１１６にセットする。ここでは、目標値ｒが大きいほど、絶対値の大きな積分ゲインＦ１および状態フィードバックゲインＦ２が各レジスタ１１５、１１６にセットされる。これら各ゲインＦ１、Ｆ２の絶対値は、ＬＦモータ２０の角速度に関係する数値であり、大きくなるほど角速度が速くなる。そのため、目標値ｒが大きいほど、絶対値の大きな各ゲインＦ１、Ｆ２が各レジスタ１１５、１１６にセットされることは、目標値ｒが大きく、ＬＦモータ２０の回転量が多くなるほど、ＬＦモータ２０の角速度が速くなることを示している。
【００６３】
また、ＣＰＵ３０は、目標値ｒ、積分ゲインＦ１および状態フィードバックゲインＦ２の組み合わせ毎にあらかじめ決められた値の修正時間ｔｒを修正設定レジスタ１１４にセットする。ここでは、目標値ｒ、積分ゲインＦ１および状態フィードバックゲインＦ２の各絶対値が大きいほど、短い修正時間ｔｒが修正設定レジスタ１１４にセットされる。
【００６４】
なお、修正時間ｔｒは、後述する制御信号修正演算（図６）で制御信号を修正する期間を示す時間であって、ＬＦモータ２０が用紙を戻す方向に紙送り機構を動作させる状況が発生しない期間である。この期間は、ＬＦモータ２０の角速度、つまり、紙送り機構の動作速度が速いほど短くなる。ここで、「用紙を戻す方向に紙送り機構を動作させる状況」とは、例えば、用紙を速い速度で搬送している紙送り機構の動作を停止させる際に、ＬＦモータ２０が用紙を戻す方向に紙送り機構を動作させて、紙送り機構の動作にブレーキをかけるといった状況である。このような状況は、通常、ＬＦモータ２０が回転を開始した直後の過渡期においては発生しないため、修正時間ｔｒは、この過渡期に相当する時間として決められている。
【００６５】
次に、ＣＰＵ３０は、信号生成回路１００を起動させる（ｓ１２）。この処理においては、レジスタ群１１０を構成する起動設定レジスタ１１１への書き込みが行われ、これによって、信号生成回路１００全体が起動する。こうして、信号生成回路１００が起動した後、信号生成回路１００を構成する信号生成部１３０が、後述する手順（図４）に従って、制御信号を生成する。そして、この制御信号が信号変換部１４０を介してモータ駆動回路４０に入力され、ＬＦモータ２０が用紙の搬送を開始する。この後、制御信号が繰り返しモータ駆動回路４０に入力された後、用紙の搬送量が目標搬送量に到達すると、信号生成回路１００を構成する搬送状態チェック部１２０の割込処理部１２３から、停止割込信号が出力されてくる。
【００６６】
そして、ＣＰＵ３０は、搬送状態チェック部１２０の割込処理部１２３から停止割込信号を入力するまで待機し（ｓ１３：ＮＯ）、停止割込信号を入力したら（ｓ１３：ＹＥＳ）、本処理を終了する。［信号生成部１３０により制御信号を生成する手順］以下に、信号生成回路１００の信号生成部１３０が制御信号を生成する手順を図４に基づいて説明する。この手順による制御信号の生成は、図３におけるｓ１２の処理で起動設定レジスタ１１１への書き込みが行われた後に開始される。なお、信号生成回路１００は、いわゆるASICからなり、ハードウェアとして動作するものであるが、ここでは理解を容易にするため、ハードウェアの動作をフローチャートに置き換えて説明する。
【００６７】
まず、信号生成部１３０は、第１タイマー１３３をスタートする（ｓ２１）。次に、信号生成部１３０は、第２タイマー１３４をスタートする（ｓ２２）。次に、信号生成部１３０は、演算を行うタイミングとなるまで待機する（ｓ２３：ＮＯ）。ここでは、第２タイマー１３４による計測時間ｔ２がタイミング設定レジスタ１１２にセットされている演算時間ｔｏに到達するまで（ｔ２＜ｔｏの間）待機する。
【００６８】
このｓ２３の手順において、演算を行うタイミング（ｔ２≧ｔｏ）となったら（ｓ２３：ＹＥＳ）、信号生成部１３０は、用紙の搬送量が目標搬送量に到達しているかどうかをチェックする（ｓ２４）。ここでは、カウンタ１２２によるカウント値ｙと、目標設定レジスタ１１３にセットされている目標値ｒとが比較され、カウント値ｙが目標値ｒより小さければ（ｙ＜ｒ）、用紙の搬送量が目標搬送量に到達していないと判断し、一方、カウント値ｙが目標値ｒ以上であれば（ｙ≧ｒ）、用紙の搬送量が目標搬送量に到達したと判断される。
【００６９】
このｓ２４の手順において、用紙の搬送量が目標搬送量に到達していなければ（ｓ２４：ＮＯ）、信号生成部１３０は、演算処理部１３１によって、モータ駆動回路４０に入力すべき制御信号を生成する（ｓ２５）。ここで、演算処理部１３１が制御信号を生成する詳細な手順は、後述の［演算処理部１３１による制御信号の生成］（図５）において説明する。
【００７０】
次に、信号生成部１３０は、制限修正部１３２によって、制御信号を修正する（ｓ２６）。この処理は、本制御信号を生成する手順を開始してから修正時間ｔｒが経過するまでの間に、ＬＦモータ２０が用紙を戻す方向に紙送り機構を動作させるような制御信号を、紙送り機構の動作が制限されるような制御信号に修正する処理である。なお、このｓ２６の手順における詳細な内容は、後述の［制限修正部１３２による制御入力修正演算］（図６）において説明する。
【００７１】
次に、信号生成部１３０は、制御信号を信号変換部１４０に出力する（ｓ２７）。制御信号を入力した信号変換部１４０では、制御信号をＰＷＭ信号に変換した後、モータ駆動回路４０に出力する。次に、信号生成部１３０は、第２タイマー１３４をストップおよびリセットした後（ｓ２８）、ｓ２２の手順に戻る。
【００７２】
そして、ｓ２２からｓ２８の手順が繰り返し行われた後、ｓ２４の手順において、用紙の搬送量が目標搬送量に到達したら（ｓ２４：ＹＥＳ）、信号生成部１３０は、第１タイマー１３３及び第２タイマー１３４をストップおよびリセットして（ｓ２９）、本制御信号を生成する手順を終了する。
【００７３】
［演算処理部１３１による制御信号の生成］
以下に、演算処理部１３１により制御信号を生成する手順を図５に基づいて説明する。
信号生成部１３０の演算処理部１３１は、カウンタ１２２によるカウント値ｙが目標設定レジスタ１１３にセットされている目標値ｒと一致するようにフィードバック制御を行うものであって、第１加算器add1、積分器int、第１ゲイン積算器g1、状態推定器obs、第２ゲイン積算器g2、第２加算器add2などにより構成されている。
【００７４】
この演算処理部１３１では、まず、第１加算器add1によって、目標設定レジスタ１１３にセットされている目標値ｒとカウンタ１２２によるカウント値ｙとの偏差（ｒ−ｙ）が演算される。次に、積分器intによって、第１加算器add1により演算された偏差をタイミング設定レジスタ１１２にセットされている演算時間ｔｏで離散積分した値、つまり、偏差の累積値（∫（ｒ−ｙ）ｄｔｏ）が演算される。
【００７５】
次に、第１ゲイン積算器g1によって、積分器intにより演算された累積値と、第１ゲイン設定レジスタ１１５にセットされている積分ゲインＦ１とを積算した値「ｕ１（＝−Ｆ１＊∫（ｒ−ｙ）ｄｔｏ）」を有する第１制御信号が生成される。
【００７６】
また、状態推定器obsによって、モータ駆動回路４０に入力する制御信号で示される制御入力ｕとカウンタ１２２によるカウント値ｙとに基づいて紙送り機構の内部状態を表す状態量ｘが推定される。次に、第２ゲイン積算器g2によって、状態推定器obsにより推定された状態量ｘと第２ゲイン設定レジスタ１１５にセットされている状態フィードバックゲインＦ２とを積算した値「ｕ２（＝−Ｆ２＊ｘ）」を有する第２制御信号が生成される。
【００７７】
そして、第２加算器add2によって、第１制御信号と第２制御信号とを加算した値「ｕ（＝ｕ１＋ｕ２）」を制御入力ｕとする制御信号が生成される。これによって、制御信号の制御入力ｕの値に応じた回転方向・角速度でＬＦモータ２０が回転し、この回転に伴って、メインローラ１０および排紙ローラ１４ｂが回転する。ここで、ＬＦモータ２０は、制御信号の制御入力ｕが正の値である場合、制御入力ｕの絶対値に相当する速度だけメインローラ１０の順方向（図１における矢印ａ参照）への角速度を増加させる。一方、制御信号の制御入力ｕが負の値である場合、制御入力ｕの絶対値に相当する速度だけメインローラ１０の逆方向（図１における矢印ｂ参照）への角速度を増加、つまり、順方向への角速度を減少させる。
【００７８】
［制限修正部１３２による制御入力修正演算］
以下に、制限修正部１３２により行われる制御入力修正演算を図６に基づいて説明する。まず、制限修正部１３２は、制御信号を修正する期間中であるかどうかをチェックする（ｓ３１）。ここでは、第１タイマー１３３による計測時間ｔ１が、修正設定レジスタ１１４にセットされている修正時間ｔｒに到達していなければ（ｔ１＜ｔｒ）、制御信号を修正する期間中であると判断され、一方、修正時間ｔｒに到達した後であれば（ｔ１≧ｔｒ）、制御信号を修正する期間中ではないと判断される。
【００７９】
このｓ３１の手順において、制御信号を修正する期間中であれば（ｓ３１：ＹＥＳ）、制限修正部１３２は、演算処理部１３１により生成された制御信号の制御入力ｕをチェックする（ｓ３２）。このｓ３２の手順において、制御入力ｕが負の値（ｕ＜０）であれば（ｓ３２：ＹＥＳ）、制限修正部１３２は、制御信号の制御入力ｕを制限する（ｓ３３）。ここでは、制御信号の制御入力ｕが「０」に修正される。これによって、ＬＦモータ２０がメインローラ１０の逆方向への角速度を増加させないような制御信号に修正されたことになる。
【００８０】
こうして、ｓ３３の手順を終えた後、ｓ３１の手順において制御信号を修正する期間中ではないとき（ｓ３１：ＮＯ）、または、ｓ３２の手順において制御信号の制御入力ｕが正の値であるとき（ｓ３２：ＮＯ）、本制御入力修正演算を終了する。
【００８１】
［本発明との対応関係］
上述したエンコーダ１２は、本発明における検出手段であり、エンコーダ信号を、制御対象である紙送り機構の動作として検出する。また、演算処理部１３１の第１ゲイン積算器g1は本発明における第１信号生成手段および第１ゲイン積算部、第２ゲイン積算器g2は本発明における第２信号生成手段および第２ゲイン積算部、状態推定器obsは本発明における推定手段、第２加算器add2は本発明における生成手段、積分器intは本発明における積分部である。また、第１ゲイン積算器g1において積算される積分ゲインは本発明における第１ゲイン、第２ゲイン積算器g2において積算される状態フィードバックゲインは本発明における第２ゲインである。
【００８２】
また、制限修正部１３２は、本発明における制限入力手段である。また、図４におけるｓ１１の処理で、目標設定レジスタ１１３に目標値ｒをセットするＣＰＵ３０は、本発明における目標入力手段である。また、メインローラ１０から排紙ローラ１４ｂに向けて用紙を外部に向けて搬送させる際には、メインローラ１０が順方向に回転することになるが、このメインローラ１０の順方向への回転が本発明における所望の動作方向であり、メインローラ１０の逆方向への回転が本発明における所望の動作方向とは反対方向の動作である。
【００８３】
［効果］
このように構成されたプリンタ１によれば、図６におけるｓ３３の手順で、制御入力ｕが負の値となっている制御信号が、制御入力ｕが「０」となるように修正される。そのため、この制御信号によって、ＬＦモータ２０がメインローラ１０の逆方向への角速度を増加させ、用紙を戻す方向に紙送り機構を動作させるといったことを抑制することができる。
【００８４】
また、制御信号の制御入力ｕが正の値となっている場合、この制御信号をそのままモータ駆動回路４０をに入力することができる。また、図６においては、制御信号を修正する期間中だけ、制御入力ｕが負の値となっている制御信号が修正される。制御信号を修正する期間とは、制御信号を生成する手順を開始してから修正時間ｔｒが経過するまでの間であり、ＬＦモータ２０が回転を開始した直後の過渡期に相当する時間である。このような過渡期においては、通常、ＬＦモータ２０が用紙を戻す方向に紙送り機構を動作させるといった状況が発生しない。そのため、この過渡期に相当する期間を、制御信号を修正する期間としておけば、過渡期を過ぎた後にＬＦモータ２０にブレーキをかける必要がある状況が発生した場合に、ブレーキをかけられなくなってしまうことを防ぐことができる。
【００８５】
即ち、過渡期を過ぎた後は、制御信号の修正が行われないため、過渡期を過ぎた後に制御対象の動作にブレーキを必要とする場合に適切な制動力が得られ高速な動作が可能となる。また、図３におけるｓ１１の処理で、目標値ｒが大きいほど、絶対値の大きな積分ゲインＦ１および状態フィードバックゲインＦ２が各レジスタ１１５、１１６にセットされる。このように、積分ゲインＦ１および状態フィードバックゲインＦ２を、目標設定レジスタ１１３にセットされる目標値ｒによって変更することができる。
【００８６】
また、ｓ１１の処理で、目標値ｒ、積分ゲインＦ１および状態フィードバックゲインＦ２の各絶対値が大きいほど、短い修正時間ｔｒが修正設定レジスタ１１４にセットされる。このように、制御信号を修正する期間を示す修正時間ｔｒを、目標設定レジスタ１１３にセットされる目標値ｒによって変更することができる。
【００８７】
また、信号生成部１３０の演算処理部１３１によって、カウンタ１２２によるカウント値ｙが目標設定レジスタ１１３にセットされている目標値ｒと一致するようにフィードバック制御を行うことができる。また、エンコーダ１２によって、メインローラ１０の回転状態を検出することができる。
【００８８】
［変形例］
以上、本発明の実施形態について説明したが、本発明は上記の具体的な実施形態に限定されず、このほかにも様々な形態で実施することができる。例えば、本実施形態においては、本発明のモータ制御装置を、プリンタ１に備えられている紙送り機構を駆動するＬＦモータ２０の制御に採用した場合の実施形態を例示した。しかし、本発明のモータ制御装置を、制御対象としてプリンタ１の備えるキャリッジを動作させるために利用することもできる。
【００８９】
また、本実施形態においては、紙送り機構の動作をロータリーエンコーダ１２によって検出するように構成されているものを例示した。しかし、紙送り機構の動作を検出するためには、ロータリーエンコーダ１２以外の検出手段として、例えば、リニアエンコーダなどを利用することもできる。
【００９０】
また、本発明においては、エンコーダ１２がメインローラ１０に取り付けられており、メインローラ１０と共に回転板１２ａが回転するように構成されたものを例示した。しかし、このエンコーダ１２を、ＬＦモータ２０の回転軸に取り付け、ＬＦモータ２０と共に回転板１２ａが回転するように構成してもよい。この場合、エンコーダ１２によって、ＬＦモータ２０の回転状態を直接検出することができる。
【００９１】
また、図３におけるｓ１１の手順では、目標値ｒ、積分ゲインＦ１および状態フィードバックゲインＦ２の絶対値が大きいほど、短い修正時間ｔｒが修正設定レジスタ１１４にセットされるように構成されたものを例示した。しかし、このｓ１１の手順で、目標値ｒ、積分ゲインＦ１および状態フィードバックゲインＦ２の各値に拘わらず、一定の修正時間ｔｒが修正設定レジスタ１１４にセットされるように構成してもよい。
【００９２】
また、本実施形態においては、図３に示した処理をＣＰＵ３０が実行するように構成されたものを例示した。しかし、図３に示した処理は、有線・無線を介してプリンタ１に接続されるコンピュータシステムが実行するように構成してもよい。
【００９３】
また、本実施形態においては、制御信号を生成する手順（図４）がASICからなる信号生成部によってハードウェア的に行われるものを例示した。しかし、制御信号を生成する手順を行うためのプログラムに従って、ＣＰＵ３０またはプリンタ１に無線・有線を介して接続されるコンピュータシステムによりソフトウェア的に行われるように構成してもよい。
【００９４】
また、本実施形態においては、制御入力修正演算（図６）が制限修正部によってハードウェア的に行われるものを例示した。しかし、制御入力修正演算を行うためのプログラムに従って、ＣＰＵ３０またはプリンタ１に無線・有線を介して接続されるコンピュータシステムによりソフトウェア的に行われるように構成してもよい。
【図面の簡単な説明】
【図１】プリンタの紙送り機構を示す側面図
【図２】プリンタの制御系統を示すブロック図
【図３】用紙を搬送する際にＣＰＵが行う処理手順を示すフローチャート
【図４】信号生成部により制御信号を生成する手順を示すフローチャート
【図５】演算処理部の制御ブロックを示す図
【図６】制限修正部による制御入力修正演算の手順を示すフローチャート
【図７】状態推定器を利用してモータを制御する制御ブロックを示す図
【符号の説明】
１・・・プリンタ、１０・・・メインローラ、１０ａ・・・ピンチローラ、１２・・・ロータリーエンコーダ、１２ａ・・・回転板、１２ｂ・・・フォトインタラプタ、１４ａ・・・アイドルギア、１４ｂ・・・排紙ローラ、１４ｃ・・・排出拍車、１６ａ、１６ｂ・・・ベルト、２０・・・ＬＦモータ、３０・・・ＣＰＵ、４０・・・モータ駆動回路、１００・・・信号生成回路、１１０・・・レジスタ群、１１１・・・起動設定レジスタ、１１２・・・タイミング設定レジスタ、１１３・・・目標設定レジスタ、１１４・・・修正設定レジスタ、１１５・・・第１ゲイン設定レジスタ、１１６・・・第２ゲイン設定レジスタ、１２０・・・搬送状態チェック部、１２１・・・検出部、１２２・・・カウンタ、１２３・・・割込処理部、１３０・・・信号生成部、１３１・・・演算処理部、１３２・・・制限修正部、１３３・・・第１タイマー、１３４・・・第２タイマー、１４０・・・信号変換部、１５０・・・クロック生成部。
【図１】
0003700665.tif 000002
【図２】
0003700665.tif 000003
【図３】
0003700665.tif 000004
【図４】
0003700665.tif 000005
【図５】
0003700665.tif 000006
【図６】
0003700665.tif 000007
【図７】
0003700665.tif 000008