(57)【特許請求の範囲】
【請求項１】
対象物としてのモータ及び前記モータによって駆動される駆動体のいずれか一方の変位量又は変位速度を、前記対象物の動作量として計測する計測手段と、
設定された操作量に対応する駆動電流又は電圧で前記モータを駆動する駆動装置、に対する前記操作量の設定動作を行う手段であって、前記計測手段により計測された前記対象物の動作量と、予め定められた前記動作量の目標値と、に基づいて、前記操作量を設定することにより、前記対象物の動作量をフィードバック制御する主制御手段と、
前記主制御手段が前記駆動装置に対する前記操作量の設定動作を開始する前に、前記駆動装置に対する前記操作量の設定動作を行う手段であって、前記計測手段により計測された前記対象物の動作量に依らない予め定められた規則に従って、前記操作量を設定する初期制御手段と、
前記計測手段により計測された前記対象物の動作量に基づき、前記対象物の変位を検知する検知手段と、
前記検知手段により前記対象物の変位が検知された後、前記計測手段により計測された前記対象物の動作量の一階時間微分が所定条件を満足するまでは、前記初期制御手段に前記駆動装置に対する前記操作量の設定動作を実行させ、前記一階時間微分が前記所定条件を満足した時点で、前記初期制御手段に代えて前記主制御手段に前記駆動装置に対する前記操作量の設定動作を開始させ、前記主制御手段に前記駆動装置に対する前記操作量の設定動作を開始させる時点である切替時点では、前記主制御手段に対し、前記切替時点からの前記目標値の軌跡を示す目標プロファイルを設定する切替設定手段と、
を備え、
前記切替設定手段は、前記切替時点から規定時刻までの残り時間、及び、前記計測手段により計測された前記切替時点での前記対象物の動作量によって定まる、前記規定時刻までの前記動作量の目標値の軌跡を示す前記目標プロファイルであって、前記切替時点での前記動作量の目標値を前記計測手段により計測された前記切替時点での前記対象物の動作量に対応する値に設定し、前記規定時刻での前記動作量の目標値を規定値に設定した目標プロファイルを、前記主制御手段に設定するものであり、前記一階時間微分が前記所定条件を満足した時点として、前記計測手段により計測される前記対象物の動作量の一階時間微分が、仮に現時点で前記主制御手段に前記操作量の設定動作を開始させた場合に前記主制御手段に対して設定される前記目標プロファイルにおける現時点での前記動作量の目標値の一階時間微分に対応した値に到達した時点で、前記主制御手段に前記駆動装置に対する前記操作量の設定動作を開始させること
を特徴とするモータ制御装置。
【請求項２】
対象物としてのモータ及び前記モータによって駆動される駆動体のいずれか一方の変位量又は変位速度を、前記対象物の動作量として計測する計測手段と、
設定された操作量に対応する駆動電流又は電圧で前記モータを駆動する駆動装置、に対する前記操作量の設定動作を行う手段であって、前記計測手段により計測された前記対象物の動作量と、予め定められた前記動作量の目標値と、に基づいて、前記操作量を設定することにより、前記対象物の動作量をフィードバック制御する主制御手段と、
前記主制御手段が前記駆動装置に対する前記操作量の設定動作を開始する前に、前記駆動装置に対する前記操作量の設定動作を行う手段であって、前記計測手段により計測された前記対象物の動作量に依らない予め定められた規則に従って、前記操作量を設定する初期制御手段と、
前記計測手段により計測された前記対象物の動作量に基づき、前記対象物の変位を検知する検知手段と、
少なくとも前記検知手段により前記対象物の変位が検知される時点までは、前記初期制御手段に前記駆動装置に対する前記操作量の設定動作を実行させ、前記検知手段による前記対象物の変位の検知後、前記初期制御手段に代えて前記主制御手段に前記駆動装置に対する前記操作量の設定動作を開始させ、前記主制御手段に前記駆動装置に対する前記操作量の設定動作を開始させる時点である切替時点では、前記主制御手段に対し、前記切替時点からの前記目標値の軌跡を示す目標プロファイルを設定する切替設定手段と、
を備え、
前記主制御手段は、前記駆動装置に対して設定する前記操作量として、前記計測手段により計測された前記対象物の動作量と、前記目標プロファイルから特定される前記動作量の目標値と、に基づき、積分要素を含む伝達関数に従う操作量を算出するものであり、
前記切替設定手段は、前記目標プロファイルとして、前記切替時点での前記目標値が、前記計測手段により計測された前記切替時点での前記対象物の動作量に対応した値を示し、前記切替時点での前記目標値の一階時間微分が、前記計測手段により計測された前記切替時点での前記対象物の動作量の一階時間微分に対応した値を示す目標プロファイルを、前記主制御手段に対して設定し、前記切替時点で、前記主制御手段に前記操作量の算出動作を開始させる際には、前記積分要素に対し、前記積分要素の前回出力値として、前記初期制御手段が前記駆動装置に対して最後に設定した前記操作量、又は、この時点で前記初期制御手段が仮に前記駆動装置に対して前記操作量を設定する場合に前記駆動装置に対して設定される前記操作量を設定すること
を特徴とするモータ制御装置。
【請求項３】
前記初期制御手段は、前記検知手段により前記対象物の変位が検知された時点以降、前記切替時点が到来するまでの期間、前記操作量として漸次減少する値を設定すること
を特徴とする請求項１又は請求項２記載のモータ制御装置。
【請求項４】
前記初期制御手段は、前記検知手段により前記対象物の変位が検知される時点までの期間、前記操作量として一定の値又は漸次増加する値を設定すること
を特徴とする請求項１〜請求項３のいずれか一項記載のモータ制御装置。
【請求項５】
前記切替設定手段は、前記検知手段により前記対象物の変位が検知された後、前記計測手段により計測された前記対象物の動作量の一階時間微分が所定条件を満足するまでは、前記初期制御手段に前記駆動装置に対する前記操作量の設定動作を実行させ、前記所定条件が満足された時点で、前記初期制御手段に代えて前記主制御手段に前記駆動装置に対する前記操作量の設定動作を開始させること
を特徴とする請求項２記載のモータ制御装置。
【請求項６】
前記主制御手段は、前記駆動装置に対して設定する前記操作量として、前記計測手段により計測された前記対象物の動作量と、前記目標プロファイルから特定される前記動作量の目標値と、に基づき、積分要素を含む伝達関数に従う操作量を算出するものであり、
前記切替設定手段は、前記切替時点で、前記主制御手段に前記操作量の算出動作を開始させる際には、前記積分要素に対し、前記積分要素の前回出力値として、前記初期制御手段が前記駆動装置に対して最後に設定した前記操作量、又は、この時点で前記初期制御手段が仮に前記駆動装置に対して前記操作量を設定する場合に前記駆動装置に対して設定される前記操作量を設定すること
を特徴とする請求項１記載のモータ制御装置。
【請求項７】
シートに画像を形成する画像形成ユニットと、
モータを内蔵し、前記モータから発生する動力に作用されて、前記画像形成ユニットを前記シート上において搬送する搬送ユニットと、
前記モータを駆動する駆動装置としてのモータドライバであって、設定された操作量に対応する駆動電流又は電圧で前記モータを駆動するモータドライバと、
前記操作量を設定する動作を行うことにより、前記モータドライバを介して、前記搬送ユニットによる前記画像形成ユニットの搬送動作を制御する請求項１〜請求項６のいずれか一項記載のモータ制御装置と、
前記搬送ユニットによる前記画像形成ユニットの搬送時に、前記画像形成ユニットに前記シートに対する画像形成動作を実行させる記録制御ユニットと、
を備えることを特徴とする画像形成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置及び画像形成システムに関する。
【背景技術】
【０００２】
従来、モータを介してキャリッジを搬送することにより、キャリッジに搭載された記録ヘッドを搬送し、この記録ヘッドを通じてシートに画像を形成するインクジェットプリンタ等の画像形成システムが知られている。画像形成システムで用いられるモータ制御装置としては、モータ制御によってキャリッジの速度を制御する装置が挙げられる。例えば、キャリッジを定速搬送するまでの加速区間の内、前半の加速度を、許容最大加速度に設定し、後半の加速度曲線を、最大許容加速度から最終的に加速度０となるような単調減少曲線に設定するものが知られている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−０６７７５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、従来の速度制御装置では、対象物（キャリッジ等）の速度（計測速度）を参照し、予め定められた加速度曲線に対応する速度指令値と計測速度との偏差に基づいたフィードバック制御を、対象物の制御開始時点から行う。しかしながら、制御開始時点から速度指令値と計測速度との偏差に基づいたフィードバック制御を行うと、以下のことが発生する。例えば、モータや対象物等に働く静止摩擦力を超える十分な動力が、モータを介して対象物に作用するまでは、対象物は動き出さない。このため、対象物が動き出すまでは、計測速度はゼロのままであり、速度指令値と計測速度との偏差は広がる。
【０００５】
これに対し、対象物が動き出すと摩擦力は大きく低下することになるため、対象物が急加速する。これは、静止摩擦力によって、漸次広がる偏差に基づいてフィードバック制御をするためである。このような急加速が生じると、対象物の計測速度が速度指令値を大きく超えてしまう。すると、速度指令値に対して大きく超えた計測速度を抑えるような制御が働くので、今度は対象物の計測速度が速度指令値を下回ってしまう。更に、対象物の計測速度が速度指令値を下回ったことを原因として、対象物を加速させるような制御が働く。その結果、対象物の速度が振動する現象が生じてしまうのである。即ち、従来の速度制御装置では、対象物が動き出す前後における負荷（摩擦力等）の大幅な変化に対応することができない。よって、対象物の動き出し後において適切なフィードバック制御を行うことができないといった問題がある。
【０００６】
本発明は、こうした問題に鑑みなされたものであり、上述した振動現象の発生を抑えて、駆動対象の位置や速度の制御を高精度に実現可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するためになされた本発明のモータ制御装置は、計測手段と、主制御手段と、初期制御手段と、検知手段と、切替設定手段と、を備える。計測手段は、対象物の変位量又は変位速度を、当該対象物の動作量として計測する手段である。ここで言う対象物とは、モータ、又は、モータによって駆動される駆動体のことであり、モータの変位量／変位速度とは、モータの回転量／回転速度のことであり、駆動体の変位量／変位速度とは、駆動体が回転するものである場合、駆動体の回転量／回転速度のことであり、駆動体
が移動するものである場合、駆動体の移動量／移動速度のことである。
【０００８】
また、主制御手段及び初期制御手段は、設定された操作量に対応する駆動電流又は電圧でモータを駆動する駆動装置に対する上記操作量の設定動作を行う手段である。主制御手段は、計測手段により計測された対象物の動作量と、予め定められた動作量の目標値と、に基づき、上記操作量を設定することによって、対象物の動作量をフィードバック制御する。例えば、主制御手段は、予め定められた動作量の目標値と上記計測手段により計測された対象物の動作量との偏差を、所定の伝達関数に入力し、当該伝達関数の出力を、上記駆動装置に対して設定する操作量として算出する構成にすることができる。
【０００９】
一方、初期制御手段は、主制御手段が駆動装置に対する操作量の設定動作を開始する前に、駆動装置に対する操作量の設定動作を行う手段である。初期制御手段は、計測手段により計測された対象物の動作量に依らない予め定められた規則に従って上記操作量を設定する。この他、検知手段は、計測手段により計測された対象物の動作量に基づき、対象物の変位を検知する手段である。例えば、検知手段は、計測手段により計測された対象物の動作量が初期値（例えばゼロ）から変化したことを検知することによって、対象物の変位を検知する構成にすることができる。
【００１０】
そして、切替設定手段は、少なくとも検知手段により対象物の変位が検知される時点までは、初期制御手段に駆動装置に対する操作量の設定動作を実行させ、検知手段による対象物の変位の検知後、初期制御手段に代えて主制御手段に駆動装置に対する操作量の設定動作を開始させる。切替設定手段は、主制御手段に駆動装置に対する操作量の設定動作を開始させる時点としての切替時点で、主制御手段に対し、切替時点からの目標値の軌跡を示す目標プロファイルを設定する。
【００１１】
具体的に、切替設定手段は、上記目標プロファイルとして、切替時点での目標値が、計測手段により計測された切替時点での対象物の動作量に対応した値を示し、切替時点での目標値の一階時間微分が、計測手段により計測された切替時点での対象物の動作量の一階時間微分に対応した値を示す目標プロファイルを、主制御手段に対して設定する。ここで言う「対象物の動作量に対応した値」は、計測手段により計測された対象物の動作量と同一の値、及び、この動作量を基準に所定の規則で定まる値を含み、「動作量の一階時間微分に対応した値」は、計測手段により計測された対象物の動作量の一階時間微分と同一の値、又は、この動作量の一階時間微分を基準に所定の規則で定まる値を含む。更に言えば、上記動作量の一階時間微分は、計測手段により計測された切替時点での対象物の動作量と、それ以前において計測手段により計測された対象物の動作量との差を、その差が生じた時間で除算することにより求めることができる。
【００１２】
このモータ制御装置によれば、少なくとも検知手段により対象物の変位が検知される時点までは主制御手段によるフィードバック制御が開始されない。そして、主制御手段によるフィードバック制御が開始される上記切替時点では、その時点での動作量の計測値に基づいた、その時点での対象物の運動に適合した上記目標プロファイルが、主制御手段に設定される。従って、本発明のモータ制御装置によれば、フィードバック制御の開始時に、動作量の目標値と計測値との間に大きな乖離が生じて振動現象が発生するのを抑えることができ、対象物の動作量を、フィードバック制御により高精度に制御することができる
【００１３】
特に、検知手段により対象物の変位が検知された時点から少し時間を空けて、主制御手段によるフィードバック制御を行えば、動き出し時の急加速が、主制御手段によるフィードバック制御に影響を与えるのを抑えることができ、一層、高精度に対象物の動作量を制御することができる。従って、切替設定手段は、検知手段により対象物の変位が検知された時点以降、所定条件が満足されるまでは、初期制御手段に駆動装置に対する操作量の設
定動作を実行させ、所定条件が満足された時点で、初期制御手段に代えて主制御手段に駆動装置に対する操作量の設定動作を開始させる構成にされるとよい。
【００１４】
また、初期制御手段は、検知手段により対象物の変位が検知された時点以降、切替時点が到来するまでの期間、操作量として漸次減少する値を設定する構成にされるとよい。検知手段により対象物の変位が検知された時点では、対象物が急加速していることが予想されるので、上述したように操作量を漸次減少させることで、対象物の加速を抑えると、フィードバック制御への切替を、一層適切に行うことができる。主制御手段に対して設定される目標プロファイルは、上述したように、切替時点での動作量（計測値）及びこの動作量の一階時間微分による制限を受けるため、対象物が急加速し、動作量及び動作量の一階時間部分が当初の予想を超えている状態で、主制御手段に対して目標プロファイルを設定して、主制御手段にフィードバック制御を開始させると、モータの能力に対して無理な目標プロファイルが設定される可能性がある。一方、上述したように操作量を漸次減少させた後、フィードバック制御を開始すれば、対象物の運動を調整した後に、主制御手段によるフィードバック制御を開始することができ、一層高精度に動作量の制御を行うことができる。
【００１５】
また、初期制御手段は、検知手段により対象物の変位が検知される時点までの期間、操作量として一定の値又は漸次増加する値を設定する構成にすることができる。操作量として一定の値を設定する場合には、例えば、対象物が当該一定の値で動き出すように、設計者が操作量を選択すればよい。
【００１６】
この他、切替設定手段は、検知手段により対象物の変位が検知された後、計測手段により計測された対象物の動作量の一階時間微分が所定条件を満足するまでは、初期制御手段に駆動装置に対する操作量の設定動作を実行させ、当該所定条件が満足された時点で、初期制御手段に代えて主制御手段に駆動装置に対する操作量の設定動作を開始させる構成にすることができる。このようにして動作量の一階時間微分を指標に、主制御手段によるフィードバック制御を開始するタイミングを調整すると、一層適切なタイミングで主制御手段によるフィードバック制御を開始することができ、一層高精度な動作量のフィードバック制御を実現することができる。
【００１７】
また、対象物を、静止した状態から規定速度まで、一定時間で加速させたい場合や、対象物を、静止した状態から規定位置まで、一定時間で変位させたい場合等において、切替設定手段は、上記切替時点から規定時刻までの残り時間、及び、計測手段により計測された切替時点での対象物の動作量によって定まる、規定時刻までの動作量の目標値の軌跡を示す目標プロファイルであって、切替時点での動作量の目標値を、計測手段により計測された切替時点での対象物の動作量に対応する値に設定し、規定時刻での動作量の目標値を、規定値に設定した目標プロファイルを、主制御手段に設定する構成にすることができる。尚、規定時刻は、初期制御手段に駆動装置に対する操作量の設定動作を開始させた時点を基準（ゼロ）とする時刻として定めることができる。
【００１８】
そして、このような目標プロファイルを主制御手段に設定する場合、切替設定手段は、計測手段により計測される対象物の動作量の一階時間微分が、仮に現時点で主制御手段に操作量の設定動作を開始させた場合に主制御手段に対して設定される目標プロファイルにおける現時点での動作量の目標値の一階時間微分に対応した値に到達した時点で、主制御手段に駆動装置に対する操作量の設定動作を開始させる構成することができる。このように切替設定手段を構成すれば、目標プロファイルの設定に制約がある中でも、上記切替地点で、目標プロファイルを適切に設定することができ、高精度に対象物の動作量を制御することができる。
【００１９】
この他、主制御手段は、駆動装置に対して設定する操作量として、計測手段により計測された対象物の動作量と、目標プロファイルから特定される動作量の目標値と、に基づき、積分要素を含む伝達関数に従う操作量を算出する構成にすることができ、切替設定手段は、上記切替時点で、主制御手段に操作量の算出動作を開始させる際に、積分要素に対し、積分要素の前回出力値として、「初期制御手段が駆動装置に最後に設定した操作量」又は「この時点で初期制御手段が仮に駆動装置に対して操作量を設定する場合に駆動装置に対して設定される操作量」を設定する構成にされるとよい。周知のように、積分要素は、積分要素の前回出力値を帰還させる構成を含むが、この積分要素の前回出力値として、上述した操作量を設定すれば、初期制御手段による操作量の設定動作から主制御手段による操作量の設定動作への切替前後に、駆動装置に対して設定される操作量に不連続が生じるのを抑えることができ、一層、高精度に動作量の制御を行うことができる。
【００２０】
また、上述したモータ制御装置は、画像形成システムに組み込むことができる。即ち、画像形成システムは、シートに画像を形成する画像形成ユニットと、モータを内蔵し、モータから発生する動力に作用されて、画像形成ユニットをシート上において搬送する搬送ユニットと、モータを駆動する駆動装置としてのモータドライバであって、設定された操作量に対応する駆動電流又は電圧でモータを駆動するモータドライバと、操作量を設定する動作を行うことにより、モータドライバを介して、搬送ユニットによる画像形成ユニットの搬送動作を制御する上述のモータ制御装置と、搬送ユニットによる画像形成ユニットの搬送時に、画像形成ユニットにシートに対する画像形成動作を実行させる記録制御ユニットと、を備えた構成にすることができる。
【００２１】
このように画像形成システムを構成すれば、高精度に画像形成ユニットの動作量を制御することができ、シートに対し画像を高品質に形成することができる。例えば、画像形成ユニットとしてインクジェットヘッドを備える場合には、インクジェットヘッドの運動によってインク液滴のシートへの着弾地点が変化することから、従来システムでは、画像形成ユニットを定速で安定させてから、インク液滴の吐出動作をインクジェットヘッドに実行させていたが、本発明のモータ制御装置によれば、加速時においても精度よくインクジェットヘッドの動作量を制御することができるため、定速時に加えて加速時にもインクジェットヘッドにインク液滴の吐出動作を実行させても、シートに高品質な画像を形成することができる。
【図面の簡単な説明】
【００２２】
【図１】制御システム１及びモータ制御装置５０の構成を表すブロック図である。
【図２】インクジェットプリンタ１００の構成を表す図である。
【図３】駆動対象１０の速度Ｖ及び目標速度Ｖｒ、並びに、駆動対象１０を駆動するモータ２０に対する操作量Ｕの変化を表すグラフ（Ａ）と、その拡大図（Ｂ）である。
【図４】第一実施例のモータ制御ユニット６０により実行される速度制御処理を表すフローチャートである。
【図５】速度制御処理で用いることのできる制御器６０ａの構成を表す図である。
【図６】インクジェットプリンタ２００の構成を表す図である。
【図７】第二実施例のモータ制御ユニット６０により実行される位置制御処理を表すフローチャートである。
【図８】従来型の制御での駆動対象１０の速度Ｖ及び目標速度Ｖｒ、並びに、操作量Ｕの変化を表すグラフである。
【発明を実施するための形態】
【００２３】
以下に本発明の実施例として、第一実施例及び第二実施例の制御システム１並びにモータ制御装置５０の構成を、図面を用いて説明する。但し、第一実施例及び第二実施例の制御システム１並びにモータ制御装置５０の詳細な構成を説明するのに先立っては、第一実
施例及び第二実施例の制御システム１並びにモータ制御装置５０の主な基本構成を説明する。
＜基本構成＞
【００２４】
第一実施例及び第二実施例の制御システム１は、図１に示すように、駆動対象１０を駆動するモータ（直流モータ）２０と、エンコーダ３０と、エンコーダ３０の出力信号に基づき、モータ２０を制御し、これによって、駆動対象１０の運動を制御するモータ制御装置５０と、を備える。また、このモータ制御装置５０は、モータドライバ５１と、位置検出器５３と、速度検出器５５と、モータ制御ユニット６０と、を備える。エンコーダ３０としては、例えば、駆動対象１０の移動方向に沿って取り付けられる直線型のエンコーダスケールと、駆動対象に取り付けられる光センサとを備えるリニアエンコーダが採用され得る。その他、エンコーダ３０としては、例えば、モータ２０の回転軸に接続されたロータリエンコーダが採用されてもよい。
【００２５】
モータドライバ５１は、入力された操作量Ｕに対応する電流又は電圧をモータ２０に印加して、モータ２０を駆動する周知のモータドライバである。例えば、モータドライバ５１は、アナログ制御又はＰＷＭ制御により操作量Ｕに対応する電流又は電圧をモータ２０に印加する構成にすることができる。
【００２６】
一方、位置検出器５３は、エンコーダ３０の出力信号に基づき、駆動対象１０の位置Ｐ又はモータ２０の回転位置Ｘを検出するものである。この他、速度検出器５５は、エンコーダ３０の出力信号に基づき、駆動対象の速度Ｖ又はモータ２０の回転速度ωを検出するものである。エンコーダ３０としては、駆動対象１０が所定距離移動する度、又はモータ２０が所定角度回転する度にパルス信号を出力するものが知られている。具体的には、位相がπ／２異なる二つのパルス信号であるＡ相信号及びＢ相信号を、エンコーダ信号として出力するものが知られている。
【００２７】
このエンコーダ３０を用いる場合、位置検出器５３は、エンコーダ３０から入力されるＡ相信号及びＢ相信号の位相差に基づき、駆動対象１０の移動方向、又はモータ２０の回転方向を検知することができる。例えば、位置検出器５３は、モータ２０が正回転している場合には、Ａ相信号の立ち上りエッジが入力される度、内蔵のカウンタを１カウントアップする。また、位置検出器５３は、モータ２０が負回転している場合には、Ａ相信号の立ち上りエッジが入力される度、上記カウンタを１カウントダウンする。このカウンタのカウントアップ及びカウントダウンにより、駆動対象１０の位置Ｐ、又はモータ２０の回転位置Ｘを検出（計測）することができる。この他、速度検出器５５は、エンコーダ３０からＡ相信号の立ち上りエッジが入力される時間間隔を計測する。そして、この時間に対応する駆動対象１０の移動量、又はモータ２０の回転量を、当該計測された時間間隔で除算する。これにより、駆動対象１０の速度Ｖ、又はモータ２０の回転速度ωを検出（計測）することができる。
【００２８】
エンコーダ３０としてロータリエンコーダを用いる場合、モータ制御ユニット６０は、位置検出器５３から入力されるモータ２０の回転位置Ｘから駆動対象１０の位置Ｐを特定し、及び、速度検出器５５から入力されるモータ２０の回転速度ωから駆動対象１０の速度Ｖを特定することができる。そして、位置検出器５３から入力されるモータ２０の回転位置Ｘ及び速度検出器５５から入力されるモータ２０の回転速度ωから特定される駆動対象１０の位置Ｐ及び速度Ｖの少なくとも一方に基づいて、操作量Ｕを設定することができる。
一方、エンコーダ３０としてリニアエンコーダを用いる場合、モータ制御ユニット６０は、位置検出器５３から入力される駆動対象１０の位置Ｐ及び速度検出器５５から入力される速度Ｖの少なくとも一方に基づいて、操作量Ｕを設定することができる。
そしてモータ制御ユニット６０は、当該操作量Ｕをモータドライバ５１に入力することにより、モータ２０の回転を制御し、駆動対象１０の運動をフィードバック制御する。具体的に、モータ制御ユニット６０は、操作量Ｕとしてモータ２０に印加する電流／電圧を指定する値である電流／電圧指令値を、モータドライバ５１に入力することができる。この場合、モータドライバ５１は、モータ制御ユニット６０から入力される操作量Ｕとしての電流／電圧指令値に対応する電流／電圧でモータ２０を駆動することにより、操作量Ｕに対応する電流／電圧でモータ２０を駆動する構成にすることができる。
【００２９】
以下では、モータ制御ユニット６０により駆動対象１０の速度Ｖを制御する例を、第一実施例として説明し、モータ制御ユニット６０による駆動対象１０の位置Ｐを制御する例を、第二実施例として説明する。
＜第一実施例＞
【００３０】
まず、駆動対象１０の速度Ｖを制御する制御システム１の例について説明する。駆動対象１０の速度Ｖを制御する制御システム１としては、インクジェットプリンタ１００におけるキャリッジ１１０の搬送制御システムを挙げることができる。図２には、インクジェットプリンタ１００の内、キャリッジ１１０の搬送制御システムの概略構成を示す。
【００３１】
周知のようにインクジェットプリンタ１００では、用紙Ｑを副走査方向（図２に示す紙面法線方向）に所定量搬送する。用紙Ｑの搬送を停止して、記録ヘッド１２０（所謂インクジェットヘッド）を搭載したキャリッジ１１０を主走査方向（図２に示す太矢印方向）に搬送する。このキャリッジ１１０の搬送時に、記録ヘッド１２０にインク液滴を吐出させることにより、用紙Ｑに画像を形成する。
【００３２】
図２に示すインクジェットプリンタ１００では、主走査方向に延設されたガイドレール１５０にキャリッジ１１０が設けられる。キャリッジ１１０は、ガイドレール１５０によって、その移動を主走査方向に規制されている。また、キャリッジ１１０は、モータＭ１の動力を受けて回転するベルト１３１に連結されており、ベルト１３１の回転に伴って、主走査方向に移動する。
【００３３】
ベルト１３１は、モータＭ１に駆動されて回転する駆動プーリ１３３と従動プーリ１３４との間に巻回されており、モータＭ１に駆動されて駆動プーリ１３３が回転すると、駆動プーリ１３３からの動力を受けて、従動プーリ１３４と共に回転する。尚、駆動プーリ１３３は、モータＭ１に対し、直接、又は、ギヤ等を介して間接的に接続される。ベルト１３１は、ゴムやウレタンなどの材料により構成され、若干の伸縮性を有する。
【００３４】
また、キャリッジ１１０には、キャリッジ１１０の移動に応じてパルス信号（エンコーダ信号）を出力するエンコーダＥ１が取り付けられており、エンコーダＥ１（詳細には、エンコーダスケール及び光学センサを備えるエンコーダＥ１の内のキャリッジに固定された光学センサ）から出力されるパルス信号は、モータ制御装置１７０に入力される。
【００３５】
モータ制御装置１７０は、統括制御装置１９０からの指令に従ってモータＭ１を制御することにより、駆動対象であるキャリッジ１１０を、その速度が統括制御装置１９０から指定された速度Ｖｃに到達するまで加速させる。また、キャリッジ１１０が速度Ｖｃに到達すると、統括制御装置１９０から指定された減速開始位置にキャリッジ１１０が到達するまで、キャリッジ１１０を速度Ｖｃで定速移動させる。次に、キャリッジ１１０が減速開始位置に到達すると、減速制御を開始してキャリッジ１１０を停止させる。図２下段には、このようなキャリッジ１１０の加速度及び速度の変化を、横軸を時間軸として概略的に示す。
【００３６】
モータ制御装置１７０は、統括制御装置１９０からの指令に従い、このようなキャリッジ１１０の速度制御を行いつつ、キャリッジ１１０を主走査方向において往復動させる。キャリッジ１１０の移動時には、統括制御装置１９０からの指令を受けて、印字制御装置１８０が記録ヘッド１２０からのインク液滴の吐出制御を行う。この動作によって、用紙Ｑには、印刷対象の画像データに基づく画像が、用紙Ｑに形成される。
【００３７】
尚、統括制御装置１９０は、インクジェットプリンタ１００全体を統括制御するものである。例えば、外部のパーソナルコンピュータ等から印刷指令を受けると、印刷指令にて指定された印刷対象の画像データに基づく画像を用紙Ｑに形成するために、モータ制御装置１７０及び印字制御装置１８０、並びに、他の図示しない装置内の各部に指令入力する。そして、キャリッジ１１０を片道分移動させている時には、記録ヘッド１２０にインク液滴を吐出させる。また、キャリッジ１１０の片道分の移動が完了するのに合わせて、用紙Ｑを副走査方向に所定量送り出す一連の動作を繰返し実行する。この一連の動作の繰返しにより、用紙Ｑに印刷対象の画像データに基づく一連の画像を形成する。尚、用紙Ｑの送出量は、キャリッジ１１０の片道分の移動で用紙Ｑに形成される画像の副走査方向の幅に対応する。
【００３８】
図１に示す制御システム１のモータ制御装置５０は、例えば、このようなインクジェットプリンタ１００のモータ制御装置１７０として、インクジェットプリンタ１００に組み込まれる。モータ制御装置５０がインクジェットプリンタ１００に組み込まれるケースでは、図１に示す駆動対象１０、モータ２０、及び、エンコーダ３０は、夫々順に、キャリッジ１１０、モータＭ１及びエンコーダＥ１に対応する。
【００３９】
続いて、第一実施例のモータ制御装置５０におけるモータ制御ユニット６０の詳細構成について、図３及び図４を用いて説明する。インクジェットプリンタ１００のような駆動対象１０の速度制御が必要なシステムには、一例として第一実施例のモータ制御装置５０が組み込まれる。インクジェットプリンタ１００では、キャリッジ１１０の移動時にインク液滴の吐出制御を行う。インク液滴の吐出時には、キャリッジ１１０の速度制御の誤差が、インク液滴の着弾地点のずれに現れ、用紙Ｑに形成される画像の品質に影響を与える。そして、従来技術では、キャリッジ１１０に作用する動き出し時の不連続な摩擦力の変化等が原因で、加速領域での速度制御を精度よく行うことができない。このため一般的に、インク液滴の吐出については、キャリッジ１１０が定速移動しているときに限って行っている。
【００４０】
しかしながら、キャリッジ１１０の加速時にインク液滴を吐出することができない場合には、インク液敵の吐出領域と重複しないようにキャリッジ１１０の加速領域を十分に設定する必要がある。このため、インクジェットプリンタ１００を小型化するのが難しい。一方、加速領域の一部をインク液滴の吐出領域とすることができれば、加速領域と吐出領域との重複領域のサイズに対応した量、インクジェットプリンタ１００の筐体を小さくすることができる。
【００４１】
また、従来技術では、上述した理由で加速領域での速度制御を精度よく行うことができないことから、キャリッジ１１０を一定速度で安定制御できるようになるまでに時間を要する。更には、急な加速が生じることが原因でキャリッジ１１０や記録ヘッド１２０が加速方向に傾くと、このことが原因で、インク液滴の吐出位置に微小な誤差が生じて、用紙Ｑに形成される画像の品質が劣化する可能性がある。
【００４２】
そこで、第一実施例では、駆動対象１０（キャリッジ１１０等）が所定速度Ｖｃに到達するまでの加速領域において、駆動対象１０の速度を高精度に制御できるように、モータ制御装置５０を構成している。
【００４３】
具体的に、本実施例のモータ制御装置５０は、図３及び図４に示す方法で駆動対象１０の速度を制御する。即ち、本実施例では、図３に示すように、速度検出器５５により駆動対象１０の動き出し（変位）を検知するまでは、モータドライバ５１に入力する操作量Ｕを漸次増加させる。これにより、モータ２０から発生する力を徐々に増加させる。そして、駆動対象１０の動き出しを検知すると（図３に示す時刻Ｔ０）、つまり、検出された駆動対象１０の速度Ｖが、ゼロからゼロより大きい値となると、所定条件が満足されるまでは、モータドライバ５１に入力する操作量Ｕを漸次減少させる。これにより、駆動対象１０の動き出し直後の過度な加速を抑える。そして、駆動対象１０の加速度が所定条件を満足する値に到達した時点から駆動対象１０の速度Ｖを目標速度Ｖｒにフィードバック制御することにより、高精度に駆動対象１０の速度制御を実現する。
【００４４】
詳述すると、本実施例のモータ制御装置５０が備えるモータ制御ユニット６０は、図４に示す速度制御処理を実行することにより、速度ゼロから所定速度Ｖｃまでの高精度な駆動対象１０の速度制御を実現する。モータ制御ユニット６０は、統括制御装置１９０等の指令元から駆動指令が入力されると、図４に示す速度制御処理を開始する。そして、上記指令元から指定された速度制御の実行時間である時間Ｔａが経過するまで、図４に示す速度制御処理を、予め定められた制御周期毎に繰返し実行する。この動作により、モータ制御ユニット６０は、上記駆動指令に基づく速度制御開始時刻ｔ＝０から時間Ｔａが経過する時点（時刻ｔ＝Ｔａ）で、駆動対象１０が上記指令元から指定された速度Ｖｃまで加速するように、駆動対象１０の速度Ｖを制御する。
【００４５】
制御周期毎の速度制御処理において、モータ制御ユニット６０は、具体的に次の処理を行う。まず、モータ制御ユニット６０は、前回の速度制御処理で算出された操作量Ｕをモータドライバ５１に入力することにより、操作量Ｕに対応した駆動電流又は電圧でモータ２０を駆動させる（Ｓ１１０）。尚、駆動指令が入力された直後のＳ１１０では、操作量Ｕ＝０を入力する。また、モータ制御ユニット６０は、この現在時刻ｔの時点における速度検出器５５からの入力値に基づいて駆動対象１０の速度Ｖを特定する（Ｓ１１５）。更に、モータ制御ユニット６０は、フラグＦ１が値１に設定されているか否かを判断する（Ｓ１２０）。尚、フラグＦ１は、駆動指令の入力時に値ゼロに初期化されるものである。
【００４６】
ここで、フラグＦ１が値１に設定されていないと判断すると（Ｓ１２０でＮｏ）、モータ制御ユニット６０は、Ｓ１１５で特定された現在時刻ｔでの駆動対象１０の速度Ｖがゼロより大きい値であるか否かを判断する（Ｓ１３０）。そして、速度Ｖがゼロより大きい値ではない（即ち、速度Ｖがゼロである）と判断すると（Ｓ１３０でＮｏ）、モータドライバ５１に入力する操作量Ｕを、前回設定された値から所定値Ａｕだけ増加した値に設定する（Ｓ１４０）。但し、駆動指令直後の速度制御処理では、操作量Ｕの前回値として、静止摩擦力に基づいて定められた初期値Ｃｓｆを用いる。この初期値Ｃｓｆは、例えば、設計段階で設計者により設定される。即ち、駆動指令直後の速度制御処理では、モータドライバ５１に入力する操作量Ｕを、Ｕ＝Ｃｓｆ＋Ａｕに設定する。その後、当該速度制御処理を一旦終了する。Ｓ１４０で設定された操作量Ｕは、次の周期で実行される速度制御処理のＳ１１０でモータドライバ５１に入力される。
【００４７】
本実施例のモータ制御ユニット６０は、このようにして、駆動対象１０の速度Ｖが値ゼロから値ゼロより大きい値に変化するまでの期間は、操作量Ｕを値Ａｕずつ漸次増加させる。これにより、駆動対象１０に作用するモータ２０からの動力を増加させる。このように操作量Ｕを漸次増加させると、駆動対象１０が動き出すことで、駆動対象１０の速度Ｖがゼロより大きい値となる時期が到来する。尚、特定される速度Ｖがゼロより大きい値となる時点は以下の時点に対応する。例えば、上述した手法でパルス信号の入力時間間隔に基づいて速度Ｖが検出される場合、モータ２０が負荷に打ち勝つことで回転をし始め、こ
れによってエンコーダ３０からパルス信号が二回以上、速度検出器５５に入力されて、この二回のパルス信号の時間間隔に基づき、駆動対象１０の速度Ｖとしてゼロより大きい値が検出される時点に対応する。
【００４８】
そして、駆動対象の速度Ｖとしてゼロより大きい値が検出された時点直後の周期で実行する速度制御処理において、モータ制御ユニット６０は、駆動対象１０の速度Ｖが値ゼロから値ゼロより大きい値であると判断して（Ｓ１３０でＹｅｓ）、Ｓ１５０以降の処理を実行する。図３によれば、時刻ｔ＝Ｔ０が、Ｓ１３０で肯定判断される時点に対応し、Ｓ１３０での肯定判断は、駆動対象１０の変位（動き出し）を検知する動作に対応する。尚、ここで説明する速度制御処理では、操作量Ｕを制御周期毎に切り替えるため、操作量Ｕは段階的に変化するが、図３に示す例では、操作量Ｕの変化の態様を簡単に示すために、模式的に線形で表しているので留意されたい。この他、図３に示すグラフは、駆動対象１０の速度Ｖとして、速度検出器５５によって駆動対象１０の速度Ｖが検出された時点での、駆動対象１０の速度Ｖをプロットしたものである。即ち、駆動対象１０の速度Ｖが特定されるＳ１１５の時点ではない点に留意されたい。
【００４９】
Ｓ１５０に移行すると、モータ制御ユニット６０は、今回特定された現在時刻ｔでの駆動対象１０の速度Ｖと前回特定された駆動対象１０の速度Ｖとの差ΔＶを、その速度変化に要した時間間隔（速度制御処理の実行間隔である制御周期）ΔＴで除算する。そして、現在時刻ｔでの駆動対象１０の加速度Ａ＝ΔＶ／ΔＴを特定し、この加速度Ａが、次の条件式を満足するか否かを判断する（Ｓ１５０）。
Ａ＜２・（Ｖ−Ｖｃ）／（ｔ−Ｔａ）  …（１）
【００５０】
上式におけるＡは、現在時刻ｔでの加速度Ａであり、Ｖは、Ｓ１１５で特定された現在時刻ｔでの駆動対象１０の速度Ｖであり、Ｖｃは、駆動指令元から指定された速度制御終了時の目標速度Ｖｃであり、Ｔａは、駆動指令元から指定された加速時間Ｔａである。
【００５１】
本実施例では、上述したように所定条件が満足された時点（時刻ｔ＝Ｔ１（図３参照））からフィードバック制御を開始する。つまり、この所定条件が満足された時点は、上記条件式（１）が満足された時点に対応する。フィードバック制御では、次の関数に従って、各時刻ｔでの目標速度Ｖｒを算出し、目標速度Ｖｒと駆動対象１０の速度Ｖとの偏差に基づいた操作量Ｕを算出する。
Ｖｒ＝（Ｖ１−Ｖｃ）／（Ｔ１−Ｔａ）2・（ｔ−Ｔａ）2＋Ｖｃ  …（２）
【００５２】
尚、Ｖ１は、フィードバック制御への切替時点（ｔ＝Ｔ１）での駆動対象１０の速度Ｖである。このようにフィードバック制御で用いられる目標プロファイル（目標速度軌跡）は、加速時間Ｔａ及び速度Ｖｃ、切替時点から時刻ｔ＝Ｔａまでの残り時間（Ｔ１−Ｔａ）、並びに、切替時点での駆動対象１０の速度Ｖ１によって定まる。そしてこの目標プロファイルは、駆動対象１０の切替時点での運動状態に応じた時刻ｔ＝Ｔａまでの目標速度Ｖｒの軌跡を示す目標プロファイルである。且つ、切替時点（時刻ｔ＝Ｔ１）での目標速度Ｖｒが、切替時点での駆動対象１０の速度Ｖ１となり、時刻ｔ＝Ｔａでの目標速度Ｖｒが、駆動指令元から指定された速度Ｖｃとなる目標プロファイルである。
この目標速度軌跡を定義する式（２）で示される関数によっては、目標加速度Ａｒが、目標速度Ｖｒの一階時間微分で間接的に定義される。
Ａｒ＝ｄＶｒ／ｄｔ＝｛（Ｖ１−Ｖｃ）／（Ｔ１−Ｔａ）2｝・２（ｔ−Ｔａ）
…（３）
【００５３】
即ち、上記目標速度軌跡に従えば、フィードバック制御への切替時点（時刻ｔ＝Ｔ１）での目標加速度Ａｒは、２・（Ｖ１−Ｖｃ）／（Ｔ１−Ｔａ）となる。このことから理解できるように、Ｓ１５０では、条件式（１）が満足されているか否かを判断することによ
り、駆動対象１０の加速度Ａが、現時点からフィードバック制御を開始した場合に設定される目標プロファイルから定まる目標加速度Ａｒを下回っているか否かを判断する。
【００５４】
そして、駆動対象１０の加速度Ａが高く、条件式（１）が満足されていないと判断すると（Ｓ１５０でＮｏ）、モータ制御ユニット６０は、Ｓ１６０に移行して、モータドライバ５１に入力する操作量Ｕを、前回設定された値から所定値Ａｄだけ減少させた値に設定する。その後、当該速度制御処理を一旦終了する。尚、Ｓ１６０で設定された操作量Ｕは、次の周期で実行される速度制御処理のＳ１１０でモータドライバ５１に入力される。
【００５５】
本実施例のモータ制御ユニット６０は、このようにして、駆動対象１０の動き出し後、駆動対象の加速度Ａが高く、条件式（１）が満足されない期間は、制御周期毎に、操作量Ｕを値Ａｄずつ漸次減少させる。このように操作量Ｕを漸次減少させた場合には、駆動対象１０の加速度Ａが減少することで、条件式（１）が満足される時期が到来する。
【００５６】
そして、条件式（１）が満足されると、モータ制御ユニット６０は、Ｓ１５０で肯定判断して、Ｓ１７０に移行する。また、Ｓ１７０では、フラグＦ１を値１に設定することで、次回以降の制御周期での速度制御処理では、Ｓ１２０で肯定判断されて、Ｓ１９０の処理が直ちに実行されるようにする。また、この処理を終えると、モータ制御ユニット６０は、Ｓ１７５に移行し、目標プロファイル（目標速度軌跡）を定義するパラメータＴ１及びＶ１の値を記憶保持することによって、フィードバック制御に用いる目標プロファイルを、式（２）に従う現在の駆動対象１０の運動状態に応じた目標プロファイルに設定する。即ち、現在時刻ｔを、時刻Ｔ１として記憶し、Ｓ１１５で特定された現在時刻ｔにおける駆動対象１０の速度Ｖを、速度Ｖ１として記憶する。
【００５７】
その後、モータ制御ユニット６０は、フィードバック制御に際して、目標速度Ｖｒと駆動対象１０の速度Ｖとの偏差ｅ＝Ｖｒ−Ｖから操作量Ｕを算出するのに用いられる伝達関数Ｇ（ｚ）に含まれる積分要素Ｇｉ（ｚ）の前回出力値を、次のように設定する（Ｓ１８０）。即ち、Ｓ１８０では、積分要素Ｇｉ（ｚ）の前回出力値を、今回仮にＳ１６０の処理を実行したときに算出される操作量Ｕ＝Ｕ１−Ａｄに設定する。操作量Ｕ＝Ｕ１は、現時点でモータドライバ５１に設定されている最新の操作量Ｕ＝Ｕ１である。但し、Ｓ１８０では、積分要素Ｇｉ（ｚ）の前回出力値を、現時点でモータドライバ５１に設定されている最新の操作量Ｕ＝Ｕ１に設定されてもよい。
【００５８】
Ｓ１９０に移行すると、モータ制御ユニット６０は、Ｓ１１５で特定された現在時刻ｔでの駆動対象の速度Ｖと、式（２）から算出される現在時刻ｔでの目標速度Ｖｒとに基づき、偏差ｅ＝Ｖｒ−Ｖを算出し、この偏差ｅを、所定の伝達関数Ｇ（ｚ）に入力して、偏差ｅに対応した操作量Ｕを算出する。尚、１／ｚは、遅延演算子である。
【００５９】
具体的に、本実施例では、伝達関数Ｇ（ｚ）として、比例要素Ｇｐ（ｚ）＝Ｋｐ、微分要素Ｇｄ（ｚ）＝Ｋｄ・（ｚ−１）／ｚ、積分要素Ｇｉ（ｚ）＝Ｋｉ・ｚ／（ｚ−１）を含む伝達関数Ｇ（ｚ）＝Ｇｐ（ｚ）＋Ｇｄ（ｚ）＋Ｇｉ（ｚ）を用いて、ＰＩＤ（比例積分微分）制御により駆動対象１０の速度Ｖを制御する。上式におけるＫｐは比例ゲイン、Ｋｄは微分ゲイン、Ｋｉは積分ゲインである。
【００６０】
Ｓ１５０で肯定判断した制御周期である時刻ｔ＝Ｔ１でのＳ１９０においては、目標速度Ｖｒとして、式（２）に従い、その時点での駆動対象１０の速度Ｖ＝Ｖ１が設定される。このため、上記時刻ｔ＝Ｔ１では、偏差ｅとして値ゼロが算出される（ｅ＝０）。また、時刻ｔ＝Ｔ１でのＳ１９０においては、微分要素Ｇｄ（ｚ）で必要な偏差ｅの前回値として値ゼロが用いられる。従って、比例要素の出力Ｕｐ及び微分要素の出力Ｕｄとしては、共にゼロが算出され、時刻ｔ＝Ｔ１の制御周期で算出される操作量Ｕは、積分要素Ｇｉ
（ｚ）の出力Ｕｉに一致する。そして、偏差ｅ＝０である場合の積分要素Ｇｉ（ｚ）の出力Ｕｉは、前回出力値に一致する。従って、時刻ｔ＝Ｔ１でのＳ１９０においては、操作量Ｕとして、Ｓ１８０で設定された値（「仮に今回Ｓ１６０の処理を行った場合に算出される操作量Ｕ１−Ａｄ」又は「現時点でモータドライバ５１に設定されている最新の操作量Ｕ１」）が算出されることになる。即ち、目標速度Ｖｒと駆動対象１０の速度Ｖとに基づくフィードバック制御の開始前後では、連続した操作量（又は同一の操作量）が、モータドライバ５１に設定される。
【００６１】
モータ制御ユニット６０は、このようにしてＳ１９０で偏差ｅ＝Ｖｒ−Ｖに基づく操作量Ｕを算出した後、当該速度制御処理を終了する。このようにして算出された操作量Ｕは、次の制御周期で、モータドライバ５１に入力される。また、モータ制御ユニット６０は、時刻ｔ＝Ｔ１以降の各制御周期において、Ｓ１２０で肯定判断しＳ１９０での処理を実行する動作を繰り返すことによって「偏差ｅ＝Ｖｒ−Ｖに基づく操作量Ｕを算出し、これをモータドライバ５１に入力する処理」を繰返し行う。
【００６２】
以上には、速度制御処理の内容について説明したが、速度制御処理では、例えば、図５に示すような制御器６０ａを用いて操作量Ｕを算出することができる。図５に示す制御器６０ａは、初期制御ブロック６１０及びＰＩＤ制御ブロック６２０を備える。初期制御ブロック６１０は、切替器ＳＷ１を備え、加算器６１１の前回出力値と切替器ＳＷ１から選択的に入力される値Ａｕ又は値−Ａｄとを加算器６１１にて加算することにより、切替器ＳＷ１から選択的に入力される値Ａｕ又は値−Ａｄの累積値を算出し、これを加算器６１３に入力する。具体的に、切替器ＳＷ１の入力が端子［１］に設定されている場合には、加算器６１１に値Ａｕが入力され、切替器ＳＷ１の入力が端子［２］に設定されている場合には、加算器６１１に値−Ａｄが入力される。また、この初期制御ブロック６１０は、加算器６１１からの出力値と初期値Ｃｓｆとを加算器６１３で加算して、この加算値を、操作量Ｕｆｆとして出力する。
【００６３】
一方、ＰＩＤ制御ブロック６２０は、目標速度Ｖｒと駆動対象１０の速度Ｖとの偏差ｅを算出する加算器６２１と、比例器６２３、微分器６２５、積分器６２７と、加算器６２９と、を備える。加算器６２９は、比例器６２３の出力Ｕｐ、微分器６２５の出力Ｕｄ及び積分器６２７の出力Ｕｉの合算値Ｕｐ＋Ｕｄ＋Ｕｉを、モータドライバ５１に入力する操作量Ｕとして算出する。ここで、積分器６２７は、切替器ＳＷ２を備え、切替器ＳＷ２の入力が端子［２］に設定された状態では、前回の操作量Ｕｉと今回の偏差ｅに基づく値Ｋｉ・ｅとを加算器６２７ａにて加算して、この加算値を今回の操作量Ｕｉとして出力する。一方で積分器６２７は、切替器ＳＷ２の入力が端子［１］に設定された状態では、初期制御ブロック６１０の出力Ｕｆｆと今回の偏差ｅに基づく値Ｋｉ・ｅとを加算器６２７ａにて加算し、この加算値を今回の操作量Ｕｉとして出力する。
【００６４】
この制御器６０ａを用いる場合、モータ制御ユニット６０は、速度制御処理において、具体的に次のような処理を行うことができる。即ち、Ｓ１４０では、目標速度Ｖｒとして、Ｓ１１５で特定された駆動対象１０の速度Ｖと同一値を設定し、切替器ＳＷ１の入力を端子［１］に設定し、切替器ＳＷ２の入力を端子［１］に設定する。このようにすると、加算器６２１の出力はゼロであるので、比例器６２３の出力Ｕｐ及び微分器６２５の出力Ｕｄはゼロとなる。そして、積分器６２７からは、初期制御ブロック６１０の出力である操作量Ｕｆｆが出力される。結果として、制御器６０ａからは、操作量Ｕとして、操作量Ｕｆｆの前回値に値Ａｕが加算された値が出力される。
【００６５】
また、Ｓ１６０では、目標速度Ｖｒとして、Ｓ１１５で特定された駆動対象１０の速度Ｖと同一値を設定し、切替器ＳＷ１の入力を端子［２］に設定し、切替器ＳＷ２の入力を端子［１］に設定する。このようにすると、制御器６０ａからは、操作量Ｕとして、操作
量Ｕｆｆの前回値から値Ａｄが減算された値が出力される。
【００６６】
また、Ｓ１８０の処理については実行せずに、Ｓ１９０では、次の処理を行う。即ち、目標速度Ｖｒとして、式（２）に従う速度を設定すると共に、時刻ｔ＝Ｔ１では、切替器ＳＷ１の入力を端子［２］に設定し、切替器ＳＷ２の入力を端子［１］に設定することで、積分器６２７の加算器６２７ａに、前回の操作量Ｕｆｆから値Ａｄ減算された値が入力されるようにする。一方、時刻ｔ＝Ｔ１を超えた各時刻ｔでは、切替器ＳＷ２の入力を端子［２］に設定することで、積分器６２７の加算器６２７ａに、積分器６２７の前回出力値が入力されるようにする。このような処理を行うことで、制御器６０ａを用いて、上述した処理と同様の処理を行うことができる。
【００６７】
以上、本実施例のモータ制御装置５０の構成について説明したが、本実施例の手法で駆動対象１０の速度制御を行うと、駆動対象１０の動き出し（変位）時にフィードバック制御を実行しない。よって、駆動対象１０が速度Ｖｃに到達するまでの加速プロセスにおける駆動対象１０の速度制御を精度よく行うことができる。即ち、目標速度軌跡からのずれを抑えて、駆動対象１０を精度よく速度Ｖｃまで加速させることができる。特に、本実施例によれば、フィードバック制御への切替時点（時刻ｔ＝Ｔ１）での目標速度Ｖｒを、その時点での駆動対象１０の速度Ｖに設定し、切替時点での目標加速度Ａｒを、その時点での駆動対象１０の加速度Ａに略一致する値に設定する。よって、滑らかにフィードフォワード制御（初期制御）からフィードバック制御に切り替えることができ、駆動対象１０を精度よく速度Ｖｃまで加速させることができる。
【００６８】
更に付言すれば、本実施例によれば、フィードバック制御への切替前後における操作量Ｕが連続又は一致するように、操作量Ｕを演算するので、フィードフォワード制御からフィードバック制御への切替を原因とした速度変動が生じるのを極力抑えることができ、駆動対象１０を精度よく速度Ｖｃまで加速させることができる。
【００６９】
比較例として、図８には、駆動対象１０の動き出し前からフィードバック制御により、駆動対象１０の速度Ｖを目標速度Ｖｒに制御した場合の、駆動対象１０の目標速度Ｖｒ及び実速度Ｖ、並びに、操作量Ｕの時間変化の態様を示す。このように従来技術によれば、駆動対象１０が動き出すまでに操作量Ｕが大きくなりすぎ、一方で駆動対象１０が動き出して、摩擦力が小さくなり駆動対象１０、又はモータ２０に作用する負荷が小さくなると、必要以上に操作量Ｕが小さくなりすぎ、速度Ｖの振動が生じる。従って、駆動対象１０を目標速度軌跡に従って精度よく速度Ｖｃまで加速させることができない。
【００７０】
一方、本実施例によれば、図３に示すように駆動対象１０を目標速度軌跡に従って精度よく速度Ｖｃまで加速させることができる。従って、本実施例のモータ制御装置５０を、例えば、インクジェットプリンタ１００のモータ制御装置１７０として用いれば、加速領域においてインク液滴の吐出を行っても目標速度軌跡に基づくタイミングでインク液滴の吐出を行うことで、想定された地点にインク液滴を着弾させることができ、高品質な画像を用紙Ｑに形成することができる。
【００７１】
以上には、駆動対象１０に作用する摩擦力が静止摩擦力から動摩擦力に変化することを原因とした速度Ｖの振動について説明した。一方で、インクジェットプリンタ１００のように、ベルト１３１を通じてキャリッジ１１０にモータＭ１からの動力を伝達し、キャリッジ１１０を搬送する搬送システムでは、ベルト１３１の伸びによって、モータＭ１から生じる動力が直接的にキャリッジ１１０に伝わらないことがある。そのため、ベルト１３１が十分に伸びるまでは、キャリッジ１１０に十分な動力が伝わらない。この現象は、特にキャリッジ１１０の動き出し時に発生する。そして、ベルト１３１が十分に伸びキャリッジ１１０が動き出し始めるとキャリッジ１１０が急加速するといった現象が生じる。本
実施例のモータ制御装置５０によれば、このようなベルト１３１の伸びに起因する急加速及びそれに起因した速度の振動現象についても抑えることができる。
＜第二実施例＞
【００７２】
第二実施例のモータ制御装置５０は、駆動対象１０の位置Ｐを制御する制御システム１に用いられるものであるが、このような制御システム１としては、インクジェットプリンタ２００における用紙Ｑの搬送制御システムを挙げることができる。図６には、インクジェットプリンタ２００の内、用紙Ｑの搬送制御システム周辺の概略構成を示す。
【００７３】
インクジェットプリンタ２００では、インクジェットプリンタ１００と同様、まず用紙Ｑを副走査方向（図６に示す太矢印方向）に所定量搬送する。用紙Ｑの搬送を停止して、記録ヘッド２２０を搭載したキャリッジ２１０を主走査方向（図６紙面法線方向）に搬送する。このキャリッジ２１０の搬送時に、記録ヘッド２２０にインク液滴を吐出させることにより、用紙Ｑに画像を形成する。このインクジェットプリンタ２００は、プラテン２６０の上流側に、搬送ローラ２３０及びピンチローラ２３５を備え、プラテン２６０の送り出し方向の下流側に、排紙ローラ２４０及びピンチローラ２４５を備える。また、プラテン２６０上に、用紙Ｑに対して画像形成可能な記録ヘッド２２０及び記録ヘッド２２０を搬送するためのキャリッジ２１０を備える。この他、インクジェットプリンタ２００は、搬送ローラ２３０及び排紙ローラ２４０を駆動するためのモータＭ２、このモータＭ２の回転軸に取り付けられたエンコーダＥ２、モータＭ２を制御するモータ制御装置２７０、並びに、モータ制御装置２７０を含む装置内各部に対して指令入力して、インクジェットプリンタ２００全体を統括制御する統括制御装置２９０を備える。
【００７４】
搬送ローラ２３０及び排紙ローラ２４０は、モータＭ２からの動力を受けて連動するように回転する。搬送ローラ２３０とピンチローラ２３５との間には、図示しない給紙トレイから用紙Ｑが供給され、給紙された用紙Ｑは、搬送ローラ２３０とピンチローラ２３５との間で挟持されて、搬送ローラ２３０の回転により下流側（図中太矢印方向）に搬送される。また、搬送ローラ２３０の回転により搬送されて排紙ローラ２４０に到達した用紙Ｑは、排紙ローラ２４０とピンチローラ２４５との間で挟持されて、排紙ローラ２４０の回転により送り出し方向の下流に搬送される。この搬送ローラ２３０及び排紙ローラ２４０の同期動作により、用紙Ｑは、図示しない排紙トレイに排出される。
【００７５】
インクジェットプリンタ２００では、外部のパーソナルコンピュータ等から印刷指令を受信すると、統括制御装置２９０が、印刷指令にて指定された印刷対象の画像データに基づく画像を用紙Ｑに形成するために、モータ制御装置２７０に対し、搬送ローラ２３０及び排紙ローラ２４０を所定量回転させるように駆動指令を入力する。この駆動指令に従って、モータ制御装置２７０は、搬送ローラ２３０及び排紙ローラ２４０が所定量回転するようにモータＭ２を制御する。この際には、エンコーダＥ２からの出力信号に基づいて、モータＭ２を制御する。
【００７６】
統括制御装置２９０は、このような駆動指令の入力を繰返し実行することにより、モータ制御装置２７０を通じて、用紙Ｑを所定量ずつ記録ヘッド２２０による画像形成位置に搬送する。そして、用紙Ｑを所定量ずつ搬送しては、用紙Ｑの搬送方向とは直交する主走査方向（図６紙面法線方向）に、記録ヘッド２２０を搬送しつつ、記録ヘッド２２０に印刷対象の画像データに基づくインク液滴の吐出動作を実行させることにより、プラテン２６０上の用紙Ｑに印刷対象の画像データに基づく画像を形成する。尚、記録ヘッド２２０のインク液滴の吐出動作は、少なくとも用紙Ｑが所定量搬送された後に、当該搬送を停止した状態で実行される。また、記録ヘッド２２０を１回搬送する中でのインク液滴の吐出動作の実行が終了すると、再度用紙Ｑが所定量送り出される。
【００７７】
このようなインクジェットプリンタ２００のモータ制御装置２７０には、用紙Ｑの搬送に際して、高精度な位置制御が要求されるが、第二実施例のモータ制御装置５０は、例えば、このようなインクジェットプリンタ２００のモータ制御装置２７０として、インクジェットプリンタ２００に組み込むことができる。モータ制御装置５０が、このようなインクジェットプリンタ２００のモータ制御装置２７０に組み込まれる場合、図１に示す駆動対象１０、モータ２０、及び、エンコーダ３０は、夫々順に、搬送ローラ２３０（又は排紙ローラ２４０又は用紙Ｑ）、モータＭ２及びエンコーダＥ２に対応する。
【００７８】
続いて、第二実施例のモータ制御装置５０におけるモータ制御ユニット６０の詳細構成について、図７及び図８を用いて説明する。但し、第二実施例のモータ制御装置５０は、第一実施例と基本思想を同じくするものであり、駆動対象１０の速度制御を行うか、それとも位置制御を行うかといった点で、第一実施例のモータ制御装置５０と相違する構成を備える程度のものである。従って、以下では、第一実施例のモータ制御装置５０と共通する構成の説明を適宜省略する。
【００７９】
本実施例のモータ制御ユニット６０は、統括制御装置２９０等の指令元から駆動指令が入力されると、図７に示す位置制御処理を開始し、上記指令元から指定された時間Ｔｂが経過するまで、図７に示す位置制御処理を、予め定められた制御周期毎に繰返し実行する。この動作により、モータ制御ユニット６０は、上記駆動指令に基づく位置制御開始時刻ｔ＝０から時間Ｔｂが経過する時点（時刻ｔ＝Ｔｂ）で、駆動対象１０が上記指令元から指定された目標停止位置Ｐｃまで変位して停止するように、駆動対象１０の位置Ｐを制御する。
【００８０】
上記制御周期毎の位置制御処理において、モータ制御ユニット６０は、具体的に次の処理を行う。まず、前回の位置制御処理で算出された操作量Ｕをモータドライバ５１に入力することにより、操作量Ｕに対応した駆動電流又は電圧でモータ２０を駆動させる（Ｓ２１０）。尚、駆動指令が入力された直後のＳ２１０では、操作量Ｕ＝０を入力する。
【００８１】
また、モータ制御ユニット６０は、この時点における位置検出器５３からの入力値に基づいて現在時刻ｔでの駆動対象１０の位置Ｐを特定する（Ｓ２１５）。但し、ここで言う駆動対象１０の位置Ｐは、駆動指令が入力された時点での駆動対象１０の停止地点を原点（ゼロ）とした位置であって、駆動対象１０の駆動方向を正方向とする位置である。
【００８２】
更に、モータ制御ユニット６０は、フラグＦ２が値１に設定されているか否かを判断する（Ｓ２２０）。尚、フラグＦ２は、駆動指令の入力時に値ゼロに初期化される。ここで、フラグＦ２が値１に設定されていないと判断すると（Ｓ２２０でＮｏ）、モータ制御ユニット６０は、Ｓ２１５で特定された現在時刻ｔでの駆動対象１０の位置Ｐがゼロより大きい値であるか否かを判断する（Ｓ２３０）。そして、位置Ｐがゼロより大きい値ではないと判断すると（Ｓ２３０でＮｏ）、モータドライバ５１に入力する操作量Ｕを、前回設定された値から所定値Ａｕだけ増加した値に設定する（Ｓ２４０）。但し、駆動指令直後の位置制御処理では、操作量Ｕの前回値として、第一実施例と同様に初期値Ｃｓｆを用いる。即ち、駆動指令後の初回の位置制御処理では、モータドライバ５１に入力する操作量Ｕを、Ｕ＝Ｃｓｆ＋Ａｕに設定する。その後、当該位置制御処理を一旦終了する。Ｓ２４０で設定された操作量Ｕは、次の周期で実行される位置制御処理のＳ２１０でモータドライバ５１に入力される。
【００８３】
本実施例のモータ制御ユニット６０は、このようにして、位置検出器５３から入力される値から特定される駆動対象１０の位置Ｐが値ゼロから値ゼロより大きい値に変化するまでの期間は、操作量Ｕを値Ａｕずつ漸次増加させることにより、駆動対象１０に作用するモータ２０からの動力を増加させる。このように操作量Ｕを漸次増加させると、駆動対象
１０が動き出すことで、駆動対象１０の位置Ｐがゼロより大きい値となる時期が到来する。そして、駆動対象１０の位置Ｐとしてゼロより大きい値が特定されると、モータ制御ユニット６０は、２３０で肯定判断して、Ｓ２５０以降の処理を実行する。具体的に、Ｓ２５０に移行すると、モータ制御ユニット６０は、現在時刻ｔでの駆動対象１０の速度Ｖが、次の条件式を満足するか否かを判断する。
Ｖ＜２・（Ｐ−Ｐｃ）／（ｔ−Ｔｂ）  …（４）
【００８４】
上式において、Ｖは、現在時刻ｔでの駆動対象１０の速度Ｖであり、Ｐｃは、駆動指令元から指定された目標停止位置Ｐｃであり、Ｔｂは、駆動指令元から指定された目標停止位置Ｐｃに駆動対象１０を停止させるまでの時間である。駆動対象１０の速度Ｖは、Ｓ２１５で速度検出器５５から入力される値から特定することが可能であるが、今回特定された駆動対象１０の位置Ｐと前回の駆動対象１０の位置Ｐとの差ΔＰを、その位置変化に要した時間間隔（制御周期ΔＴ）で除算することによって、算出されてもよい。
【００８５】
本実施例では、上記駆動指令が入力された後、条件式（４）が満足された時点でフィードバック制御を開始する。一方、フィードバック制御では、次の関数に従って、各時刻ｔでの目標位置Ｐｒを算出し、目標位置Ｐｒと駆動対象１０の位置Ｐとの偏差に基づいた操作量Ｕを算出する。
Ｐｒ＝（Ｐ１−Ｐｃ）／（Ｔ１−Ｔｂ）2・（ｔ−Ｔｂ）2＋Ｐｃ  …（５）
【００８６】
Ｐ１は、フィードバック制御への切替時点（時刻ｔ＝Ｔ１）での駆動対象１０の位置Ｐである。このようにフィードバック制御で用いられる目標プロファイル（目標位置軌跡）は、予め定められる時間Ｔｂ及び位置Ｐｃ、切替時点から時刻ｔ＝Ｔ１までの残り時間（Ｔｂ−Ｔ１）、並びに、切替時点での駆動対象１０の位置Ｐ１によって定まる。そしてこの目標プロファイルは、切替時点での目標位置Ｐｒが切替時点での駆動対象１０の位置Ｐ１である。且つ、時刻ｔ＝Ｔｂでの目標位置Ｐｒが目標停止位置Ｐｃである切替時点での駆動対象１０の運動状態に応じた目標位置Ｐｒの軌跡を示す目標プロファイルである。
この目標位置軌跡を定義する式（５）によっては、目標速度Ｖｒが、目標位置Ｐｒの一階時間微分で間接的に定義される。
Ｖｒ＝ｄＰｒ／ｄｔ＝｛（Ｐ１−Ｐｃ）／（Ｔ１−Ｔｂ）2｝・２（ｔ−Ｔｂ）
…（６）
この上記目標位置軌跡に従えば、フィードバック制御への切替時点（時刻ｔ＝Ｔ１）での目標速度Ｖｒは、２・（Ｐ１−Ｐｃ）／（Ｔ１−Ｔｂ）となる。
【００８７】
即ち、Ｓ２５０では、式（４）に従う条件式が満足されているか否かを判断することにより、駆動対象１０の速度Ｖが、現在時刻ｔからフィードバック制御を開始した場合の目標速度Ｖｒを下回っているか否かを判断する。そして、駆動対象１０の速度Ｖが高く、上記条件式（４）が満足されていないと判断すると（Ｓ２５０でＮｏ）、Ｓ２６０に移行し、モータドライバ５１に入力する操作量Ｕを、前回設定された値から所定値Ａｄだけ減少させた値に設定する。その後、当該位置制御処理を一旦終了する。Ｓ２６０で設定された操作量Ｕは、次の周期で実行される位置制御処理のＳ２１０でモータドライバ５１に入力される。
【００８８】
本実施例のモータ制御ユニット６０は、このようにして、駆動対象１０の動き出し後、駆動対象の速度Ｖが高く、条件式（４）が満足されない期間は、制御周期毎に、操作量Ｕを値Ａｄずつ漸次減少させる。このように操作量Ｕを漸次減少させた場合には、駆動対象１０の速度Ｖが減少することで、条件式（４）が満足される時期が到来する。そして、条件式（４）が満足されると、モータ制御ユニット６０は、Ｓ２５０で肯定判断して、Ｓ２７０に移行する。Ｓ２７０において、モータ制御ユニット６０は、フラグＦ２を値１に設定することで、次回以降の位置制御処理では、Ｓ２２０で肯定判断されて、Ｓ２９０の処
理が直ちに実行されるようにする。
【００８９】
Ｓ２７０の処理を終えると、モータ制御ユニット６０は、Ｓ２７５に移行し、目標プロファイル（目標位置軌跡）を定義するパラメータＴ１及びＰ１の値を記憶保持することによって、フィードバック制御に用いる目標プロファイルを、式（５）に従う現在の駆動対象１０の運動状態に応じた目標プロファイルに設定する。即ち、現在時刻ｔを、時刻Ｔ１として記憶し、Ｓ２１５で特定された現在時刻ｔにおける駆動対象１０の位置Ｐを、位置Ｐ１として記憶する。
【００９０】
その後、モータ制御ユニット６０は、Ｓ２９０に移行し、Ｓ２１５で特定された現在時刻ｔでの駆動対象の位置Ｐと、式（５）から算出される現在時刻ｔでの目標位置Ｐｒとに基づき、偏差ｅ＝Ｐｒ−Ｐを算出し、この偏差ｅを、所定の伝達関数Ｈ（ｚ）に入力して、偏差ｅに対応した操作量Ｕを算出する。尚、本実施例では、伝達関数Ｈ（ｚ）として、比例要素Ｈｐ（ｚ）＝Ｋｐ及び微分要素Ｈｄ（ｚ）＝Ｋｄ・（ｚ−１）／ｚを含む伝達関数Ｈ（ｚ）＝Ｈｐ（ｚ）＋Ｈｄ（ｚ）を用いて、ＰＤ（比例微分）制御により駆動対象１０の位置Ｐを制御する。但し、上式におけるＫｐは、比例ゲイン、Ｋｄは、微分ゲインであり、時刻ｔ＝Ｔ１でのＳ２９０においては、微分要素Ｈｄ（ｚ）で必要な偏差ｅの前回値として値ゼロが用いられる。
【００９１】
モータ制御ユニット６０は、このようにしてＳ２９０で操作量Ｕを算出した後、当該位置制御処理を終了する。このようにして算出された操作量Ｕは、次の制御周期で、モータドライバ５１に入力される。
【００９２】
以上、第二実施例のモータ制御装置５０の構成について説明したが、本実施例のモータ制御装置５０によれば、駆動対象１０の駆動開始時からフィードバック制御を行う従来装置よりも、駆動対象１０を高精度に目標停止位置Ｐｃまで目標位置軌跡に従って変位させることができる。即ち、本実施例のモータ制御装置５０によれば、駆動開始時からしばらくはフィードバック制御を実行しないので、操作量Ｕや偏差ｅ＝Ｐｒ−Ｐの振動を抑えることができ、従来のように振動の影響が響くことが原因で目標停止位置Ｐｃへの停止精度が劣化するのを抑えることができる。
【００９３】
従って、本実施例のモータ制御装置５０を、インクジェットプリンタ２００のモータ制御装置２７０として用いれば、統括制御装置２９０から指定された搬送量に対応する位置Ｐｃまで、用紙Ｑを高精度に副走査方向に搬送して停止させることができ、用紙Ｑに対して高品質な画像を形成することができる。
＜対応関係＞
【００９４】
ここで、用語間の対応関係について説明する。位置検出器５３及び速度検出器５５によって実現される処理並びにモータ制御ユニット６０が実行するＳ１１５，Ｓ２１５の処理は、計測手段によって実現される処理の一例に対応する。また、モータドライバ５１は、駆動装置の一例に対応し、モータ制御ユニット６０が実行するＳ１１０，Ｓ２１０，Ｓ１９０，Ｓ２９０の処理やＰＩＤ制御ブロック６２０によって実現される処理は、主制御手段によって実現される処理の一例に対応し、モータ制御ユニット６０が実行するＳ１１０，Ｓ２１０，Ｓ１４０，Ｓ１６０，Ｓ２４０，Ｓ２６０の処理は、初期制御手段によって実現される処理の一例に対応する。
【００９５】
この他、モータ制御ユニット６０が実行するＳ１３０，Ｓ２３０の処理は、検知手段によって実現される処理の一例に対応し、モータ制御ユニット６０がＳ１５０，Ｓ２５０で条件式が満足されているか否かを判断して、この判断結果によって操作量Ｕの設定方法を切り替える処理、及び、Ｓ１７５，Ｓ２７５でパラメータＴ１，Ｖ１，Ｐ１を設定するこ
とにより、式（２）（５）に従う目標プロファイル（目標速度軌跡又は目標位置軌跡）を設定する処理は、切替設定手段によって実現される処理の一例に対応する。また、記録ヘッド１２０を搭載したキャリッジ１１０は、画像形成ユニットの一例に対応し、モータＭ１、ベルト１３１、プーリ１３３，１３４、及びガイドレール１５０は、搬送ユニットに一例に対応し、印字制御装置１８０は、記録制御ユニットの一例に対応する。
【００９６】
また、本発明は、上記実施例に限定されるものではなく、種々の態様を採ることができる。例えば、上記実施例では、エンコーダ３０としてロータリエンコーダを用いる場合、位置検出器５３により検出されるモータ２０の回転位置Ｘ又は速度検出器５５により検出されるモータ２０の回転速度ωから、駆動対象１０の位置Ｐ又は速度Ｖを特定して、この位置Ｐ又は速度Ｖを目標値に合わせるようにモータ制御を行うようにした。しかし、モータ２０の回転位置Ｘ又は回転速度ωと、駆動対象１０の位置Ｐ又は速度Ｖとは、その尺度が異なる程度のものである。つまり、当然のことながら、位置検出器５３により検出されるモータ２０の回転位置Ｘ又は速度検出器５５により検出されるモータ２０の回転速度ωを直接用いて、これを目標値に合わせるようにモータ制御を行うことにより、間接的に、駆動対象１０の位置制御又は速度制御を行うようにしてもよい。
【００９７】
また、上記実施例によれば、エンコーダ３０としてロータリエンコーダが用いられる場合、駆動対象１０の位置Ｐ及び速度Ｖは、モータ２０の回転軸に接続されたエンコーダ３０の出力信号により検出されるモータ２０の回転位置Ｘ及び回転速度ωに基づいて、特定されていた。しかしながら、ロータリエンコーダは、駆動対象１０に接続されてもよく、駆動対象１０の位置Ｐ及び速度Ｖは、ロータリエンコーダの出力信号から直接検出されても良い。例えば、ロータリエンコーダは、搬送ローラ２３０の回転軸に接続され得る。
【００９８】
また、上記実施例では、Ｓ１４０，Ｓ２４０でモータドライバ５１に入力する操作量Ｕを漸次増加させるようにしたが、Ｓ１４０，Ｓ２４０では、操作量Ｕとして固定値を設定してもよい。但し、操作量Ｕとして一定値を設定する場合には、駆動対象１０が静止摩擦に打ち勝って動き出すのに必要な操作量Ｕの値を適切に求める必要がある。
【符号の説明】
【００９９】
１…制御システム、１０…駆動対象、２０，Ｍ１，Ｍ２…モータ、３０，Ｅ１，Ｅ２…エンコーダ、５０，１７０，２７０…モータ制御装置、５１…モータドライバ、５３…位置検出器、５５…速度検出器、６０…モータ制御ユニット、６０ａ…制御器、１００，２００…インクジェットプリンタ、１１０，２１０…キャリッジ、１２０，２２０…記録ヘッド、１３１…ベルト、１３３，１３４…プーリ、１５０…ガイドレール、１８０…印字制御装置、１９０，２９０…統括制御装置、２３０…搬送ローラ、２３５，２４５…ピンチローラ、２４０…排紙ローラ、２６０…プラテン、６１０…初期制御ブロック、６１１，６１３，６２１，６２７ａ，６２９…加算器、６２０…ＰＩＤ制御ブロック、６２３…比例器、６２５…微分器、６２７…積分器、Ｑ…用紙、ＳＷ１，ＳＷ２…切替器
【図１】
0005834730.tif 000002
【図２】
0005834730.tif 000003
【図３】
0005834730.tif 000004
【図４】
0005834730.tif 000005
【図５】
0005834730.tif 000006
【図６】
0005834730.tif 000007
【図７】
0005834730.tif 000008
【図８】
0005834730.tif 000009