(57)【特許請求の範囲】
【請求項１】
モータを制御するモータ制御手段と、
前記モータの回転に応じた信号を出力する信号出力手段と、
を備え、前記モータ制御手段が、前記信号出力手段の出力信号に基づき前記モータを制御することによって、前記モータにより駆動される被駆動体を目標停止位置まで変位させるモータ制御装置であって、
前記モータ制御手段は、
前記信号出力手段の出力信号に基づき、前記モータに入力可能な電流の上限値であって逆起電力による電流低下を加味した電流上限値を推定し、前記推定した電流上限値に対応する操作量を、前記モータに作用させる操作量に決定して、当該操作量に基づくモータ制御を実行する第一制御手段と、
前記信号出力手段の出力信号から特定される前記モータ又は前記被駆動体の動作量としての変位量及び速度の少なくとも一方と、前記動作量の目標軌跡とに基づき、前記モータに作用させる操作量を決定し、当該操作量に基づくモータ制御を実行する第二制御手段と、
前記第二制御手段によるモータ制御の開始条件が満足される時点までは、前記第一制御手段に前記モータ制御を実行させ、前記第二制御手段によるモータ制御の開始条件が満足された時点以降では、前記第一制御手段に代えて、前記第二制御手段に前記モータ制御を実行させる切替手段と、
前記信号出力手段の出力信号から特定される前記速度と、前記被駆動体の駆動開始時点からの経過時間と、によって定まり、前記被駆動体の駆動開始時点から前記被駆動体の停止時点までの時間が一定である標準目標軌跡に基づくモータ制御を、仮に前記第二制御手段が開始した場合の、前記第二制御手段によるモータ制御の開始時点から前記被駆動体の停止時点までの前記被駆動体の変位量を、停止必要量として算出する第一算出手段と、
前記信号出力手段の出力信号から特定される前記変位量に基づき、前記被駆動体が前記目標停止位置に到達するまでの前記被駆動体の残り変位量を算出する第二算出手段と、
を備え、
前記第一算出手段は、前記第一制御手段による前記モータ制御が実行される期間において周期的に算出動作を実行することにより、前記信号出力手段の出力信号から特定される算出動作実行時の前記速度と、算出動作実行時の前記経過時間と、から特定される前記標準目標軌跡に基づく前記停止必要量を周期的に算出し、
前記第二算出手段は、前記第一算出手段の算出周期に合わせて周期的に算出動作を実行することにより、前記信号出力手段の出力信号から特定される算出動作実行時の前記変位量に基づく前記残り変位量を周期的に算出し、
前記切替手段は、前記第二算出手段により算出された前記残り変位量が前記第一算出手段により算出された前記停止必要量に到達すると、前記第二制御手段によるモータ制御の開始条件が満足されたと判断して、前記第二制御手段によるモータ制御を開始し、
前記第二制御手段は、前記モータ制御を開始すると、前記信号出力手段の出力信号から特定される前記動作量と、前記標準目標軌跡に対応する目標軌跡とに基づき、前記モータに作用させる操作量を決定し、当該操作量に基づくモータ制御を実行することにより、前記被駆動体を前記目標停止位置に停止させること
を特徴とするモータ制御装置。
【請求項２】
前記目標軌跡は、前記被駆動体が定速で変位する定速区間と前記定速区間に続く区間であり前記被駆動体が減速を伴って変位する減速区間とを含む目標軌跡であり、
前記標準目標軌跡は、前記信号出力手段の出力信号から特定される前記速度によって、前記定速区間の速度及び前記減速区間の目標軌跡が定まり、前記被駆動体の駆動開始時点からの経過時間によって前記定速区間の時間が定まる、前記被駆動体の駆動開始時点から前記被駆動体の停止時点までの時間が一定の目標軌跡であること
を特徴とする請求項１記載のモータ制御装置。
【請求項３】
前記減速区間の目標軌跡は、減速時の加速度ピークが前記信号出力手段の出力信号から特定される前記速度に依らない一定の加速度を採る目標軌跡であること
を特徴とする請求項２記載のモータ制御装置。
【請求項４】
前記減速区間の目標軌跡は、減速時の加速度ピークが前記モータによって実現可能な加速度の限界値に対応した一定の加速度を採る目標軌跡であること
を特徴とする請求項２又は請求項３記載のモータ制御装置。
【請求項５】
前記第二制御手段は、前記モータ制御の開始時に、前記標準目標軌跡における前記定速区間の時間を、前記被駆動体が前記目標停止位置に到達するまでの前記被駆動体の残り変位量と前記標準目標軌跡から特定される前記減速区間での前記被駆動体の変位量との差を前記定速区間の速度で除算して求められる値に、補正してなる目標軌跡を、前記標準目標軌跡に対応する目標軌跡として設定し、当該目標軌跡に基づき、前記モータ制御を実行すること
を特徴とする請求項２〜請求項４のいずれか一項記載のモータ制御装置。
【請求項６】
前記第一算出手段は、前記標準目標軌跡における前記定速区間の時間が下限値未満となる場合には、この標準目標軌跡における前記定速区間の時間を下限値に補正してなる目標軌跡である準標準目標軌跡に基づくモータ制御を前記第二制御手段が開始した場合の前記第二制御手段によるモータ制御の開始時点から前記被駆動体の停止時点までの前記被駆動体の変位量を、停止必要量として算出し、
前記第二制御手段は、前記準標準目標軌跡に基づく前記停止必要量に前記残り変位量が到達したことを契機に、前記モータ制御を開始すると、前記準標準目標軌跡に対応する目標軌跡に基づき、前記モータ制御を実行することにより、前記被駆動体を前記目標停止位置に停止させること
を特徴とする請求項２〜請求項４のいずれか一項記載のモータ制御装置。
【請求項７】
前記目標軌跡は、前記被駆動体が停止するまで前記被駆動体の速度が単調減少する目標軌跡であり、
前記標準目標軌跡は、前記被駆動体の駆動開始時点からの経過時間によって、当該標準目標軌跡に基づくモータ制御の開始時点から前記被駆動体が停止するまでの所要時間である減速時間が定まり、この減速時間及び前記信号出力手段の出力信号から特定される前記速度によって、当該標準目標軌跡に基づくモータ制御の開始時点から前記被駆動体が停止する時点までの前記被駆動体の変位量である減速距離が定まる、前記被駆動体の駆動開始時点から前記被駆動体の停止時点までの時間が一定の目標軌跡であること
を特徴とする請求項１記載のモータ制御装置。
【請求項８】
前記第二制御手段は、前記標準目標軌跡に対応する目標軌跡として、前記標準目標軌跡と同一の目標軌跡に基づき、前記モータ制御を実行すること
を特徴とする請求項７記載のモータ制御装置。
【請求項９】
モータと、
前記モータにより駆動されるローラを備え、前記ローラの回転により被記録媒体を搬送する搬送手段と、
前記搬送手段により目標停止位置まで搬送されて停止した前記被記録媒体に画像を形成する画像形成手段と、
前記モータを制御することにより、前記搬送手段に被記録媒体を前記目標停止位置まで搬送させる請求項１〜請求項８のいずれか一項記載のモータ制御装置と、
前記目標停止位置を指定して前記モータ制御装置を繰返し動作させることにより、前記モータ制御装置を通じて、前記搬送手段に前記被記録媒体を段階的に搬送させる搬送制御手段と、
を備えることを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置及び画像形成装置に関する。
【背景技術】
【０００２】
従来、駆動対象を目標とする位置に高速搬送可能な技術としては、バンバン制御が知られている（例えば、特許文献１，２参照）。バンバン制御は、モータへの制御入力（操作量）を最大又は最小に切り替えて、モータの最大能力で駆動対象を駆動するものであり、駆動対象を目標とする位置に高速に搬送して停止させることができる。
【０００３】
この他、逆起電力による電流低下等を原因として、想定されているモータ駆動電流と実際のモータ駆動電流との間にずれが生じ、これによって制御精度が劣化する問題を解消するために、速度に応じて変化する飽和電流に基づいた制御デューティの最大制限値を設定するモータ制御装置が知られている（例えば、特許文献３参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−０８６９０４号公報
【特許文献２】特開平７−３０２１２１号公報
【特許文献３】特開２００７−２２１９４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、バンバン制御は、駆動対象を高速に駆動するのに優れているが、単純な制御手法であるため、この制御手法によって駆動対象を高精度に目標とする位置に停止させることは難しい。一方、高精度に駆動対象を目標とする位置に停止させるための技術としては、目標プロファイル（目標軌跡）に基づいたフィードバック制御が知られている。しかしながら、フィードバック制御に、飽和電流に基づく操作量の制限値を設定する手法を採用しても、高速に目標停止位置に駆動対象を停止させることと、高精度に目標停止位置に駆動対象を停止させることとを、両立させることは難しい。
【０００６】
更に、このような手法では、駆動対象を目標停止位置に停止させるまでの時間にばらつきが生じる。そして、駆動対象を目標停止位置に停止させるまでの時間にばらつきが生じると、好ましくないケースがある。例えば、ばらつきがユーザの製品に対する期待を裏切る結果となって、ユーザに不満を及ぼす可能性がある。
【０００７】
本発明は、こうした問題に鑑みなされたものであり、被駆動体（駆動対象）を目標停止位置に停止させるためのモータ制御技術として、停止精度の向上、並びに、駆動対象を目標停止位置に停止させるまでの時間の短縮化及びばらつきの低減を、調和を図りながら実現することのできる新しいモータ制御技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のモータ制御装置は、モータ制御手段と、モータの回転に応じた信号を出力する信号出力手段と、を備え、モータ制御手段が、信号出力手段の出力信号に基づきモータを制御することによって、モータにより駆動される被駆動体を目標停止位置まで変位させる。このモータ制御手段は、第一及び第二制御手段と、切替手段と、第一及び第二算出手段と、を備える。
【０００９】
第一制御手段は、信号出力手段の出力信号に基づき、モータに入力可能な電流の上限値であって逆起電力による電流低下を加味した電流上限値を推定し、当該推定した電流上限値に対応する操作量を、モータに作用させる操作量に決定して、当該操作量に基づくモータ制御を実行する。具体的に、第一制御手段は、信号出力手段の出力信号から特定されるモータの回転速度に基づき、電流上限値を推定する構成にすることができる。
【００１０】
一方、第二制御手段は、信号出力手段の出力信号から特定されるモータ又は被駆動体の動作量としての変位量及び速度の少なくとも一方と、当該動作量の目標軌跡とに基づき、モータに作用させる操作量を決定し、当該操作量に基づくモータ制御を実行する。
【００１１】
切替手段は、第二制御手段によるモータ制御の開始条件が満足される時点までは、第一制御手段にモータ制御を実行させ、第二制御手段によるモータ制御の開始条件が満足された時点以降では、第一制御手段に代えて、第二制御手段にモータ制御を実行させる。
【００１２】
また、第一算出手段は、信号出力手段の出力信号から特定される上記速度と、被駆動体の駆動開始時点からの経過時間と、によって定まる目標軌跡（上記動作量の目標軌跡）であって、被駆動体の駆動開始時点から被駆動体の停止時点までの時間が一定である標準目標軌跡に基づくモータ制御を第二制御手段が開始した場合の第二制御手段によるモータ制御の開始時点から被駆動体の停止時点までの被駆動体の変位量を、停止必要量として算出し、第二算出手段は、信号出力手段の出力信号から特定される変位量に基づき、被駆動体が目標停止位置に到達するまでの被駆動体の残り変位量を算出する。
【００１３】
そして、切替手段は、第二算出手段により算出された残り変位量が第一算出手段により算出された停止必要量に到達すると、第二制御手段によるモータ制御の開始条件が満足されたと判断して、第二制御手段によるモータ制御を開始し、第二制御手段は、モータ制御を開始すると、信号出力手段の出力信号から特定される上記動作量と、標準目標軌跡に対応する目標軌跡とに基づき、モータに作用させる操作量を決定し、当該操作量に基づくモータ制御を実行することにより、被駆動体を目標停止位置に停止させる。
【００１４】
上記「標準目標軌跡に対応する目標軌跡」としては、標準目標軌跡と同一の目標軌跡や、標準目標軌跡を補正した目標軌跡を挙げることができる。標準目標軌跡の補正としては、被駆動体が目標停止位置に正確に停止するように、現在の被駆動体の位置や運動状態（速度等）に応じて、標準目標軌跡を微調整する補正が考えられる。
【００１５】
このモータ制御装置によれば、上記停止必要量及び残り変位量に基づいて、モータ制御を、第一制御手段によるモータ制御から第二制御手段によるモータ制御に切り替えるので、停止精度に悪影響が生じない範囲で第一制御手段によるモータ制御を継続し、モータの最大能力相当で被駆動体を高速に変位させつつ、高精度に被駆動体を目標停止位置に停止させることができる。また、このモータ制御装置によれば、高速且つ高精度に、被駆動体を目標停止位置に停止させつつも、被駆動体の駆動開始時点から被駆動体が目標停止位置で停止する時点までの時間が一定となるように被駆動体を変位させることができる。
【００１６】
従って、本発明によれば、被駆動体（駆動対象）を目標停止位置に停止させるためのモータ制御装置において、停止精度の向上、並びに、駆動対象を目標停止位置に停止させるまでの時間の短縮化及びばらつきの低減を、調和を図りつつ実現することができる。
【００１７】
ところで、第一制御手段では被駆動体を加速させることになるので、第二制御手段の初期から被駆動体を減速させる制御を行うと、目標軌跡に従って被駆動体を変位させる制御の精度が劣化する可能性がある。即ち、目標軌跡からの動作量の誤差が大きくなる可能性がある。従って、上記目標軌跡は、被駆動体が定速で変位する定速区間と定速区間に続く区間であり被駆動体が減速を伴って変位する減速区間とを含む目標軌跡とするのが好ましい。このように定速区間を設ければ、目標軌跡からの動作量の誤差を抑えた後、減速過程に移ることができて、被駆動体を目標軌跡に沿って停止させ、被駆動体を高精度に目標停止位置に停止させることができる。
【００１８】
尚、この場合の標準目標軌跡は、信号出力手段の出力信号から特定される速度によって、定速区間の速度及び減速区間の目標軌跡が定まり、被駆動体の駆動開始時点からの経過時間によって定速区間の時間が定まる、被駆動体の駆動開始時点から被駆動体の停止時点までの時間が一定の目標軌跡とすることができる。即ち、目標軌跡としては、定速区間の時間の調整によって、被駆動体の駆動開始時点から被駆動体の停止時点までの時間を一定に調整可能な目標軌跡を採用することができる。
【００１９】
また、減速区間の目標軌跡は、減速時の加速度ピークが信号出力手段の出力信号から特定される速度に依らない一定の加速度を採る目標軌跡とすることができる。具体的に、減速区間の目標軌跡は、減速時の加速度ピークがモータによって実現可能な加速度の限界値に対応した一定の加速度を採る目標軌跡とすることができる。このように目標軌跡を設定すれば、モータの限界能力で迅速に被駆動体を減速させて停止させることができる。
【００２０】
この他、上記目標軌跡を用いる場合、第二制御手段は、モータ制御の開始時に、標準目標軌跡における定速区間の時間を「被駆動体が目標停止位置に到達するまでの被駆動体の残り変位量と標準目標軌跡から特定される減速区間での被駆動体の変位量との差を定速区間の速度で除算して求められる値」に補正してなる目標軌跡を、上記「標準目標軌跡に対応する目標軌跡」として設定する構成にすることができる。第二制御手段によるモータ制御の開始条件が満足されてから、実際に第二制御手段によるモータ制御が開始されるまでにタイムラグがあるケースにおいて、このように標準目標軌跡を補正してなる目標軌跡を用いてモータ制御を行えば、タイムラグの影響を抑えて、被駆動体を目標停止位置に高精度に停止させることができる。
【００２１】
また、目標停止位置に被駆動体を高精度に停止させるためには、定速区間を一定以上設けるのが好ましい。従って、第一算出手段は、標準目標軌跡における定速区間の時間が下限値未満となる場合には、標準目標軌跡における定速区間の時間を下限値に補正してなる目標軌跡である準標準目標軌跡に基づくモータ制御を第二制御手段が開始した場合の第二制御手段によるモータ制御の開始時点から被駆動体の停止時点までの被駆動体の変位量を、停止必要量として算出する構成にされるとよい。そして、第二制御手段は、準標準目標軌跡に対応する目標軌跡に基づき、モータ制御を実行することにより、被駆動体を目標停止位置に停止させる構成にされるとよい。このモータ制御技術によれば、被駆動体の駆動開始時点から被駆動体の停止時点までの時間に多少のばらつきが生じる結果となるが、高精度に目標停止位置に停止させることができるといった利点がある。
【００２２】
また、高速性を優先するならば、目標軌跡には、定速区間を設けずに、被駆動体が停止するまで被駆動体の速度が単調減少する目標軌跡を採用されてもよい。この他、本発明のモータ制御装置は、画像形成装置に組み込むことができる。
【図面の簡単な説明】
【００２３】
【図１】制御システム１の構成を表すブロック図である。
【図２】インクジェットプリンタ１００の構成を表す図である。
【図３】制御システム１の制御による駆動対象１０の位置・速度・加速度の軌跡を表すグラフである。
【図４】電流上限値を算出する関数Ｕｍ（ω）の導出方法を説明した図である。
【図５】モータ制御ユニット６０による主制御処理を表すフローチャートである。
【図６】主制御処理内で実行される第二制御処理を表すフローチャートである。
【図７】駆動対象１０の位置・速度・加速度の軌跡を表すグラフであって、負荷レベル毎の軌跡を示したグラフである。
【図８】変形例の主制御処理を表すフローチャートである。
【図９】変形例における駆動対象１０の位置・速度・加速度の軌跡を表すグラフであって、負荷レベル毎の軌跡を示したグラフである。
【発明を実施するための形態】
【００２４】
以下に本発明の実施例について、図面と共に説明する。本実施例の制御システム１は、図１に示すように、駆動対象１０を駆動するモータ（直流モータ）２０と、モータドライバ３０と、モータ２０の回転軸に接続されたロータリエンコーダ４０と、ロータリエンコーダ４０の出力信号に基づき、モータ２０の回転位置Ｘを検出する位置検出器５０及びモータ２０の回転速度ωを検出する速度検出器５５と、モータ２０に対する操作量である電流指令値Ｕを算出するモータ制御ユニット６０と、を備える。
【００２５】
この制御システム１は、画像形成装置等の電気的装置に組み込まれ、電気的装置の主制御ユニット（メインマイコン等）から入力される指令に従うモータ制御を行う。具体的に、駆動対象１０としては、画像形成装置が備える用紙搬送機構を挙げることができる。
【００２６】
図２には、画像形成装置としてのインクジェットプリンタ１００の構成を示す。インクジェットプリンタ１００は、プラテン１０１の上流側に、搬送ローラ１１１及びピンチローラ１１２を備え、プラテン１０１の下流側に、排紙ローラ１１３及びピンチローラ１１４を備える。また、プラテン１０１上に、用紙１６０に対して画像形成可能な記録ヘッド（所謂インクジェットヘッド）１３１及び記録ヘッド１３１を搬送するためのキャリッジ１３５を備える。この他、インクジェットプリンタ１００は、搬送ローラ１１１及び排紙ローラ１１３を駆動するためのモータ１２０、このモータ１２０を制御するモータ制御装置１４０、並びに、モータ制御装置１４０を含む装置内各部に対して指令入力して、インクジェットプリンタ１００全体を統括制御する主制御ユニット１５０を備える。
【００２７】
このインクジェットプリンタ１００において、用紙搬送機構は、主にローラ１１１〜１１４によって構成される。搬送ローラ１１１及び排紙ローラ１１３は、モータ１２０からの動力を受けて、互いに連動するように回転する。この用紙搬送機構には、図示しない給紙トレイから用紙１６０が供給され、給紙された用紙１６０は、搬送ローラ１１１とピンチローラ１１２との間で挟持されて、搬送ローラ１１１の回転により下流側（図中太矢印方向）に搬送される。また、搬送ローラ１１１の回転により搬送されて排紙ローラ１１３に到達した用紙１６０は、排紙ローラ１１３とピンチローラ１１４との間で挟持されて、排紙ローラ１１３の回転により下流に搬送される。この搬送ローラ１１１及び排紙ローラ１１３の同期動作により、用紙１６０は、図示しない排紙トレイに排出される。また、このように搬送される用紙１６０に対しては、プラテン１０１上で、記録ヘッド１３１によるインク液滴の吐出動作が行われる。
【００２８】
インクジェットプリンタ１００では、外部から印刷指令を受信すると、主制御ユニット１５０が、この印刷指令にて指定された印刷対象の画像データに基づく画像を用紙１６０に形成するために、モータ制御装置１４０に対して、搬送ローラ１１１及び排紙ローラ１１３を所定量回転させるように駆動指令を入力する。これによって、モータ制御装置１４０は、搬送ローラ１１１及び排紙ローラ１１３が所定量回転するように、モータ１２０を制御する。
【００２９】
主制御ユニット１５０は、このような駆動指令の入力を繰返し実行することにより、モータ制御装置１４０を通じて、用紙１６０を所定量ずつ記録ヘッド１３１による画像形成位置に送り出す。そして、用紙１６０を所定量ずつ送り出しては、用紙１６０の搬送方向とは直交する主走査方向（図２紙面法線方向）に、記録ヘッド１３１を搬送し、この搬送過程では記録ヘッド１３１に印刷対象の画像データに基づくインク液滴の吐出動作を実行させることにより、プラテン１０上の用紙１６０に印刷対象の画像データに基づく画像を形成する。この記録ヘッド１３１によるインク液滴の吐出動作は、少なくとも用紙１６０が所定量送りだされて停止した状態で実行される。また、記録ヘッド１３１を１回搬送する中でのインク液滴の吐出動作の実行が終了すると、再度用紙１６０が所定量送りだされる。図２に示すインクジェットプリンタ１００は、このように用紙１６０を所定量ずつ送り出しては、用紙１６０に画像を形成する動作を繰り返すことによって、印刷対象の画像データに基づく一連の画像を用紙１６０に形成する。
【００３０】
本実施例の制御システム１は、このような構成のインクジェットプリンタ１００に組み込むことができる。具体的に、インクジェットプリンタ１００には、制御システム１の駆動対象１０及びモータ２０を除く構成要素（図１点線内の構成要素）を、モータ制御装置１４０として組み込むことができる。この場合、インクジェットプリンタ１００が備えるモータ１２０は、制御システム１が備えるモータ２０に対応する。そして、搬送ローラ１１１及び排紙ローラ１１３、又は、用紙１６０が駆動対象１０に対応する。
【００３１】
インクジェットプリンタ１００では、用紙１６０を所定量ずつ送り出しては、用紙１６０に画像を形成するため、高精度に用紙１６０を所定量ずつ搬送しないと、用紙１６０に形成される画像の品質が劣化する。一方で、ユーザからは、高速な印字が求められている。また、個体（製品）毎にスループット（用紙搬送を含む印字速度）が大きく異なるようでは、スループットに劣る個体（製品）を所有するユーザから不満が生じる可能性があり、必ずしも個体毎に、最大限のスループットで高速印字を行うことが好ましいとは限らない。即ち、個体毎のスループットのばらつきについては低減されるのが好ましい。
【００３２】
本実施例の制御システム１は、このような高速性と精度と、スループットのばらつきの少なさが求められるシステムに適用されると、その効果が発揮される。
続いて、制御システム１の詳細構成を説明する。制御システム１が備えるモータドライバ３０（図１参照）は、モータ制御ユニット６０から入力される電流指令値Ｕに従って、電流指令値Ｕに対応する駆動電流をモータ２０に入力し、モータ２０を駆動する。
【００３３】
一方、ロータリエンコーダ４０は、モータ２０の回転軸に接続されて、モータ２０が所定量回転する度にパルス信号を出力する周知のロータリエンコーダである。このロータリエンコーダ４０は、パルス信号として、位相がπ／２異なるＡ相信号及びＢ相信号を出力する。位置検出器５０は、このロータリエンコーダ４０から出力されるＡ相信号及びＢ相信号に基づき、モータ２０の回転位置Ｘを検出する。そして、検出した回転位置Ｘの情報をモータ制御ユニット６０に入力する。また、速度検出器５５は、ロータリエンコーダ４０から出力されるＡ相信号及びＢ相信号に基づき、モータ２０の回転速度ωを検出し、この情報をモータ制御ユニット６０に入力する。
【００３４】
そして、モータ制御ユニット６０は、外部（主制御ユニット１５０等）から駆動指令が入力されると、その駆動指令と共に指定された目標搬送量Ｐｔに従って、駆動対象１０を目標搬送量Ｐｔ分搬送する。
【００３５】
具体的に、モータ制御ユニット６０は、駆動指令が入力されると、駆動対象１０を目標搬送量Ｐｔに対応した地点まで移動させるために、制御手法の異なる第一制御処理及び第二制御処理を所定条件で切り替えて実行する。即ち、図３に示すように、駆動対象１０の駆動制御開始初期では、第一制御処理を実行し、所定条件が満足された時点で、第一制御処理に代えて第二制御処理を実行する。
【００３６】
第一制御処理では、速度検出器５５から入力されるモータ２０の回転速度ωの情報に基づき、この回転速度ωでの逆起電力による電流低下を加味した電流量であってモータ２０に入力可能な電流上限値Ｕｍａｘを、所定の演算式Ｕｍ（ω）により算出し、算出した電流上限値Ｕｍａｘに対応する電流指令値Ｕ＝Ｕｍａｘを、モータドライバ３０に入力する。このような制御によって、モータ２０の最大能力相当で駆動対象１０を搬送する。
【００３７】
尚、電流上限値Ｕｍａｘを算出可能な演算式Ｕｍ（ω）は、予め設計段階で理論又は実験により求めることができる。具体的に、設計者は、理論により演算式Ｕｍ（ω）を定める場合、演算式Ｕｍ（ω）を、モータ２０の定格電圧Ｖｍａｘ、モータ２０の起電力係数Ｋｅ、電機子抵抗Ｒａに基づき、次式により定めることができる。
【００３８】
【数１】
0005874264.tif 000002
【００３９】
一方、実験結果に基づいて定める場合には、図４に示すように、逆起電力による影響がない状態においてモータ２０に入力可能な最大電流量Ｉｍａｘ、即ち、モータ２０の回転速度がゼロであるときに入力可能な最大電流量Ｉｍａｘで、モータ２０を駆動して得られるモータ２０の最大回転速度ωｍａｘと、その時点でモータ２０に流れる駆動電流の上記最大電流量Ｉｍａｘからの電流低下分Ｉｄと、に基づき、演算式Ｕｍ（ω）を次式により定めることができる。
【００４０】
【数２】
0005874264.tif 000003
【００４１】
演算式Ｕｍ（ω）を理論及び実験のいずれに基づいて定めるかは、設計者の自由である。しかしながら、理論により演算式Ｕｍ（ω）を求める場合には、カタログ値の誤差による影響を受けて、電流上限値Ｕｍａｘを演算式Ｕｍ（ω）に基づき正確に算出することができない可能性があるので、実験により演算式Ｕｍ（ω）を定めるのが好ましい。
【００４２】
また、モータ制御ユニット６０は、第一制御処理に代えて第二制御処理を実行すると、位置検出器５０により検出されたモータ２０の回転位置Ｘから特定される駆動対象１０の駆動開始地点（第一制御処理の実行開始時の地点）を原点とした位置（搬送量）Ｐと、速度検出器５５により検出されたモータ２０の回転速度ωから特定される駆動対象１０の速度Ｖと、駆動対象１０の位置Ｐ及び速度Ｖについての目標プロファイル（即ち目標軌跡）と、に基づき、駆動対象１０の位置Ｐ及び速度Ｖが目標プロファイルに追従するような電流指令値Ｕを算出する。そして、この電流指令値Ｕを、モータドライバ３０に入力する。この動作により、モータ制御ユニット６０は、駆動対象１０の位置Ｐ及び速度Ｖを目標値に制御する。
【００４３】
具体的に、第二制御処理では、フィードバック制御系、又は、フィードバック制御系及びフォードフォワード制御系からなる二自由度制御系を用いて、電流指令値Ｕを算出する構成にすることができる。尚、電流指令値Ｕを算出するための関数については、設計者が駆動対象１０の特性に基づいて周知の手法により定めることができる。
【００４４】
本実施例では、このような内容の第一制御処理及び第二制御処理を切り替えて実行することで、高速且つ高精度に、駆動対象１０を目標搬送量Ｐｔに対応する位置まで搬送する。但し、本実施例では、図３に示すように、第二制御処理の開始後、直ちに駆動対象１０を減速させずに、駆動対象１０を定速移動させた後に減速・停止させることで、目標搬送量Ｐｔに対応する地点（以下「目標停止位置」とも表現する。）で駆動対象１０が高精度に停止するようにモータ２０を制御する。即ち、本実施例の第二制御処理では、定速区間及び減速区間を含む目標プロファイルを用いて、駆動対象１０を減速・停止させる。
【００４５】
第一制御処理では、電流上限値Ｕｍａｘに対応する電流指令値Ｕをモータドライバ３０に入力して、モータ２０の最大能力相当で駆動対象１０を駆動するため、第二制御処理で直ちに駆動対象１０を減速させようとしても精度よく駆動対象１０を減速・停止させることが難しい。そこで、本実施例では、減速前に、定速区間を設けることで、高精度に、駆動対象１０を目標プロファイルに従って減速できるようにし、駆動対象１０を目標停止位置Ｐｔに精度良く停止させるのである。
【００４６】
また、本実施例では、モータ２０の最大能力相当で駆動対象１０を減速・停止させることができるように、減速区間での目標加速度Ａｒのピークが、減速開始時の駆動対象１０の速度Ｖに依らず、モータ２０の最大能力に対応した一律の値−Ａｐとなるように減速区間の目標プロファイルを設定する。本実施例では、このような駆動対象１０の減速・停止手法を採用することにより、第一制御処理によって駆動対象１０を加速させることのできる時間を長くし、駆動対象１０を高速に目標停止位置Ｐｔに停止させることができるようにする。
【００４７】
また、本実施例の制御システム１では、標準の目標プロファイル（以下、「標準プロファイル」と言う。）が定義されている。標準プロファイルは、第二制御処理での駆動対象１０の標準的な目標加速度、目標速度、目標位置の軌跡を示すものである。そして、第一制御処理から第二制御処理への切替は、標準プロファイルに基づく第二制御処理によって第二制御処理開始時点から停止するまでに駆動対象１０が移動する距離を推定した結果に基づいて行われる。
【００４８】
具体的に、本実施例では、標準プロファイルを用いて第二制御処理を実行し駆動対象１０を減速・停止させる場合に、第二制御処理開始時点から停止するまでに駆動対象１０が移動する距離である停止必要量Ｐｎを算出する。一方で、駆動対象１０が現在位置Ｐから目標停止位置Ｐｔに到達するまでの距離である残り搬送量Ｐｓを算出する。そして、残り搬送量Ｐｓが停止必要量Ｐｎ以下となった時点で、駆動対象１０の制御を、第一制御処理から第二制御処理に切り替える。このような切替により、駆動対象１０を電流上限値Ｕｍａｘで長く駆動し、高速に駆動対象１０を搬送する一方、第一制御処理の終了後には、標準プロファイルに対応する加速度軌跡、速度軌跡、及び位置軌跡で、駆動対象１０を目標停止位置Ｐｔに高精度に停止させる。
【００４９】
更に、本実施例では、上記標準プロファイルとして、駆動対象１０の駆動開始時点（即ち第一制御処理の開始時点）から、駆動対象１０が停止する時点までの時間である駆動時間が一定値ＴＬとなる目標プロファイルを定義し、この標準プロファイルに基づき停止必要量Ｐｎを算出することにより、駆動対象１０の駆動開始時点から、駆動対象１０が停止する時点までの時間である駆動時間が概ね一定の値ＴＬとなるようにする。
【００５０】
具体的に、標準プロファイルは、定速区間における各時刻ｔでの駆動対象１０の目標加速度Ａｒ、目標速度Ｖｒ及び目標位置Ｐｒ、並びに、減速区間における各時刻ｔでの駆動対象１０の目標加速度Ａｒ、目標速度Ｖｒ及び目標位置Ｐｒが次のように定められてなる。
【００５１】
＜定速区間＞
・目標加速度Ａｒ＝０  …（３）
・目標速度Ｖｒ＝Ｖｍ  …（４）
・目標位置Ｐｒ＝Ｖｍ・（ｔ−Ｔａ）＋Ｐｍ  …（５）
＜減速区間＞
・目標加速度
【００５２】
【数３】
0005874264.tif 000004
【００５３】
・目標速度
【００５４】
【数４】
0005874264.tif 000005
【００５５】
・目標位置
【００５６】
【数５】
0005874264.tif 000006
【００５７】
但し、定速区間は、時刻Ｔａから時刻Ｔｂまでの時間領域に対応し、減速区間は、時刻Ｔｂから時刻ＴＬまでの時間領域に対応する。尚、記号ｔは、駆動対象１０の駆動開始時点からの時刻（経過時間）を表し、記号Ｔａは、時刻ｔの座標系での定速区間の開始時刻（即ち、標準プロファイルに基づく制御の開始時刻）を表し、記号Ｔｂは、時刻ｔの座標系での減速区間の開始時刻（以下「減速開始時刻」とも表現する。）を表す。また、記号Ｐｍは、標準プロファイルに基づく制御開始時の駆動対象１０の位置Ｐを表し、記号Ｖｍは、標準プロファイルに基づく制御開始時の駆動対象１０の速度Ｖを表す。
【００５８】
この他、記号Ｔｄは、減速区間の時間（減速時間）を表し、記号Ａｐは、減速区間での目標加速度Ａｒのピークの絶対値を表す。この他、記号ＴＬは、目標とする駆動対象１０の駆動開始時点から停止時点までの時間、即ち、目標駆動時間を表す。
【００５９】
このような標準プロファイルに従って第二制御処理を実行した場合、停止必要量Ｐｎは、第一制御処理終了時の駆動対象１０の速度Ｖを、速度Ｖｍとして用い、第一制御処理終了時の時点での時刻ｔを、時刻Ｔａとして用いて、次式により算出することができる。
【００６０】
Ｐｎ＝Ｐｃ＋Ｐｄ    …（１１）
Ｐｃ＝Ｖｍ・（ＴＬ−Ｔｄ−Ｔａ）    …（１２）
Ｐｄ＝Ｖｍ2／Ａｐ    …（１３）
ここで、Ｐｃは、定速区間での駆動対象１０の移動量（以下「定速距離」とも表現する。）を表し、Ｐｄは、減速区間での駆動対象１０の移動量（以下「減速距離」とも表現する。）を表す。ＴＬは、上述したように、目標駆動時間として予め設計段階で制御システム１の設計者により一定値に定められるものであり、目標搬送量Ｐｔ分搬送する際の目標駆動時間である。尚、搬送条件等によって目標搬送量が複数定められる場合には、各目標搬送量に対して、目標駆動時間がそれぞれ定められる。また、Ａｐは、モータ２０の能力に従って予め設計段階で制御システム１の設計者により一定値に定められるものであり、Ｔｄは、Ｖｍ及びＡｐの値に基づく式（７）によって自動的に定まるものである。
【００６１】
従って、モータ制御ユニット６０は、駆動対象１０の駆動制御を、第一制御処理から第二制御処理に切り替えるか否かの判断については、その時点で速度検出器５５により検出される回転速度ωから特定される駆動対象１０の速度Ｖと、その時点で位置検出器５０により検出される回転位置Ｘから特定される駆動対象１０の位置Ｐと、駆動開始時点からの経過時間ｔとを用いて、駆動対象１０の制御を第一制御処理から第二制御処理に切り替えた場合の停止必要量Ｐｎと、この時点での残り搬送量Ｐｓ＝Ｐｔ−Ｐとを算出し、比較することにより行うことができる。尚、駆動開始時点からの経過時間（時刻ｔ）については、モータ制御ユニットの内部時計６１から特定することができる。
【００６２】
続いて、駆動指令が入力されるとモータ制御ユニット６０が周期的に実行する主制御処理の詳細を、図５を用いて説明する。主制御処理は、駆動対象１０を上記駆動指令にて指定された目標停止位置Ｐｔまで搬送するための処理である。図５に示す主制御処理を開始すると、モータ制御ユニット６０は、まず、位置検出器５０により検出されたモータ２０の回転位置Ｘに基づき、現時点での駆動対象１０の位置Ｐを特定し、速度検出器５５により検出されたモータ２０の回転速度ωに基づき、現時点での駆動対象１０の速度Ｖを特定する（Ｓ１１０）。更に、モータ制御ユニット６０は、駆動指令が入力されて駆動対象１０の駆動制御を開始した時点からの経過時間（現在時刻）ｔを、内部時計６１に基づき特定する（Ｓ１１０）。モータ２０と駆動対象１０とは連結されているので、当然の如く、モータ２０の回転位置Ｘ及び回転速度ωから、駆動対象１０の位置Ｐ及び速度Ｖは特定可能である。
【００６３】
その後、モータ制御ユニット６０は、フラグＦが値１にセットされているか否かを判断する（Ｓ１２０）。尚、フラグＦは、駆動指令が入力されると値０にリセットされ、Ｓ１９５の処理が実行されると、値１にセットされるものである。そして、フラグＦが値０であると判断すると（Ｓ１２０でＮｏ）、Ｓ１１０で特定された現在の駆動対象１０の速度Ｖ、及び、現在時刻ｔに基づき、上述した標準プロファイルに従う制御を開始したときの定速区間の時間である定速時間Ｔｃを算出する（Ｓ１３０）。
【００６４】
Ｔｃ＝ＴＬ−（ｔ＋Ｔｄ）
上述したように減速時間Ｔｄは、現在の駆動対象１０の速度Ｖと、設計段階で予め定められた減速区間の加速度ピークの絶対値Ａｐとから式Ｔｄ＝２・Ｖ／Ａｐに従って算出される。またＴＬは、設計段階で定められた目標駆動時間である。
【００６５】
その後、モータ制御ユニット６０は、Ｓ１３０で算出された定速時間Ｔｃが予め設計段階で定められた下限値Ｔｃｍ未満であるか否かを判断し（Ｓ１４０）、下限値Ｔｃｍ以上であると判断すると（Ｓ１４０でＮｏ）、Ｓ１５０の処理を実行後に、Ｓ１６０に移行し、定速時間Ｔｃが下限値Ｔｃｍ未満であると判断すると（Ｓ１４０でＹｅｓ）、Ｓ１５５の処理を実行した後に、Ｓ１６０に移行する。尚、下限値Ｔｃｍは、後述するように、駆動対象１０が安定して搬送されるように定めた最小の定速時間に対応する。
【００６６】
Ｓ１５０では、Ｓ１１０で特定された速度Ｖ及びＳ１３０で算出された定速時間Ｔｃに基づき、標準プロファイルに従う制御を現時点から開始した場合の定速距離Ｐｃ＝Ｖ・Ｔｃ及び減速距離Ｐｄ＝Ｖ2／Ａｐを算出する。そして、これらの値に基づき、現時点から標準プロファイルに従う制御を開始した場合の停止必要量Ｐｎ＝Ｐｃ＋Ｐｄ＝Ｖ・Ｔｃ＋Ｖ2／Ａｐを算出する。尚、現在時刻ｔに対応する標準プロファイルは、上述の式（３）〜（７）（９）（１０）において、時刻ＴａをＳ１１０で特定された現在時刻ｔに設定し、時刻ＴｂをＴａ＋Ｔｃに設定し、速度Ｖｍを、Ｓ１１０で特定された速度Ｖに設定し、位置Ｐｍを、Ｓ１１０で特定された位置Ｐに設定されてなるものである。
【００６７】
一方、Ｓ１５５では、Ｓ１１０で特定された速度Ｖ及び上述の下限値Ｔｃｍに基づき、標準プロファイルの定速時間を下限値Ｔｃｍに補正してなる準標準プロファイルに従う制御を標準プロファイルに従う制御に代えて、現時点から行った場合の定速距離Ｐｃ＝Ｖ・Ｔｃｍ及び減速距離Ｐｄ＝Ｖ2／Ａｐを算出する。現在時刻ｔに対応する準標準プロファイルは、上述の式（３）〜（７）（９）（１０）において、時刻Ｔａを現在時刻ｔに設定し、時刻ＴｂをＴａ＋Ｔｃｍに設定し、速度Ｖｍを、Ｓ１１０で特定された速度Ｖに設定し、位置Ｐｍを、Ｓ１１０で特定された位置Ｐに設定されてなるものである。そして、これらの値に基づき、現時点から準標準プロファイルに従う制御を開始した場合の停止必要量Ｐｎ＝Ｐｃ＋Ｐｄ＝Ｖ・Ｔｃｍ＋Ｖ2／Ａｐを算出する。
【００６８】
尚、Ｓ１３０で算出される定速時間Ｔｃが下限値Ｔｃｍよりも小さくなる場合には、駆動対象１０の負荷が通常よりも大きいことが想定される。即ち、駆動対象１０の負荷が大きく、時間が経過しても速度が増加しない場合には、一向に後述するＳ１７０での処理で肯定判断がなされずに、現在時刻ｔが大きくなってしまい、Ｓ１３０で算出される定速時間Ｔｃが小さくなってしまう。そして、定速時間Ｔｃが小さくなってしまうと、駆動対象１０を定速状態からすぐに減速制御することになってしまうため、安定して駆動対象１０を搬送することができなくなってしまう。そのため、本実施例では、定速時間の下限値Ｔｃｍを設けることにより、目標駆動時間ＴＬで駆動することを諦め、駆動対象の搬送精度が低下しないよう定速時間を確保し、ひいては、目標駆動時間ＴＬを大きく見積もるようにしている。
【００６９】
そして、Ｓ１６０では、Ｓ１１０で特定された位置Ｐと駆動指令にて指定された目標停止位置Ｐｔとに基づき、目標停止位置Ｐｔまでの残り搬送量Ｐｓ＝Ｐｔ−Ｐを算出する。また、Ｓ１６０に続くＳ１７０では、残り搬送量Ｐｓが停止必要量Ｐｎ以下であるか否かを判断することにより、残り搬送量Ｐｓが停止必要量Ｐｎに到達したか否かを判断する。
【００７０】
そして、残り搬送量Ｐｓが停止必要量Ｐｎ以下でないと判断すると（Ｓ１７０でＮｏ）、Ｓ１８０に移行し、上述した第一制御処理を実行して、電流上限値Ｕｍａｘに対応する電流指令値Ｕ＝Ｕｍａｘを、モータドライバ３０に入力する。このような制御によって、残り搬送量Ｐｓが停止必要量Ｐｎよりも多い場合には、モータ２０の最大能力相当で駆動対象１０を搬送する。その後、図５に示す主制御処理を一旦終了し、周期的に到来する次の実行タイミングで、再度、図５に示す主制御処理を開始する。
【００７１】
モータ制御ユニット６０は、このような内容の処理を繰返し実行することにより、残り搬送量Ｐｓが停止必要量Ｐｎ以下となるまでは、電流上限値Ｕｍａｘに対応する駆動電流で、モータ４０を駆動する。そして、残り搬送量Ｐｓが停止必要量Ｐｎ以下となると、Ｓ１７０で肯定判断して（Ｓ１７０でＹｅｓ）、Ｓ１９１に移行する。
【００７２】
Ｓ１９１に移行すると、モータ制御ユニット６０は、現在時刻ｔを、定速区間の開始時刻（換言すれば第二制御処理の開始時刻）Ｔａに設定し、Ｓ１１０で特定されたこの時点での駆動対象１０の位置Ｐを、第二制御処理開始時の駆動対象１０の初期位置Ｐｍとして設定し、同じ時点での駆動対象１０の速度Ｖを、第二制御処理開始時の駆動対象１０の初期速度Ｖｍとして設定する。
【００７３】
更に、モータ制御ユニット６０は、第二制御処理によって実現する定速時間Ｔｃｒを、位置Ｐｍ、速度Ｖｍ、目標停止位置Ｐｔ、減速距離Ｐｄ＝Ｖｍ2／Ａｐに基づき、次式に従って算出する（Ｓ１９３）。
【００７４】
Ｔｃｒ＝（Ｐｔ−Ｐｍ−Ｐｄ）／Ｖｍ    …（１４）
そして、減速開始時刻Ｔｂを、この定速時間Ｔｃｒを用いて、Ｔｂ＝Ｔａ＋Ｔｃｒに設定する（Ｓ１９３）、第二制御処理で用いる目標プロファイルを決定する。即ち、式（３）〜（７）（９）（１０）に、Ｓ１９１，Ｓ１９３で設定した位置Ｐｍ、速度Ｖｍ、時刻Ｔａ，Ｔｂを代入して得られる目標プロファイルを、標準プロファイルに対応する今回の第二制御処理で用いる目標プロファイルに決定する。これにより、残り搬送量Ｐｓと停止必要量Ｐｎとが一致するタイミングが、主制御処理の実行タイミングとずれている場合でも、正確に目標停止位置に駆動対象１０を停止させることが可能となる。この場合、実際の駆動時間が、目標駆動時間ＴＬに対して、最大で主制御処理の１周期分の時間ずれる可能性があるが、目標駆動時間ＴＬに対して極微小なものであり、影響はない。
【００７５】
このように、本実施例では、標準プロファイルにおける減速開始時刻Ｔｂを、式（８）に従う時刻ではなく、現在の位置Ｐｍと目標停止位置Ｐｔと減速距離Ｐｄと定速区間の速度Ｖｍとの関係に基づき、駆動対象１０を正確に目標停止位置Ｐｔに停止させることができるような時刻に補正することで、第二制御処理で用いる目標プロファイルを決定する。
【００７６】
尚、Ｓ１５５で準標準プロファイルに従う停止必要量Ｐｎを算出し、残り搬送量Ｐｓが、この停止必要量Ｐｎ以下となることで、Ｓ１７０で肯定判断して、Ｓ１９１，Ｓ１９３の処理を実行した場合には、同様の減速開始時刻Ｔｂの補正により、第二制御処理で用いられる目標プロファイルは、準標準プロファイルにおける定速時間を、値Ｔｃｒに微調整してなる目標プロファイルに決定される。
【００７７】
その後、モータ制御ユニット６０は、フラグＦを値１に更新して（Ｓ１９５）、図６に示す第二制御処理を実行する（Ｓ２００）。そして、第二制御処理の実行後には、図５に示す主制御処理を一旦終了し、周期的に到来する次の実行タイミングで、再度、主制御処理を実行する。但し、この場合には、フラグＦが値１であるので、Ｓ１２０で肯定判断して、すぐさまＳ２００に移行し、第二制御処理を実行する。モータ制御ユニット６０は、このような内容の主制御処理を繰返し実行することにより、残り搬送量Ｐｓが停止必要量Ｐｎ以下となった後には、第二制御処理による駆動対象１０の駆動制御を継続的に行う。
【００７８】
続いて、図６を用いて第二制御処理の詳細について説明する。図６に示す第二制御処理を開始すると、モータ制御ユニット６０は、現在時刻ｔに基づき、減速開始時刻Ｔｂが到来したか否かを判断し（Ｓ２１０）、減速開始時刻Ｔｂが到来していない（ｔ＜Ｔｂである）と判断すると（Ｓ２１０でＮｏ）、Ｓ１９１，Ｓ１９３の処理によって決定された目標プロファイルに従って、現在時刻ｔでの駆動対象１０の加速度Ａの目標値である目標加速度ＡｒをＡｒ＝０に設定し、駆動対象１０の速度Ｖの目標値である目標速度ＶｒをＶｒ＝Ｖｍに設定し、駆動対象１０の位置Ｐの目標値である目標位置ＰｒをＰｒ＝Ｖｍ・（ｔ−Ｔａ）＋Ｐｍに設定する（Ｓ２２０）。その後、Ｓ２６０に移行し、上記設定した目標値（目標加速度Ａｒ、目標速度Ｖｒ及び目標位置Ｐｒ）と、Ｓ１１０の処理で特定された現時点での駆動対象１０の位置Ｐ及び速度Ｖとに基づき、駆動対象１０の位置Ｐ及び速度Ｖと目標値との誤差を縮めるようなモータ２０に対する電流指令値Ｕを算出し、算出した電流指令値Ｕを、モータドライバ３０に入力する。その後、第二制御処理を終了する。このような制御によって、モータ制御ユニット６０は、時刻ｔ＝Ｔａから時刻ｔ＝Ｔｂまでの時間領域では、駆動対象１０が速度Ｖｍで定速移動するように、駆動対象１０の駆動制御を行う。
【００７９】
一方、モータ制御ユニット６０は、減速開始時刻Ｔｂが到来した（ｔ≧Ｔｂである）と判断すると（Ｓ２１０でＹｅｓ）、現在時刻ｔに基づき減速区間の終了時刻Ｔｂ＋Ｔｄが到来したか否かを判断する（Ｓ２３０）。そして、減速区間の終了時刻Ｔｂ＋Ｔｄが到来していない（ｔ＜Ｔｂ＋Ｔｄである）と判断すると（Ｓ２３０でＮｏ）、現在時刻ｔでの目標加速度Ａｒを式（６）に従って設定し、目標速度Ｖｒを式（９）に従って設定し、目標位置Ｐｒを式（１０）に従って設定する（Ｓ２４０）。その後、Ｓ２６０に移行し、上記設定した目標値（目標加速度Ａｒ、目標速度Ｖｒ及び目標位置Ｐｒ）と、Ｓ１１０の処理で特定された駆動対象１０の位置Ｐ及び速度Ｖとに基づき、駆動対象１０の位置Ｐ及び速度Ｖと目標値との誤差を縮めるようなモータ２０に対する電流指令値Ｕを算出し、算出した電流指令値Ｕを、モータドライバ３０に入力する。その後、第二制御処理を終了する。このような制御によって、モータ制御ユニット６０は、時刻ｔ＝Ｔｂから時刻ｔ＝Ｔｂ＋Ｔｄまでの時間領域では、減速時の加速度ピークが値−Ａｐとなり（図３及び図７参照）、時刻ｔ＝Ｔｂ＋Ｔｄでの加速度Ａ及び速度Ｖがゼロとなり、時刻ｔ＝Ｔｂ＋Ｔｄでの位置Ｐが目標停止位置Ｐｔと一致するように、モータ２０を通じて駆動対象１０を減速・停止させる。
【００８０】
尚、図７には、モータ制御ユニット６０により実行される第一制御処理及び第二制御処理で実現される駆動対象の位置・速度・加速度の軌跡であって、負荷レベル毎の軌跡を表す。第二制御処理開始時の駆動対象１０の速度Ｖｍは、駆動対象１０に作用する負荷レベルに応じて変化するが、本実施例によれば、負荷レベルに依らず、一律に、減速区間での加速度のピークがモータ２０にて実現可能な加速度の限界値−Ａｐとなるように、減速区間の目標プロファイルが設定される。
【００８１】
また、モータ制御ユニット６０は、減速区間の終了時刻ｔ＝Ｔｂ＋Ｔｄが到来したと判断すると（Ｓ２３０でＹｅｓ）、現在時刻ｔでの目標加速度ＡｒをＡｒ＝０に設定し、目標速度ＶｒをＶｒ＝０に設定し、目標位置ＰｒをＰｒ＝Ｐｔに設定し（Ｓ２５０）、その後、Ｓ２６０に移行して、駆動対象１０の位置Ｐ及び速度Ｖがこの目標値（目標加速度Ａｒ、目標速度Ｖｒ及び目標位置Ｐｒ）に一致するような電流指令値Ｕを算出して、この電流指令値Ｕを、モータドライバ３０に入力する。その後、第二制御処理を終了する。
【００８２】
モータ制御ユニット６０は、このような内容の第二制御処理を含む図５に示す主制御処理を周期的に繰返し実行し、制御終了条件が満足されると、この周期処理を終了する。この動作によって、負荷レベルに依らず、駆動対象１０の駆動開始時刻（ｔ＝０）から駆動対象１０の停止時刻までの時間が略一定となるようにして、駆動対象１０を目標停止位置Ｐｔで精度よく停止させる。尚、モータ制御ユニット６０は、位置検出器５０から得られる駆動対象１０の位置Ｐが一定時間変化しなくなると、駆動対象１０が停止したとみなして周期処理を終了する構成にすることができる。
【００８３】
以上、本実施例の制御システム１の構成について説明したが、本実施例によれば、駆動対象１０を搬送して目標停止位置Ｐｔに停止させる駆動制御の開始初期において、モータ２０に入力可能な電流上限値Ｕｍａｘを推定して、モータ２０を電流上限値Ｕｍａｘに対応する駆動電流で駆動するので、高速に駆動対象１０を搬送することができる。更に、停止必要量Ｐｎと残り搬送量Ｐｍとの比較によって、第二制御処理への切替タイミングを調整するので、電流上限値Ｕｍａｘでのモータ駆動を、停止精度が劣化しないことが予想される範囲で長く実行することができる。また、本実施例では、減速時の加速度ピークを、モータ２０により実現可能な加速度の限界値−Ａｐに一律に調整するので、モータ２０の能力を限界まで利用して駆動対象１０を減速・停止させることができ、駆動対象１０を高速且つ高精度に目標停止位置に停止させることができる。
【００８４】
また、本実施例によれば、駆動対象１０に対する駆動制御を開始した時点から駆動対象が停止するまでの時間である駆動時間を、負荷レベルに依らず、略一定の時間とする。従って、駆動対象１０を目標停止位置に停止させるまでの時間にばらつきが生じることによる問題を解消することができる。例えば、仮に駆動対象を目標停止位置に停止させるまでの時間にばらつきがある制御システムを、画像形成装置（インクジェットプリンタ１００等）の用紙搬送に用いた場合には、用紙搬送機構の負荷に応じて、用紙搬送時間に、個体毎（製品毎）のばらつきが生じ、製品群の中に、比較的用紙搬送時間の短い製品及び用紙搬送時間の長い製品が混在することになり、購入製品として比較的用紙搬送時間の長い製品が当たったユーザには、不満が生じる可能性があるが、本実施例の制御システム１によれば、駆動対象１０を目標停止位置に停止させるまでの時間のばらつきを抑えることができるので、このような不満が生じるのを抑えることができる。
【００８５】
即ち、本実施例の制御システム１によれば、駆動対象１０の目標停止位置への停止精度を向上させることと、駆動対象を目標停止位置に停止させるまでの時間を短縮化することと、この時間のばらつきを抑えることとを、調和を図りながらバランス良く実現することができる。そして、このような制御システム１を、インクジェットプリンタ１００等の画像形成装置に適用すれば、用紙１６０の搬送時間が一定となるようにして個体毎のばらつきを抑えつつも、高速且つ高精度に、用紙１６０を目標停止位置まで変位させることができて、総合的に良好な画像形成装置を構成することができる。
【００８６】
ところで、以上には、定速区間及び減速区間を含む目標プロファイルを用いた制御システム１について説明したが、駆動対象１０を目標停止位置Ｐｔに停止させることについての高速性を重視するならば、目標プロファイルには、定速区間を設けなくてもよい。
［変形例］
続いては、定速区間のない目標プロファイル、即ち、目標速度が単調減少する目標プロファイルを用いた第二制御処理を実行する変形例の制御システム１において、モータ制御ユニット６０が図５に示す処理に代えて実行する主制御処理を、図８を用いて説明する。
【００８７】
図８に示す主制御処理を開始すると、モータ制御ユニット６０は、Ｓ１１０での処理と同様に、駆動対象１０の位置Ｐ及び速度Ｖ、並びに、駆動対象１０の駆動制御を開始した時点からの経過時間（現在時刻）ｔを特定する（Ｓ３１０）。その後、フラグＦが値１にセットされているか否かを判断し（Ｓ３２０）、フラグＦが値０であると判断すると（Ｓ３２０でＮｏ）、Ｓ３１０で特定された現在の駆動対象１０の速度Ｖ、及び、現在時刻ｔに基づき、標準プロファイルに従う第二制御処理を現時点から開始したときの停止必要量Ｐｎを算出する（Ｓ３３０）。但し、ここで用いる標準プロファイルは、目標加速度Ａｒ、目標速度Ｖｒ、及び、目標位置Ｐｒが、次式で表されるものである。記号Ｖｍ，Ｔａ，ＴＬ，Ａｐ等の意味は、基本的に上記実施例に従うが、本変形例では、定速区間を設けないため、Ｔａは、標準プロファイルに基づく制御の開始時刻であり、時刻ｔの座標系での減速区間の開始時刻に対応する。
【００８８】
・目標加速度
【００８９】
【数６】
0005874264.tif 000007
【００９０】
・目標速度
【００９１】
【数７】
0005874264.tif 000008
【００９２】
・目標位置
【００９３】
【数８】
0005874264.tif 000009
【００９４】
この標準プロファイルに従う駆動対象１０の駆動制御を開始したときの停止必要量Ｐｎは、次式で算出される。
Ｐｎ＝Ｖｍ2／Ａｐ  …（２０）
上式から理解できるように、本変形例の標準プロファイルは、上述した実施例の減速区間の標準プロファイルと基本形状は同じであるが、減速時間Ｔｄ及び加速度ピークの絶対値Ａｐが固定値ではなく、現在時刻ｔ及び現在の駆動対象１０の速度Ｖに依存した値を採る点で上述した実施例とは異なる。本変形例では、定速区間を設けないことから、駆動対象１０の駆動制御の開始時点から駆動対象１０が停止するまでの時間は、減速時間Ｔｄの調整により一定値ＴＬに調整される。また、これに併せて、加速度ピークの絶対値Ａｐは、固定値ではなく、式（１６）に示されるように、速度Ｖｍ及び減速時間Ｔｄに依存した値に調整される。
【００９５】
即ち、Ｓ３３０では、現在時刻ｔと目標駆動時間ＴＬとの差分から、減速時間Ｔｄを算出し、減速時間Ｔｄと駆動対象１０の速度Ｖ（＝Ｖｍ）とから停止に必要な加速度ピークの絶対値Ａｐを算出し、加速度ピークの絶対値Ａｐと速度Ｖ（＝Ｖｍ）とから、停止必要量Ｐｎを算出する。
【００９６】
また、このように停止必要量Ｐｎを算出すると、モータ制御ユニット６０は、Ｓ１６０と同様の手法で、残り変位量Ｐｓを算出し（Ｓ３６０）、その後、残り変位量Ｐｓが停止必要量Ｐｎ以下となったか否かを判断する（Ｓ３７０）。
【００９７】
そして、残り変位量Ｐｓが停止必要量Ｐｎより多い場合には（Ｓ３７０でＮｏ）、Ｓ１８０での処理と同様に、第一制御処理を実行して（Ｓ３８０）、当該図８に示す主制御処理を終了する。一方、残り変位量Ｐｓが停止必要量Ｐｎ以下となったと判断すると（Ｓ３７０でＹｅｓ）、Ｓ３９０に移行して、現在時刻ｔを、第二制御処理の開始時刻Ｔａに設定し、この時点での駆動対象１０の位置Ｐを、第二制御処理開始時の駆動対象１０の初期位置Ｐｍとして設定し、この時点での駆動対象１０の速度Ｖを、第二制御処理開始時の駆動対象１０の初期速度Ｖｍとして設定することで、第二制御処理で用いる目標プロファイルとして、上記標準プロファイルと同一の目標プロファイルを設定する。その後、フラグＦの値を１に設定する（Ｓ３９５）。
【００９８】
また、この処理後には、Ｓ４００に移行し、第二制御処理を実行する。即ち、第二制御処理では、Ｓ３９０の処理によって設定された目標プロファイルに従って、現在時刻ｔでの駆動対象１０の目標加速度Ａｒを、Ｓ３９０で設定した値Ｔａ，Ｐｍ，Ｖｍを代入した式（１５）（１７）に従う現在時刻ｔでの値に設定し、目標速度Ｖｒを、式（１８）に従う現在時刻ｔでの値に設定し、目標位置Ｐｒを、式（１９）に従う現在時刻ｔでの値に設定し、上記設定した目標値（目標加速度Ａｒ、目標速度Ｖｒ及び目標位置Ｐｒ）と、Ｓ３１０の処理で特定された現時点での駆動対象１０の位置Ｐ及び速度Ｖとに基づき、駆動対象１０の位置Ｐ及び速度Ｖと目標値との誤差を縮めるようなモータ２０に対する電流指令値Ｕを算出し、算出した電流指令値Ｕを、モータドライバ３０に入力する。その後、第二制御処理を終了する。
【００９９】
モータ制御ユニット６０は、このような内容の第二制御処理を含む図５に示す主制御処理を周期的に繰返し実行し、制御終了条件が満足されると、この周期処理を終了する。この動作によって、モータ制御ユニット６０は、時刻ｔ＝Ｔａから時刻ｔ＝ＴＬの時間領域では、駆動対象１０が減速し、時刻ｔ＝ＴＬで駆動対象１０が停止するように、駆動対象１０の駆動制御を行う。図８には、本変形例においてモータ制御ユニット６０により実現される駆動対象１０の位置・速度・加速度の軌跡であって、負荷レベル毎の軌跡を表す。
【０１００】
以上、変形例の制御システム１の構成について説明したが、変形例によっても、駆動対象１０の目標停止位置への停止精度を向上させることと、駆動対象を目標停止位置に停止させるまでの時間を短縮化することと、この時間のばらつきを抑えることとを、調和を図りながら実現することができる。
【０１０１】
尚、用語間の対応関係は、次の通りである。即ち、モータ制御ユニット６０は、モータ制御手段の一例に対応し、エンコーダ４０は、信号出力手段の一例に対応する。また、モータ制御ユニット６０が実行する第一制御処理は、第一制御手段によって実現される処理の一例に対応し、モータ制御ユニット６０が実行するＳ１２０，Ｓ１７０，Ｓ１９５，Ｓ３２０，Ｓ３７０，Ｓ３９５の処理は、切替手段によって実現される処理の一例に対応し、モータ制御ユニット６０が実行する第二制御処理（Ｓ２００，Ｓ４００）及びＳ１９１，Ｓ１９３，Ｓ３９０の処理は、第二制御手段によって実現される処理の一例に対応する。この他、モータ制御ユニット６０が実行するＳ１３０〜Ｓ１５５，Ｓ３３０の処理は、第一算出手段によって実現される処理の一例に対応し、Ｓ１６０，Ｓ３６０の処理は、第二算出手段によって実現される処理の一例に対応する。また、主制御ユニット１５０は、搬送制御手段の一例に対応する。
【０１０２】
また、本発明は、上記実施例に限定されるものではなく、種々の態様を採ることができる。例えば、上記実施例では、位置検出器５０により検出されるモータ２０の回転位置Ｘ及び速度検出器５５により検出されるモータ２０の回転速度ωから、駆動対象１０の位置Ｐ及び速度Ｖを特定して、この位置Ｐ及び速度Ｖを目標値に合わせるように駆動対象１０の駆動制御を行うようにしたが、モータ２０の回転位置Ｘ及び回転速度ωと、駆動対象１０の位置Ｐ及び速度Ｖとは、その尺度が異なる程度のものであるので、当然のことながら、位置検出器５０により検出されるモータ２０の回転位置Ｘ及び速度検出器５５により検出されるモータ２０の回転速度ωを直接用いて、これを目標値に合わせるようにモータ制御を行うことにより、間接的に、駆動対象１０の駆動制御を行うようにしてもよい。
【０１０３】
また、上記実施例では、ロータリエンコーダ４０はモータ２０の回転軸に接続されており、駆動対象１０の位置Ｐと速度Ｖとは、モータ２０の回転位置Ｘと回転速度ωとから特定されていた。しかしながら、ロータリエンコーダ４０は、駆動対象１０に接続され、駆動対象１０の位置Ｐと速度Ｖは、直接ロータリエンコーダ４０から検出されても良い。例えば、ロータリエンコーダ４０は、搬送ローラ１１１の回転軸に接続され得る。その場合、モータ２０の回転位置Ｘと回転速度ωとは、駆動対象１０の位置Ｐと速度Ｖとから特定され得る。
【０１０４】
この他、本実施例の制御システム１が、インクジェットプリンタ１００への適用に限定されるものではないことは言うまでもない。また、上記実施例では、駆動対象１０の位置Ｐ及び速度Ｖの両方を用いて、目標プロファイルに基づく制御を行うようにしたが、駆動対象１０の位置Ｐ及び速度Ｖの一方のみを用いて、目標プロファイルに基づく制御を行うようにしてもよい。
【０１０５】
また、上記実施例では、Ｓ１５５で定速時間Ｔｃを下限値Ｔｃｍに補正するが、この補正は、必ず行わなければならない類のものでない。定速時間が短すぎると、装置によっては、精度よく駆動制御を行うことができない場合があるが、そういった精度の劣化が生じない又は生じにくい場合には、定速時間に対して下限値を設けなくても良い。また、Ｓ１９３では、定速時間Ｔｃｒを、目標停止位置Ｐｔ、減速距離Ｐｄ、初期位置Ｐｍから算出するようにしたが、この処理を実施せず、減速開始時刻ＴｂをＴａ＋Ｔｃに設定しても良い。
【符号の説明】
【０１０６】
１…制御システム、１０…駆動対象、２０，１２０…モータ、３０…モータドライバ、４０…ロータリエンコーダ、５０…位置検出器、５５…速度検出器、６０…モータ制御ユニット、６１…内部時計、１００…インクジェットプリンタ、１１１…搬送ローラ、１１３…排紙ローラ、１３１…記録ヘッド、１３５…キャリッジ、１４０…モータ制御装置、１５０…主制御ユニット
【図１】
0005874264.tif 000010
【図２】
0005874264.tif 000011
【図３】
0005874264.tif 000012
【図５】
0005874264.tif 000013
【図６】
0005874264.tif 000014
【図７】
0005874264.tif 000015
【図８】
0005874264.tif 000016
【図９】
0005874264.tif 000017
【図４】
0005874264.tif 000018