(57)【要約】【課題】サーボモータの反転前後における加速度が変わる場合にも、円滑に加工する。【解決手段】サーボモータ（１１、１２）を制御するサーボモータ制御装置（１０）は、サーボモータの速度指令を所定周期毎に作成する速度指令作成部（２１）と、サーボモータの反転を所定周期毎に検出する反転検出部（２２）と、反転検出部が反転を検出した場合に、サーボモータの反転によるサーボモータの遅れを補正する反転補正量を計算する反転補正量計算部（２７）と、速度指令作成部が作成した速度指令に基づいて加速度指令を所定周期毎に計算する加速度指令計算部（２３）と、サーボモータの反転が検出された直前および直後における加速度指令を保持する反転直前加速度指令保持部（２５）および反転直後加速度指令保持部と（２６）、加速度指令と反転直前加速度と反転直後加速度とのうちのいずれか二つに基づいて、反転補正量を調整する調整部（２８）とを含む。【選択図】図２
2010098822.tif 000002
【特許請求の範囲】
【請求項１】
サーボモータを制御するサーボモータ制御装置において、
前記サーボモータの速度指令を所定周期毎に作成する速度指令作成部と、
前記サーボモータの反転を所定周期毎に検出する反転検出部と、
前記反転検出部が反転を検出した場合に、前記サーボモータの反転による前記サーボモータの遅れを補正する反転補正量を計算する反転補正量計算部と、
前記速度指令作成部が作成した速度指令に基づいて前記サーボモータの加速度指令を所定周期毎に計算する加速度指令計算部と、
前記反転検出部が前記サーボモータの反転を検出した直前における前記加速度指令を保持する反転直前加速度指令保持部と、
前記反転検出部が前記サーボモータの反転を検出した直後における前記加速度指令を保持する反転直後加速度指令保持部と、
前記加速度指令計算部により計算された前記加速度指令と前記反転直前加速度指令保持部により保持される反転直前加速度と前記反転直後加速度指令保持部により保持される反転直後加速度とのうちのいずれか二つに基づいて、前記反転補正量を調整する調整部とを具備するサーボモータ制御装置。
【請求項２】
前記調整部は、前記反転直後加速度を前記反転直前加速度で除算した値の平方根を前記反転補正量に乗算することにより、前記反転補正量を調整するようにした、請求項１に記載のサーボモータ制御装置。
【請求項３】
前記調整部は、前記反転直後加速度を前記反転直前加速度で除算した値にゼロより大きくて１以下の第一定数を乗算した値を前記反転補正量に乗算することにより、前記反転補正量を調整するようにした、請求項１に記載のサーボモータ制御装置。
【請求項４】
前記調整部は、前記加速度指令を前記反転直前加速度で除算した値の平方根を前記反転補正量に乗算することにより、前記反転補正量を調整するようにした、請求項１に記載のサーボモータ制御装置。
【請求項５】
前記調整部は、前記加速度指令を前記反転直前加速度で除算した値にゼロより大きくて１以下の第二定数を乗算した値を前記反転補正量に乗算することにより、前記反転補正量を調整するようにした、請求項１に記載のサーボモータ制御装置。
【請求項６】
前記加速度指令が前記反転直前加速度にゼロより大きくて１以下の第三定数を乗算した値以下の場合には、前記調整部は前記反転補正量を調整する、請求項２から５のいずれか一項に記載のサーボモータ制御装置。
【請求項７】
前記加速度指令が前記反転直後加速度にゼロより大きくて１未満の第四定数を乗算した値より小さい場合には、前記調整部は、前記反転補正量にゼロを乗算するようにした、請求項１に記載のサーボモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーボモータ、特に二軸式の工作機械にて用いられる二つのサーボモータのそれぞれを制御するサーボモータ制御装置に関する。
【背景技術】
【０００２】
二軸式の工作機械においては、被加工物が設置された作業台または加工ツールを互いに垂直な二つの方向に移動させることにより、被加工物を所望形状に沿って加工している。図８は、被加工物を円弧状軌跡に沿って切削加工する場合の制御加工誤差を示す図である。図８においては、円弧状軌跡の中心を原点にしている。また、図８においては、作業台または加工ツール（以下、「加工ツール等」と省略する）は、Ｘ軸動作用の第一サーボモータおよびＹ軸動作用の第二サーボモータにより時計回りに回転されるものとする。図８における実線は被加工物の加工プログラムに応じて定まる加工ツール等の位置指令であり、破線は位置の実測値である。
【０００３】
例えば、図８の第Ｉ象限においては、加工ツール等がプラスＸ軸方向およびマイナスＹ軸方向に移動するように第一サーボモータおよび第二サーボモータがそれぞれ回転する。そして、第Ｉ象限から第ＩＶ象限に移行するときには、第二サーボモータは同様に駆動されつつ、第一サーボモータは、加工ツール等がマイナスＸ軸方向に移動するように反転される。
【０００４】
このとき、第一サーボモータは瞬間的に停止することになるので、第一サーボモータの出力軸は、動摩擦状態から静止摩擦状態を経て再び動摩擦状態になる。このように反転時には摩擦係数の大きい静止摩擦状態を経ると共にサーボモータの伝達系におけるバックラッシの影響を受けるので、第一サーボモータの動作に応答遅れが生じることになる。従って、そのような反転時の応答遅れが図８に示される象限突起Ｐとして実測値に出現する。それゆえ、被加工物を円弧に沿って切削加工する場合には、被加工物が象限突起Ｐに対応する切削箇所において突起が残るなどの問題が発生する。
【０００５】
図８に示されるように被加工物を円弧に沿って切削加工する場合には、反転時であっても加工ツール等の加速度は一定である。特許文献１においては、被加工物を円弧に沿って切削加工する場合に、モータの反転時には、速度制御部を構成する積分要素を所定の関数に基づいて反転させ、その出力値を電流指令値に加えるなどの補正処理が行われている。あるいは、加工ツール等の加速度が一定である場合には、加速度に応じたオーバライドを所定値に乗算した値または所定値自体をサーボモータの速度指令に加算して、速度指令を補正することも行われている。このような補正を行うことにより、反転時におけるバックラッシ等の影響を少なくできるので、象限突起Ｐに対応する箇所における加工不良を少なくできる。
【特許文献１】国際公開第ＷＯ９０／１２４４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、被加工物が複雑な形状の軌跡に沿って加工される場合、例えば軌跡が多数の微小線分から構成される場合には、サーボモータの反転が頻繁に起こる上に、反転前後にて加速度が変化する事態も生ずる。
【０００７】
このような場合には、加速度が一定であるという前提で前述した補正を行ったとしても、反転時におけるバックラッシ等の影響を完全に排除するのが難しい。このため、補正量が小さすぎるために被加工物の加工箇所に凸部が生じたり、補正量が大きすぎるために加工が過大に行われ、加工箇所に傷または凹部が生じるなどの問題が発生する。特に、加工箇所に傷または凹部が生じた場合には、そのような傷などを修正できず、その被加工物が不良品となってしまう。
【０００８】
本発明はこのような事情に鑑みてなされたものであり、サーボモータの反転前後における加速度が変化する場合、例えば複雑な形状の軌跡に沿って被加工物を加工する場合であっても、円滑な加工を行うことのできるサーボモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
前述した目的を達成するために１番目の発明によれば、サーボモータを制御するサーボモータ制御装置において、前記サーボモータの速度指令を所定周期毎に作成する速度指令作成部と、前記サーボモータの反転を所定周期毎に検出する反転検出部と、前記反転検出部が反転を検出した場合に、前記サーボモータの反転による前記サーボモータの遅れを補正する反転補正量を計算する反転補正量計算部と、前記速度指令作成部が作成した速度指令に基づいて前記サーボモータの加速度指令を所定周期毎に計算する加速度指令計算部と、前記反転検出部が前記サーボモータの反転を検出した直前における前記加速度指令を保持する反転直前加速度指令保持部と、前記反転検出部が前記サーボモータの反転を検出した直後における前記加速度指令を保持する反転直後加速度指令保持部と、前記加速度指令計算部により計算された前記加速度指令と前記反転直前加速度指令保持部により保持される反転直前加速度と前記反転直後加速度指令保持部により保持される反転直後加速度とのうちのいずれか二つに基づいて、前記反転補正量を調整する調整部とを具備するサーボモータ制御装置が提供される。
【００１０】
すなわち１番目の発明においては、反転直前加速度および反転直後加速度のうちの少なくとも一方を用いているので、サーボモータの反転に応じた最適な反転補正量を得ることができる。このため、サーボモータの反転前後における加速度が変化する場合であっても、円滑な加工を行うことができる。
【００１１】
２番目の発明によれば、１番目の発明において、前記調整部は、前記反転直後加速度を前記反転直前加速度で除算した値の平方根を前記反転補正量に乗算することにより、前記反転補正量を調整するようにした。
３番目の発明によれば、１番目の発明において、前記調整部は、前記反転直後加速度を前記反転直前加速度で除算した値にゼロより大きくて１以下の第一定数を乗算した値を前記反転補正量に乗算することにより、前記反転補正量を調整するようにした。
すなわち２番目および３番目の発明において、反転直後加速度指令が反転直前加速度指令よりも小さい場合には反転補正量を小さくすることができる。従って、加工が過大に行われることが原因で傷または凹部が生じるのを比較的簡易な手法により回避することができる。
【００１２】
４番目の発明によれば、１番目の発明において、前記調整部は、前記加速度指令を前記反転直前加速度で除算した値の平方根を前記反転補正量に乗算することにより、前記反転補正量を調整するようにした。
５番目の発明によれば、１番目の発明において、前記調整部は、前記加速度指令を前記反転直前加速度で除算した値にゼロより大きくて１以下の第二定数を乗算した値を前記反転補正量に乗算することにより、前記反転補正量を調整するようにした。
すなわち４番目および５番目の発明においては、最新の加速度指令が用いられる。従って、反転検出後に加速度指令が変化する場合には、反転補正量は加速度指令に応じて調整され続ける。４番目および５番目の発明は、加速度指令が頻繁に変化する場合、例えば加工の軌跡が多数の微小線分から構成される場合に特に有利である。
【００１３】
６番目の発明によれば、２番目から５番目の発明において、前記加速度指令が前記反転直前加速度にゼロより大きくて１以下の第三定数を乗算した値以下の場合には、前記調整部は前記反転補正量を調整する。
反転補正量が大きくなるように調整された場合には被加工物に傷または凹部が生じる可能性がある。しかしながら、６番目の発明においては、加速度指令が反転直前加速度より小さい場合にのみ、反転補正量を調整するようにしている。従って、加工が過大に行われることが原因で被加工物に傷または凹部が生じるような加工が行われるのを回避できる。なお、第三定数は、加速度指令および反転直前加速度とそれらの理想値との間の誤差が小さい場合には０．９から１の間、そのような誤差が大きい場合には０．７５程度であるのが好ましい。
【００１４】
７番目の発明によれば、１番目の発明において、前記加速度指令が前記反転直後加速度にゼロより大きくて１未満の第四定数を乗算した値より小さい場合には、前記調整部は、前記反転補正量にゼロを乗算するようにした。
加速度指令が反転直後加速度よりも小さくなる場合には、サーボモータの出力軸は減速状態から反転して加速状態となり再び減速状態になる動作を行っている。この場合には、反転を検出した直後に再び反転になる可能性が高く、そのような場合には、反転補正量を調整しないほうが円滑な加工を行えると判断できる。それゆえ、７番目の発明においては、加速度指令が反転直後加速度よりも大幅に小さい場合には反転補正量を調整しないようにし、被加工物に傷または凹部が生じるような加工が行われるのを回避できる。７番目の発明は、サーボモータの反転が連続して行われうる、複雑な形状の軌跡に沿って被加工物を加工する場合に特に有利である。なお、第四定数は、比較的小さな値、例えば０．２から０．５程度であるのが好ましい。
【発明を実施するための最良の形態】
【００１５】
以下、添付図面を参照して本発明の実施形態を説明する。以下の図面において同様の部材には同様の参照符号が付けられている。理解を容易にするために、これら図面は縮尺を適宜変更している。
図１は、本発明のサーボモータ制御装置を含む工作機械の略図である。図１に示されるように工作機械１は、作業台１９と、作業台１９に固定された被加工物Ｗに加工を施す加工ツール１８とを含んでいる。図１に示される工作機械１は二軸式であり、作業台１９をＸ軸およびＹ軸方向にそれぞれ移動させる第一サーボモータ１１および第二サーボモータ１２を含んでいる。
【００１６】
図示されるように、第一サーボモータ１１および第二サーボモータ１２はサーボモータ制御装置１０に接続されていて、サーボモータ制御装置１０によって制御される。図１においては、加工ツール１８もサーボモータ制御装置１０に同様に接続されている。加工ツール１８は、例えばドリルまたは溶接トーチなどでありうる。なお、作業台１９が固定されていて、加工ツール１８がＸ軸およびＹ軸方向に移動する構成であってもよい。
【００１７】
また、第一サーボモータ１１および第二サーボモータ１２にはエンコーダ１５、１６が備えられている。これらエンコーダ１５、１６はそれぞれのサーボモータ１１、１２の出力軸の位置を所定周期毎に検出する。所定周期毎に検出された位置データに基づいて出力軸の検出速度Ｄｖが求められる。従って、これらエンコーダ１５、１６は速度検出部としての役目を果たす。
【００１８】
図２は本発明のサーボモータ制御装置１０の一部分を示すブロック図である。図２に示されるように、サーボモータ制御装置１０は、第一および第二のサーボモータ１１、１２のそれぞれの速度指令Ｃｖを所定周期毎に作成する速度指令作成部２１と、第一および第二のサーボモータ１１、１２のそれぞれの回転方向における反転を所定周期毎に検出する反転検出部２２とを含んでいる。
【００１９】
反転検出部２２は、速度指令作成部２１により作成された速度指令Ｃｖの符号の変化に基づいて第一および第二のサーボモータ１１、１２の反転を検出する。なお、反転検出部２２が、例えばエンコーダ１５、１６から得られた検出速度Ｄｖに基づいて反転を検出してもよい。
【００２０】
サーボモータ１１、１２が反転したときにはバックラッシの影響によりサーボモータ１１、１２に遅れが生ずる。そのような遅れを補正する目的で、サーボモータ制御装置１０は、サーボモータ１１、１２の反転によるそれぞれのサーボモータ１１、１２の遅れを補正する反転補正量Ａ０を計算する反転補正量計算部２７を含んでいる。反転補正量計算部２７により計算される反転補正量Ａ０は、例えば各種パラメータから得られる固定値、もしくはそのような固定値にサーボモータ１１、１２の加速度によるオーバライドを乗算した値である。反転補正量計算部２７は、反転時における加速度が一定であるという前提で反転補正量Ａ０を作成される。
【００２１】
さらに、図２に示されるように、サーボモータ制御装置１０は、速度指令作成部２１が作成した速度指令Ｃｖに基づいてサーボモータ１１、１２の加速度指令Ｃａを所定周期毎に計算する加速度指令計算部２３と、反転検出部２２がサーボモータ１１、１２の反転を検出した直前における加速度指令Ｃａｂを保持する反転直前加速度指令保持部２５と、反転を検出した直後における加速度指令Ｃａａを保持する反転直後加速度指令保持部２６とをさらに含んでいる。
【００２２】
反転直前加速度指令保持部２５および反転直後加速度指令保持部２６は例えばＲＡＭであり、反転直前および反転直後の加速度指令Ｃａをそれぞれ一時的に記憶できる。そして、反転直前加速度指令Ｃａｂは、反転検出時よりも一周期分前の加速度指令Ｃａである。あるいは、反転直前加速度指令Ｃａｂは、反転検出時における速度指令Ｃｖと反転検出時よりも一周期分前の速度指令Ｃｖに基づいて改めて計算してもよい。
【００２３】
また、反転直後加速度指令Ｃａａは、反転検出時よりも一周期分後の加速度指令Ｃａである。なお、反転検出時に、将来の速度指令Ｃｖが既に作成されている場合には、複数の将来の速度指令Ｃｖから反転直後加速度指令Ｃａａを算出する。あるいは、反転検出から所定時間経過後に作成された加速度指令Ｃａを反転直後加速度指令Ｃａａとして採用するようにしてもよい。
【００２４】
さらに、サーボモータ制御装置１０は、加速度指令Ｃａと反転直前加速度指令Ｃａｂと反転直後加速度指令Ｃａａとのうちのいずれか二つに基づいて、反転補正量Ａ０を調整して調整後反転補正量Ａ１を出力する調整部２８を含んでいる。
【００２５】
また、図２から分かるように、調整部２８から出力される調整後反転補正量Ａ１は速度指令Ｃｖに加算され、それにより、反転時の応答遅れが補正されるようになる。そして、検出速度Ｄｖと新たな速度指令Ｃｖとの間の速度偏差ΔＶが速度制御ループ２９に入力される。速度制御ループ２９は公知の手法によりサーボモータ１１、１２の電流指令Ｉをそれぞれ作成し、それら電流指令Ｉに基づいてサーボモータ１１、１２が駆動される。
【００２６】
具体的には、速度制御ループ２９においては、速度偏差ΔＶに速度制御ループ比例ゲインが乗算されて速度制御ループ比例項が算出されると共に、速度偏差ΔＶの積分値に速度制御ループ積分ゲインを乗算することにより速度制御ループ積分項が算出される。そして、これら速度制御ループ比例項と速度制御ループ積分項との和からサーボモータ１１、１２の電流指令Ｉがそれぞれ作成される。
【００２７】
図３および図４は、本発明の第一の実施形態に基づくサーボモータ制御装置の動作を示すフローチャートである。これら図面に示される動作プログラム１００はサーボモータ制御装置１０の記憶部（図示しない）に予め記憶されているものとする。また、工作機械１により被加工物Ｗを加工するときには、動作プログラム１００がサーボモータ１１、１２のそれぞれに対して繰返し実施されるものとする。以下、図３および図４を参照しつつ、本発明の第一の実施形態を説明する。
【００２８】
動作プログラム１００のステップ１０１においては、速度指令作成部２１がサーボモータ１１、１２の所定周期毎のそれぞれの速度指令Ｃｖを作成する。被加工物Ｗの加工内容のデータは加工プログラムとしてサーボモータ制御装置１０に予め記憶されているので、サーボモータ１１、１２のそれぞれの速度指令Ｃｖは被加工物Ｗの加工内容に応じて作成される。
【００２９】
次いで、ステップ１０２において、加速度指令計算部２３が、速度指令Ｃｖに基づいて、サーボモータ１１、１２の加速度指令Ｃａを所定周期毎にそれぞれ計算する。そして、ステップ１０３において、反転検出部２２が速度指令Ｃｖに基づいて、サーボモータ１１、１２の反転を検出する。
【００３０】
反転が検出された場合には、ステップ１０４に進み、反転検出フラグを立てると共に、反転後カウンタＮに「０」を入力する。反転後カウンタは、後述する反転補正量Ａ０の調整（ステップ１２０）を反転検出時から一定時間内においてのみ行うために必要とされる。その後、ステップ１０５において、反転補正量計算部２７が前述した手法により反転補正量Ａ０を算出する。さらに、反転直前加速度指令保持部２５が反転検出時よりも一周期分前の加速度指令Ｃａを反転直前加速度指令Ｃａｂとして保存し、反転直後加速度指令保持部２６が反転検出時よりも一周期分後の加速度指令Ｃａを反転直前加速度指令Ｃａａとして保存する（ステップ１０６、ステップ１０７）。なお、ステップ１０３において反転が検出されなかった場合には、ステップ１０７の次のステップまで進む。
【００３１】
次いで、図４のステップ１１０において反転検出フラグが１であるか否かが判定される。反転フラグがゼロである場合には、反転が検出されてから或る程度の時間が経過しており、反転補正量Ａ１の再計算を停止させる。
【００３２】
一方、ステップ１１０において反転検出フラグが１である場合には、反転が検出されてから一定時間内に在るといえるので、ステップ１２０に進んで、調整部２８によって反転補正量Ａ０を調整する。ステップ１２０においては、加速度指令Ｃａ、反転直前加速度指令Ｃａｂおよび反転直前加速度指令Ｃａａのうちのいずれか二つに基づいて、反転補正量Ａ０が調整部２８により調整され、調整後反転補正量Ａ１が算出される。
【００３３】
以下、調整後反転補正量Ａ１を算出する四通りの手法について説明する。
第一の手法においては、式（１）に示されるように、反転直後加速度指令Ｃａａを反転直前加速度指令Ｃａｂで除算した値の平方根を反転補正量Ａ０に乗算することにより、調整後反転補正量Ａ１が算出される。
Ａ１＝Ａ０×√（Ｃａａ／Ｃａｂ）                                    （１）
【００３４】
従って、反転直後加速度指令Ｃａａが反転直前加速度指令Ｃａｂよりも大きい場合には調整後反転補正量Ａ１は調整前の反転補正量Ａ０よりも大きくなり、また、反転直後加速度指令Ｃａａが反転直前加速度指令Ｃａｂよりも小さい場合には調整後反転補正量Ａ１は調整前の反転補正量Ａ０よりも小さくなる。従って、後者の場合には、従来では大きい反転補正量Ａ０によって加工が過大に行われて被加工物Ｗに傷または凹部が生じていたのを比較的簡易な手法により回避することが可能となる。
【００３５】
また、第二の手法においては、式（２）に示されるように、反転直後加速度指令Ｃａａを反転直前加速度指令Ｃａｂで除算した値に第一定数Ｋ１（０＜Ｋ１≦１）および反転補正量Ａ０を乗算することにより、調整後反転補正量Ａ１が算出される。
Ａ１＝Ａ０×（Ｃａａ／Ｃａｂ）×Ｋ１                                （２）
【００３６】
この場合にも、反転直後加速度指令Ｃａａが反転直前加速度指令Ｃａｂよりも大きい場合には調整後反転補正量Ａ１は調整前の反転補正量Ａ０よりも大きくなり、また、反転直後加速度指令Ｃａａが反転直前加速度指令Ｃａｂよりも小さい場合には調整後反転補正量Ａ１は調整前の反転補正量Ａ０よりも小さくなる。従って、第二の手法においても、第一の手法と概ね同様な効果を得ることができる。
【００３７】
さらに、第三の手法においては、式（３）に示されるように、最新の加速度指令Ｃａを反転直前加速度指令Ｃａｂで除算した値の平方根を反転補正量Ａ０に乗算することにより、調整後反転補正量Ａ１が算出される。
Ａ１＝Ａ０×√（Ｃａ／Ｃａｂ）                                    式（３）
【００３８】
例えば被加工物Ｗを加工する軌跡が多数の微小線分から構成される場合には、反転検出後においても加速度指令Ｃａが変化し続ける。従って、反転補正量Ａ０の調整時に加速度指令Ｃａを採用することにより、反転補正量Ａ０は加工軌跡に応じた最新の加速度指令Ｃａに応じて調整し続けることができる。それゆえ、第三の手法は、加速度指令Ｃａが高頻度で変化する場合、例えば加工の軌跡が多数の微小線分から構成される場合に特に有利である。
【００３９】
さらに、第四の手法においては、式（４）に示されるように、最新の加速度指令Ｃａを反転直前加速度指令Ｃａｂで除算した値に第二定数Ｋ２（０＜Ｋ２≦１）および反転補正量Ａ０を乗算することにより、調整後反転補正量Ａ１が算出される。なお、第二定数Ｋ２は第一定数Ｋ１と同じ値であってもよい。
Ａ１＝Ａ０×（Ｃａ／Ｃａｂ）×Ｋ２                                式（４）
この場合にも、最新の加速度指令Ｃａを用いているので、第三の手法と概ね同様な効果が得られるのは明らかであろう。
【００４０】
前述した第一から第四の手法のいずれかにより調整後反転補正量Ａ１が算出されると、ステップ１２１において、反転後カウンタＮが所定の閾値ＮＡよりも大きいか否かが判定される。反転後カウンタＮが閾値ＮＡよりも大きい場合には、調整後反転補正量Ａ１を使用するのに十分な時間が経過したと判断されるので、ステップ１２２において、反転検出フラグをクリアする。一方、反転後カウンタＮが閾値ＮＡよりも大きくない場合には、反転検出フラグはクリアされず、ステップ１２５において、反転後カウンタＮに「１」を追加する。
【００４１】
その後、ステップ１２３において、速度指令Ｃｖに調整後反転補正量Ａ１を追加して、速度指令Ｃｖを補正する。次いで、新たな速度指令Ｃｖに基づいて、電流指令Ｉを作成し、その電流指令に基づいて、サーボモータ１１、１２が駆動される。その後、ステップ１０１に戻り、被加工物Ｗの加工が完了するまで前述した処理を繰返す。
【００４２】
このように本発明においては、反転直前加速度指令Ｃａｂおよび反転直後加速度指令Ｃａａのうちの少なくとも一方を用いて調整後反転補正量Ａ１を算出している。従って、サーボモータの反転前後における加速度が変化するような複雑な形状の軌跡に沿って被加工物を加工する場合であっても、サーボモータの反転時における加速度の変化に応じた最適な調整後反転補正量Ａ１を得ることができる。それゆえ、調整後反転補正量Ａ１が加算された新たな速度指令Ｃｖに基づいてサーボモータ１１、１２を駆動させれば、反転時におけるバックラッシ等の影響を小さくできる。その結果、本発明においては、被加工物Ｗの加工箇所に凸部および凹部または傷が生じることなしに、被加工物Ｗを円滑に加工することが可能となる。
【００４３】
図５は、本発明の第二の実施形態に基づくサーボモータ制御装置の動作を示すフローチャートである。第二の実施形態におけるステップ１０１からステップ１０７までは前述したのと概ね同様であるので、それらの図示および説明を省略する。
【００４４】
速度指令作成部２１による速度指令Ｃｖの実際の作成が図３のステップ１０１における処理よりも早く且つ速度指令Ｃｖが記憶部（図示しない）に順次記憶される場合には、反転検出時に反転直前加速度指令Ｃａｂおよび反転直後加速度指令Ｃａａの両方を取得することができる。しかしながら、速度指令Ｃｖの実際の作成が図３のステップ１０１のときに行われている場合には、反転検出の直後においては反転直後加速度指令Ｃａａを取得できない事態が生ずる。
【００４５】
そのような場合には第二の実施形態のステップ１０８において、現在の処理が、反転が検出されてから所定数ｎ回目の処理であるか否かが判定される。具体的には、第二の実施形態における「ＳＴＡＲＴ」から「ＥＮＤ」までの一連の処理が、反転が検出されてから何回実施されたかが検出される。
【００４６】
そして、その処理回数が所定数ｎである場合には、その時点における速度指令Ｃｖに基づいて反転直後加速度指令Ｃａａが作成され、反転直後加速度指令保持部２６に保持される（ステップ１０９）。所定数ｎは、反転直後加速度指令Ｃａａを得るのに使用される速度指令Ｃｖが作成されるのに十分な時間が経過したと判断できる処理回数である。所定数ｎはサーボモータ制御装置１０の処理能力などに応じて予め定められている。なお、ステップ１０７において反転直後加速度指令Ｃａａが既に保持されている場合には、ステップ１０９において、反転直後加速度指令Ｃａａは新たな反転直後加速度指令Ｃａａに更新される。
【００４７】
一方、ステップ１０８において、現在の処理が、反転が検出されてから所定数ｎ回目の処理でない場合には、ステップ１０７の反転直後加速度指令Ｃａａがそのまま採用される。残りのステップ１１０〜ステップ１２６は第一の実施形態のと同様であるので、説明を省略する。第二の実施形態においても第一の実施形態と同様な効果が得られ、また、第二の実施形態においては、速度指令Ｃｖの実際の作成がそれほど早くない場合に有利であるのが分かるであろう。
【００４８】
図６は、本発明の第三の実施形態に基づくサーボモータ制御装置の動作を示すフローチャートである。第三の実施形態におけるステップ１０１からステップ１１０までは第一の実施形態と概ね同様であるので、それらの図示および説明を省略する。
【００４９】
反転補正量Ａ０が小さくなるように調整された場合と、反転補正量Ａ０が大きくなるように調整された場合とを比較すると、反転補正量Ａ０が大きくなるように調整された場合には、被加工物Ｗの表面に傷または凹部が生じる危険性がある。図６に示される第三の実施形態においては、ステップ１１１において、反転直前加速度指令Ｃａｂに第三定数Ｋ３（０＜Ｋ３≦１）を乗算した値と加速度指令Ｃａとを比較する。
【００５０】
第三定数Ｋ３は例えば０．９から１の間であり、理想的には第三定数Ｋ３は１である。ただし、加速度指令Ｃａおよび反転直前加速度指令Ｃａｂとそれらの理想値との間の誤差が比較的大きい場合には、第三定数Ｋ３は０．７５程度であるのが好ましい。これにより、誤差の影響が排除された上で、ステップ１１１の判定を行うことができる。
【００５１】
ステップ１１１において加速度指令Ｃａが、反転直前加速度指令Ｃａｂに第三定数Ｋ３を乗算した値以下である場合には、ステップ１２０に進んで、前述した手法により反転補正量Ａ０を調整する。一方、加速度指令Ｃａが反転直前加速度指令Ｃａｂに第三定数Ｋ３を乗算した値以下でない場合には、反転補正量Ａ０を調整することなしに、ステップ１２１に進む。なお、残りのステップについては、第一の実施形態のステップ１２０〜ステップ１２６と同様であるので、説明を省略する。
【００５２】
つまり、第三の実施形態においては、加速度指令Ｃａが反転直前加速度指令Ｃａｂより小さい場合にのみ、反転補正量Ａ０を調整している。これにより、従来の特性をできる限り保ちつつ、加速度指令Ｃａが反転直前加速度指令Ｃａｂより小さい場合にのみ、反転補正量Ａ０を小さくし、被加工物Ｗが過剰に加工されることを防ぎ、被加工物Ｗの表面に傷または凹部が生ずるのを避けることが可能となる。
【００５３】
このように第三の実施形態においても第一の実施形態と同様な効果が得られ、また、第三の実施形態においては、加速度指令Ｃａが反転直前加速度指令Ｃａｂより小さい場合であっても、被加工物Ｗの表面に傷または凹部が生ずるのを避けられることが分かるであろう。
【００５４】
図７は、本発明の第四の実施形態に基づくサーボモータ制御装置の動作を示すフローチャートである。第四の実施形態におけるステップ１０１からステップ１１０までは第一の実施形態と概ね同様であるので、それらの図示および説明を省略する。
【００５５】
加速度指令Ｃａが反転直後加速度指令Ｃａａよりも小さくなる場合には、サーボモータ１１、１２の出力軸が減速状態から反転して加速状態となり再び減速状態になる動作を行っていると判断できうる。このような状況は、例えば加工の軌跡が多数の微小線分から構成されていて、反転が連続して検出される場合に起こりやすい。そして、このような場合には、反転を検出した直後にサーボモータ１１、１２が再び反転する可能性が高く、従って、反転補正量Ａ０を調整しないほうが却って円滑な加工を行えることになる。
【００５６】
図７に示される第四の実施形態のステップ１２０においては、反転直後加速度指令Ｃａａに第四定数Ｋ４（０＜Ｋ４＜１）を乗算した値と加速度指令Ｃａとを比較する。そして、加速度指令Ｃａが反転直後加速度指令Ｃａａに第四定数Ｋ４を乗算した値よりも小さくない場合には、ステップ１２０に進んで、反転補正量Ａ０を調整する。
【００５７】
一方、加速度指令Ｃａが反転直後加速度指令Ｃａａに第四定数Ｋ４を乗算した値よりも小さい場合には、ステップ１１３において、反転補正量Ａ０にゼロを乗算した値を調整後反転補正量Ａ１として採用する。つまり、第四の実施形態においては、加速度指令Ｃａが反転直後加速度指令Ｃａａよりも大幅に小さい場合には、調整後反転補正量Ａ１をゼロにし、結果的に反転補正量Ａ０を調整しなかったようにしている。従って、被加工物Ｗに傷または凹部が生じるような加工が行われるのを回避できる。
【００５８】
なお、第四定数Ｋ４は、加速度指令Ｃａが反転直後加速度指令Ｃａａよりもわずかに小さい場合において反転補正量Ａ０にゼロが乗算されるのを防止する役目を果たす。従って、第四定数Ｋ４は、比較的小さい値、例えば０．２から０．５程度であるのが好ましい。
【００５９】
第四の実施形態においても第一の実施形態と同様な効果が得られ、また、第四の実施形態においては、加工の軌跡が多数の微小線分から構成されるときに特に有利であるのが分かるであろう。
【図面の簡単な説明】
【００６０】
【図１】本発明のサーボモータ制御装置を含む工作機械の略図である。
【図２】本発明のサーボモータ制御装置の一部分を示すブロック図である。
【図３】本発明の第一の実施形態に基づくサーボモータ制御装置の動作の一部分を示すフローチャートである。
【図４】本発明の第一の実施形態に基づくサーボモータ制御装置の動作の残りの部分を示すフローチャートである。
【図５】本発明の第二の実施形態に基づくサーボモータ制御装置の動作を示す図４と同様なフローチャートである。
【図６】本発明の第三の実施形態に基づくサーボモータ制御装置の動作を示す図４と同様なフローチャートである。
【図７】本発明の第四の実施形態に基づくサーボモータ制御装置の動作を示す図４と同様なフローチャートである。
【図８】被加工物を円弧状の軌跡に沿って切削加工する場合の制御加工誤差を示す図である。
【符号の説明】
【００６１】
１    工作機械
１０    サーボモータ制御装置
１１    第一サーボモータ
１２    第二サーボモータ
１５、１６    エンコーダ
１９    作業台
１８    加工ツール
２１    速度指令作成部
２２    反転検出部
２３    加速度指令計算部
２５    反転直前加速度指令保持部
２６    反転直後加速度指令保持部
２７    反転補正量計算部
２８    調整部
２９    速度制御ループ
Ｃａ    加速度指令
Ｃａｂ    反転直前加速度指令
Ｃａａ    反転直後加速度指令
Ａ０    反転補正量
Ａ１    調整後反転補正量
【図１】
2010098822.tif 000003
【図２】
2010098822.tif 000004
【図３】
2010098822.tif 000005
【図４】
2010098822.tif 000006
【図５】
2010098822.tif 000007
【図６】
2010098822.tif 000008
【図７】
2010098822.tif 000009
【図８】
2010098822.tif 000010