モータ制御方法及びモータ制御装置
【課題】 駆動対象を駆動するモータを速度フィードバック制御するにあたり、減速期間中の再加速の発生を防ぎ、再加速発生に起因して生じる騒音の発生を防止する。
【解決手段】 定速駆動状態から減速させて停止させるまでの減速期間において、速度フィードバック制御部へ入力する速度指令として、位置フィードバック制御により得られた速度指令ではなく、減速期間開始時からの経過時間の関数である減速関数を用いて得られた減速指令を用いる。この減速関数は、それ自体が単調減少するものであって、且つ、その導関数が単調関数若しくは定数となるような関数である。このような減速関数に基づいて生成される減速指令によりキャリッジを駆動させると、減速中に再加速することがなく、安定して速度が低下していく。そのため、キャリッジのメカ的なガタに起因する騒音発生も防止される。
【解決手段】 定速駆動状態から減速させて停止させるまでの減速期間において、速度フィードバック制御部へ入力する速度指令として、位置フィードバック制御により得られた速度指令ではなく、減速期間開始時からの経過時間の関数である減速関数を用いて得られた減速指令を用いる。この減速関数は、それ自体が単調減少するものであって、且つ、その導関数が単調関数若しくは定数となるような関数である。このような減速関数に基づいて生成される減速指令によりキャリッジを駆動させると、減速中に再加速することがなく、安定して速度が低下していく。そのため、キャリッジのメカ的なガタに起因する騒音発生も防止される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、モータにより駆動される駆動対象の速度が目標速度と一致するように速度フィードバック制御を行うモータ制御方法及びモータ制御装置に関する。
【背景技術】
【0002】
モータにより駆動される駆動対象は多種多様であり、例えばシリアルタイプのプリンタにおいて記録ヘッドを搭載したキャリッジもその一つである。キャリッジをモータにより駆動させる際の制御方法として、キャリッジの速度と共にその停止位置も制御できるよう、位置フィードバック制御と速度フィードバック制御を併用してモータを制御する方法が知られている(例えば、特許文献1参照。)。
【0003】
このような、位置フィードバック制御と速度フィードバック制御を併用したモータ制御装置の具体的構成について、図12に基づいて説明する。図12に示すように、従来のモータ制御装置100は、制御対象(キャリッジ)107の現在位置Xnと予め設定された目標停止位置Xtとを比較し、両者を一致させるべく位置フィードバック制御を行ってその両者の差に応じた速度指令vを出力する位置フィードバック(FB)制御部101と、位置フィードバック制御部101からの速度指令v(即ち目標速度)と制御対象107の実際の移動速度Vnとを比較し、両者を一致させるべく速度フィードバック制御を行って制御対象107へ与えるべき操作量uを生成する速度フィードバック制御部105とを備えている。
【0004】
なお、位置フィードバック制御部101から出力された速度指令vは、そのまま速度フィードバック制御部105へ入力されるのではなく、速度指令補正部103にてその上限値が目標速度Vtに制限された、速度指令vfとして入力される。つまり、位置フィードバック制御部101からの速度指令vが目標速度Vt以下のときはその速度指令vの値がそのまま速度フィードバック制御部105へ入力され、速度指令vが目標速度Vtを超えている間は常時目標速度Vtが速度フィードバック制御部105へ入力される。
【0005】
このように、図12のモータ制御装置100は、2種類のフィードバックループからなるカスケード制御にて構成されており、より具体的にいえば、位置情報をメジャーフィードバック、速度情報をマイナーフィードバックに持つカスケード制御系で構成されている。そのため、目標停止位置Xtへの高い停止精度が実現される。
【特許文献1】特開2002−345277号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、上記のようなカスケード制御系で構成されたモータ制御装置100では、位置フィードバック制御が積極的に働くことが、却って減速期間中の安定した速度変化を阻害していた。具体的には、図13に示すように、減速制御中に再加速が発生してしまう。減速中にこのような再加速が発生すると、キャリッジにはその加減速変動による慣性モーメントが発生する。そして、キャリッジのメカ的なガタ(遊び)の存在によってその再加速時(加減速変動時)に騒音が発生してしまうのである。このように再加速が発生するのは、次の理由による。
【0007】
キャリッジが定速駆動から減速制御へ移行する際は、それまで一定値であった速度指令が急に低下し始めるが、フィードバック制御であるが故に、キャリッジの移動速度Vnはその急激な速度指令の低下に即応せず、徐々に低下していく。そのため、速度指令と実際の移動速度Vnとの差は広がっていく。
【0008】
すると、位置フィードバック制御部101は、遅れているキャリッジを早く目標停止位置Xtへ近付けるべく、速度指令vの減少勾配を緩やかにする。このことは図13にも現れている。多少わかりづらいが、図13の速度指令vの軌跡をみると、減少していく際の勾配が再加速発生タイミング付近でやや緩やかになっていることがわかる。
【0009】
このように速度指令vの勾配が緩やかになると、キャリッジの移動速度Vnは次第にその速度指令vに応じた速度になっていく。そうなると、位置フィードバック制御部101は再び速度指令vの減少勾配を急にしていく。このように位置フィードバック制御部101が位置制御を厳密に実現しようとするため、減速期間中は上記のように必然的に再加速が発生しやすくなるのである。
【0010】
本発明は上記課題に鑑みなされたものであり、駆動対象を駆動するモータを速度フィードバック制御するにあたり、減速期間中の再加速の発生を防ぎ、再加速発生に起因して生じる騒音の発生を防止することを目的とする。
【課題を解決するための手段】
【0011】
本発明者は、位置フィードバック制御が上記のような再加速を引き起こすのは、位置フィードバック制御で生成される速度指令がキャリッジの位置推移に依存して決定されるものだからである、ということに着目した。そこで、このような再加速を抑制するためにはキャリッジの位置推移とは独立した速度指令を生成すればよいのでは、と考えた。つまり、位置フィードバック制御を行わないようにするのである。そして、より具体的には、減速時の時間推移に依存して減速時の速度指令を決定することができるとの考えに至った。
【0012】
即ち、上記課題を解決するためになされた請求項1記載の発明は、モータにより駆動される駆動対象の速度が予め設定された目標速度と一致するようにモータの速度フィードバック制御を行うモータ制御方法であって、駆動対象の駆動開始から停止までの駆動期間のうち予め設定した減速制御開始タイミングから停止するまでの減速制御期間では、目標速度として、減速制御開始タイミングからの経過時間の関数である減速関数を用いてその経過時間に応じた減速指令を生成して、その生成した減速指令に基づいて速度フィードバック制御を行う。そして、減速関数としては、減速制御開始タイミングから減速指令がゼロになるまで単調減少し、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数を用いる。
【0013】
減速制御期間が始まるまでの速度フィードバック制御の目標速度は、例えば時間に伴って変化する速度軌道であってもよいし、単に一定の速度を目標値(目標定速速度)として設定するようにしてもよい。また、その目標速度をどのようにして生成してもよく、例えば位置フィードバック制御によって生成するものであってもよい。つまり、減速制御開始タイミングになるまでの目標速度をどのようなものにするか或いはどのようにして生成するかは適宜決めればよい。
【0014】
そして本発明のモータ制御方法では、減速制御期間における目標速度として、時間に依存した減速関数から得られる減速指令を生成し、その減速指令に基づいて速度フィードバックを行う。この減速関数は、減速制御開始タイミングからの経過時間の関数であるため、減速指令は経過時間に応じて一意に定まる。つまり、経過時間さえわかればあとは減速関数に基づいてその時間における減速指令を算出できる。
【0015】
そして、この減速関数として、減速制御開始タイミングから減速指令がゼロになるまでの間、単調減少するものであり、且つ、その導関数(時間で微分した関数)が単調関数若しくは定数となるような関数を用いるのである。
【0016】
ここでいう単調減少・単調増加は、広義の意味である。つまり、増加或いは減少の過程で一定となる部分を含む場合も含まれる。但し、導関数が単調関数若しくは定数となることが減速関数の一つの条件であるため、減速関数自体には、必然的に、単調減少する過程で減速指令が一定となるような期間は存在しないことになる。
【0017】
このような条件を満たす減速関数としては、例えば、傾きが負の一次関数、上に凸の二次関数における極大値から右側(極大値から単調減少していく部分)、下に凸の二次関数における極小値から左側(極小値に向かって単調減少していく部分)、単調減少する三次関数における変曲点から左側(変曲点に向かって単調減少していく部分)、更には余弦関数における原点から右側(単調減少していく部分)など、種々のものが考えられる。こういった関数はいずれも、図13に示した速度指令vのような、勾配が一旦緩やかになってまた元に戻る、というような関数ではない。
【0018】
このように、本発明(請求項1)のモータ制御方法は、減速制御期間の制御方法として位置フィードバック制御は用いず、単に上記の減速関数に従って、減速制御期間の開始時点からの経過時間に応じた減速指令を得ている。そして、その減速関数に従った減速指令に基づいて速度フィードバック制御を行うのである。
【0019】
そのため、減速制御期間中において減速中の駆動対象の速度が途中で再加速するのを防ぐことができる。そして、その再加速(即ち減速・加速・減速といった不安定な速度変化)が起因となって生じる騒音の発生を防止することが可能となる。
【0020】
そして、上記請求項1記載のモータ制御方法は、具体的には、例えば請求項2に記載したモータ制御装置によって実現できる。即ち、請求項2記載のモータ制御装置は、モータにより駆動される駆動対象の速度を検出する速度検出手段と、駆動対象の目標速度を設定する目標速度設定手段と、目標速度設定手段により設定された目標速度と速度検出手段により検出された速度とを比較し、両者を一致させるべくモータの速度フィードバック制御を行う速度フィードバック制御手段と、駆動対象の駆動開始から停止までの駆動期間のうち予め設定した減速制御開始タイミングから停止するまでの減速制御期間における、駆動対象の目標速度である減速指令を生成する減速指令生成手段とを備える。
【0021】
そして、速度フィードバック制御手段は、減速制御期間では減速指令生成手段により生成された減速指令に基づいて速度フィードバック制御を行い、減速指令生成手段は、減速制御開始タイミングからの経過時間の関数である減速関数を用いて、経過時間に応じた減速指令を生成する。この減速関数は、減速制御開始タイミングから減速指令がゼロになるまで単調減少し、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数である。
【0022】
このように構成されたモータ制御装置によれば、減速制御期間中においては減速指令生成手段が減速関数に基づいて減速指令を生成し、その減速指令に基づいて速度フィードバック制御手段が速度フィードバック制御を行う。そのため、上記請求項1と同様、減速制御期間中の再加速発生の防止、再加速発生に起因する騒音の防止という効果が得られる。
【0023】
なお、減速制御開始タイミング直前までの駆動対象の速度は、定速であってもいいし加速中或いは減速中でもよい。つまり、減速制御期間が始まる減速制御開始タイミングからはじめて減速が開始されることに限定されない。減速制御開始タイミングとは、減速が始まるタイミングという限定的な意味ではなく、減速指令生成手段の減速指令に基づいた速度フィードバック制御が開始されるタイミング、という意味である。
【0024】
ここで、減速指令生成手段が減速指令を生成するために用いる減速関数は、上記例示したように種々の関数が考えられるが、例えば請求項3に記載のように、下に凸となる関数にするとよい。下に凸の減速関数とは、言うまでもないが、減速制御期間内の当該減速関数をグラフ化(時間軸と減速指令軸を有する二次元座標上に表現)したとき、そのグラフ上の任意の点における接線の上側にそのグラフが存在するような関数であることを意味する。言い換えれば、時間の経過に伴って徐々に勾配が緩やかになっていくような関数である。
【0025】
このように下に凸な関数で表される減速関数を用いると、減速制御開始タイミングでまず減速指令は急激に(急勾配で)低下していき、徐々に勾配が緩やかになっていって、最後に停止するときが最も勾配が緩い(ほとんど勾配がない)状態となる。そのため、駆動対象を安定した状態・速度で停止させることができる。
【0026】
なお、これとは逆に上に凸な関数で表される減速関数を用いた場合は、再加速防止や騒音防止の効果はもちろん得られるものの、減速制御開始タイミングからゆっくりと減速指令が低下していき、次第にその減少勾配が急になっていって、最後に停止するころが最も急勾配となる。つまり、停止直前の減速指令の変化が激しくなる。そのため、安定した状態・速度での停止が困難となるおそれがある。よって、停止時の安定性や精度を考慮すれば、下に凸な関数で表される減速関数を用いるのが好ましい。
【0027】
ところで、上記のように減速関数を用いて減速制御開始タイミングからの経過時間に応じた減速指令を生成することで、減速制御中に駆動対象が再加速してしまわないような減速指令を得ることができるわけだが、当然ながら位置フィードバック制御を行っているわけではないため、単に上述した条件を満たすだけの減速関数では所望の停止位置に停止させるのが困難となる。
【0028】
そこで、例えば請求項4に記載のような減速関数を用いて、駆動対象を所望の位置に停止させることができるようにするとよい。即ち、請求項4記載の発明は、請求項2又は3に記載のモータ制御装置であって、減速制御開始タイミングから予め設定された目標停止位置までの距離である減速距離を設定する減速距離設定手段を備え、減速関数は、当該減速関数を減速制御開始タイミングから減速指令がゼロになる時間まで積分したときの積分値が上記減速距離に一致するような関数である。
【0029】
減速関数は、経過時間に対する減速指令(速度フィードバック制御手段へ与える目標速度)の関数であるため、それを時間で積分すればその時間内での移動距離が得られる。そこで、減速指令がゼロになるまでの積分値が減速距離となるような減速関数を用いれば、理論的には、減速指令がゼロになったときにちょうど駆動対象も目標停止位置にて停止することになる。
【0030】
従って、上記構成のモータ制御装置によれば、減速制御開始タイミングから減速指令がゼロとなるまでの時間積分値が減速距離設定手段にて設定された減速距離となるような減速関数によって、減速指令を生成しているため、減速期間中の再加速およびそれに起因する騒音の発生を防止できるのに加え、所望の停止位置(目標停止位置)にて駆動対象を停止させることも可能となり、停止精度も良好なモータ制御装置が得られる。
【0031】
なお実際には、摩擦や駆動対象の機械的特性などの影響によって、目標停止位置から多少ずれた位置で停止するおそれがある。しかしそのずれは、実用上問題となるようなレベルではない。
【0032】
減速距離設定手段は、減速距離そのものを直接設定するものであってもよいし、例えば、減速制御開始タイミングとしてその位置が与えられている場合は、その位置と目標停止位置との距離を演算で得ることにより設定するものであってもよい。
【0033】
そして、上記のように駆動対象を目標停止位置で停止させるべく、積分値が減速距離と一致するような減速関数を用いて減速制御を行ったとき、減速指令がゼロになる前に駆動対象がすでに目標停止位置に到達することも考えられる。その場合に、目標停止位置到達後も減速指令に基づく速度フィードバック制御が行われると、駆動対象は目標停止位置よりもどんどん先へ進んでしまう。
【0034】
そこで、例えば請求項5に記載のように、駆動対象が目標停止位置に到達したか否かを検出する到達検出手段と、駆動対象が停止するようにモータの制動制御を行う制動制御手段とを備え、到達検出手段により駆動対象が目標停止位置に到達したことが検出されたならば、速度フィードバック制御手段は減速指令に基づく速度フィードバック制御を停止し、制動制御手段が前記制動制御を実行するようにするとよい。
【0035】
このように構成されたモータ制御装置によれば、減速指令に基づく速度フィードバック制御の実行中であっても、駆動対象が目標到達位置に到達したら制動制御によって駆動対象が停止される。そのため、駆動対象を精度良く目標停止位置へ停止させることが可能となる。
【0036】
そして、請求項6記載の発明は、請求項4又は5に記載のモータ制御装置であって、減速制御開始タイミングでの減速指令である初期減速指令を設定する初期減速指令設定手段を備え、減速指令生成手段は、減速距離設定手段により設定された減速距離と初期減速指令設定手段により設定された初期減速指令に基づいて減速関数を導出する減速関数導出手段と、経過時間を計時する計時手段と、減速関数導出手段により導出された減速関数に従い、計時手段により計時された経過時間に対応した減速指令を演算する減速指令演算手段とを備えている。
【0037】
即ち、減速関数導出手段は、予め設定された減速距離と初期減速指令に基づいて、減速関数を導出する。この導出方法について、図11を用いて概略説明する。図11は、減速制御開始タイミング(t=0)からの減速指令を表す減速関数r(t)の一例であり、ここでは説明の簡略化のために一次関数を示している。
【0038】
この減速関数r(t)は、一次関数であることから、r(t)=−At+V、とおける。Aは未知の係数である。また、減速指令がゼロとなるまでの経過時間τも今のところ未知である。ここで、この減速関数r(t)が点(τ,0)を通ること、及び、r(t)をt=0〜τの間で積分した結果が減速距離xとなることは、予めわかっている。そのため、演算によってAとτは求められる。
【0039】
図11では一次関数を例示したが、他の関数の場合であっても同じ要領で減速関数r(t)を導出することができる。例えば、上に凸の関数で減速関数r(t)を導出する場合は、t=0でその関数が極大値をとるような式を設定し、その式中の未知の係数を、上記と同様、点(τ,0)を通ること、及び積分値が減速距離xとなることに基づいて算出すればよい。
【0040】
上記のように構成されたモータ制御装置によれば、予め設定された減速距離と初期減速指令に基づいて減速関数が導出され、その導出された減速関数に従って、計時時間により計時された経過時間に応じた減速指令が演算される。そのため、減速距離及び初期減速指令の設定値を変えることで、様々な減速特性のモータ制御装置を構築できる。
【0041】
なお、初期減速指令設定手段は、初期減速指令を減速制御開始タイミングでの減速指令として積極的に設定するものに限らず、それに相当するものを設定するものであれば何でも良い。例えば、一定期間定速駆動させた後に減速指令による速度フィードバック制御を開始するものであって、その定速駆動期間における目標速度を設定する手段があれば、それが初期減速指令設定手段としても機能することとなる。
【0042】
そして本発明(請求項2〜6)のモータ制御装置は、モータによって駆動される種々の駆動対象に対して適用できるが、例えば請求項7に記載のように、画像形成装置に搭載されるキャリッジのように往復運動を繰り返す駆動対象(加速・定速・減速・停止を繰り返す駆動対象)に対して適用すると、より効果的である。
【0043】
即ち、請求項7記載の発明は、請求項2〜6いずれかに記載のモータ制御装置であって、当該モータ制御装置は、記録媒体を搬送させつつその記録媒体上に画像を形成する機能を備えた画像形成装置に搭載され、駆動対象は、記録媒体上に画像を形成するための記録手段を搭載して搬送方向と直交する主走査方向に往復移動するキャリッジである。
【0044】
このように、モータ制御装置をキャリッジの往復移動に適用することで、キャリッジが減速・停止する際の再加速が防止される。そのため、再加速時にキャリッジのメカ的なガタ(遊び)によって発生する騒音も防止されることとなり、動作音の静かな、ユーザにとって使い心地の良い画像形成装置を提供できるようになる。
【発明を実施するための最良の形態】
【0045】
以下に、本発明の好適な実施形態を図面に基づいて説明する。
(1)キャリッジ駆動機構の構成
図1は、本発明のモータ制御装置が適用された画像形成装置としてのインクジェットプリンタ(以降、単に「プリンタ」とする)におけるキャリッジ駆動機構の構成を表す説明図である。
【0046】
このキャリッジ駆動機構は、まず、押さえローラ32等により搬送されてくる印刷用紙33の幅方向に設置されたガイド軸34に、ノズルから印刷用紙33に向けてインクを吐出させて記録を行う記録ヘッド30を搭載したキャリッジ31が挿通されたものである。
【0047】
このキャリッジ31は、ガイド軸34に沿って設けられた無端ベルト37に連結され、その無端ベルト37は、ガイド軸34の一端に設置されたCRモータ35のプーリ36と、ガイド軸34の他端に設置されたアイドルプーリ(図示せず)との間に掛け止められている。つまり、キャリッジ31は、無端ベルト37を介して伝達されるCRモータ35の駆動力により、ガイド軸34に沿って印刷用紙33の幅方向に往復運動するように構成されている。
【0048】
また、ガイド軸34の下方には、一定間隔(本実施形態においては、1/150inch=約0.17mm)ごとに一定幅のスリットを形成したタイミングスリット38が、ガイド軸34に沿って設置されている。
【0049】
また、キャリッジ31の下部には、タイミングスリット38を挟んで発光素子と受光素子とが対面するように配置されたフォトインタラプタからなる検出部(図示されない)が備えられており、上述のタイミングスリット38と共に、後述のリニアエンコーダ39(図4参照)を構成している。
【0050】
このリニアエンコーダ39を構成する検出部は、図2に示すように、互いに一定周期(本実施形態においては、1/4周期)ズレた2種類のエンコーダ信号ENC1,ENC2を出力する。そして、キャリッジ31の移動方向がホームポジション(図1の左端位置)からアイドルプーリ側に向かう順方向である場合は、ENC1がENC2に対して位相が一定周期進み、アイドルプーリ側からホームポジションに向かう逆方向である場合は、ENC1がENC2に対して位相が一定周期遅れるようにされている。
【0051】
このようなキャリッジ駆動機構において、キャリッジ31は、図3に示すように、記録処理が行われていない時には、ガイド軸34のプーリ35側端付近に設定されたホームポジション、或いは前回の記録が終了した位置(以下、キャリッジの移動開始位置を示す位置を「原点」と称する)にて待機し、記録処理が開始されると、予め設定された記録開始位置までの間に目標速度に達するよう加速され、その後、予め設定された記録終了位置までの間は一定の目標速度で移動し、記録終了位置を越えると停止するまで減速される。 (2)キャリッジ制御装置の構成
また、プリンタには、図4に示すように、当該プリンタの制御を統括するCPU2、CRモータ35の回転速度や回転方向等を制御するPWM信号を生成するASIC(Application Specific Integrated Circuit)3、Hブリッジ回路における4基のFETをASIC3に生成されたPWM信号に基づいて制御することでCRモータ35を駆動するモータ駆動回路(CR駆動回路)4などからなるキャリッジ制御装置1が内蔵されている。
【0052】
ASIC3には、CRモータ35の制御に用いる各種パラメータを格納するレジスタ群5、リニアエンコーダ39から取り込んだエンコーダ信号ENC1,ENC2によりキャリッジ31の位置や移動速度を算出するキャリッジ測位部6、減速開始位置から目標停止位置までの減速期間にモータ制御部7が用いる目標速度としての減速指令r(td)(td:減速開始位置からの経過時間)を生成する減速指令生成部10、レジスタ群5に格納された各種パラメータおよびキャリッジ測位部6からのデータに基づきCRモータ35の回転速度を制御するためのモータ制御信号を生成するモータ制御部7、モータ制御部7が生成するモータ制御信号に応じたデューティ比のPWM信号を生成するPWM生成部8、エンコーダ信号ENC1,ENC2より十分に周期が短いクロック信号をASIC3内部の各部に供給するクロック生成部9などが備えられている。
【0053】
これらのうち、レジスタ群5は、CRモータ35を起動するための起動設定レジスタ50、キャリッジ31を停止させるべき目標停止位置を設定するための目標停止位置設定レジスタ51、キャリッジ31の減速を開始する減速開始位置(記録終了位置と同一;本発明の減速制御開始タイミングにおける駆動対象の位置に相当)を設定するための減速開始位置設定レジスタ52、キャリッジ31が目標とすべき目標速度Vt(画像記録中の定速駆動時の速度)を設定するための目標速度設定レジスタ53、モータ制御部7がCRモータ35を制御する際の速度フィードバック演算に用いる速度制御ゲインなど、モータ制御部7にて用いられる各種パラメータを設定するための制御部パラメータ設定レジスタ54などにより構成されている。なお、この目標速度Vtは、減速開始位置において減速制御が開始されるときの減速指令(減速指令の初期値)であるため、本発明の初期減速指令に相当するものでもある。
【0054】
また、キャリッジ測位部6は、リニアエンコーダ39からのエンコーダ信号ENC1,ENC2に基づいてエンコーダ信号ENC1の各周期の開始/終了を表すエッジ検出信号(ここではENC2がハイレベルの時におけるENC1のエッジ)及びCRモータ35の回転方向(エッジ検出信号がENC1の立ち下がりエッジであれば順方向、立ち上がりエッジであれば逆方向)を検出するエッジ検出部60、エッジ検出部60が検出したCRモータ35の回転方向(つまりキャリッジ31の移動方向)に応じてエッジ検出信号をカウントアップ(順方向のとき)またはカウントダウン(逆方向のとき)することによりキャリッジ31がホームポジションから何番目のスリットに位置しているのかを検出する位置カウンタ61、エッジ検出部60からのエッジ検出信号の発生間隔をクロック信号によりカウントする周期カウンタ63、タイミングスリット38のスリット間の距離(1/150inch)とエンコーダ信号ENC1の前周期で周期カウンタ63がカウントした値の保持値Cn-1 とから特定される時間tn-1 (=Cn-1 ×クロック周期)とに基づいてキャリッジ31の移動速度を算出する速度変換部64、位置カウンタ61によるカウント値が目標停止位置設定レジスタ51にセットされている目標停止位置以上となった際に停止割込信号をCPU30へ出力する割込処理部65などにより構成されている。
【0055】
また、モータ制御部7は、図5に示すように、目標速度設定レジスタ53に設定された目標速度Vt又は減速指令生成部10にて生成された減速指令r(td)の何れか一方を選択し、速度指令として速度フィードバック制御部75へ入力する速度指令選択部71と、この速度指令選択部71から入力された速度指令(目標速度Vt又は減速指令r(td)のいずれか)と速度変換部64により計算されたキャリッジ31の移動速度とを一致させるべく速度フィードバック制御(例えばPID制御)を行って操作量uを生成する速度フィードバック制御部75などを備えている。
【0056】
このモータ制御部7において、速度指令選択部71は、目標速度設定レジスタ53に設定された目標速度Vt又は減速指令生成部10にて生成された減速指令r(td)とをスイッチ73により切り替え可能に構成されている。このスイッチ73は、位置カウンタ61のカウント値から定められるキャリッジ31の現在位置Xnが、減速開始位置設定レジスタ52に設定された減速開始位置より小さくなっているとき、つまりキャリッジ31が減速開始位置に到達するまでの間は、目標速度Vt側へ切り替えた状態とし、キャリッジ31の現在位置Xnが、減速開始位置設定レジスタ52に設定された減速開始位置以上となっているとき、つまりキャリッジ31が減速開始位置に到達した以後は、減速指令r(td)側へ切り替えた状態とするように構成されている。
【0057】
そして、速度フィードバック制御部75では、速度指令選択部71からの速度指令と速度変換部64からのキャリッジ31の移動速度Vnとの差が加算器77によって演算され、その演算結果に基づいて、速度制御器78によるPID制御が行われて操作量uが演算される。つまり、キャリッジ31が減速開始位置に到達するまでは目標速度Vtに基づく速度フィードバック制御が行われ、キャリッジ31が減速開始位置に到達した以後は、減速指令r(td)に基づく速度フィードバック制御が行われるのである。
【0058】
また、ASIC3において減速指令r(td)を生成する減速指令生成部10は、図4に示すように、減速指令を生成するための元になる減速関数r(t)を導出する減速関数導出部11と、キャリッジ31が減速開始位置に到達してからの経過時間tdを計時する計時部13と、減速関数r(t)を用いて経過時間tdにおける減速指令r(td)を演算する減速指令演算部15とを備えている。
【0059】
本実施形態の減速関数導出部11は、減速関数r(t)として図6に示すような下に凸の二次関数を導出するよう、予め設定されている。減速関数r(t)の導出は、後述するようにキャリッジ31の1回の駆動毎、即ち主走査方向の往復駆動を片方ずつ繰り返す毎に逐一行われる。そして、その導出は、レジスタ群5に設定されている目標停止位置、減速開始位置、及び目標速度Vtに基づいて行われる。
【0060】
(3)減速関数r(t)の導出方法
この減速関数導出部11にて行われる減速関数r(t)の導出方法について、図6を用いて概略説明する。図6のグラフは、横軸が減速開始位置に到達してからの経過時間、縦軸が減速指令r(td)である。ここで、導出すべき減速関数r(t)(本例では二次関数)として、減速開始時(t=0)からある時間τが経過したときに減速指令がゼロとなるような波形を設定する。なお、t=τでこの二次関数が極小値をとる。
【0061】
従って、この関数r(t)は、次式(1)のように表現できる。Aは比例定数である。
【0062】
【数1】
【0063】
そして、この減速関数は点(0,Vt)を通ることから、式(1)は次式(2)のように表せる。
【0064】
【数2】
【0065】
一方、減速開始位置と目標停止位置はわかっているため、これら両者の差によって、減速開始から停止までの移動距離である減速距離xは予めわかる。そして、この減速距離xが、減速関数r(t)をt=0〜τまでの時間で積分した値に一致することから、次式(3)が得られる。
【0066】
【数3】
【0067】
そして、上記2つの式(2),(3)から、τ及びAが次式(4)のように求まる。
【0068】
【数4】
【0069】
従って、減速関数r(t)は、次式(5)のように得られる。
【0070】
【数5】
【0071】
減速関数導出部11にて上記式(5)の減速関数r(t)が導出されれば、後は、減速指令演算部15にて、この減速関数r(t)を用いた、経過時間tdにおける減速指令r(td)が演算されるのである。そのため、減速開始位置に到達後、キャリッジ31の減速が開始されると、図6に示した減速関数r(t)の波形に沿って減速指令r(td)も減少していき、やがてゼロになる。
【0072】
このようにして減速指令生成部10にて生成された減速指令に基づいてキャリッジ31の減速制御(速度フィードバック制御)が行われたときの、減速指令rとキャリッジ31の実際の移動速度Vnの軌跡を、図7に示す。
【0073】
図7と従来の図13とを比較して明らかなように、本実施形態では、キャリッジ31の移動速度Vnは再加速することなく減速している。このような結果が得られたのは、本実施形態では位置フィードバック制御を用いず、単に下に凸の二次関数で表される減速関数r(t)に従った減速指令を速度フィードバック制御部75に与えているからである。
【0074】
この減速関数r(t)は、それ自体が単調減少する関数であるのはもちろん、その導関数であるdr(t)/dtも単調関数(単調増加関数)である。このような減速関数r(t)を用いて経過時間に応じた減速指令を与えることで、実際の移動速度Vnが再加速するのが防止されるのである。そして、再加速が防止されることで、キャリッジ31は安定して停止することができ、キャリッジ31のガタ(遊び)による騒音の発生も防止される。
【0075】
なお、時間t=0.2[sec]を過ぎた辺りで、キャリッジの移動速度Vnは急激にゼロに低下している。これは、このタイミングで目標停止位置に達し、後述する制動制御がなされたこと、及び、その制動制御にて完全に停止するまでの間の移動量が、リニアエンコーダ39では検出できない程の僅かな量であったことによる。
【0076】
(4)CPU及びASICにて実行される処理
以下に、CPU2が実行するCR走査処理の内容を、図8に基づいて説明する。
本処理が開始されると、まず、ASIC3に対する初期処理が実行される(S110)。この初期処理では、レジスタ群5を構成する各レジスタの設定等がなされる。この処理が終了すると、CPU2の動作により、CPU2からASIC3に対して停止割込み許可が発行される(S120)。これにより、ASIC3は、停止割り込み信号を出力可能な状態になる。
【0077】
尚、停止割込み許可を受けたASIC3は、目標停止位置設定レジスタ51に設定された目標停止位置にキャリッジ31が停止する毎に、その状態を割込処理部65で検知して、停止割り込み信号をCPU2に入力する。
【0078】
S120での処理が終了すると、CPU2によりASIC3に対して起動設定がなされる(S130)。即ち、S130では、CPU2による起動設定レジスタ50の設定を契機として、ASIC3側で操作量uの演算等が開始され、CRモータ35の駆動、延いてはキャリッジ31の駆動が開始される。尚、起動設定後に開始されるCRモータ35の制御は、基本的にASIC3により行われ、CPU2は、S140にて停止割込み信号の待機を行う。
【0079】
そして、ASIC3から停止割込み信号が出力されると、CPU2により停止割込みフラグがクリアされて、以後停止割込み信号が入ってこないよう、停止割込みについての割込みマスク処理が実行される(S150)。
【0080】
ここで、図8のCR走査処理によってCPU2によりASIC3が起動された以降、ASIC3のモータ制御部7が操作量uを生成する手順を図9に基づいて説明する。なお、モータ制御部7は、いわゆるハードウェア回路として以下の制御動作を実行するように構成されたものであるが、ここでは理解を容易にするために、ハードウェア回路としての制御動作をフローチャートに置き換えて説明する。
【0081】
まず、レジスタ群5に設定されている目標停止位置と減速開始位置との差を演算することにより、減速開始位置から目標停止位置までの減速距離xが算出される(S210)。そして、算出した減速距離xと、レジスタ群5に設定されている目標速度Vtを用いて、減速関数r(t)が導出される(S220)。これらS210,S220の処理は減速関数導出部11にて行われるものであり、減速関数r(t)の具体的導出方法は既に述べた通りである。
【0082】
減速関数r(t)の導出後は、速度指令選択部71のスイッチ73により、目標速度設定レジスタ53に設定された目標速度Vtが選択される(S230)。その後、速度フィードバック制御部75による速度フィードバック制御が開始される(S240)。
【0083】
そして、減速開始位置に到達するまで待機し(S250)、減速開始位置に到達したら(S250:YES)、計時部13による経過時間tdの計時が開始され(S260)、速度指令選択部71のスイッチ73により、減速指令生成部10からの減速指令r(td)が選択される(S270)。その後、減速指令演算部15による減速指令r(td)の演算が開始され(S280)、予め設定した間隔毎にその時々の経過時間tdに応じた減速指令r(td)がモータ制御部7へ入力される。
【0084】
そして、キャリッジ31が目標停止位置に到達すると(S290:YES)、たとえ減速指令r(td)がまだ有限値であっても、減速指令生成部10の動作を停止させると共に、速度フィードバック制御部75からキャリッジ31を停止させるための操作量(制動指令)が出力される(S300)。つまり、キャリッジ31をすぐに停止させるための制動制御がなされるのである。そして、キャリッジ31が完全に停止した時点で(S310:YES)、一旦このキャリッジ駆動シーケンスが終了する。
【0085】
(5)実施形態の効果等
以上説明したように、本実施形態のキャリッジ制御装置1では、減速開始位置に到達した以降の減速期間の制御方法として、位置フィードバック制御は用いず、単に減速関数r(t)に従って、減速期間の開始時点からの経過時間tdに応じた減速指令r(td)を算出し、その減速指令r(td)に基づく速度フィードバック制御を行うという方法を採用している。
【0086】
そのため、減速期間中において減速中のキャリッジ31の速度が途中で再加速するのを防ぐことができる。そして、その再加速(即ち減速・加速・減速といった不安定な速度変化)が起因となって生じる騒音の発生を防止することが可能となる。
【0087】
また、減速関数r(t)を、下に凸の二次関数として導出している。そのため、減速開始位置到達後、減速指令は急激に(急勾配で)低下していき、徐々に勾配が緩やかになっていって、最後に停止するときが最も勾配が緩い(ほとんど勾配がない)状態となる。そのため、キャリッジ31を安定した状態・速度で停止させることができる。
【0088】
更に、減速関数r(t)を導出するにあたり、減速開始時から停止時までの積分値が減速距離xと一致するような減速関数r(t)を導出している。これにより、減速指令がゼロになったときにキャリッジ31も目標停止位置又はその近傍にて停止するため、停止位置精度の高いキャリッジ制御装置1の提供が可能となる。
【0089】
更にまた、減速制御中、キャリッジ31が目標停止位置に到達したときは、減速指令生成部10の動作を停止させると共に、制動制御を行って、キャリッジ31を迅速に停止させるようにしている。そのため、キャリッジ31の停止位置精度がより高まる。
【0090】
そして、本実施形態では、インクジェットプリンタのキャリッジ駆動に対して本発明を適用し、キャリッジ31の減速開始から停止までの減速期間においてキャリッジ31が再加速するのを防いでいる。そのため、キャリッジ31の往復移動時におけるメカのガタに起因した騒音も防止され、動作音の静かなプリンタが実現される。
【0091】
ここで、本実施形態の構成要素と本発明の構成要素の対応関係を明らかにする。本実施形態において、速度フィードバック制御部75は本発明の速度フィードバック制御手段に相当し、減速指令生成部10は本発明の減速指令生成手段に相当し、減速関数導出部11は本発明の減速関数導出手段に相当し、計時部13は本発明の計時手段に相当し、減速指令演算部15は本発明の減速指令演算手段に相当し、記録ヘッド30は本発明の記録手段に相当し、レジスタ群5に目標速度Vtを設定するCPU2は本発明の目標速度設定手段および初期減速指令設定手段に相当する。
【0092】
また、図9のキャリッジ駆動シーケンスにおいて、S210の処理は本発明の減速距離設定手段が実行する処理に相当し、S290の処理は本発明の到達検出手段が実行する処理に相当し、S300の処理は本発明の制動制御手段が実行する処理に相当する。
【0093】
(6)変形例
尚、本発明の実施の形態は、上記実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
【0094】
例えば、上記実施形態では、減速関数r(t)として、下に凸の二次関数としていたが、これはあくまでも一例であって、例えば、上に凸の二次関数となるような減速関数を導出してもよい。この場合の具体的な導出方法を、図10に基づいて説明する。図10のように上に凸の二次関数で減速関数r(t)を表す場合は、t=0でこの二次関数が極大値Vtをとる。
【0095】
従って、この関数r(t)は、次式(6)のように表現できる。Aは比例定数である。
【0096】
【数6】
【0097】
そして、この減速関数は点(τ,0)を通ることから、式(6)は次式(7)のように表せる。
【0098】
【数7】
【0099】
一方、減速距離xは予めわかっており、この減速距離xが、減速関数r(t)をt=0〜τまでの時間で積分した値に一致することから、次式(8)が得られる。
【0100】
【数8】
【0101】
そして、上記2つの式(7),(8)から、τ及びAが得られ、結果として減速関数r(t)は次式(9)のように得られる。
【0102】
【数9】
【0103】
このようにして得られた式(9)の減速関数r(t)を用いても、減速期間中の再加速の発生が防止され、キャリッジ31の騒音発生が防止される。
ここまでは、減速関数r(t)を二次関数で表した場合について説明したが、もちろん、二次関数に限定されるものではないのはいうまでもない。一次関数であってもいいし、三次以上の関数であってもよい。或いは、余弦関数をもちいてもよい。
【0104】
即ち、減速期間中のキャリッジ31の再加速が起こらないような関数であればよく、具体的には、減速開始位置から減速指令がゼロになるまでの間、単調減少するものであり、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数であればよい。
【0105】
ここでいう単調減少・単調増加は、広義の意味である。
従って、例えば、上述した下に凸の二次関数を含む、下に凸のn次の関数(但しnは偶数)で減速関数r(t)を導出する場合は、まず減速関数r(t)を次式(10)のようにおけばよい。
【0106】
【数10】
【0107】
そして、上記と同様の要領で演算を行うことで、減速関数r(t)は次式(11)で表すことができる。
【0108】
【数11】
【0109】
つまり、下に凸の偶数次数の関数で減速関数r(t)を表す場合は、上記式(11)を用いればよいわけである。
また例えば、上述した上に凸の二次関数を含む、上に凸の偶数次数の関数および奇数次数の関数で減速関数r(t)を導出する場合は、まず減速関数r(t)を次式(12)のようにおけばよい。
【0110】
【数12】
【0111】
そして、上記と同様の要領で演算を行うことで、減速関数r(t)は次式(13)で表すことができる。
【0112】
【数13】
【0113】
つまり、上に凸の偶数次数の関数および奇数次数の関数で減速関数r(t)を表す場合は、上記式(13)を用いればよいわけである。
そして、上記実施形態では、減速関数r(t)として二次関数を用いることが予め決められていたが、減速関数導出部11にてどのような種類の関数を導出するかを、外部から選択できるように構成してもよい。例えば、関数種類を設定するレジスタをレジスタ群5内に設け、そのレジスタの値に応じた種類の関数を減速関数導出部11にて導出できるようにしてもよい。
【図面の簡単な説明】
【0114】
【図1】本実施形態のインクジェットプリンタにおけるキャリッジ駆動機構の構成を表す説明図である。
【図2】エンコーダ信号の出力パターンを表す説明図である。
【図3】キャリッジの移動状態を表すグラフである。
【図4】キャリッジ制御装置の概略構成を表すブロック図である。
【図5】キャリッジ制御装置を構成するモータ制御部の構成を表すブロック図である。
【図6】下に凸の二次関数で表される減速関数r(t)を説明するための説明図である。
【図7】本実施形態の減速期間での減速指令rとキャリッジ移動速度Vnの推移を表すグラフである。
【図8】CPUにて実行されるキャリッジ走査処理を表すフローチャートである。
【図9】ASICにて行われるキャリッジ駆動シーケンスの手順を表すフローチャートである。
【図10】減速関数r(t)の変形例(上に凸の二次関数)を説明するための説明図である。
【図11】本発明の減速関数導出手段による減速関数の導出方法を説明するための説明図である。
【図12】従来のカスケード制御系によるモータ制御装置を表すブロック図である。
【図13】図12のモータ制御装置による減速期間での速度指令vとキャリッジ移動速度Vnの推移を表すグラフである。
【符号の説明】
【0115】
1…キャリッジ制御装置、5…レジスタ群、6…キャリッジ測位部、7…モータ制御部、8…PWM生成部、9…クロック生成部、10…減速指令生成部、11…減速関数導出部、13…計時部、15…減速指令演算部、30…記録ヘッド、31…キャリッジ、33…印刷用紙、35…CRモータ、39…リニアエンコーダ、50…起動設定レジスタ、51…目標停止位置設定レジスタ、52…減速開始位置設定レジスタ、53…目標速度設定レジスタ、54…制御部パラメータ設定レジスタ、60…エッジ検出部、61…位置カウンタ、63…周期カウンタ、64…速度変換部、65…割込処理部、71…速度指令選択部、73…スイッチ、75…速度フィードバック制御部、77…加算器、78…速度制御器
【技術分野】
【0001】
本発明は、モータにより駆動される駆動対象の速度が目標速度と一致するように速度フィードバック制御を行うモータ制御方法及びモータ制御装置に関する。
【背景技術】
【0002】
モータにより駆動される駆動対象は多種多様であり、例えばシリアルタイプのプリンタにおいて記録ヘッドを搭載したキャリッジもその一つである。キャリッジをモータにより駆動させる際の制御方法として、キャリッジの速度と共にその停止位置も制御できるよう、位置フィードバック制御と速度フィードバック制御を併用してモータを制御する方法が知られている(例えば、特許文献1参照。)。
【0003】
このような、位置フィードバック制御と速度フィードバック制御を併用したモータ制御装置の具体的構成について、図12に基づいて説明する。図12に示すように、従来のモータ制御装置100は、制御対象(キャリッジ)107の現在位置Xnと予め設定された目標停止位置Xtとを比較し、両者を一致させるべく位置フィードバック制御を行ってその両者の差に応じた速度指令vを出力する位置フィードバック(FB)制御部101と、位置フィードバック制御部101からの速度指令v(即ち目標速度)と制御対象107の実際の移動速度Vnとを比較し、両者を一致させるべく速度フィードバック制御を行って制御対象107へ与えるべき操作量uを生成する速度フィードバック制御部105とを備えている。
【0004】
なお、位置フィードバック制御部101から出力された速度指令vは、そのまま速度フィードバック制御部105へ入力されるのではなく、速度指令補正部103にてその上限値が目標速度Vtに制限された、速度指令vfとして入力される。つまり、位置フィードバック制御部101からの速度指令vが目標速度Vt以下のときはその速度指令vの値がそのまま速度フィードバック制御部105へ入力され、速度指令vが目標速度Vtを超えている間は常時目標速度Vtが速度フィードバック制御部105へ入力される。
【0005】
このように、図12のモータ制御装置100は、2種類のフィードバックループからなるカスケード制御にて構成されており、より具体的にいえば、位置情報をメジャーフィードバック、速度情報をマイナーフィードバックに持つカスケード制御系で構成されている。そのため、目標停止位置Xtへの高い停止精度が実現される。
【特許文献1】特開2002−345277号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、上記のようなカスケード制御系で構成されたモータ制御装置100では、位置フィードバック制御が積極的に働くことが、却って減速期間中の安定した速度変化を阻害していた。具体的には、図13に示すように、減速制御中に再加速が発生してしまう。減速中にこのような再加速が発生すると、キャリッジにはその加減速変動による慣性モーメントが発生する。そして、キャリッジのメカ的なガタ(遊び)の存在によってその再加速時(加減速変動時)に騒音が発生してしまうのである。このように再加速が発生するのは、次の理由による。
【0007】
キャリッジが定速駆動から減速制御へ移行する際は、それまで一定値であった速度指令が急に低下し始めるが、フィードバック制御であるが故に、キャリッジの移動速度Vnはその急激な速度指令の低下に即応せず、徐々に低下していく。そのため、速度指令と実際の移動速度Vnとの差は広がっていく。
【0008】
すると、位置フィードバック制御部101は、遅れているキャリッジを早く目標停止位置Xtへ近付けるべく、速度指令vの減少勾配を緩やかにする。このことは図13にも現れている。多少わかりづらいが、図13の速度指令vの軌跡をみると、減少していく際の勾配が再加速発生タイミング付近でやや緩やかになっていることがわかる。
【0009】
このように速度指令vの勾配が緩やかになると、キャリッジの移動速度Vnは次第にその速度指令vに応じた速度になっていく。そうなると、位置フィードバック制御部101は再び速度指令vの減少勾配を急にしていく。このように位置フィードバック制御部101が位置制御を厳密に実現しようとするため、減速期間中は上記のように必然的に再加速が発生しやすくなるのである。
【0010】
本発明は上記課題に鑑みなされたものであり、駆動対象を駆動するモータを速度フィードバック制御するにあたり、減速期間中の再加速の発生を防ぎ、再加速発生に起因して生じる騒音の発生を防止することを目的とする。
【課題を解決するための手段】
【0011】
本発明者は、位置フィードバック制御が上記のような再加速を引き起こすのは、位置フィードバック制御で生成される速度指令がキャリッジの位置推移に依存して決定されるものだからである、ということに着目した。そこで、このような再加速を抑制するためにはキャリッジの位置推移とは独立した速度指令を生成すればよいのでは、と考えた。つまり、位置フィードバック制御を行わないようにするのである。そして、より具体的には、減速時の時間推移に依存して減速時の速度指令を決定することができるとの考えに至った。
【0012】
即ち、上記課題を解決するためになされた請求項1記載の発明は、モータにより駆動される駆動対象の速度が予め設定された目標速度と一致するようにモータの速度フィードバック制御を行うモータ制御方法であって、駆動対象の駆動開始から停止までの駆動期間のうち予め設定した減速制御開始タイミングから停止するまでの減速制御期間では、目標速度として、減速制御開始タイミングからの経過時間の関数である減速関数を用いてその経過時間に応じた減速指令を生成して、その生成した減速指令に基づいて速度フィードバック制御を行う。そして、減速関数としては、減速制御開始タイミングから減速指令がゼロになるまで単調減少し、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数を用いる。
【0013】
減速制御期間が始まるまでの速度フィードバック制御の目標速度は、例えば時間に伴って変化する速度軌道であってもよいし、単に一定の速度を目標値(目標定速速度)として設定するようにしてもよい。また、その目標速度をどのようにして生成してもよく、例えば位置フィードバック制御によって生成するものであってもよい。つまり、減速制御開始タイミングになるまでの目標速度をどのようなものにするか或いはどのようにして生成するかは適宜決めればよい。
【0014】
そして本発明のモータ制御方法では、減速制御期間における目標速度として、時間に依存した減速関数から得られる減速指令を生成し、その減速指令に基づいて速度フィードバックを行う。この減速関数は、減速制御開始タイミングからの経過時間の関数であるため、減速指令は経過時間に応じて一意に定まる。つまり、経過時間さえわかればあとは減速関数に基づいてその時間における減速指令を算出できる。
【0015】
そして、この減速関数として、減速制御開始タイミングから減速指令がゼロになるまでの間、単調減少するものであり、且つ、その導関数(時間で微分した関数)が単調関数若しくは定数となるような関数を用いるのである。
【0016】
ここでいう単調減少・単調増加は、広義の意味である。つまり、増加或いは減少の過程で一定となる部分を含む場合も含まれる。但し、導関数が単調関数若しくは定数となることが減速関数の一つの条件であるため、減速関数自体には、必然的に、単調減少する過程で減速指令が一定となるような期間は存在しないことになる。
【0017】
このような条件を満たす減速関数としては、例えば、傾きが負の一次関数、上に凸の二次関数における極大値から右側(極大値から単調減少していく部分)、下に凸の二次関数における極小値から左側(極小値に向かって単調減少していく部分)、単調減少する三次関数における変曲点から左側(変曲点に向かって単調減少していく部分)、更には余弦関数における原点から右側(単調減少していく部分)など、種々のものが考えられる。こういった関数はいずれも、図13に示した速度指令vのような、勾配が一旦緩やかになってまた元に戻る、というような関数ではない。
【0018】
このように、本発明(請求項1)のモータ制御方法は、減速制御期間の制御方法として位置フィードバック制御は用いず、単に上記の減速関数に従って、減速制御期間の開始時点からの経過時間に応じた減速指令を得ている。そして、その減速関数に従った減速指令に基づいて速度フィードバック制御を行うのである。
【0019】
そのため、減速制御期間中において減速中の駆動対象の速度が途中で再加速するのを防ぐことができる。そして、その再加速(即ち減速・加速・減速といった不安定な速度変化)が起因となって生じる騒音の発生を防止することが可能となる。
【0020】
そして、上記請求項1記載のモータ制御方法は、具体的には、例えば請求項2に記載したモータ制御装置によって実現できる。即ち、請求項2記載のモータ制御装置は、モータにより駆動される駆動対象の速度を検出する速度検出手段と、駆動対象の目標速度を設定する目標速度設定手段と、目標速度設定手段により設定された目標速度と速度検出手段により検出された速度とを比較し、両者を一致させるべくモータの速度フィードバック制御を行う速度フィードバック制御手段と、駆動対象の駆動開始から停止までの駆動期間のうち予め設定した減速制御開始タイミングから停止するまでの減速制御期間における、駆動対象の目標速度である減速指令を生成する減速指令生成手段とを備える。
【0021】
そして、速度フィードバック制御手段は、減速制御期間では減速指令生成手段により生成された減速指令に基づいて速度フィードバック制御を行い、減速指令生成手段は、減速制御開始タイミングからの経過時間の関数である減速関数を用いて、経過時間に応じた減速指令を生成する。この減速関数は、減速制御開始タイミングから減速指令がゼロになるまで単調減少し、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数である。
【0022】
このように構成されたモータ制御装置によれば、減速制御期間中においては減速指令生成手段が減速関数に基づいて減速指令を生成し、その減速指令に基づいて速度フィードバック制御手段が速度フィードバック制御を行う。そのため、上記請求項1と同様、減速制御期間中の再加速発生の防止、再加速発生に起因する騒音の防止という効果が得られる。
【0023】
なお、減速制御開始タイミング直前までの駆動対象の速度は、定速であってもいいし加速中或いは減速中でもよい。つまり、減速制御期間が始まる減速制御開始タイミングからはじめて減速が開始されることに限定されない。減速制御開始タイミングとは、減速が始まるタイミングという限定的な意味ではなく、減速指令生成手段の減速指令に基づいた速度フィードバック制御が開始されるタイミング、という意味である。
【0024】
ここで、減速指令生成手段が減速指令を生成するために用いる減速関数は、上記例示したように種々の関数が考えられるが、例えば請求項3に記載のように、下に凸となる関数にするとよい。下に凸の減速関数とは、言うまでもないが、減速制御期間内の当該減速関数をグラフ化(時間軸と減速指令軸を有する二次元座標上に表現)したとき、そのグラフ上の任意の点における接線の上側にそのグラフが存在するような関数であることを意味する。言い換えれば、時間の経過に伴って徐々に勾配が緩やかになっていくような関数である。
【0025】
このように下に凸な関数で表される減速関数を用いると、減速制御開始タイミングでまず減速指令は急激に(急勾配で)低下していき、徐々に勾配が緩やかになっていって、最後に停止するときが最も勾配が緩い(ほとんど勾配がない)状態となる。そのため、駆動対象を安定した状態・速度で停止させることができる。
【0026】
なお、これとは逆に上に凸な関数で表される減速関数を用いた場合は、再加速防止や騒音防止の効果はもちろん得られるものの、減速制御開始タイミングからゆっくりと減速指令が低下していき、次第にその減少勾配が急になっていって、最後に停止するころが最も急勾配となる。つまり、停止直前の減速指令の変化が激しくなる。そのため、安定した状態・速度での停止が困難となるおそれがある。よって、停止時の安定性や精度を考慮すれば、下に凸な関数で表される減速関数を用いるのが好ましい。
【0027】
ところで、上記のように減速関数を用いて減速制御開始タイミングからの経過時間に応じた減速指令を生成することで、減速制御中に駆動対象が再加速してしまわないような減速指令を得ることができるわけだが、当然ながら位置フィードバック制御を行っているわけではないため、単に上述した条件を満たすだけの減速関数では所望の停止位置に停止させるのが困難となる。
【0028】
そこで、例えば請求項4に記載のような減速関数を用いて、駆動対象を所望の位置に停止させることができるようにするとよい。即ち、請求項4記載の発明は、請求項2又は3に記載のモータ制御装置であって、減速制御開始タイミングから予め設定された目標停止位置までの距離である減速距離を設定する減速距離設定手段を備え、減速関数は、当該減速関数を減速制御開始タイミングから減速指令がゼロになる時間まで積分したときの積分値が上記減速距離に一致するような関数である。
【0029】
減速関数は、経過時間に対する減速指令(速度フィードバック制御手段へ与える目標速度)の関数であるため、それを時間で積分すればその時間内での移動距離が得られる。そこで、減速指令がゼロになるまでの積分値が減速距離となるような減速関数を用いれば、理論的には、減速指令がゼロになったときにちょうど駆動対象も目標停止位置にて停止することになる。
【0030】
従って、上記構成のモータ制御装置によれば、減速制御開始タイミングから減速指令がゼロとなるまでの時間積分値が減速距離設定手段にて設定された減速距離となるような減速関数によって、減速指令を生成しているため、減速期間中の再加速およびそれに起因する騒音の発生を防止できるのに加え、所望の停止位置(目標停止位置)にて駆動対象を停止させることも可能となり、停止精度も良好なモータ制御装置が得られる。
【0031】
なお実際には、摩擦や駆動対象の機械的特性などの影響によって、目標停止位置から多少ずれた位置で停止するおそれがある。しかしそのずれは、実用上問題となるようなレベルではない。
【0032】
減速距離設定手段は、減速距離そのものを直接設定するものであってもよいし、例えば、減速制御開始タイミングとしてその位置が与えられている場合は、その位置と目標停止位置との距離を演算で得ることにより設定するものであってもよい。
【0033】
そして、上記のように駆動対象を目標停止位置で停止させるべく、積分値が減速距離と一致するような減速関数を用いて減速制御を行ったとき、減速指令がゼロになる前に駆動対象がすでに目標停止位置に到達することも考えられる。その場合に、目標停止位置到達後も減速指令に基づく速度フィードバック制御が行われると、駆動対象は目標停止位置よりもどんどん先へ進んでしまう。
【0034】
そこで、例えば請求項5に記載のように、駆動対象が目標停止位置に到達したか否かを検出する到達検出手段と、駆動対象が停止するようにモータの制動制御を行う制動制御手段とを備え、到達検出手段により駆動対象が目標停止位置に到達したことが検出されたならば、速度フィードバック制御手段は減速指令に基づく速度フィードバック制御を停止し、制動制御手段が前記制動制御を実行するようにするとよい。
【0035】
このように構成されたモータ制御装置によれば、減速指令に基づく速度フィードバック制御の実行中であっても、駆動対象が目標到達位置に到達したら制動制御によって駆動対象が停止される。そのため、駆動対象を精度良く目標停止位置へ停止させることが可能となる。
【0036】
そして、請求項6記載の発明は、請求項4又は5に記載のモータ制御装置であって、減速制御開始タイミングでの減速指令である初期減速指令を設定する初期減速指令設定手段を備え、減速指令生成手段は、減速距離設定手段により設定された減速距離と初期減速指令設定手段により設定された初期減速指令に基づいて減速関数を導出する減速関数導出手段と、経過時間を計時する計時手段と、減速関数導出手段により導出された減速関数に従い、計時手段により計時された経過時間に対応した減速指令を演算する減速指令演算手段とを備えている。
【0037】
即ち、減速関数導出手段は、予め設定された減速距離と初期減速指令に基づいて、減速関数を導出する。この導出方法について、図11を用いて概略説明する。図11は、減速制御開始タイミング(t=0)からの減速指令を表す減速関数r(t)の一例であり、ここでは説明の簡略化のために一次関数を示している。
【0038】
この減速関数r(t)は、一次関数であることから、r(t)=−At+V、とおける。Aは未知の係数である。また、減速指令がゼロとなるまでの経過時間τも今のところ未知である。ここで、この減速関数r(t)が点(τ,0)を通ること、及び、r(t)をt=0〜τの間で積分した結果が減速距離xとなることは、予めわかっている。そのため、演算によってAとτは求められる。
【0039】
図11では一次関数を例示したが、他の関数の場合であっても同じ要領で減速関数r(t)を導出することができる。例えば、上に凸の関数で減速関数r(t)を導出する場合は、t=0でその関数が極大値をとるような式を設定し、その式中の未知の係数を、上記と同様、点(τ,0)を通ること、及び積分値が減速距離xとなることに基づいて算出すればよい。
【0040】
上記のように構成されたモータ制御装置によれば、予め設定された減速距離と初期減速指令に基づいて減速関数が導出され、その導出された減速関数に従って、計時時間により計時された経過時間に応じた減速指令が演算される。そのため、減速距離及び初期減速指令の設定値を変えることで、様々な減速特性のモータ制御装置を構築できる。
【0041】
なお、初期減速指令設定手段は、初期減速指令を減速制御開始タイミングでの減速指令として積極的に設定するものに限らず、それに相当するものを設定するものであれば何でも良い。例えば、一定期間定速駆動させた後に減速指令による速度フィードバック制御を開始するものであって、その定速駆動期間における目標速度を設定する手段があれば、それが初期減速指令設定手段としても機能することとなる。
【0042】
そして本発明(請求項2〜6)のモータ制御装置は、モータによって駆動される種々の駆動対象に対して適用できるが、例えば請求項7に記載のように、画像形成装置に搭載されるキャリッジのように往復運動を繰り返す駆動対象(加速・定速・減速・停止を繰り返す駆動対象)に対して適用すると、より効果的である。
【0043】
即ち、請求項7記載の発明は、請求項2〜6いずれかに記載のモータ制御装置であって、当該モータ制御装置は、記録媒体を搬送させつつその記録媒体上に画像を形成する機能を備えた画像形成装置に搭載され、駆動対象は、記録媒体上に画像を形成するための記録手段を搭載して搬送方向と直交する主走査方向に往復移動するキャリッジである。
【0044】
このように、モータ制御装置をキャリッジの往復移動に適用することで、キャリッジが減速・停止する際の再加速が防止される。そのため、再加速時にキャリッジのメカ的なガタ(遊び)によって発生する騒音も防止されることとなり、動作音の静かな、ユーザにとって使い心地の良い画像形成装置を提供できるようになる。
【発明を実施するための最良の形態】
【0045】
以下に、本発明の好適な実施形態を図面に基づいて説明する。
(1)キャリッジ駆動機構の構成
図1は、本発明のモータ制御装置が適用された画像形成装置としてのインクジェットプリンタ(以降、単に「プリンタ」とする)におけるキャリッジ駆動機構の構成を表す説明図である。
【0046】
このキャリッジ駆動機構は、まず、押さえローラ32等により搬送されてくる印刷用紙33の幅方向に設置されたガイド軸34に、ノズルから印刷用紙33に向けてインクを吐出させて記録を行う記録ヘッド30を搭載したキャリッジ31が挿通されたものである。
【0047】
このキャリッジ31は、ガイド軸34に沿って設けられた無端ベルト37に連結され、その無端ベルト37は、ガイド軸34の一端に設置されたCRモータ35のプーリ36と、ガイド軸34の他端に設置されたアイドルプーリ(図示せず)との間に掛け止められている。つまり、キャリッジ31は、無端ベルト37を介して伝達されるCRモータ35の駆動力により、ガイド軸34に沿って印刷用紙33の幅方向に往復運動するように構成されている。
【0048】
また、ガイド軸34の下方には、一定間隔(本実施形態においては、1/150inch=約0.17mm)ごとに一定幅のスリットを形成したタイミングスリット38が、ガイド軸34に沿って設置されている。
【0049】
また、キャリッジ31の下部には、タイミングスリット38を挟んで発光素子と受光素子とが対面するように配置されたフォトインタラプタからなる検出部(図示されない)が備えられており、上述のタイミングスリット38と共に、後述のリニアエンコーダ39(図4参照)を構成している。
【0050】
このリニアエンコーダ39を構成する検出部は、図2に示すように、互いに一定周期(本実施形態においては、1/4周期)ズレた2種類のエンコーダ信号ENC1,ENC2を出力する。そして、キャリッジ31の移動方向がホームポジション(図1の左端位置)からアイドルプーリ側に向かう順方向である場合は、ENC1がENC2に対して位相が一定周期進み、アイドルプーリ側からホームポジションに向かう逆方向である場合は、ENC1がENC2に対して位相が一定周期遅れるようにされている。
【0051】
このようなキャリッジ駆動機構において、キャリッジ31は、図3に示すように、記録処理が行われていない時には、ガイド軸34のプーリ35側端付近に設定されたホームポジション、或いは前回の記録が終了した位置(以下、キャリッジの移動開始位置を示す位置を「原点」と称する)にて待機し、記録処理が開始されると、予め設定された記録開始位置までの間に目標速度に達するよう加速され、その後、予め設定された記録終了位置までの間は一定の目標速度で移動し、記録終了位置を越えると停止するまで減速される。 (2)キャリッジ制御装置の構成
また、プリンタには、図4に示すように、当該プリンタの制御を統括するCPU2、CRモータ35の回転速度や回転方向等を制御するPWM信号を生成するASIC(Application Specific Integrated Circuit)3、Hブリッジ回路における4基のFETをASIC3に生成されたPWM信号に基づいて制御することでCRモータ35を駆動するモータ駆動回路(CR駆動回路)4などからなるキャリッジ制御装置1が内蔵されている。
【0052】
ASIC3には、CRモータ35の制御に用いる各種パラメータを格納するレジスタ群5、リニアエンコーダ39から取り込んだエンコーダ信号ENC1,ENC2によりキャリッジ31の位置や移動速度を算出するキャリッジ測位部6、減速開始位置から目標停止位置までの減速期間にモータ制御部7が用いる目標速度としての減速指令r(td)(td:減速開始位置からの経過時間)を生成する減速指令生成部10、レジスタ群5に格納された各種パラメータおよびキャリッジ測位部6からのデータに基づきCRモータ35の回転速度を制御するためのモータ制御信号を生成するモータ制御部7、モータ制御部7が生成するモータ制御信号に応じたデューティ比のPWM信号を生成するPWM生成部8、エンコーダ信号ENC1,ENC2より十分に周期が短いクロック信号をASIC3内部の各部に供給するクロック生成部9などが備えられている。
【0053】
これらのうち、レジスタ群5は、CRモータ35を起動するための起動設定レジスタ50、キャリッジ31を停止させるべき目標停止位置を設定するための目標停止位置設定レジスタ51、キャリッジ31の減速を開始する減速開始位置(記録終了位置と同一;本発明の減速制御開始タイミングにおける駆動対象の位置に相当)を設定するための減速開始位置設定レジスタ52、キャリッジ31が目標とすべき目標速度Vt(画像記録中の定速駆動時の速度)を設定するための目標速度設定レジスタ53、モータ制御部7がCRモータ35を制御する際の速度フィードバック演算に用いる速度制御ゲインなど、モータ制御部7にて用いられる各種パラメータを設定するための制御部パラメータ設定レジスタ54などにより構成されている。なお、この目標速度Vtは、減速開始位置において減速制御が開始されるときの減速指令(減速指令の初期値)であるため、本発明の初期減速指令に相当するものでもある。
【0054】
また、キャリッジ測位部6は、リニアエンコーダ39からのエンコーダ信号ENC1,ENC2に基づいてエンコーダ信号ENC1の各周期の開始/終了を表すエッジ検出信号(ここではENC2がハイレベルの時におけるENC1のエッジ)及びCRモータ35の回転方向(エッジ検出信号がENC1の立ち下がりエッジであれば順方向、立ち上がりエッジであれば逆方向)を検出するエッジ検出部60、エッジ検出部60が検出したCRモータ35の回転方向(つまりキャリッジ31の移動方向)に応じてエッジ検出信号をカウントアップ(順方向のとき)またはカウントダウン(逆方向のとき)することによりキャリッジ31がホームポジションから何番目のスリットに位置しているのかを検出する位置カウンタ61、エッジ検出部60からのエッジ検出信号の発生間隔をクロック信号によりカウントする周期カウンタ63、タイミングスリット38のスリット間の距離(1/150inch)とエンコーダ信号ENC1の前周期で周期カウンタ63がカウントした値の保持値Cn-1 とから特定される時間tn-1 (=Cn-1 ×クロック周期)とに基づいてキャリッジ31の移動速度を算出する速度変換部64、位置カウンタ61によるカウント値が目標停止位置設定レジスタ51にセットされている目標停止位置以上となった際に停止割込信号をCPU30へ出力する割込処理部65などにより構成されている。
【0055】
また、モータ制御部7は、図5に示すように、目標速度設定レジスタ53に設定された目標速度Vt又は減速指令生成部10にて生成された減速指令r(td)の何れか一方を選択し、速度指令として速度フィードバック制御部75へ入力する速度指令選択部71と、この速度指令選択部71から入力された速度指令(目標速度Vt又は減速指令r(td)のいずれか)と速度変換部64により計算されたキャリッジ31の移動速度とを一致させるべく速度フィードバック制御(例えばPID制御)を行って操作量uを生成する速度フィードバック制御部75などを備えている。
【0056】
このモータ制御部7において、速度指令選択部71は、目標速度設定レジスタ53に設定された目標速度Vt又は減速指令生成部10にて生成された減速指令r(td)とをスイッチ73により切り替え可能に構成されている。このスイッチ73は、位置カウンタ61のカウント値から定められるキャリッジ31の現在位置Xnが、減速開始位置設定レジスタ52に設定された減速開始位置より小さくなっているとき、つまりキャリッジ31が減速開始位置に到達するまでの間は、目標速度Vt側へ切り替えた状態とし、キャリッジ31の現在位置Xnが、減速開始位置設定レジスタ52に設定された減速開始位置以上となっているとき、つまりキャリッジ31が減速開始位置に到達した以後は、減速指令r(td)側へ切り替えた状態とするように構成されている。
【0057】
そして、速度フィードバック制御部75では、速度指令選択部71からの速度指令と速度変換部64からのキャリッジ31の移動速度Vnとの差が加算器77によって演算され、その演算結果に基づいて、速度制御器78によるPID制御が行われて操作量uが演算される。つまり、キャリッジ31が減速開始位置に到達するまでは目標速度Vtに基づく速度フィードバック制御が行われ、キャリッジ31が減速開始位置に到達した以後は、減速指令r(td)に基づく速度フィードバック制御が行われるのである。
【0058】
また、ASIC3において減速指令r(td)を生成する減速指令生成部10は、図4に示すように、減速指令を生成するための元になる減速関数r(t)を導出する減速関数導出部11と、キャリッジ31が減速開始位置に到達してからの経過時間tdを計時する計時部13と、減速関数r(t)を用いて経過時間tdにおける減速指令r(td)を演算する減速指令演算部15とを備えている。
【0059】
本実施形態の減速関数導出部11は、減速関数r(t)として図6に示すような下に凸の二次関数を導出するよう、予め設定されている。減速関数r(t)の導出は、後述するようにキャリッジ31の1回の駆動毎、即ち主走査方向の往復駆動を片方ずつ繰り返す毎に逐一行われる。そして、その導出は、レジスタ群5に設定されている目標停止位置、減速開始位置、及び目標速度Vtに基づいて行われる。
【0060】
(3)減速関数r(t)の導出方法
この減速関数導出部11にて行われる減速関数r(t)の導出方法について、図6を用いて概略説明する。図6のグラフは、横軸が減速開始位置に到達してからの経過時間、縦軸が減速指令r(td)である。ここで、導出すべき減速関数r(t)(本例では二次関数)として、減速開始時(t=0)からある時間τが経過したときに減速指令がゼロとなるような波形を設定する。なお、t=τでこの二次関数が極小値をとる。
【0061】
従って、この関数r(t)は、次式(1)のように表現できる。Aは比例定数である。
【0062】
【数1】
【0063】
そして、この減速関数は点(0,Vt)を通ることから、式(1)は次式(2)のように表せる。
【0064】
【数2】
【0065】
一方、減速開始位置と目標停止位置はわかっているため、これら両者の差によって、減速開始から停止までの移動距離である減速距離xは予めわかる。そして、この減速距離xが、減速関数r(t)をt=0〜τまでの時間で積分した値に一致することから、次式(3)が得られる。
【0066】
【数3】
【0067】
そして、上記2つの式(2),(3)から、τ及びAが次式(4)のように求まる。
【0068】
【数4】
【0069】
従って、減速関数r(t)は、次式(5)のように得られる。
【0070】
【数5】
【0071】
減速関数導出部11にて上記式(5)の減速関数r(t)が導出されれば、後は、減速指令演算部15にて、この減速関数r(t)を用いた、経過時間tdにおける減速指令r(td)が演算されるのである。そのため、減速開始位置に到達後、キャリッジ31の減速が開始されると、図6に示した減速関数r(t)の波形に沿って減速指令r(td)も減少していき、やがてゼロになる。
【0072】
このようにして減速指令生成部10にて生成された減速指令に基づいてキャリッジ31の減速制御(速度フィードバック制御)が行われたときの、減速指令rとキャリッジ31の実際の移動速度Vnの軌跡を、図7に示す。
【0073】
図7と従来の図13とを比較して明らかなように、本実施形態では、キャリッジ31の移動速度Vnは再加速することなく減速している。このような結果が得られたのは、本実施形態では位置フィードバック制御を用いず、単に下に凸の二次関数で表される減速関数r(t)に従った減速指令を速度フィードバック制御部75に与えているからである。
【0074】
この減速関数r(t)は、それ自体が単調減少する関数であるのはもちろん、その導関数であるdr(t)/dtも単調関数(単調増加関数)である。このような減速関数r(t)を用いて経過時間に応じた減速指令を与えることで、実際の移動速度Vnが再加速するのが防止されるのである。そして、再加速が防止されることで、キャリッジ31は安定して停止することができ、キャリッジ31のガタ(遊び)による騒音の発生も防止される。
【0075】
なお、時間t=0.2[sec]を過ぎた辺りで、キャリッジの移動速度Vnは急激にゼロに低下している。これは、このタイミングで目標停止位置に達し、後述する制動制御がなされたこと、及び、その制動制御にて完全に停止するまでの間の移動量が、リニアエンコーダ39では検出できない程の僅かな量であったことによる。
【0076】
(4)CPU及びASICにて実行される処理
以下に、CPU2が実行するCR走査処理の内容を、図8に基づいて説明する。
本処理が開始されると、まず、ASIC3に対する初期処理が実行される(S110)。この初期処理では、レジスタ群5を構成する各レジスタの設定等がなされる。この処理が終了すると、CPU2の動作により、CPU2からASIC3に対して停止割込み許可が発行される(S120)。これにより、ASIC3は、停止割り込み信号を出力可能な状態になる。
【0077】
尚、停止割込み許可を受けたASIC3は、目標停止位置設定レジスタ51に設定された目標停止位置にキャリッジ31が停止する毎に、その状態を割込処理部65で検知して、停止割り込み信号をCPU2に入力する。
【0078】
S120での処理が終了すると、CPU2によりASIC3に対して起動設定がなされる(S130)。即ち、S130では、CPU2による起動設定レジスタ50の設定を契機として、ASIC3側で操作量uの演算等が開始され、CRモータ35の駆動、延いてはキャリッジ31の駆動が開始される。尚、起動設定後に開始されるCRモータ35の制御は、基本的にASIC3により行われ、CPU2は、S140にて停止割込み信号の待機を行う。
【0079】
そして、ASIC3から停止割込み信号が出力されると、CPU2により停止割込みフラグがクリアされて、以後停止割込み信号が入ってこないよう、停止割込みについての割込みマスク処理が実行される(S150)。
【0080】
ここで、図8のCR走査処理によってCPU2によりASIC3が起動された以降、ASIC3のモータ制御部7が操作量uを生成する手順を図9に基づいて説明する。なお、モータ制御部7は、いわゆるハードウェア回路として以下の制御動作を実行するように構成されたものであるが、ここでは理解を容易にするために、ハードウェア回路としての制御動作をフローチャートに置き換えて説明する。
【0081】
まず、レジスタ群5に設定されている目標停止位置と減速開始位置との差を演算することにより、減速開始位置から目標停止位置までの減速距離xが算出される(S210)。そして、算出した減速距離xと、レジスタ群5に設定されている目標速度Vtを用いて、減速関数r(t)が導出される(S220)。これらS210,S220の処理は減速関数導出部11にて行われるものであり、減速関数r(t)の具体的導出方法は既に述べた通りである。
【0082】
減速関数r(t)の導出後は、速度指令選択部71のスイッチ73により、目標速度設定レジスタ53に設定された目標速度Vtが選択される(S230)。その後、速度フィードバック制御部75による速度フィードバック制御が開始される(S240)。
【0083】
そして、減速開始位置に到達するまで待機し(S250)、減速開始位置に到達したら(S250:YES)、計時部13による経過時間tdの計時が開始され(S260)、速度指令選択部71のスイッチ73により、減速指令生成部10からの減速指令r(td)が選択される(S270)。その後、減速指令演算部15による減速指令r(td)の演算が開始され(S280)、予め設定した間隔毎にその時々の経過時間tdに応じた減速指令r(td)がモータ制御部7へ入力される。
【0084】
そして、キャリッジ31が目標停止位置に到達すると(S290:YES)、たとえ減速指令r(td)がまだ有限値であっても、減速指令生成部10の動作を停止させると共に、速度フィードバック制御部75からキャリッジ31を停止させるための操作量(制動指令)が出力される(S300)。つまり、キャリッジ31をすぐに停止させるための制動制御がなされるのである。そして、キャリッジ31が完全に停止した時点で(S310:YES)、一旦このキャリッジ駆動シーケンスが終了する。
【0085】
(5)実施形態の効果等
以上説明したように、本実施形態のキャリッジ制御装置1では、減速開始位置に到達した以降の減速期間の制御方法として、位置フィードバック制御は用いず、単に減速関数r(t)に従って、減速期間の開始時点からの経過時間tdに応じた減速指令r(td)を算出し、その減速指令r(td)に基づく速度フィードバック制御を行うという方法を採用している。
【0086】
そのため、減速期間中において減速中のキャリッジ31の速度が途中で再加速するのを防ぐことができる。そして、その再加速(即ち減速・加速・減速といった不安定な速度変化)が起因となって生じる騒音の発生を防止することが可能となる。
【0087】
また、減速関数r(t)を、下に凸の二次関数として導出している。そのため、減速開始位置到達後、減速指令は急激に(急勾配で)低下していき、徐々に勾配が緩やかになっていって、最後に停止するときが最も勾配が緩い(ほとんど勾配がない)状態となる。そのため、キャリッジ31を安定した状態・速度で停止させることができる。
【0088】
更に、減速関数r(t)を導出するにあたり、減速開始時から停止時までの積分値が減速距離xと一致するような減速関数r(t)を導出している。これにより、減速指令がゼロになったときにキャリッジ31も目標停止位置又はその近傍にて停止するため、停止位置精度の高いキャリッジ制御装置1の提供が可能となる。
【0089】
更にまた、減速制御中、キャリッジ31が目標停止位置に到達したときは、減速指令生成部10の動作を停止させると共に、制動制御を行って、キャリッジ31を迅速に停止させるようにしている。そのため、キャリッジ31の停止位置精度がより高まる。
【0090】
そして、本実施形態では、インクジェットプリンタのキャリッジ駆動に対して本発明を適用し、キャリッジ31の減速開始から停止までの減速期間においてキャリッジ31が再加速するのを防いでいる。そのため、キャリッジ31の往復移動時におけるメカのガタに起因した騒音も防止され、動作音の静かなプリンタが実現される。
【0091】
ここで、本実施形態の構成要素と本発明の構成要素の対応関係を明らかにする。本実施形態において、速度フィードバック制御部75は本発明の速度フィードバック制御手段に相当し、減速指令生成部10は本発明の減速指令生成手段に相当し、減速関数導出部11は本発明の減速関数導出手段に相当し、計時部13は本発明の計時手段に相当し、減速指令演算部15は本発明の減速指令演算手段に相当し、記録ヘッド30は本発明の記録手段に相当し、レジスタ群5に目標速度Vtを設定するCPU2は本発明の目標速度設定手段および初期減速指令設定手段に相当する。
【0092】
また、図9のキャリッジ駆動シーケンスにおいて、S210の処理は本発明の減速距離設定手段が実行する処理に相当し、S290の処理は本発明の到達検出手段が実行する処理に相当し、S300の処理は本発明の制動制御手段が実行する処理に相当する。
【0093】
(6)変形例
尚、本発明の実施の形態は、上記実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
【0094】
例えば、上記実施形態では、減速関数r(t)として、下に凸の二次関数としていたが、これはあくまでも一例であって、例えば、上に凸の二次関数となるような減速関数を導出してもよい。この場合の具体的な導出方法を、図10に基づいて説明する。図10のように上に凸の二次関数で減速関数r(t)を表す場合は、t=0でこの二次関数が極大値Vtをとる。
【0095】
従って、この関数r(t)は、次式(6)のように表現できる。Aは比例定数である。
【0096】
【数6】
【0097】
そして、この減速関数は点(τ,0)を通ることから、式(6)は次式(7)のように表せる。
【0098】
【数7】
【0099】
一方、減速距離xは予めわかっており、この減速距離xが、減速関数r(t)をt=0〜τまでの時間で積分した値に一致することから、次式(8)が得られる。
【0100】
【数8】
【0101】
そして、上記2つの式(7),(8)から、τ及びAが得られ、結果として減速関数r(t)は次式(9)のように得られる。
【0102】
【数9】
【0103】
このようにして得られた式(9)の減速関数r(t)を用いても、減速期間中の再加速の発生が防止され、キャリッジ31の騒音発生が防止される。
ここまでは、減速関数r(t)を二次関数で表した場合について説明したが、もちろん、二次関数に限定されるものではないのはいうまでもない。一次関数であってもいいし、三次以上の関数であってもよい。或いは、余弦関数をもちいてもよい。
【0104】
即ち、減速期間中のキャリッジ31の再加速が起こらないような関数であればよく、具体的には、減速開始位置から減速指令がゼロになるまでの間、単調減少するものであり、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数であればよい。
【0105】
ここでいう単調減少・単調増加は、広義の意味である。
従って、例えば、上述した下に凸の二次関数を含む、下に凸のn次の関数(但しnは偶数)で減速関数r(t)を導出する場合は、まず減速関数r(t)を次式(10)のようにおけばよい。
【0106】
【数10】
【0107】
そして、上記と同様の要領で演算を行うことで、減速関数r(t)は次式(11)で表すことができる。
【0108】
【数11】
【0109】
つまり、下に凸の偶数次数の関数で減速関数r(t)を表す場合は、上記式(11)を用いればよいわけである。
また例えば、上述した上に凸の二次関数を含む、上に凸の偶数次数の関数および奇数次数の関数で減速関数r(t)を導出する場合は、まず減速関数r(t)を次式(12)のようにおけばよい。
【0110】
【数12】
【0111】
そして、上記と同様の要領で演算を行うことで、減速関数r(t)は次式(13)で表すことができる。
【0112】
【数13】
【0113】
つまり、上に凸の偶数次数の関数および奇数次数の関数で減速関数r(t)を表す場合は、上記式(13)を用いればよいわけである。
そして、上記実施形態では、減速関数r(t)として二次関数を用いることが予め決められていたが、減速関数導出部11にてどのような種類の関数を導出するかを、外部から選択できるように構成してもよい。例えば、関数種類を設定するレジスタをレジスタ群5内に設け、そのレジスタの値に応じた種類の関数を減速関数導出部11にて導出できるようにしてもよい。
【図面の簡単な説明】
【0114】
【図1】本実施形態のインクジェットプリンタにおけるキャリッジ駆動機構の構成を表す説明図である。
【図2】エンコーダ信号の出力パターンを表す説明図である。
【図3】キャリッジの移動状態を表すグラフである。
【図4】キャリッジ制御装置の概略構成を表すブロック図である。
【図5】キャリッジ制御装置を構成するモータ制御部の構成を表すブロック図である。
【図6】下に凸の二次関数で表される減速関数r(t)を説明するための説明図である。
【図7】本実施形態の減速期間での減速指令rとキャリッジ移動速度Vnの推移を表すグラフである。
【図8】CPUにて実行されるキャリッジ走査処理を表すフローチャートである。
【図9】ASICにて行われるキャリッジ駆動シーケンスの手順を表すフローチャートである。
【図10】減速関数r(t)の変形例(上に凸の二次関数)を説明するための説明図である。
【図11】本発明の減速関数導出手段による減速関数の導出方法を説明するための説明図である。
【図12】従来のカスケード制御系によるモータ制御装置を表すブロック図である。
【図13】図12のモータ制御装置による減速期間での速度指令vとキャリッジ移動速度Vnの推移を表すグラフである。
【符号の説明】
【0115】
1…キャリッジ制御装置、5…レジスタ群、6…キャリッジ測位部、7…モータ制御部、8…PWM生成部、9…クロック生成部、10…減速指令生成部、11…減速関数導出部、13…計時部、15…減速指令演算部、30…記録ヘッド、31…キャリッジ、33…印刷用紙、35…CRモータ、39…リニアエンコーダ、50…起動設定レジスタ、51…目標停止位置設定レジスタ、52…減速開始位置設定レジスタ、53…目標速度設定レジスタ、54…制御部パラメータ設定レジスタ、60…エッジ検出部、61…位置カウンタ、63…周期カウンタ、64…速度変換部、65…割込処理部、71…速度指令選択部、73…スイッチ、75…速度フィードバック制御部、77…加算器、78…速度制御器
【特許請求の範囲】
【請求項1】
モータにより駆動される駆動対象の速度が予め設定された目標速度と一致するように前記モータの速度フィードバック制御を行うモータ制御方法であって、
前記駆動対象の駆動開始から停止までの駆動期間のうち予め設定した減速制御開始タイミングから停止するまでの減速制御期間では、前記目標速度として、前記減速制御開始タイミングからの経過時間の関数である減速関数を用いてその経過時間に応じた減速指令を生成して、その生成した減速指令に基づいて前記速度フィードバック制御を行い、
前記減速関数として、前記減速制御開始タイミングから前記減速指令がゼロになるまで単調減少し、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数を用いる
ことを特徴とするモータ制御方法。
【請求項2】
モータにより駆動される駆動対象の速度を検出する速度検出手段と、
前記駆動対象の目標速度を設定する目標速度設定手段と、
前記目標速度設定手段により設定された目標速度と前記速度検出手段により検出された速度とを比較し、両者を一致させるべく前記モータの速度フィードバック制御を行う速度フィードバック制御手段と、
前記駆動対象の駆動開始から停止までの駆動期間のうち予め設定した減速制御開始タイミングから停止するまでの減速制御期間における、前記駆動対象の目標速度である減速指令を生成する減速指令生成手段と
を備え、
前記速度フィードバック制御手段は、前記減速制御期間では前記減速指令生成手段により生成された前記減速指令に基づいて前記速度フィードバック制御を行い、
前記減速指令生成手段は、前記減速制御開始タイミングからの経過時間の関数である減速関数を用いて、前記経過時間に応じた前記減速指令を生成し、
前記減速関数は、前記減速制御開始タイミングから前記減速指令がゼロになるまで単調減少し、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数である
ことを特徴とするモータ制御装置。
【請求項3】
請求項2記載のモータ制御装置であって、
前記減速関数は下に凸となる関数である、ことを特徴とするモータ制御装置。
【請求項4】
請求項2又は3に記載のモータ制御装置であって、
前記減速制御開始タイミングから予め設定された目標停止位置までの距離である減速距離を設定する減速距離設定手段を備え、
前記減速関数は、当該減速関数を前記減速制御開始タイミングから前記減速指令がゼロになる時間まで積分したときの積分値が前記減速距離に一致するような関数である
ことを特徴とするモータ制御装置。
【請求項5】
請求項4記載のモータ制御装置であって、
前記駆動対象が前記目標停止位置に到達したか否かを検出する到達検出手段と、
前記駆動対象が停止するように前記モータの制動制御を行う制動制御手段と
を備え、
前記到達検出手段により前記駆動対象が前記目標停止位置に到達したことが検出されたならば、前記速度フィードバック制御手段は前記減速指令に基づく前記速度フィードバック制御を停止し、前記制動制御手段が前記制動制御を実行する
ことを特徴とするモータ制御装置。
【請求項6】
請求項4又は5に記載のモータ制御装置であって、
前記減速制御開始タイミングでの前記減速指令である初期減速指令を設定する初期減速指令設定手段を備え、
前記減速指令生成手段は、
前記減速距離設定手段により設定された前記減速距離と前記初期減速指令設定手段により設定された前記初期減速指令に基づいて前記減速関数を導出する減速関数導出手段と、
前記経過時間を計時する計時手段と、
前記減速関数導出手段により導出された前記減速関数に従い、前記計時手段により計時された前記経過時間に対応した前記減速指令を演算する減速指令演算手段と
を備えたことを特徴とするモータ制御装置。
【請求項7】
請求項2〜6いずれかに記載のモータ制御装置であって、
当該モータ制御装置は、記録媒体を搬送させつつその記録媒体上に画像を形成する機能を備えた画像形成装置に搭載され、
前記駆動対象は、前記記録媒体上に画像を形成するための記録手段を搭載して前記搬送方向と直交する主走査方向に往復移動するキャリッジである
ことを特徴とするモータ制御装置。
【請求項1】
モータにより駆動される駆動対象の速度が予め設定された目標速度と一致するように前記モータの速度フィードバック制御を行うモータ制御方法であって、
前記駆動対象の駆動開始から停止までの駆動期間のうち予め設定した減速制御開始タイミングから停止するまでの減速制御期間では、前記目標速度として、前記減速制御開始タイミングからの経過時間の関数である減速関数を用いてその経過時間に応じた減速指令を生成して、その生成した減速指令に基づいて前記速度フィードバック制御を行い、
前記減速関数として、前記減速制御開始タイミングから前記減速指令がゼロになるまで単調減少し、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数を用いる
ことを特徴とするモータ制御方法。
【請求項2】
モータにより駆動される駆動対象の速度を検出する速度検出手段と、
前記駆動対象の目標速度を設定する目標速度設定手段と、
前記目標速度設定手段により設定された目標速度と前記速度検出手段により検出された速度とを比較し、両者を一致させるべく前記モータの速度フィードバック制御を行う速度フィードバック制御手段と、
前記駆動対象の駆動開始から停止までの駆動期間のうち予め設定した減速制御開始タイミングから停止するまでの減速制御期間における、前記駆動対象の目標速度である減速指令を生成する減速指令生成手段と
を備え、
前記速度フィードバック制御手段は、前記減速制御期間では前記減速指令生成手段により生成された前記減速指令に基づいて前記速度フィードバック制御を行い、
前記減速指令生成手段は、前記減速制御開始タイミングからの経過時間の関数である減速関数を用いて、前記経過時間に応じた前記減速指令を生成し、
前記減速関数は、前記減速制御開始タイミングから前記減速指令がゼロになるまで単調減少し、且つ、その導関数が単調減少、単調増加、若しくは定数となるような関数である
ことを特徴とするモータ制御装置。
【請求項3】
請求項2記載のモータ制御装置であって、
前記減速関数は下に凸となる関数である、ことを特徴とするモータ制御装置。
【請求項4】
請求項2又は3に記載のモータ制御装置であって、
前記減速制御開始タイミングから予め設定された目標停止位置までの距離である減速距離を設定する減速距離設定手段を備え、
前記減速関数は、当該減速関数を前記減速制御開始タイミングから前記減速指令がゼロになる時間まで積分したときの積分値が前記減速距離に一致するような関数である
ことを特徴とするモータ制御装置。
【請求項5】
請求項4記載のモータ制御装置であって、
前記駆動対象が前記目標停止位置に到達したか否かを検出する到達検出手段と、
前記駆動対象が停止するように前記モータの制動制御を行う制動制御手段と
を備え、
前記到達検出手段により前記駆動対象が前記目標停止位置に到達したことが検出されたならば、前記速度フィードバック制御手段は前記減速指令に基づく前記速度フィードバック制御を停止し、前記制動制御手段が前記制動制御を実行する
ことを特徴とするモータ制御装置。
【請求項6】
請求項4又は5に記載のモータ制御装置であって、
前記減速制御開始タイミングでの前記減速指令である初期減速指令を設定する初期減速指令設定手段を備え、
前記減速指令生成手段は、
前記減速距離設定手段により設定された前記減速距離と前記初期減速指令設定手段により設定された前記初期減速指令に基づいて前記減速関数を導出する減速関数導出手段と、
前記経過時間を計時する計時手段と、
前記減速関数導出手段により導出された前記減速関数に従い、前記計時手段により計時された前記経過時間に対応した前記減速指令を演算する減速指令演算手段と
を備えたことを特徴とするモータ制御装置。
【請求項7】
請求項2〜6いずれかに記載のモータ制御装置であって、
当該モータ制御装置は、記録媒体を搬送させつつその記録媒体上に画像を形成する機能を備えた画像形成装置に搭載され、
前記駆動対象は、前記記録媒体上に画像を形成するための記録手段を搭載して前記搬送方向と直交する主走査方向に往復移動するキャリッジである
ことを特徴とするモータ制御装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2007−97365(P2007−97365A)
【公開日】平成19年4月12日(2007.4.12)
【国際特許分類】
【出願番号】特願2005−286460(P2005−286460)
【出願日】平成17年9月30日(2005.9.30)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】
【公開日】平成19年4月12日(2007.4.12)
【国際特許分類】
【出願日】平成17年9月30日(2005.9.30)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】
[ Back to top ]