(57)【特許請求の範囲】
【請求項１】
位置ループと該位置ループのマイナーループとして速度ループを有するサーボ制御系において、速度ループに対して外乱推定オブザーバを構成し、該外乱推定オブザーバによりサーボモータの外乱負荷を推定する外乱負荷推定方法において、
サーボモータに実際に流れる実効電流を外乱推定オブザーバへ入力し、
前記実効電流はモータの３相交流の実電流をＤＱ変換して得られるＱ相の直流電流とすることを特徴とするサーボモータの外乱負荷推定方法。
【請求項２】
位置ループと該位置ループのマイナーループとして速度ループを有するサーボ制御系において、速度ループに対して外乱推定オブザーバを構成し、該外乱推定オブザーバによりサーボモータの外乱負荷を推定する外乱負荷推定方法において、
前記外乱推定オブザーバは、サーボモータに実際に流れる実効電流に基づいてモータへの加速度成分を推定し、
該推定加速度と実際のモータ加速度との加速度差を求め、
該加速度差から外乱負荷を推定し、
前記実効電流はモータの３相交流の実電流をＤＱ変換して得られるＱ相の直流電流とすることを特徴とするサーボモータの外乱負荷推定方法。
【請求項３】
位置ループと該位置ループのマイナーループとして速度ループを有するサーボ制御系において、速度ループに対して外乱推定オブザーバを構成し、該外乱推定オブザーバによりサーボモータの外乱負荷を推定する外乱負荷推定方法において、
前記外乱推定オブザーバは、サーボモータに実際に流れる実効電流に基づいてモータへの速度成分を推定し、
該推定速度と実際のモータ速度との速度差を求め、
該速度差から外乱負荷を推定し、
前記実効電流はモータの３相交流の実電流をＤＱ変換して得られるＱ相の直流電流とすることを特徴とするサーボモータの外乱負荷推定方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、工作機械の送り軸やロボットのアーム等の制御に使用されるサーボモータが外界から受ける力を外乱負荷として推定するサーボモータの外乱負荷の推定方法に関する。
【０００２】
【従来の技術】
工作機械の送り軸やロボットのアーム等の制御に使用されるサーボモータの制御において、サーボモータが外界から受ける力をサーボ制御ソフトによって推定し、この推定値を監視することによって機械系の破損等を防止する方式が知られている。図５は従来のサーボモータの外乱負荷推定の概略を説明するためのブロック図である。図５（ａ）において、モータ１０はサーボモータの制御系によって、位置に対する比例制御および速度に対する比例，積分制御によって得られるトルク指令（電流指令）Ｔｃを受け、実トルクＴを出力する。工作機械の送り軸やロボットのアーム等において、サーボモータで駆動される被駆動体が他の物体に衝突したり、工具をワークに抑えすぎる等の何らかの理由でよって移動が阻害れる場合がある。このとき、モータ１０から見ると外部より外乱負荷トルクＴｄが加えられたように見える。従来、トルク指令Ｔｃから推定した加速度と、モータ１０に設けた速度検出器から求められる実加速度とを項１１において差を求め、さらにトルク換算の項１２において加速度の差からトルクに換算した値を推定外乱負荷トルクＴｄ＊として求めている。
【０００３】
図６は従来の推定外乱負荷トルクを求める概略ブロック図である。なお、図６は、加速度の比較によって外乱負荷を推定する場合のブロック図を示している。図６において、サーボモータの制御系を電流ループの項１とモータの伝達関数の項２，３により表し、推定外乱負荷トルクＴｄ＊を求める項を項５，６，７によって表している。ここで、項５は電流指令Ｉｒにパラメータα（モータのトルク定数ＫｔをイナーシャＪｍで除した値）を乗ずる項であり、項６は実速度ｖを微分する微分項であり、項７はパラメータ１／αを乗ずる項である。
【０００４】
図６において、サーボモータの制御系は電流ループ１によってトルク指令Ｔｃを電流指令Ｉｒとし、この電流指令Ｉｒをモータに供給して駆動を行う。推定外乱負荷トルクＴｃを推定するオブサーバは、項５で電流指令Ｉｒにパラメータαを乗じた値（Ｉｒ・α）と、モータの実速度ｖを項６で微分した値ｄｖ／ｄｔの差を求め、この差｛（Ｉｒ・α）−ｄｖ／ｄｔ｝にパラメータ１／αを乗ずる。この値（Ｉｒ−ｄｖ／ｄｔ・Ｊｍ／Ｋｔ）は外乱負荷Ｔｄの推定値Ｔｄ＊を電流値で表したものとなる。
【０００５】
【発明が解決しようとする課題】
従来のサーボモータの外乱負荷推定では、トルク指令と実際にモータが出力するトルクが等しい場合には正しい外乱負荷の値を推定できるが、電圧飽和等によってトルク指令通りのトルクが出力されない場合には正しく外乱負荷を推定することができない。
【０００６】
図７は高速回転時におけるモータの電圧状態を説明する図である。なお、図７に示す電圧状態は直流座標系で示しおり、Ｘ軸方向をｑ相電圧としＹ軸方向をｄ相電圧とし、また、円はサーボアンプのＤＣリンク電圧を示している。サーボアンプは、入力される電流指令Ｉｒに対して駆動電流Ｉをモータに供給して駆動を行う。サーボアンプが供給できる電圧はＤＣリンク電圧に限られ、ＤＣリンク電圧を越える電圧をモータに供給することはできない。一般に、モータの回転に伴い逆起電圧が生じ、モータの端子電圧はこの逆起電圧と電流指令Ｉｒに応じたモータ加速に要する電圧の和となる。この逆起電圧はモータが高速回転となると大きくなり、逆起電圧と電流指令Ｉｒによる電圧との和がＤＣリンク電圧を越える場合がある。このような場合には、モータを駆動するための駆動電流Ｉは、電流指令Ｉｒに対応した電圧を満たすことができなくなり、モータは（Ｉｒ−Ｉ）の電流に対応するトルクが不足することになり、トルク指令通りのトルクが出力されないことになる。
【０００７】
このような場合に、従来の外乱負荷推定方法によって外乱負荷を推定すると、推定した外乱負荷の値中には、本来推定すべき外乱負荷と、トルク指令と実トルクとのトルク差の分とが含まれ、外乱負荷の推定が不正確となる。図５（ｂ）は、従来のサーボモータの外乱負荷推定により、電流飽和等により生じるトルク差を誤差として推定する状態を示している。図５（ｂ）において、トルク指令Ｔｃから推定した加速度と、モータ１０に設けた速度検出器から求められる実加速度とを項１１において差を求め、さらにトルク換算の項１２において加速度の差からトルクに換算した値を推定外乱負荷トルクＴｄ＊として求めると、求めた推定自負トルクＴｄ＊中には、本来推定すべき外乱負荷トルクＴｄに加えて電圧飽和等により生じるトルク指令Ｔｃと実トルクＴとの差（Ｔｃ−Ｔ）が含まれている。このトルク差（Ｔｃ−Ｔ）は、推定外乱負荷における誤差分となる。
【０００８】
そこで、本発明は前記した従来の問題点を解決して、電圧が飽和した場合にも外界からモータに加わる外乱負荷を正確に推定することができるサーボモータの外乱負荷推定方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
本発明は、位置ループと該位置ループのマイナーループとして速度ループを有するサーボ制御系において、速度ループに対して外乱オブザーバを構成し、該外乱推定オブザーバによりサーボモータの外乱負荷を推定する外乱負荷推定方法において、サーボモータに実際に流れる実効電流を外乱推定オブザーバへ入力することによって、前記目的を達成する。
【００１０】
また、本発明は、前記した外乱負荷推定方法において、外乱推定オブザーバは、サーボモータに実際に流れる実効電流に基づいてモータへの加速度成分を推定し、推定加速度と実際のモータ加速度との加速度差を求め、この加速度差から外乱負荷を推定することも、また、サーボモータに実際に流れる実効電流に基づいてモータへの速度成分を推定し、該推定速度と実際のモータ速度との速度差を求め、該速度差から外乱負荷を推定することもできる。
【００１１】
また、サーボモータに実際に流れる実効電流は、モータの３相交流の実電流をＤＱ変換して得られる直流電流により求めることができる。ＤＱ変換は、３相電流を直交するｄ相およびｑ相の２相の直流座標系に変換するものである。ＤＱ変換を用いたサーボモータの２相制御では、２相の直流座標系と回転体の軸とを合わせることによって有効電流の制御を１相の直流電流のみにより行うことができ、該電流はモータに流れる実電流となる。そこで、本発明では、このＤＱ変換により求められる実電流によって、モータに指令される加速度あるいは速度を推定し、この推定値と実際のモータの加速度あるいは速度との差を求め、電圧飽和による誤差分を除去した外乱負荷を推定する。
【００１２】
本発明の外乱負荷推定方法では、サーボモータを駆動する加速度をサーボモータに実際に流れる実効電流に基づいて求める。したがって、高速回転等による電圧飽和によってモータに供給される電流指令が減少し、トルク指令との間に差が生じた場合であっても、実効電流を用いることによって実際にモータに流れる電流を基にした加速度あるいは速度の推定を行うことができる。この推定加速度あるいは速度と実際のモータ加速度あるいは速度との差の中には電圧飽和による誤差分は含まれない。これによって、外界からモータに加わる外乱負荷を正確に推定することができる。
【００１３】
【発明の実施の形態】
以下、本発明の実施の形態を図を参照しながら詳細に説明する。
はじめに、外乱負荷を推定するオブザーバにおいて、加速度の比較によって外乱負荷推定を行う場合について説明する。
【００１４】
図１は本発明の推定外乱負荷トルクを求める概略ブロック線図である。図１のブロック線図は、位置に対して比例制御を行い、速度に対して比例，積分制御を行うサーボモータの制御系に、外乱負荷トルクを推定する推定オブザーバを適用したものである。図中において、サーボモータの制御系は電流ループの項１とモータの伝達関数の項２，３により表し、推定外乱負荷トルクＴｄ＊を求める項を項４，５，６，７によって表している。ここで、項２のＫｔはモータのトルク定数、項３中のＪｍはモータのイナーシャであり、ｓはラプラス演算子である。また、項４は３相交流電流を２相直流電流に変換するＤＱ変換の項を表し、変換行列は以下の行列式Ｃによって表される。なお、式中のθｅはモータの電気角を表している。
【００１５】
【数１】
0003655378.tif 000002
項５は電流指令Ｉｒにパラメータα（モータのトルク定数ＫｔをイナーシャＪｍで除した値）を乗ずる項であり、項６は実速度ｖを微分する微分項であり、項７はパラメータ１／αを乗ずる項である。なお、図１中の一点鎖線は外乱推定オブザーバを示している。
【００１６】
電流ループ１はトルク指令Ｔｃを受け取り、電流指令Ｉｃを形成する。本発明の推定方法では、この電流指令Ｉｃを構成する３相の電流指令Ｉｒ，Ｉｓ，Ｉｔを、ＤＱ変換の項５によって２相の直流電流Ｉｑ（Ｉｄ），に変換する。なお、３相の電流指令Ｉｒ，Ｉｓ，Ｉｔの間には、Ｉｒ＋Ｉｓ＋Ｉｔ＝０の関係があるため、３相の電流指令の内いずれか２相を用いて他の１相を求めることができる。図１では、電流指令Ｉｒ，Ｉｓを電流ループ１から求め、残る電流指令Ｉｔを演算によって求める場合を示しているが、その他の電流の組み合わせとすることもできる。
【００１７】
モータの駆動をｑ相により行う場合には、行列式Ｃによって求めた２相の直流電流Ｉｑ，Ｉｄの内でｑ相電流を用いて加速度を推定する。この加速度の推定は、ｑ相電流Ｉｑにパラメータαを乗ずることによって行うことができる。パラメータαは、モータのトルク定数ＫｔをイナーシャＪｍで除した値とすることができる。
【００１８】
一方、モータに設けた速度検出器（図示しない）から求めたモータ速度ｖを用いて、モータの実加速度を求める。このモータの実加速度は、モータ速度ｖを微分したｄｖ／ｄｔによって求めることができる。
【００１９】
次に、電流指令から推定した加速度α・Ｉｑと実加速度ｄｖ／ｄｔとの差を求める。この加速度の差は、
α・Ｉｑ−ｄｖ／ｄｔ＝（Ｋｔ／Ｊｍ）・Ｉｑ−ｄｖ／ｄｔ        …（２）
となり、この差にパラメータαの逆数１／α＝Ｊｍ／Ｋｔを乗ずると、外乱負荷Ｔｄを電流の単位で推定した推定外乱負荷Ｔｄ＊が得られる。
【００２０】
0003655378.tif 000003
上記推定外乱負荷Ｔｄ＊の式は、電流指令Ｉｒを含まない式であるため、電圧飽和による影響を除去することができる。
【００２１】
次に、本発明の第２の実施の形態について図２を用いて説明する。第２の実施の形態は、外乱負荷を推定するオブザーバにおいて、速度の比較によって外乱負荷推定を行う場合である。
【００２２】
図２は本発明の第２の実施の形態の推定外乱負荷トルクを求める概略ブロック線図である。図２のブロック線図は、図１と同様に、位置に対して比例制御を行い、速度に対して比例，積分制御を行うサーボモータの制御系に、外乱負荷トルクを推定する推定オブザーバを適用したものであり、図中において、サーボモータの制御系は電流ループの項１とモータの伝達関数の項２，３により表し、推定外乱負荷トルクＴｄ＊を求める項を項４，５，６，７によって表している。ここで、項２のＫｔはモータのトルク定数、項３中のＪｍはモータのイナーシャであり、ｓはラプラス演算子である。また、項４は３相交流電流を２相直流電流に変換するＤＱ変換の項を表し、変換行列は前記式（１）で示される行列式Ｃによって表される。
【００２３】
項５は電流指令Ｉｒにパラメータα（モータのトルク定数ＫｔをイナーシャＪｍで除した値）を乗ずる項であり、項２１，２２のＫ３，Ｋ４は外乱推定オブザーバのパラメータであり、項２３は積分項であり、項７はパラメータ１／αを乗ずる項である。なお、図中の一点鎖線は外乱推定オブザーバを示している。
【００２４】
電流ループ１はトルク指令Ｔｃを受け取り、電流指令Ｉｃを形成する。本発明の推定方法では、この電流指令Ｉｃを構成する３相の電流指令Ｉｒ，Ｉｓ，Ｉｔを、ＤＱ変換の項５によって２相の直流電流Ｉｑ（Ｉｄ），に変換する。図２では、電流指令Ｉｒ，Ｉｓを電流ループ１から求め、残る電流指令Ｉｔを演算によって求める場合を示しているが、その他の２つの電流の組み合わせから求めることもできる。
【００２５】
モータの駆動をｑ相により行う場合には、行列式Ｃによって求めた２相の直流電流Ｉｑ，Ｉｄの内でｑ相電流を用いて速度ｖａを推定する。この速度ｖａの推定は、ｑ相電流Ｉｑにパラメータαを乗じ、乗じた値を積分することによって行うことができる。なお、パラメータαは、モータのトルク定数ＫｔをイナーシャＪｍで除した値とすることができる。
【００２６】
一方、モータに設けた速度検出器（図示しない）からモータ速度ｖが求められる。
【００２７】
なお、サーボモータ制御系において、外乱推定オブザーバを解析すると以下のようになる。
【００２８】
0003655378.tif 000004
式（７）から、項７の出力Ｔｄ＊は次式（８）で表される。
【００２９】
0003655378.tif 000005
ここで、式（８）において、パラメータＫ３，Ｋ４を極が安定するよう選択し、項７で（１／α）を乗ずることによって、推定外乱負荷トルクＴｄ＊を求めることができる。
【００３０】
【実施例】
以下、本発明による外乱負荷トルクの推定方法と従来の推定方法との比較を実験結果を用いて説明する。
【００３１】
図３は従来の外乱負荷トルクの推定方法による推定結果を示し、図４は本発明の外乱負荷トルクの推定方法による推定結果を示している。なお、図３および図４の外乱負荷トルクの推定はモータ単体を加速し、モータには外乱負荷が加わっていない場合の結果例であり、モータの実速度ｖと推定外乱負荷トルクＴｄ＊とトルク指令Ｔｃの時間変化を示している。したがって、外乱負荷トルクの推定が正しく行われている場合には、推定外乱負荷トルクＴｄ＊の変化はないことになる。
【００３２】
図３（ａ）はモータの回転速度の目標を９００ｒｐｍとした場合である。この場合には回転速度が充分低速であるため電圧飽和は生じず、推定外乱負荷トルクＴｄ＊の変化は認められず、モータに加わる外乱および電圧飽和による誤差分は認められない。
【００３３】
一方、図３（ｂ）はモータの回転速度の目標を２０００ｒｐｍとした場合である。この場合には回転速度が高速であるため電圧飽和は生じる。そのため、図中の矢印Ａにおいて推定外乱負荷トルクＴｄ＊の変化が認められ、この変化分は推定外乱負荷トルクＴｄ＊の誤差分となる。
【００３４】
これに対して、図４に示す本発明の第１の実施の形態を適用した外乱負荷トルクの推定方法で、モータの回転速度の目標を２０００ｒｐｍとした場合の推定結果である。この場合の推定外乱負荷トルクＴｄ＊に変動はほぼ認められず、モータに加わる外乱および電圧飽和による誤差分は認められない。したがって、本発明の外乱負荷トルクの推定方法によれば、電圧飽和による推定誤差を除去することができる。
【００３５】
【発明の効果】
以上説明したように、本発明によれば、電圧が飽和した場合にも外界からモータに加わる外乱負荷を正確に推定することができるサーボモータの外乱負荷推定方法を提供することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態による推定外乱負荷トルクを求める概略ブロック図である。
【図２】本発明の第２の実施の形態による推定外乱負荷トルクを求める概略ブロック図である。
【図３】従来の外乱負荷トルクの推定方法による推定結果図である。
【図４】本発明の第１の実施の形態を適用した外乱負荷トルクの推定方法による推定結果図である。
【図５】従来のサーボモータの外乱負荷推定の概略を説明するためのブロック図である。
【図６】従来の推定外乱負荷トルクを求める概略ブロック図である。
【図７】高速回転時におけるモータの電圧状態を説明する図である。
【符号の説明】
１  電流ループ
２  モータのトルク定数の項
３  モータのイナーシャの項
４  ＤＱ変換の項
５  加速度を推定するパラメータαの項
６  加速度を求める微分項
７  推定外乱負荷トルクを求めるパラメータ１／αの項
【図１】
0003655378.tif 000006
【図２】
0003655378.tif 000007
【図３】
0003655378.tif 000008
【図４】
0003655378.tif 000009
【図５】
0003655378.tif 000010
【図６】
0003655378.tif 000011
【図７】
0003655378.tif 000012