(57)【特許請求の範囲】
【請求項１】
定周期スキャン方法を用いてＸ軸及びＹ軸をサーボ駆動するＸＹプロッタに関し、直前の位置決めサイクルでの目標位置Ｐm-1(ｘm-1,ｙm-1)（ｍ：自然数）から今回の位置決めサイクルでの目標位置Ｐm(ｘm,ｙm)への位置決め制御を行う際の直線補間方法において、
前記Ｘ軸及びＹ軸方向の移動距離Δｘm,Δｙmを、それぞれ、Δｘm＝ｘm−ｘm-1,Δｙm＝ｙm−ｙm-1で定義し、
前記直前の位置決めサイクルでの目標位置と前記今回の位置決めサイクルでの目標位置から位置パターンを生成し、
スキャンごとに、前記位置パターンから得られる前記Ｘ軸についての位置指令ｘ(ｎ)（ｎ：自然数）に対して前回のスキャン時の位置指令値ｘ(ｎ-1)との差分δｘ(ｎ)を微分回路によって求め、積分回路によって前記Ｘ軸及びＹ軸方向の移動距離の比Δｙm／Δｘmを前記差分δｘ(ｎ)に乗じて積分し、加算器によって該積分値を前記直前の位置決めサイクルでのＹ座標の目標値ｙm-1に加算して前記Ｙ軸についての位置指令ｙ(ｎ)を取得し、前記各位置指令ｘ(ｎ),ｙ(ｎ)をもとに、時々刻々、前記Ｘ軸及びＹ軸の位置制御を実行することにより、一直線の軌跡を得ることを特徴とする直線補間方法。
【請求項２】
定周期スキャン方法を用いてＸ軸及びＹ軸をサーボ駆動するＸＹプロッタに関し、直前の位置決めサイクルでの目標位置Ｐm-1(ｘm-1,ｙm-1) （ｍ：自然数）から今回の位置決めサイクルでの目標位置Ｐm(ｘm,ｙm)への位置決め制御を行う際の直線補間方法において、
前記Ｘ軸及びＹ軸方向の移動距離Δｘm,Δｙmを、それぞれ、Δｘm＝ｘm−ｘm-1,Δｙm＝ｙm−ｙm-1で定義し、
｜Δｘm｜≧｜Δｙm｜の場合には、
前記直前の位置決めサイクルでの目標位置と前記今回の位置決めサイクルでの目標位置から前記Ｘ軸についての位置パターンを生成し、
スキャンごとに、前記位置パターンから得られる前記Ｘ軸についての位置指令ｘ(ｎ) （ｎ：自然数）に対して前回のスキャン時の位置指令値ｘ(ｎ-1)との差分δｘ(ｎ)を微分回路によって求め、積分回路によって前記Ｘ軸及びＹ軸方向の移動距離の比Δｙm／Δｘmを前記差分δｘ(ｎ)に乗じて積分し、加算器によって該積分値を前記直前の位置決めサイクルでのＹ座標の目標値ｙm-1に加算して前記Ｙ軸についての位置指令ｙ(ｎ)を取得し、前記各位置指令ｘ(ｎ),ｙ(ｎ)をもとに、時々刻々、前記Ｘ軸及びＹ軸の位置制御を実行し、
｜Δｘm｜＜｜Δｙm｜の場合には、
前記直前の位置決めサイクルでの目標位置と前記今回の位置決めサイクルでの目標位置から前記Ｙ軸についての位置パターンを生成し、
スキャンごとに、前記位置パターンから得られる前記Ｙ軸についての位置指令ｙ(ｎ)に対して前回のスキャン時の位置指令値ｙ(ｎ-1)との差分δｙ(ｎ)を前記微分回路によって求め、前記積分回路によって前記Ｘ軸及びＹ軸方向の移動距離の比Δｘm／Δｙmを前記差分δｙ(ｎ)に乗じて積分し、前記加算器によって該積分値を前記直前の位置決めサイクルでのＸ座標の目標値ｘm-1に加算して前記Ｘ軸についての位置指令ｘ(ｎ)を取得し、前記各位置指令ｘ(ｎ),ｙ(ｎ)をもとに、時々刻々、前記Ｘ軸及びＹ軸の位置制御を実行することにより、一直線の軌跡を得ることを特徴とする直線補間方法。
【請求項３】
前記位置パターンが、所定の速度パターンにすべく、加速時間、減速時間及び定常移動速度を設定して得られるものである請求項１または２に記載の直線補間方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、サーボモータによってＸ，Ｙ軸を駆動しポイント・ツー・ポイント（ＰＴＰ）の位置決めを行うＸＹプロッタなどの制御方法に関し、特に、定周期スキャン方法によるコントローラを使用し、サーボモータの加減速区間も含めて一直線の軌跡が得られる直線補間方法に関する。
【０００２】
【従来の技術】
ＸＹプロッタには、Ｘ軸、Ｙ軸ともにステップモータを用い、ステップモータを駆動するパルスの数によるオープンループの制御を行っているものもあるが、用途や大きさ、要求される性能によっては、Ｘ軸、Ｙ軸のそれぞれごとにサーボモータを備えて外部から入力する目標値に応じてこれらサーボモータをクローズループ制御する構成としたものもある。また、多くのＸＹプロッタでは、図１に示すように、目標位置がＸＹ平面上での点列｛Ｐｉ（ｘｉ，ｙｉ），ｉ＝０，１，２，…｝として与えられ、隣接する２点間を直線（移動軌跡Ｌ）で結ぶことが要求される。なお、点列で目標位置が与えられるような場合の制御をポイント・ツー・ポイントの制御という。
【０００３】
ＸＹプロッタにおいて、目標位置がＸＹ座標値で与えられる場合などＸ軸とＹ軸の目標値が分離できる場合には、従来、Ｘ軸、Ｙ軸ごとに独立してポイント・ツー・ポイント制御を行うのが一般的である。図２は、定周期スキャン方法によってポイント・ツー・ポイント制御が行われる通常の制御系（１軸分）の構成を示すブロック線図である。サーボモータ３には、位置帰還パルスを発生するパルスジェネレータ４と、コントローラ１からの速度指令Ｎｒｅｆとパルスジェネレータ４からの位置帰還パルスに基づいてサーボモータ３を駆動するサーボドライバ２が接続している。コントローラ１は、定周期スキャン方法によるデジタル制御を実現するものであって、位置帰還パルスを計数して位置フィードバックとして出力するカウンタ１３と、目標位置ｘｍに応じて各スキャンごとの位置指令ｘ（ｎ）を発生する位置パターン発生器１４と、位置フィードバックと位置指令ｘ（ｎ）との位置偏差を算出する減算器１０と、減算器１０が出力する位置偏差に位置制御ゲインＫｐを乗算する乗算器１１と、乗算器１１の出力を上述の速度指令Ｎｒｅｆとして出力するためのＤ／Ａ変換器１２とによって、構成されている。
【０００４】
位置パターン発生器１４は、目標位置ｘｍが入力するとともに、図２に示すような所望の速度パターンとなるように、加速時間（０から１００％速度に到達する時間）、減速時間（１００％速度から０になる時間）、定常移動速度（加速完了時から減速開始時までの一定速度で動いているときの速度）が設定され、これらの入力値、設定値に対応する位置パターンを発生する。そして、コントローラ１でのスキャン時間ごとの位置パターンの値がスキャン時間ごとの位置指令ｘ（ｎ）となる。こうして得られた位置指令ｘ（ｎ）は、減算器１０によって位置フィードバックと突き合わされ、その結果生ずる位置偏差を０にするように、コントローラ１によって位置制御が行われる。
上述したような制御系をＸ軸とＹ軸に用意し、予め準備された目標位置群から得られる位置決めサイクルごとの目標位置指令ｘｍ，ｙｍに対して、それぞれ位置決め制御を行うことにより、ＸＹプロッタなどの動きを実現することができる。図３はこのように構成した従来のＸＹ軸位置決めシステムの構成を示している。なお、図面において、添え字１はＸ軸に対応し、添え字２はＹ軸に対応することを表わしている。また、各位置決めサイクルでの目標位置は、目標位置データ２０として与えられている。
【０００５】
【発明が解決しようとする課題】
図３に示す位置決めシステムにおいて、位置パターン発生器１４１，１４２には、それぞれ、対応する軸に対する加速時間、減速時間及び定常移動速度が与えられる。ここで、Δｘｍ＝ｘｍ−ｘｍ−１、Δｙｍ＝ｙｍ−ｙｍ−１とすると、Ｘ軸及びＹ軸のそれぞれに与えられる加速時間、減速時間及び定常移動速度を、軸によらずに同一の値とすると、｜Δｘｍ｜＝｜Δｙｍ｜であれば、加速完了時間と減速開始時間が、それぞれ、Ｘ軸とＹ軸で一致するため、図１に示すように、動き始めから位置決め完了まで一直線の移動軌跡が得られる。しかしながら、｜Δｘｍ｜≠｜Δｙｍ｜の場合には、Ｘ軸とＹ軸とで加速完了時間と減速開始時間がそれぞれずれるため、一直線の軌跡を描くことができなくなる。｜Δｘｍ｜≠｜Δｙｍ｜であっても一直線の軌跡を得るためには、位置決めサイクルごとに、｜Δｘｍ｜，｜Δｙｍ｜に比例して各軸の定常移動速度を設定し、｜Δｘｍ｜，｜Δｙｍ｜に反比例させて加速時間や減速時間を設定すればよいが、Ｘ軸とＹ軸の間で加減速時間が整数比でなかったり、設定分解能などの理由によって、加速時間や減速時間の設定を正確に行なえない場合が多い。そのため加速時間、減速時間に誤差が生じ、この誤差のために一直線の軌跡からずれることになる。したがって、位置決めサイクルごとの目標位置間で直線軌跡が要求される場合には、結局、上述したような方法では所望の結果が得られないことになる。
【０００６】
本発明の目的は、目標位置群が与えられたときに、過大加速度を伴うことなく、各目標位置間を正確に一直線の軌跡で描くことができる直線補間方法を提供することにある。
【０００７】
【課題を解決するための手段】
本発明の直線補間方法は、定周期スキャン方法を用いてＸ軸及びＹ軸をサーボ駆動するＸＹプロッタに関し、直前の位置決めサイクルでの目標位置Ｐm-1(ｘm-1,ｙm-1)から今回の位置決めサイクルでの目標位置Ｐm(ｘm,ｙm)への位置決め制御を行う際の直線補間方法において、前記Ｘ軸及びＹ軸方向の移動距離Δｘm,Δｙmを、それぞれ、Δｘm＝ｘm−ｘm-1,Δｙm＝ｙm−ｙm-1で定義し、前記直前の位置決めサイクルでの目標位置と前記今回の位置決めサイクルでの目標位置から位置パターンを生成し、スキャンごとに、前記位置パターンから得られる前記Ｘ軸についての位置指令ｘ(ｎ)に対して前回のスキャン時の位置指令値ｘ（ｎ−１）との差分δｘ(ｎ)を微分回路によって求め、積分回路によって前記Ｘ軸およびＹ軸方向の移動距離の比Δｙm／Δｘmを前記差分δｘ(ｎ)に乗じて積分し、加算器によって該積分値を前記直前の位置決めサイクルでのＹ座標の目標値ｙm-1に加算して前記Ｙ軸についての位置指令ｙ(ｎ)を取得し、前記各位置指令ｘ(ｎ),ｙ(ｎ)をもとに、時々刻々、前記Ｘ軸及びＹ軸の位置制御を実行することにより、一直線の軌跡を得る。
【０００８】
本発明において、Ｘ軸及びＹ軸の定め方は任意であって、原点から右方向をＸ軸、原点から上方向をＹ軸とするものに、限定されるものではない。例えば、原点から右方向をＹ軸、原点から上方向をＸ軸と定めてもよい。ただし、過大加速度の発生を防ぐために、請求項１に記載の発明では、｜Δｘｍ｜≧｜Δｙｍ｜となるようにＸ軸、Ｙ軸を選ぶことが好ましい。この観点から、請求項２に記載の発明では、｜Δｘｍ｜≧｜Δｙｍ｜であるか、｜Δｘｍ｜＜｜Δｙｍ｜であるかに応じて、Ｘ軸とＹ軸に対する処理の内容を入れ換えている。
また、位置パターンとしては、所定の速度パターンにすべく、加速時間、減速時間及び定常移動速度を設定して得られるものを用いることが好ましい。
以下、本発明の原理について説明する。
【０００９】
図１に示すような点Ｐｍ−１から点Ｐｍへの位置決めにおいて、一直線の軌跡を描かせるためのＸ，Ｙ軸に対する理想的な速度指令と位置指令の関係を図４に示す。位置決めの１サイクル中のあらゆる時刻において、Ｘ軸に対する速度指令Ｎｘの値ＡとＹ軸に対する速度指令Ｎｙの値Ｂが、Ａ：Ｂ＝Δｘｍ：Δｙｍの関係を有するようにする。すると、それらの積分値である位置指令においても、Ｘ，Ｙ軸の位置指令値Ｃ，Ｄについて、Ｃ：Ｄ＝Δｘｍ：Δｙｍが成立する。そこで、スキャンごとに、例えばＸ軸についての位置パターンから位置指令ｘ（ｎ）をサンプリングし、前回のスキャン時の位置指令値との差分δｘ（ｎ）を求め、各軸方向の移動距離の比Δｙｍ／Δｘｍを差分δｘ（ｎ）に乗じて積分する。すると、１サイクル内あらゆる時刻において、Ｘ軸方向の移動量に対してΔｙｍ／Δｘｍの比を持ったＹ軸方向の移動量が求められることになる。ここで移動量とは、前のサイクルでの目標値（ｘｍ−１，ｙｍ−１）からの差をいう。このようにしてＹ軸方向の移動量が求められたら、直前のサイクルでのＹ座標の目標値ｙｍ−１に加算することによって、今回のサイクルでの時々刻々のＹ軸についての位置指令ｙ（ｎ）が得られることになる。
【００１０】
【発明の実施の形態】
次に、本発明の実施の形態について説明する。図５は、本発明の実施の一形態の直線補間方法に基づく、Ｘ,Ｙ軸制御系の構成を示すブロック線図である。Ｘ軸に対応するサーボモータ３1とＹ軸に対応するサーボモータ３2が設けられており、各サーボモータ３1,３2には、それぞれ、位置帰還パルスを発生するパルスジェネレータ４1,４2と、コントローラ１からの速度指令Ｎref1,Ｎref2と各パルスジェネレータ４1,４2からの位置帰還パルスに基づいてサーボモータ３1,３2を駆動するサーボドライバ２が接続している。コントローラ１は、定周期スキャン方法によるデジタル制御を実現するものであって、各軸の位置帰還パルスを計数して位置フィードバックとしてそれぞれ出力するカウンタ１３1,１３2と、各軸の位置フィードバックと位置指令ｘ(ｎ),ｙ(ｎ)との位置偏差をそれぞれ算出する減算器１０1,１０2と、減算器１０1,１０2が出力する位置偏差に位置制御ゲインＫp1,Ｋp2をそれぞれ乗算する乗算器１１1,１１2と、各乗算器１１1,１１2の出力を各軸の速度指令Ｎref1,Ｎref2としてそれぞれ出力するためのＤ／Ａ変換器１２1,１２2を備えている。さらにコントローラ１には、Ｘ軸についての目標値ｘmが入力してスキャンごとに位置指令ｘ(ｎ)を出力する位置パターン発生器１４と、この位置指令ｘ(ｎ)と前回のスキャンのときの位置指令値ｘ（ｎ−１）との差分δｘ(ｎ)を算出する微分回路２１と、移動距離の比Δｙm／Δｘmを差分δｘ(ｎ)に乗じて積分する積分回路２４と、積分回路２４から出力される積分値Ｉ(ｎ)を前回の位置決めサイクルでのＹ軸の目標値ｙm-1に加算してＹ軸についての位置指令ｙ(ｎ)とする加算器２５を備えている。微分回路２１には、前回のスキャン時の位置指令を保持するための遅延素子２２と、位置指令ｘ(ｎ)から前回のスキャン時の位置指令ｘ（ｎ−１）を差し引く減算器２３とが、含まれている。
【００１１】
積分回路２４では、Δｙｍ／Δｘｍであらわされるように、割り算を含む積分計算を行っているが、わずかの丸め誤差も生じないようにするため、下記のような余り補正処理を施した整数型演算を行うものとする。ただし、「→」は格納命令を表わし、「ＭＯＤ」は余りを求める命令を表わしている。
【００１２】
【数１】
0003608587.tif 000002
すなわち、式（１）のΔｘｍで割ることによる余りＢを、次のスキャンで式（１）の演算に再度含めることにより、余りによる丸め誤差が全く生じない。なお、これは整数型積分演算を行う際の常套手段である。
【００１３】
このコントローラ１では、位置パターン発生器１４にＸ座標の目標値ｘmを与え、所定の速度パターンにすべく、加速時間、減速時間及び定常移動速度を位置パターン発生器１４に設定して、Ｘ軸についての位置パターンを生成する。そして、スキャンごとに、微分回路２１によって、位置パターンから求められた位置指令ｘ(ｎ)から１スキャン前の値ｘ（ｎ−１）を減算して位置指令の増分値（差分値）δｘ(ｎ)を算出し、積分回路２４によって、増分値δｘ(ｎ)にΔｙm／Δｘmの比率を乗じて積分すると、Ｘ軸方向の移動量ｘ(ｎ)−ｘm-1に対応したＹ軸方向の移動量ｙ(ｎ)−ｙm-1が積分値Ｉ(ｎ)として求められることになる。この積分値Ｉ(ｎ)を加算器２５によって、直前のサイクルの目標値ｙm-1に加算することにより、各スキャンごとのＹ軸についての位置指令ｙ(ｎ)が算出される。上述したように、移動量の比ｘ(ｎ)−ｘm-1：ｙ(ｎ)−ｙm-1は、Δｘm：Δｙmに等しく、このようなｘ(ｎ),ｙ(ｎ)を用いることにより、一直線の軌跡を描かせることが可能になっている。
【００１４】
なお、上述した処理を｜Δｘm｜≧｜Δｙm｜の場合に行えば、Ｘ軸の加減速度以下に、Ｙ軸の加減速度を抑えることができる。したがって、過大加速度を防ぐ観点から、図５に示すようにＸ軸の目標値ｘmから位置指令ｙ(ｎ)を生成するのは｜Δｘm｜≧｜Δｙm｜の場合とし、｜Δｘm｜＜｜Δｙm｜の場合には、図６に示すように、Ｙ軸の目標値ｙmからＸ軸の位置指令ｘ(ｎ)を求めるようにすることが好ましい。図６に示すコントローラ１は、図５に示すものと同様のものであるが、位置パターン発生器１４、微分回路２１、積分回路２４及び加算器２５の配置がＸ軸とＹ軸に関して入れ替わっており、ｘmとｙm、ｘm-1とｙm-1、ｘ(ｎ)とｙ(ｎ)、ΔｘmとΔｙm、δｘ(ｎ)とδｙ(ｎ)が相互に入れ替わった構成となっている。ＸＹプロッタなどでは、｜Δｘm｜と｜Δｙm｜の大小関係は随時変化し得るものであるから、コントローラ１としては、｜Δｘm｜と｜Δｙm｜の大小関係に応じて図５の構成によって制御を行うか図６の構成によって制御を行うかを自動的に切り替えるようなものを使用することが望ましい。定周期スキャン方法によるデジタル制御を行うコントローラは一般にソフトウェアで実現されるから、このような自動的な切り替えを行える構成とすることは容易である。
【００１５】
以上説明したようにして、各位置決めサイクルにおいて、正確に一直線の軌跡を描く位置指令を生成することが可能になり、これをもとに各軸の剛性の高い位置制御を実施すれば、一直線軌跡を実現できることになる。
【００１６】
【発明の効果】
以上説明したように本発明は、Ｘ軸とＹ軸の一方の位置指令を位置パターンから求め、位置決めサイクルごとの移動距離の比に基づいた積分演算を行って他方の位置指令を算出することにより、各位置決めサイクルにおいて過大加速度を伴わずに、自動的に、正確な一直線の軌跡を描く制御系を実現することができるという効果がある。
【図面の簡単な説明】
【図１】ポイント・ツー・ポイント制御による位置決めを説明する図である。
【図２】ポイント・ツー・ポイント制御による通常の位置決め制御系を示すブロック線図である。
【図３】従来のＸＹ軸位置決めシステムの構成を示すブロック線図である。
【図４】一直線の軌跡を描かせるときの各軸の速度指令と位置指令との関係を示すグラフである。
【図５】本発明の実施の一形態の直線補間方法（｜Δｘｍ｜≧｜Δｙｍ｜の場合）が適用されるＸＹ軸位置決めシステムの構成を示すブロック線図である。
【図６】本発明の実施の一形態の直線補間方法（｜Δｘｍ｜＜｜Δｙｍ｜の場合）が適用されるＸＹ軸位置決めシステムの構成を示すブロック線図である。
【符号の説明】
１    コントローラ
２，２１，２２    サーボドライバ
３，３１，３２    サーボモータ
４，４１，４２    パルスジェネレータ
１０，１０１，１０２，２３      減算器
１１，１１１，１１２    乗算器
１２，１２１，１２２    Ｄ／Ａ変換器
１３，１３１，１３２    カウンタ
１４，１４１，１４２    位置パターン発生器
２０    目標位置データ
２１    微分回路
２２    遅延素子
２４    積分回路
２５    加算器
Ｋｐ，Ｋｐ１，Ｋｐ２      位置制御ゲイン
ｘ（ｎ），ｙ（ｎ）      スキャンごとの位置指令
δｘ（ｎ），δｙ（ｎ）      位置指令の増分値
【図１】
0003608587.tif 000003
【図２】
0003608587.tif 000004
【図３】
0003608587.tif 000005
【図４】
0003608587.tif 000006
【図５】
0003608587.tif 000007
【図６】
0003608587.tif 000008