(57)【要約】【課題】静止する駆動対象を定速状態に移行させるまでの速度制御を行う制御装置において、オーバーシュートを抑えつつ、加速初期から精度よく速度制御できるようにする。【解決手段】指令生成部３１０は、制御開始時刻での二階時間微分が正の値を採る速度指令関数に従って、速度指令値Ｖｒ及び加速度指令値Ａｒ及び躍度指令値Ｊｒを出力する。フィードバック（ＦＢ）操作量算出部３１１は、この速度指令値Ｖｒと、速度検出部３１９で検出された駆動対象の検出速度Ｖｍとの偏差Ｅに対応したＦＢ操作量Ｕｆｂを求め、これを加算器３１８に入力する。一方、フィードフォワード（ＦＦ）操作量算出部３１４は、加速度指令値Ａｒと躍度指令値Ｊｒとから、ＦＦ操作量Ｕｆｆを求めて、これを加算器３１８に入力する。加算器３１８は、ＦＢ操作量ＵｆｂにＦＦ操作量Ｕｆｆを加算して得られる値（Ｕｆｂ＋Ｕｆｆ）を、操作量ＵとしてＣＲモータ駆動回路５１に入力する。【選択図】図４
2010088213.tif 000002
【特許請求の範囲】
【請求項１】
静止する駆動対象を定速状態に移行させるまでの速度制御を行う制御装置であって、
前記駆動対象の現在速度Ｖｍを検出する速度検出手段と、
各時刻での速度指令値を規定する速度指令関数に基づき、現在時刻の速度指令値Ｖｒと、前記速度検出手段により検出された現在速度Ｖｍとの偏差（Ｖｒ−Ｖｍ）を算出し、前記算出した偏差（Ｖｒ−Ｖｍ）を、所定の伝達関数に入力して、フィードバック操作量Ｕｆｂを算出するフィードバック操作量算出手段と、
前記速度指令関数の一階時間微分に基づく現在時刻の加速度指令値Ａｒに、所定のゲインＫａを乗じた値Ｋａ・Ａｒと、前記速度指令関数の二階時間微分に基づく現在時刻の躍度指令値Ｊｒに、所定のゲインＫｊを乗じた値Ｋｊ・Ｊｒとの加算値（Ｋａ・Ａｒ＋Ｋｊ・Ｊｒ）を、フィードフォワード操作量Ｕｆｆとして算出するフィードフォワード操作量算出手段と、
前記フィードフォワード操作量算出手段により算出されたフィードフォワード操作量Ｕｆｆと前記フィードバック操作量算出手段により算出されたフィードバック操作量Ｕｆｂとの加算値（Ｕｆｆ＋Ｕｆｂ）を、算出する操作量加算手段と、
前記操作量加算手段により算出された前記加算値（Ｕｆｆ＋Ｕｆｂ）に対応する動力を前記駆動対象に与えて、前記駆動対象を駆動する駆動手段と、
を備え、
前記速度指令関数は、制御開始時刻での前記躍度指令値が正の値となる関数により定められていることを特徴とする制御装置。
【請求項２】
前記速度指令関数は、前記制御開始時刻から前記速度指令値の変化量がゼロとなる加速終了時刻までの時間領域において、複数種類の関数を時間方向に連結してなるものであり、
前記速度指令関数を構成する前記複数種類の関数の内、前記制御開始時刻からの速度指令値を規定する先頭の関数は、前記躍度指令値が単調減少する関数に定められていることを特徴とする請求項１記載の制御装置。
【請求項３】
前記速度指令関数は、前記制御開始時刻から前記速度指令値の変化量がゼロとなる加速終了時刻までの時間領域において、複数種類の関数を時間方向に連結してなるものであり、
前記時間領域の前記速度指令関数を構成する前記複数種類の関数の内、前記加速終了時刻までの速度指令値を規定する末尾の関数は、前記躍度指令値が負の値となる関数により定められていることを特徴とする請求項１又は請求項２記載の制御装置。
【請求項４】
前記速度指令関数は、前記加速度指令値がピーク値で所定時間一定値を採る関数により定められていることを特徴とする請求項３記載の制御装置。
【請求項５】
前記速度指令関数は、前記制御開始時刻からの速度指令値を規定する先頭の関数が三角関数で定められ、当該三角関数、一次関数、及び、二次関数を、順に時間方向に連結してなる関数により定められていることを特徴とする請求項４記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、駆動対象の速度制御を行う制御装置に関する。
【背景技術】
【０００２】
従来、駆動対象の速度制御を行う制御装置としては、駆動対象の速度を計測すると共に、当該計測により得られた駆動対象の実速度と目標速度との偏差Ｅに基づき、偏差Ｅがゼロとなるような駆動対象に対する操作量Ｕを求めて、駆動対象を目標速度に制御する制御装置（所謂フィードバック制御系）が知られている。
【０００３】
また、この種の制御装置としては、偏差Ｅから求めた操作量に、目標速度の一階時間微分をフィードフォワード的に作用させることで、上記操作量Ｕを補正し、補正後の操作量Ｕで駆動対象を駆動することにより、速度制御を行う制御装置（所謂二自由度制御系）が知られている（例えば、特許文献１参照）。
【特許文献１】特開平５−９１７７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、駆動対象の速度制御を行う際に、従来の二自由度制御系を採用する場合には、目標速度の一階時間微分にゲインを乗じたものを、偏差Ｅから求めた操作量Ｕに加算して、操作量Ｕを補正することで、速度制御の精度を向上させることになる。
【０００５】
しかしながら、静止する駆動対象を定速状態に移行させるまでの速度制御を行う制御装置においては、上記ゲインを大きくすると、駆動対象が定速状態に移行する加速終了期に、目標速度に対する実速度のオーバーシュートが発生する一方、上記ゲインを小さくすると、静止状態からの加速初期において目標速度に対する追従性が悪くなるといった問題があった。
【０００６】
本発明は、こうした問題に鑑みなされたものであり、静止する駆動対象を定速状態に移行させるまでの速度制御を行う制御装置において、加速終了期のオーバーシュートを抑えつつも、加速初期から精度よく速度制御することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
かかる目的を達成するためになされた本発明（請求項１）は、静止する駆動対象を定速状態に移行させるまでの速度制御を行う制御装置であって、駆動対象の現在速度Ｖｍを検出する速度検出手段と、フィードバック操作量算出手段と、フィードフォワード操作量算出手段と、操作量加算手段と、駆動手段と、を備える。
【０００８】
フィードバック操作量算出手段は、各時刻での速度指令値を規定する速度指令関数に基づき、現在時刻の速度指令値Ｖｒと、速度検出手段により検出された現在速度Ｖｍとの偏差（Ｖｒ−Ｖｍ）を算出し、算出した偏差（Ｖｒ−Ｖｍ）を、所定の伝達関数に入力して、フィードバック操作量Ｕｆｂを算出する。
【０００９】
一方、フィードフォワード操作量算出手段は、速度指令関数の一階時間微分に基づく現在時刻の加速度指令値Ａｒに、所定のゲインＫａを乗じた値Ｋａ・Ａｒと、速度指令関数の二階時間微分に基づく現在時刻の躍度指令値Ｊｒに、所定のゲインＫｊを乗じた値Ｋｊ・Ｊｒと、の加算値（Ｋａ・Ａｒ＋Ｋｊ・Ｊｒ）を、フィードフォワード操作量Ｕｆｆとして算出する。
【００１０】
操作量加算手段は、このようにしてフィードフォワード操作量算出手段により算出されたフィードフォワード操作量Ｕｆｆとフィードバック操作量算出手段により算出されたフィードバック操作量Ｕｆｂとに基づき、フィードフォワード操作量Ｕｆｆとフィードバック操作量Ｕｆｂとの加算値（Ｕｆｆ＋Ｕｆｂ）を、算出する。
【００１１】
そして、駆動手段は、操作量加算手段により算出された加算値（Ｕｆｆ＋Ｕｆｂ）に対応する動力を駆動対象に与えて、駆動対象を駆動する。
また、上記速度指令関数は、静止する駆動対象の駆動方向（移動方向）を正方向としたときに、制御開始時刻での躍度指令値が正の値となる関数により定められている。
【００１２】
このように構成された制御装置によれば、制御開始時刻での躍度指令値が正の値であるので、正の値（Ｋｊ・Ｊｒ）が、フィードバック操作量Ｕｆｂに加算されることになり、結果として、駆動対象に対する操作量が大きくなる。よって、この制御装置によれば、駆動対象が動き出し時に静止摩擦から抜け出しやすくなり、加速初期における実速度の速度指令関数に対する追従性が向上する。
【００１３】
また、この制御装置によれば、躍度指令値Ｊｒによって加速初期における操作量を調整するので、加速指令値Ａｒに対するゲインＫａを大きくしなくても、追従性を向上させることができ、結果として、オーバーシュートの発生を抑えることができる。
【００１４】
即ち、本発明によれば、躍度指令値を用いて速度制御を行うばかりでなく、制御開始時刻での躍度指令値を正の値としているので、従来の問題を解消して、良好な制御結果を得ることができる。
【００１５】
尚、上述の速度指令関数は、具体的に、制御開始時刻から速度指令値の変化量がゼロとなる加速終了時刻までの時間領域において、複数種類の関数を時間方向に連結することにより、構成されるとよい。更に、速度指令関数を構成する複数種類の関数の内、制御開始時刻からの速度指令値を規定する先頭の関数は、躍度指令値が初期値（正の値）から単調減少する関数に定められるとよい（請求項２）。
【００１６】
速度指令関数が、このように構成された制御装置によれば、駆動対象が静止摩擦を抜けるまでは、値（Ｋｊ・Ｊｒ）により、駆動対象に対する操作量を、フィードバック操作量Ｕｆｂから大きい値に調整することができる一方で、駆動対象が静止摩擦を抜けた後には、操作量を減少させる方向に調整することができる。結果、駆動対象の実速度の速度指令関数に対する追従性を一層良好にすることができ、高精度に駆動対象を速度制御することができる。
【００１７】
また、速度指令関数を構成する複数種類の関数の内、加速終了時刻までの速度指令値を規定する末尾の関数は、躍度指令値が負の値となる関数により定められるとよい（請求項３）。
【００１８】
このように構成された制御装置によれば、加速終了期（加速終了時刻直前）において、負の値（Ｋｊ・Ｊｒ）が、フィードバック操作量Ｕｆｂに加算されることになり、結果として、駆動対象に対する操作量が小さくなる。従って、駆動対象が定速状態に移行するときに、駆動対象の速度が速度指令値に対してオーバーシュートするのを抑制することができる。
【００１９】
また、速度指令関数は、加速度指令値がピーク値で所定時間一定値を採る関数により定められるとよい（請求項４）。速度指令関数がこのように構成された制御装置によれば、駆動手段により駆動対象に作用させる動力の最大出力を抑えることができて、高出力の駆動手段を利用しなくても、駆動対象を高精度に速度制御することができる。
【００２０】
また、速度指令関数は、先頭の関数から順に、三角関数、一次関数、及び、二次関数を、時間方向に連結して定められるとよい（請求項５）。このような関数を採用すれば、制御開始時刻での躍度指令値を正の値としつつ躍度指令値が単調減少するように、先頭関数を定めることができると共に、一次関数により、加速度指令値がピーク値で所定時間一定値を採るようにすることができる。
【００２１】
更に、末尾の関数を、二次関数とすれば、加速終了期において滑らかに定速状態に移行可能な速度指令関数を設計できると共に、末尾の関数を、二階時間微分で定まる躍度指令値が負の値となる関数に定めることができる。従って、高精度な速度制御を実現することができる。
【発明を実施するための最良の形態】
【００２２】
以下に本発明の実施例について、図面と共に説明する。
図１は、本実施例のプリンタ装置１の電気的構成を表すブロック図である。
本実施例のプリンタ装置１は、ＣＰＵ１１と、ＣＰＵ１１が実行するプログラム等を記憶するＲＯＭ１３と、プログラム実行時に作業領域として使用されるＲＡＭ１５と、各種設定情報を記憶するＥＥＰＲＯＭ１７と、パーソナルコンピュータ（ＰＣ）３から送信されてくる印刷指令や当該印刷指令と共に送信されてくる印刷対象データを受信するためのインタフェース１９（例えば、ＵＳＢインタフェース）と、印字制御部２１と、モータ制御部３０と、を備える。
【００２３】
また、このプリンタ装置１は、インク液滴を吐出するためのノズルが複数配列された記録ヘッド２３と、記録ヘッド２３を駆動するためのヘッド駆動回路２５と、キャリッジ搬送機構４０と、用紙搬送機構６０と、キャリッジ搬送機構４０が備えるＣＲモータ４３を駆動するためのＣＲモータ駆動回路５１と、ＣＲモータ４３によって駆動されるキャリッジ４１の位置に対応してパルス信号を出力するＣＲエンコーダ５３と、用紙搬送機構６０が備えるＬＦモータ６３を駆動するためのＬＦモータ駆動回路７１と、ＬＦモータ６３が所定角度回転する度にパルス信号を出力するロータリーエンコーダからなるＬＦエンコーダ７３と、を備える。
【００２４】
キャリッジ搬送機構４０は、図２に示すように、記録ヘッド２３を主走査方向に搬送するキャリッジ４１や、キャリッジ４１を主走査方向に移動させるための直流モータであるＣＲモータ４３等を備え、キャリッジ４１がガイド軸４２に沿って主走査方向に移動可能に設置され、キャリッジ４１が、無端ベルト４４に連結された構成にされている。図２は、プリンタ装置１が備えるキャリッジ搬送機構４０の構成を表す斜視図である。
【００２５】
このキャリッジ搬送機構４０において、無端ベルト４４は、直流モータであるＣＲモータ４３の回転軸に設けられたプーリー４５と、アイドルプーリー（図示せず）との間に掛けられており、ＣＲモータ４３の回転力を、プーリー４５を介して受けて、回転する。
【００２６】
即ち、キャリッジ搬送機構４０は、ＣＲモータ４３の回転力を受けて、無端ベルト４４が回転することにより、キャリッジ４１が、キャリッジ搬送路を構成するガイド軸４２に沿って、主走査方向に移動する構成にされている。
【００２７】
また、プリンタ装置１には、ガイド軸４２に沿って、スリットが一定の微小間隔で形成されたタイミングスリット４７が設けられ、タイミングスリット４７に形成されたスリットの間隔を読み取ってキャリッジ４１の位置に対応したパルス信号を出力するセンサ素子４８が、キャリッジ４１に設けられている。即ち、本実施例においては、タイミングスリット４７とセンサ素子４８とにより、リニアエンコーダとしてのＣＲエンコーダ５３が構成されている。
【００２８】
また、記録ヘッド２３は、周知のピエゾ型インクジェットヘッドと同一構成にされ、駆動電圧が印加されると、インク室に隣接する圧電部を変形させて、インク室の容積を変化させることにより、インク室内のインクをノズルから用紙に向けて吐出する構成にされている。この記録ヘッド２３は、キャリッジ４１に搭載されており、キャリッジ４１に搬送されて、主走査方向に移動する。
【００２９】
また、用紙搬送機構６０は、用紙Ｐを副走査方向に搬送するための搬送ローラ６１や搬送ローラ６１を回転させるための直流モータであるＬＦモータ６３等を備え、ＬＦモータ６３により搬送ローラ６１を回転させることで、用紙Ｐを、記録ヘッド２３のノズルと対向する記録ヘッド２３の下方に向けて、主走査方向とは直交する副走査方向に搬送する構成にされている。
【００３０】
また、印字制御部２１は、ＣＰＵ１１の指令によって動作を開始すると、ＣＲエンコーダ５３から入力されるパルス信号及びＣＰＵ１１から入力される画像データに基づき、記録ヘッド２３を、ヘッド駆動回路２５を通じて制御し、ＣＰＵ１１から入力される画像データに応じた画像を、用紙Ｐに形成する。
【００３１】
具体的に、印字制御部２１は、周知のプリンタ装置と同様、ＣＲエンコーダ５３から入力されるパルス信号に基づき、キャリッジ４１の移動に同期して駆動電圧を記録ヘッド２３に印加し、記録ヘッド２３に、ノズルからインク液滴を吐出させる。
【００３２】
この他、モータ制御部３０は、ＣＲモータ制御部３１及びＬＦモータ制御部３３を備え、ＣＰＵ１１の指令によって動作を開始すると、ＣＲモータ制御部３１によりＣＲモータ４３を制御し、ＬＦモータ制御部３３によりＬＦモータ６３を制御する。
【００３３】
即ち、ＣＲモータ制御部３１は、ＣＰＵ１１からの指令を受けて動作すると、ＣＲエンコーダ５３から入力されるパルス信号に基づき、キャリッジ４１の移動速度（実速度）を検出し、その検出速度Ｖｍと予め与えられた速度指令値Ｖｒが一致するように、ＣＲモータ４３に対する操作量Ｕ（駆動電圧又は駆動電流）を決定して、キャリッジ４１の移動速度を制御する。このようにして、ＣＰＵ１１から指定された搬送方向に、キャリッジ４１が速度指令値Ｖｒに対応する速度で移動するように制御する（詳細後述）。
【００３４】
一方、ＬＦモータ制御部３３は、ＣＰＵ１１からの指令を受けて動作し、ＣＰＵ１１から指定された量、用紙Ｐを送り出すように、ＬＦモータ６３を制御する構成にされている。具体的に、ＬＦモータ制御部３３は、ＬＦエンコーダ７３から入力されるパルス信号に基づき、ＬＦモータ６３に対する操作量を決定して、用紙Ｐが上記指定された量、送り出されるように、ＬＦモータ６３を制御する。
【００３５】
図３は、ＣＰＵ１１が、ＰＣ３からインタフェース１９を通じて、印刷指令を受信すると、実行する印刷制御処理を表すフローチャートである。モータ制御部３０は、ＣＰＵ１１が印刷制御処理を開始すると、ＣＰＵ１１から入力される指令を受けて、ＣＲモータ４３及びＬＦモータ６３を制御する。
【００３６】
印刷制御処理を開始すると、ＣＰＵ１１は、キャリッジ４１の搬送方向を「正方向」に設定すると共に（Ｓ１１０）、用紙搬送機構６０に、用紙Ｐの給紙動作を実行させ（Ｓ１１５）、更に、ＣＲモータ制御部３１に対して指令入力し、キャリッジ４１を、初期位置まで移動させる（Ｓ１２０）。尚、キャリッジ４１は、キャリッジ搬送路を構成するガイド軸４２に規制されて主走査方向に一次元的に移動するが、ここでは、キャリッジ４１のホームポジションを上流側端点とする搬送方向を「正方向」と定義する。上記初期位置は、ホームポジションよりも下流に設定される。
【００３７】
更に、ＣＰＵ１１は、給紙された用紙Ｐにおける印字領域の先頭（印字対象の領域の副走査方向先頭）が、記録ヘッド２３下方のインク吐出位置に到達するまで、用紙Ｐを副走査方向に搬送するように、ＬＦモータ制御部３３に対して指令入力する（Ｓ１３０）。
【００３８】
Ｓ１３０の処理後には、印字制御部２１及びＣＲモータ制御部３１に対して指令入力することにより、印字制御部２１及びＣＲモータ制御部３１に、１パス分の画像形成動作を実行させる（Ｓ１４０）。
【００３９】
尚、「１パス分の画像形成動作」とは、キャリッジ４１を主走査方向に片道分移動させると共に、この際にインク液滴を記録ヘッド２３に吐出させることにより、用紙Ｐに所定ライン数分の画像を形成する動作のことを言う。「１パス分の画像形成動作」にて画像形成可能なライン数は、記録ヘッド２３の能力による。
【００４０】
Ｓ１４０の処理について詳述すると、ここでは、印字制御部２１に対して、キャリッジ搬送路における画像形成開始位置及び画像形成終了位置を指定すると共に、画像形成開始位置から画像形成終了位置までの間で画像形成すべき画像データを与えることにより、印字制御部２１にヘッド駆動回路２５を通じて記録ヘッド２３を制御させ、画像形成開始位置から画像形成終了位置までをキャリッジ４１が移動する間に、記録ヘッド２３が画像データに対応するインク液滴の吐出動作を、キャリッジ４１の移動に併せて実行するようにする。
【００４１】
一方、ＣＲモータ制御部３１に対しては、Ｓ１１０又はＳ１７０で設定した搬送方向を、キャリッジ４１の搬送方向として指定すると共に、キャリッジ４１の目標停止位置Ｘｅを指定することにより、ＣＲモータ制御部３１に、上記指定した搬送方向にキャリッジ４１を搬送させて、目標停止位置Ｘｅでキャリッジ４１が停止するように、ＣＲモータ４３を制御させる。
【００４２】
また、Ｓ１４０での１パス分の画像形成動作が終了すると、ＣＰＵ１１は、Ｓ１５０に移行し、用紙１頁分の画像形成動作が完了したか否かを判断し、用紙１頁分の画像形成動作が完了していないと判断すると（Ｓ１５０でＮｏ）、Ｓ１６０に移行する。
【００４３】
そして、Ｓ１６０では、ＬＦモータ制御部３３に指令入力することにより、ＬＦモータ制御部３３に、用紙搬送機構６０を通じて、用紙Ｐを１パス分の距離、副走査方向下流に搬送させる。尚、ここでいう「１パス分の距離」は、Ｓ１４０における「１パス分の画像形成動作」によって用紙Ｐに形成可能な画像の副走査方向の長さに対応する。
【００４４】
また、Ｓ１６０での処理を終えると、ＣＰＵ１１は、キャリッジ４１の搬送方向を現在設定されている方向とは逆方向に設定する。即ち、現在の設定値が「正方向」であれば、搬送方向を「負方向」に設定し、現在の設定値が「負方向」であれば、搬送方向を「正方向」に設定する（Ｓ１７０）。
【００４５】
その後、ＣＰＵ１１は、Ｓ１４０に移行して、印字制御部２１及びＣＲモータ制御部３１に、上述した「１パス分の画像形成動作」を実行させる。また、この処理を終えると、Ｓ１５０に移行して、用紙１頁分の画像形成動作が完了したか否かを判断し、完了していない場合には、Ｓ１６０に移行して同様の処理を繰り返す。
【００４６】
即ち、ＣＰＵ１１は、ＣＲモータ制御部３１を通じて、キャリッジ４１を、主走査方向に往復運動させ、用紙Ｐ上をキャリッジ４１が主走査方向に通過する際には、上述した印字制御部２１の動作により、記録ヘッド２３からインク液滴を用紙Ｐに吐出することにより、用紙Ｐに、印刷指令と共にＰＣ３から受信した画像データに基づく画像を、形成する。具体的に、キャリッジ４１は、搬送方向が「正方向」であるときの上記初期位置と、目標停止位置Ｘｅとの間を往復運動することになる。
【００４７】
そして、用紙１頁分の画像形成動作が完了したと判断すると（Ｓ１５０でＹｅｓ）、ＣＰＵ１１は、Ｓ１８０に移行し、用紙搬送機構６０に、用紙Ｐの排紙動作を実行させる（Ｓ１８０）。また、Ｓ１８０での処理を終えると、次頁の画像データがあるか否かを判断し（Ｓ１９０）、次頁の画像データがあると判断すると（Ｓ１９０でＹｅｓ）、Ｓ１１０に移行して、次頁の画像形成を、上述した手順と同様に実行する。一方、次頁の画像データがないと判断すると（１９０でＮｏ）、ＣＰＵ１１は、ＣＲモータ制御部３１に対して指令入力して、キャリッジ４１をホームポジションまで移動させた後（Ｓ１９５）、当該印刷制御処理を終了する。
【００４８】
続いて、ＣＲモータ制御部３１の構成について、図４〜図９を用いて説明する。図４は、ＣＲモータ制御部３１の構成を表す機能ブロック図である。
本実施例のＣＲモータ制御部３１は、キャリッジ４１を速度制御するための構成として、指令生成部３１０と、フィードバック（ＦＢ）操作量算出部３１１と、フィードフォワード（ＦＦ）操作量算出部３１４と、加算器３１８と、速度検出部３１９と、を備える。
【００４９】
指令生成部３１０は、予め定められた速度指令関数ｆ（ｔ）に従って、速度指令値Ｖｒを出力すると共に、速度指令関数ｆ（ｔ）の一階時間微分で定まる加速度指令関数に従って、加速度指令値Ａｒを出力し、更には、速度指令関数ｆ（ｔ）の二階時間微分で定まる躍度指令関数に従って、躍度指令値Ｊｒを出力する構成にされている。
【００５０】
一方、フィードバック操作量算出部３１１は、減算器３１２及び速度制御器３１３を備え、指令生成部３１０から入力される速度指令値Ｖｒ及び速度検出部３１９から入力されるキャリッジ４１の検出速度Ｖｍに基づき、ＣＲモータ４３に対する操作量として、フィードバック操作量Ｕｆｂを算出する構成にされている。
【００５１】
具体的に、減算器３１２は、指令生成部３１０から入力される速度指令値Ｖｒを、速度検出部３１９から入力されるキャリッジ４１の検出速度Ｖｍで減算して、偏差Ｅ＝Ｖｒ−Ｖｍを求め、この偏差Ｅを速度制御器３１３に出力する構成にされている。
【００５２】
また、速度制御器３１３は、減算器３１２から入力される偏差Ｅを、所定の伝達関数Ｇに入力してフィードバック操作量Ｕｆｂを求め、このフィードバック操作量Ｕｆｂを、加算器３１８に出力する構成にされている。尚、伝達関数Ｇは、偏差Ｅを縮小する方向の操作量（フィードバック操作量Ｕｆｂ）を算出するものであり、周知の手法で設計される。
【００５３】
この他、フィードフォワード操作量算出部３１４は、指令生成部３１０から入力される加速度指令値Ａｒ及び躍度指令値Ｊｒに基づき、ＣＲモータ４３に対する操作量として、フィードフォワード操作量Ｕｆｆを算出する構成にされており、乗算器３１５，３１６及び加算器３１７を備える。
【００５４】
乗算器３１５は、指令生成部３１０から入力される加速度指令値Ａｒに、予め定められたゲインＫａを乗じた値（Ｋａ・Ａｒ）を出力し、乗算器３１６は、指令生成部３１０から入力される躍度指令値Ｊｒに、予め定められたゲインＫｊを乗じた値（Ｋｊ・Ｊｒ）を出力する構成にされている。但し、ゲインＫａ，Ｋｊは、ゼロより大きい正の値で定められる。
【００５５】
一方、加算器３１７は、乗算器３１５の出力値（Ｋａ・Ａｒ）及び乗算器３１６の出力値（Ｋｊ・Ｊｒ）を加算して、フィードフォワード操作量Ｕｆｆを算出する構成にされている。
【００５６】
Ｕｆｆ＝Ｋａ・Ａｒ＋Ｋｊ・Ｊｒ
また、加算器３１８は、フィードバック操作量算出部３１１から入力されるフィードバック操作量Ｕｆｂに、フィードフォワード操作量算出部３１４から入力されるフィードフォワード操作量Ｕｆｆを、加算することにより、フィードバック操作量Ｕｆｂを補正し、補正後の操作量Ｕを、ＣＲモータ駆動回路５１に出力する構成にされている。
【００５７】
Ｕ＝Ｕｆｆ＋Ｕｆｂ
尚、加算器３１８からの操作量Ｕを受けるＣＲモータ駆動回路５１は、入力された操作量Ｕに対応する駆動電圧又は駆動電流で、ＣＲモータ４３を駆動する。但し、加算器３１８は、ＣＰＵ１１からＣＲモータ制御部３１に対してキャリッジ４１の搬送方向として「正方向」が指定されている場合、上記操作量Ｕを、そのままＣＲモータ駆動回路５１に出力するが、キャリッジ４１の搬送方向として「負方向」が指定されている場合、上記補正後の操作量Ｕの符号（＋／−）を反転させたものを、ＣＲモータ駆動回路５１に出力して、ＣＲモータ４３の回転方向が、「正方向」とは逆方向となるようにし、キャリッジ４１が「負方向」に搬送されるようにする。
【００５８】
また、速度検出部３１９は、ＣＲエンコーダ５３から入力される上記パルス信号としてのＡ相信号及びＢ相信号の内、一方の信号におけるパルスエッジ間の時間間隔を計測することにより、計測した時間間隔の逆数を、キャリッジ４１の実速度として検出し、これを、キャリッジ４１の検出速度Ｖｍとして出力する構成にされている。この速度検出部３１９から出力される検出速度Ｖｍは、上述した減算器３１２に入力される。
【００５９】
ところで、指令生成部３１０が速度指令値Ｖｒの出力に用いる上記速度指令関数ｆ（ｔ）は、加速区間において、複数種類の関数が時間方向に連結されてなる。具体的に、本実施例の速度指令関数ｆ（ｔ）は、三つの関数ｆ1（ｔ），ｆ2（ｔ），ｆ3（ｔ）が時間方向に連結されてなる。また、先頭の関数ｆ1（ｔ）は、二階時間微分が正の値を採る単調減少関数で定められ、中央の関数ｆ2（ｔ）は、一階時間微分が定数となる関数で定められ、末尾の関数ｆ3（ｔ）は、二階時間微分が負の値を採る関数で定められている。
【００６０】
即ち、本実施例では、キャリッジ４１を静止位置から定速状態に移行させるまでの加速区間が、図５に示すように、第一加速区間、第二加速区間、及び、第三加速区間の三つの区間に分割されており、第一加速区間から第三加速区間までの各区間では、第一関数ｆ1（ｔ）、第二関数ｆ2（ｔ）、及び、第三関数ｆ3（ｔ）に基づく速度指令値Ｖｒが順に出力される。図５は、本実施例におけるキャリッジ４１の搬送態様を表した説明図である。
【００６１】
尚、これらの各区間は、時間により定められており、指令生成部３１０は、図６に示す搬送制御処理を実行することにより、制御開始時刻（換言すれば、搬送制御処理開始時刻）ｔ＝０から第一加速区間の終了時刻Ｔ1が経過するまでの時間、第一関数ｆ1（ｔ）に従う速度指令値Ｖｒを出力し、第一加速区間の終了時刻Ｔ1から、第二加速区間の終了時刻Ｔ2が経過するまでの時間、第二関数ｆ2（ｔ）に従う速度指令値Ｖｒを出力し、第二加速区間の終了時刻Ｔ2から、第三加速区間の終了時刻Ｔ3が経過するまでの時間、第三関数ｆ3（ｔ）に従う速度指令値Ｖｒを出力する。
【００６２】
図６は、Ｓ１４０でＣＰＵ１１から入力される指令に従って、指令生成部３１０が実行する搬送制御処理を表すフローチャートである。
図６に示す搬送制御処理を開始すると、指令生成部３１０は、まず、当該搬送制御処理の開始時刻である制御開始時刻ｔ＝０から、予め定められた上記第一加速区間の終了時刻Ｔ1が経過するまでの期間、式（１）で定まる第一関数ｆ1（ｔ）に従って、各時刻の速度指令値Ｖｒを出力する（Ｓ２１０，Ｓ２２０）。
【００６３】
【数１】
2010088213.tif 000003
尚、速度Ｖ1は、正の値を採る定数であり、設計段階で定められる。そして、式（１）に従う速度指令値Ｖｒの出力時には、同時に、式（２）で定まる第一関数ｆ1（ｔ）の一階時間微分に従って、各時刻の加速度指令値Ａｒを出力すると共に、式（３）で定まる第一関数ｆ1（ｔ）の二階時間微分に従って、各時刻での躍度指令値Ｊｒを出力する。
【００６４】
【数２】
2010088213.tif 000004
また、第一加速区間の終了時刻Ｔ1が経過したと判断すると（Ｓ２２０でＹｅｓ）、指令生成部３１０は、Ｓ２３０に移行し、第二加速区間の終了時刻Ｔ2が経過するまでの期間、式（４）で定まる第二関数ｆ2（ｔ）に従って、各時刻の速度指令値Ｖｒを出力する（Ｓ２３０，Ｓ２４０）。
【００６５】
【数３】
2010088213.tif 000005
尚、速度Ｖ2は、設計段階で、Ｖ2＞Ｖ1を満足する定数として定められる。そして、式（４）に従う速度指令値Ｖｒの出力時には、同時に、式（５）で定まる第二関数ｆ2（ｔ）の一階時間微分に従って、各時刻の加速度指令値Ａｒを出力すると共に、式（６）で定まる第二関数ｆ2（ｔ）の二階時間微分に従って、各時刻の躍度指令値Ｊｒを出力する。
【００６６】
【数４】
2010088213.tif 000006
式（５）（６）から理解できるように、この期間には、加速度指令値Ａｒとして、一定値を出力し、躍度指令値Ｊｒとして、ゼロを出力することになる。尚、第二関数ｆ2（ｔ）は、第一関数ｆ1（ｔ）に対して連続関数となっており、時刻Ｔ1では、第一関数ｆ1（ｔ）及び第二関数ｆ2（ｔ）の両者とも同一値を採る。
【００６７】
また、第二加速区間の終了時刻Ｔ2が経過したと判断すると（Ｓ２４０でＹｅｓ）、指令生成部３１０は、Ｓ２５０に移行し、第三加速区間の終了時刻Ｔ3が経過するまでの期間、式（７）で定まる第三関数ｆ3（ｔ）に従って、各時刻の速度指令値Ｖｒを出力する（Ｓ２５０，Ｓ２６０）。
【００６８】
【数５】
2010088213.tif 000007
尚、速度Ｖtarは、設計段階で、Ｖtar＞Ｖ2＞Ｖ1を満足する定数として定められる。具体的に、速度Ｖtarは、定速時の速度指令値Ｖtarに一致する。また、第三関数ｆ3（ｔ）は、第二関数ｆ2（ｔ）に対して連続関数となっており、時刻Ｔ2では、第三関数ｆ3（ｔ）及び第二関数ｆ2（ｔ）の両者とも同一値を採る。
【００６９】
また、式（７）に従う速度指令値Ｖｒの出力時には、同時に、式（８）で定まる第三関数ｆ3（ｔ）の一階時間微分に従って、各時刻の加速度指令値Ａｒを出力すると共に、式（９）で定まる第三関数ｆ3（ｔ）の二階時間微分に従って、各時刻の躍度指令値Ｊｒを出力する。
【００７０】
【数６】
2010088213.tif 000008
そして、第三加速区間の終了時刻Ｔ3が経過したと判断すると（Ｓ２６０でＹｅｓ）、指令生成部３１０は、Ｓ２７０に移行し、定速区間が終了するまでの期間、速度指令値Ｖｒとして値Ｖtarを出力し、加速度指令値Ａｒ及び躍度指令値Ｊｒとして値ゼロを出力する（Ｓ２７０，Ｓ２８０）。
【００７１】
Ｖｒ＝Ｖtar
Ａｒ＝０
Ｊｒ＝０
そして、目標停止位置Ｘｅから搬送方向上流に所定距離遡った地点に、キャリッジ４１が到達した時点で、指令生成部３１０は、定速区間が終了したと判断し（Ｓ２８０でＹｅｓ）、キャリッジ４１を目標停止位置Ｘｅで停止させるための処理を実行する。具体的には、キャリッジ４１を目標停止位置Ｘｅで停止させるための速度指令値Ｖｒ、加速度指令値Ａｒ、躍度指令値Ｊｒを出力する。そして、キャリッジ４１が停止すると、当該搬送制御処理を終了する。
【００７２】
図７は、この搬送制御処理で用いられる速度指令関数ｆ（ｔ）を表したグラフである。また、図８は、速度指令関数ｆ（ｔ）を上段に示すと共に、速度指令関数ｆ（ｔ）の一階時間微分である加速度指令関数を中段に示し、更に、速度指令関数ｆ（ｔ）の二階時間微分である躍度指令関数を下段に示したグラフである。
【００７３】
上記搬送制御処理で用いられる速度指令関数ｆ（ｔ）は、上述したように、三角関数からなる第一関数ｆ1（ｔ）と、一次関数からなる第二関数ｆ2（ｔ）と、二次関数からなる第三関数ｆ3（ｔ）とが順に時間方向に連結されてなる。
【００７４】
そして、この速度指令関数ｆ（ｔ）は、図８に示すように、制御開始時刻ｔ＝０での躍度指令値Ｊｒが正の値となる関数により定められている。また、速度指令関数ｆ（ｔ）を構成する関数ｆ1（ｔ），ｆ2（ｔ），ｆ3（ｔ）の内、制御開始時刻からの速度指令値を規定する先頭の関数ｆ1（ｔ）は、躍度指令値Ｊｒが単調減少する関数に定められている。
【００７５】
従って、本実施例のプリンタ装置１では、キャリッジ４１が静止摩擦に打ち勝つまでは、乗算器３１６から大きな値が出力され、大きな操作量Ｕが算出されることになり、ＣＲモータ４３から発生するトルクを大きめにすることができる。また、キャリッジ４１が静止摩擦に打ち勝った後には、乗算器３１６からの出力値が減少するので、結果として、トルクが過度に大きくならないようにすることができる。よって、加速初期の追従性を良好にすることができる。
【００７６】
また、本実施例では、加速終了時刻Ｔ3までの速度指令値を規定する加速区間末尾の関数ｆ3（ｔ）が、図８に示すように、躍度指令値Ｊｒが負の値となる関数により定められている。従って、本実施例のプリンタ装置１によれば、キャリッジ４１が定速状態に移行する付近で、操作量Ｕを小さくする方向の補正をかけることができて、キャリッジ４１の速度が速度指令値Ｖｒを大きく超えるオーバーシュートが発生するのを抑制することができ、高精度な速度制御を実現することができる。
【００７７】
また、本実施例では、図８に示すように、速度指令関数ｆ（ｔ）が、加速度指令値Ａｒがピーク値で所定時間一定値を採る関数により定められているので、ＣＲモータ４３のピーク電流を抑えることができて、高出力のモータを用いずとも、キャリッジ４１を高精度に駆動することができる。
【００７８】
尚、図９は、本実施例の手法によるキャリッジ４１の速度制御の実験結果を、従来の制御手法による実験結果と共に示したものである。具体的に、図９（ａ）は、本実施例の手法による速度制御の結果を示したグラフであり、図９（ｂ）（ｃ）は、フィードバック操作量Ｕｆｂを、加速度指令値ＡｒにゲインＫａを乗じた値（Ｋａ・Ａｒ）のみで補正した場合、即ち、本実施例において、仮にゲインＫｊをゼロとした場合の速度制御の結果を示した比較例のグラフである。図９において、破線は、速度指令値Ｖｒを表し、実線は、検出速度Ｖｍを表す。
【００７９】
比較例では、ゲインＫａを小さめに設定すると、図９（ｃ）に示すように、速度指令値Ｖｒに対する追従性が悪くなるといった問題が発生し、ゲインＫａを大きめに設定すると、図９（ｂ）に示すように、加速終了期においてオーバーシュートが発生するといった問題が発生するが、図９（ａ）に示すように、本実施例の手法によれば、躍度指令関数が上述した特徴を示すように定められているので、加速初期から終了期までの全領域において、速度制御を精度よく実現することができる。即ち、本実施例の手法によれば、従来手法のように、ゲインを調整しても、加速初期の追従性の悪化か、加速終了期のオーバーシュートのいずれか一方の問題が発生してしまうといったことがなく、両問題を同時に解消することができる。
【００８０】
以上、本発明の実施例について説明したが、「特許請求の範囲」に記載の速度検出手段は、本実施例の速度検出部３１９により実現され、フィードバック操作量算出手段は、フィードバック操作量算出部３１１により実現され、フィードフォワード操作量算出手段は、フィードフォワード操作量算出部３１４により実現され、操作量加算手段は、加算器３１８により実現され、駆動手段は、ＣＲモータ駆動回路５１により実現されている。
【００８１】
また、本発明は、上記実施例に限定されるものではなく、種々の態様を採ることができる。例えば、本発明の制御装置は、プリンタ装置１におけるキャリッジ４１の制御に限定されず、駆動対象を定速状態に移行させるまでの速度制御を行う種々の装置に適用することができる。
【００８２】
また、速度指令関数ｆ（ｔ）は、式（１）〜（９）に示される関数に限定されない。例えば、図１０に示すように、第一関数ｆ1（ｔ）を二次関数で定め、第二関数ｆ2（ｔ）を一次関数で定め、第三関数ｆ3（ｔ）を二次関数で定めても、第一加速区間での躍度指令値が正の値を採り、第三加速区間での躍度指令値が負の値を採る速度指令関数ｆ（ｔ）を設計することができ、良好な速度制御を実現することができる。
【図面の簡単な説明】
【００８３】
【図１】プリンタ装置１の電気的構成を表すブロック図である。
【図２】キャリッジ搬送機構４０の構成を表す斜視図である。
【図３】ＣＰＵ１１が実行する印刷制御処理を表すフローチャートである。
【図４】ＣＲモータ制御部３１の構成を表す機能ブロック図である。
【図５】キャリッジ４１の搬送態様を表した図である。
【図６】指令生成部３１０が実行する搬送制御処理を表すフローチャートである。
【図７】速度指令関数ｆ（ｔ）を表すグラフである。
【図８】加速度指令関数及び躍度指令関数を表すグラフである。
【図９】本実施例の手法による速度制御の実験結果を、従来の制御手法による実験結果と共に示した図である。
【図１０】変形例の速度指令関数、加速度指令関数及び躍度指令関数を表すグラフである。
【符号の説明】
【００８４】
１…プリンタ装置、１１…ＣＰＵ、１３…ＲＯＭ、１５…ＲＡＭ、１７…ＥＥＰＲＯＭ、１９…インタフェース、２１…印字制御部、２３…記録ヘッド、２５…ヘッド駆動回路、３０…モータ制御部、３１…ＣＲモータ制御部、３３…ＬＦモータ制御部、４０…キャリッジ搬送機構、４１…キャリッジ、４２…ガイド軸、４３…ＣＲモータ、５１…ＣＲモータ駆動回路、５３…ＣＲエンコーダ、６０…用紙搬送機構、６１…搬送ローラ、６３…ＬＦモータ、７１…ＬＦモータ駆動回路、７３…ＬＦエンコーダ、３１０…指令生成部、３１１…フィードバック操作量算出部、３１２…減算器、３１３…速度制御器、３１４…フィードフォワード操作量算出部、３１５，３１６…乗算器、３１７，３１８…加算器、３１９…速度検出部、Ｐ…用紙
【図１】
2010088213.tif 000009
【図２】
2010088213.tif 000010
【図３】
2010088213.tif 000011
【図４】
2010088213.tif 000012
【図６】
2010088213.tif 000013
【図５】
2010088213.tif 000014
【図７】
2010088213.tif 000015
【図８】
2010088213.tif 000016
【図９】
2010088213.tif 000017
【図１０】
2010088213.tif 000018