(57)【特許請求の範囲】
【請求項１】
少なくとも速度制御を含むサーボモータの制御を行う制御装置において、
サーボモータの制御状態に応じたトルク定数の低下分を補償した補正トルク指令をトルク指令に基づいて形成し、速度制御におけるトルク定数を一定に保持するトルク補正手段を備える、サーボモータの制御装置。
【請求項２】
少なくとも速度制御を含むサーボモータの制御を行う制御装置において、
サーボモータの制御状態に応じたトルク定数の低下分を補償する補正トルクをトルク指令に基づいて形成し、当該補正トルクをトルク指令に重畳して補正トルク指令を形成し、速度制御におけるトルク定数を一定に保持するトルク補正手段を備える、サーボモータの制御装置。
【請求項３】
前記補正トルクは、トルク指令に対する実電流振幅特性において、トルク指令又は実電流振幅値をパラメータとする値である、請求項２記載のサーボモータの制御装置。
【請求項４】
前記補正トルクは、トルク指令に対する実電流振幅特性において、トルク指令又は実電流振幅値を、トルク定数が一定の場合のトルク指令又は実電流振幅値に変換する、トルク定数の低下分の倍率である、請求項３記載のサーボモータの制御装置。
【請求項５】
前記補正トルク指令は、トルク指令に対する出力トルク特性において、トルク定数が一定の場合のトルク指令に対する出力トルクを得るためのトルク指令である、請求項１記載のサーボモータの制御装置。
【請求項６】
前記補正トルクは、トルク指令に対する実電流振幅特性において、トルク指令及び速度をパラメータとし、該パラメータを含む関数として備える、請求項３記載のサーボモータの制御装置。
【請求項７】
前記補正トルクは、トルク指令に対する実電流振幅特性において、トルク指令及び速度をパラメータとし、該パラメータを含むデータテーブルとして備える、請求項３記載のサーボモータの制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、工作機械や産業機械の送り軸、あるいはロボットのアーム等の駆動源として用いられるサーボモータの制御装置に関する。
【０００２】
【従来の技術】
工作機械や産業機械の送り軸、あるいはロボットのアーム等の駆動源として用いられるサーボモータの制御において、従来速度ループ制御や位置ループ制御が行われている。
【０００３】
図１４，１５はサーボモータの位置ループ制御系、及び速度ループ制御系の一構成を説明するためのブロック図である。
図１４のサーボモータの位置ループ制御系において、１１は位置制御部でＫｐは位置ループゲインである。又、１２は速度制御部で図１５に示すような速度ループにより構成される。１４は速度を積分して位置を求める項を示している。図１５のサーボモータの速度ループ制御系において、１５は積分ゲインＫ１を持つ積分項であり、１６は比例ゲインＫ２を持つ比例項であり、１７はモータ，機械系を示している。
【０００４】
サーボモータの位置ループ制御系において、数値制御装置（ＮＣ）から出力される位置指令（ＭＣＭＤ）から位置検出器等で検出される位置を減じて位置偏差を求め、該位置偏差に位置ループゲインＫｐを乗じて速度指令を求める。サーボモータの速度ループ制御系では、速度指令から速度検出器等で検出される実速度を減じて速度偏差を求め、該速度偏差を積分項１５で積分するとともに積分値に積分ゲインＫ１を乗じ、実速度に比例ゲインＫ２を乗じた値を減算してトルク指令（電流指令）を求め、このトルク指令に基づいて（さらには電流ループ制御を行って）サーボモータを駆動することが、行われている。
又、位置ループ制御を行わず、速度ループ制御のみのサーボモータの制御も行われている。
【０００５】
【発明が解決しようとする課題】
サーボモータにおいて、速度制御を行う場合、トルク指令と実際にモータから出力される実トルクとの間の関係を表す変換定数は、一般にトルク定数と呼ばれている。ＡＣサーボモータを用いて速度制御を行う場合、通常、トルク定数は速度や電流値にかかわらず一定であるとして速度制御系を構成している。なお、位置制御の場合であっても、位置ループのマイナーループに速度制御が含まれているため、この速度制御系は速度制御のみに限らず、位置制御の場合も含んでいる。
【０００６】
しかしながら、実際にはトルク定数は一定とは限らず、サーボモータに流れる電流値や電流制御回路の位相補正等の影響によって、トルク定数は一定とならない。
【０００７】
特に、大電流時において、サーボモータのステータには、ロータからの磁束とステータ側の磁束が重なって磁気飽和が発生し、トルク指令がより大きなトルクを要求しても、それ以上の磁束増加を行うことができず、トルクを増加させることができないことになり、トルク指令に対して発生トルクが低下するという問題がある。この大電流時における発生トルクの低下は、加工精度にも影響することになる。
【０００８】
図１６は、上記したトルク定数が一定でないことによる、加工精度の影響を示す図である。図１６（ａ），（ｂ），（ｃ），（ｄ）は、円弧半径１００ｍｍ、接線方向の送り速度はそれぞれ３００００ｍｍ／ｍｉｎ，４００００ｍｍ／ｍｉｎ，５００００ｍｍ／ｍｉｎ，及び６００００ｍｍ／ｍｉｎの条件において、指令に対する誤差を示している。なお、図において、周方向の１目盛りは２０μｍを表している。
図１６は、送り速度が高くなるほど（サーボモータの電流が増加するほど）、指令からの誤差が増加することを示している。
【０００９】
図１７は、工作機械に使用されるサーボモータの電流値（トルク指令）と出力トルクとの関係を示すグラフである。なお、測定に使用したサーボモータは、最大電流１３０Ａのアンプによって駆動されるものである。図１７に示すように、入力電流が０から６０Ａの間では、電流値と出力トルクとは直線関係にあり、トルク定数は一定に保たれているが、電流値が増加するに従って、入力電流に対して出力トルクの割合が低下し、トルク定数が低下している。
【００１０】
一方、速度ループゲインは、各制御時間において、トルク指令を微笑に増加させた場合の実際のトルクの増加の程度を表しており、図１７では特性曲線の微分値となる。従って、トルク定数の低下は、速度制御の側から見ると、速度ループゲインの実効値が下がることを意味している。
【００１１】
なお、図１７では、２つの測定（図中の三角印及び菱形印）による特性曲線と、トルク定数が一定に場合の直線を示している。
そのため、トルク定数が変化すると、大電流時に、外乱トルクに対するサーボ剛性の低下により形状誤差が増大したり、又、トルク指令が低電流から大電流に連続的に増加する場合、低電流時と大電流時で速度ループの応答性が異なることによって、さらに形状誤差が増大することになる。
【００１２】
従来のように、トルク定数が一定であるという条件で、上記の問題を解決する最も有効な対処は速度ループゲインを上げることであるが、低電流域で速度ループゲインが高く設定されるため、物理的な発振限界を超えて発振を起こすという問題がある。
【００１３】
そこで、本発明は従来のサーボモータ制御の持つ問題点を解決し、速度制御において、サーボモータのトルク定数を一定に保つことができるサーボモータの制御装置を提供することを目的とする。
【００１４】
【課題を解決するための手段】
図１は、本発明のサーボモータの制御装置を説明するための概略ブロック図である。図１において、図１４，１５で示した速度制御ループ１と電流制御ループ３との間に、本発明のサーボモータの制御装置であるトルク補正回路２を介在させ、これによって、速度制御ループ１から出力されるトルク指令に対して補正トルクを用いて補正を行い、得られた補正トルク指令を電流制御ループ３に渡すことによって、トルク定数を一定に保つものである。
【００１５】
本発明のサーボモータの制御装置は、速度制御を行うサーボモータの制御において、トルク定数の低下をサーボ制御回路で推定し、このトルク定数の低下分を補償した補正トルク指令を求め、この補正トルク指令によって、電流制御を行うことにより、制御ループから見たトルク定数を等価的に一定に保つことによって、サーボモータのトルク定数を一定に保持する。
【００１６】
本発明において、トルク定数を変化させる要因となるサーボモータの制御状態として、磁気的飽和現象、電流の位相制御等があり、本発明のサーボモータの制御装置は、これらの要因によるトルク定数の変化を、トルク指令値，実電流振幅値等に基づいて推定し、トルク定数が一定の場合との偏差を補正する補正トルクを形成する等によって、サーボモータのトルク定数を一定に保つものである。
【００１７】
本発明のサーボモータの制御装置の第１の形態は、少なくとも速度制御を含むサーボモータの制御を行う制御装置において、サーボモータの制御状態に応じたトルク定数の低下分を補償した補正トルク指令を形成し、速度制御におけるトルク定数を一定に保持するトルク補正手段を備えた構成とするものである（請求項１に対応）。
【００１８】
又、この第１の形態において、補正トルク指令は、トルク指令に対する出力トルク特性において、トルク定数が一定の場合のトルク指令に対する出力トルクを得るためのトルク指令とすることができる（請求項５に対応）。
【００１９】
又、本発明のサーボモータの制御装置の第２の形態は、少なくとも速度制御を含むサーボモータの制御を行う制御装置において、サーボモータの制御状態に応じたトルク定数の低下分を補償する補正トルクをトルク指令に重畳して補正トルク指令を形成し、速度制御におけるトルク定数を一定に保持するトルク補正手段を備えた構成とするものである（請求項２に対応）。
【００２０】
この第２の形態において、補正トルクを、トルク指令に対する実電流振幅特性において、トルク指令又は実電流振幅値をパラメータとする値とすることができ（請求項３に対応）、又、補正トルクを、トルク指令に対する実電流振幅特性において、トルク指令又は実電流振幅値を、トルク定数が一定の場合のトルク指令又は実電流振幅値に変換する、トルク定数の低下分の倍率とすることができる（請求項４に対応）。
【００２１】
又、補正トルクの保持形態として、トルク指令に対する実電流振幅特性において、トルク指令及び速度をパラメータとし、該パラメータを含む関数とする構成（請求項６に対応）、トルク指令に対する実電流振幅特性において、トルク指令及び速度をパラメータとし、該パラメータを含むデータテーブルとする構成（請求項７に対応）とすることができる。
【００２２】
【発明の実施の形態】
以下、本発明の実施の形態を図を参照しながら詳細に説明する。
本発明の実施の形態について図２の概略ブロック図を用いて説明する。
図２に示すトルク補正回路２は、トルク指令補正手段２１とトルク指令−出力トルク関係データ部２２を備える。なお、この構成は各機能を便宜的に示したものであって、必ずしも各構成に対応する装置をハード的に構成することを要するものでなく、ソフトウエアによって実現することもできる。
【００２３】
トルク指令−出力トルク関係データ部２２は、サーボモータを実際に駆動して、トルク指令に対する実際の出力トルクを測定して求めることにより得ることができる。この関係は、関数の形態で求めることも、又、メモリ等のテーブルデータの形態で求めることもできる。
【００２４】
関数の形態で表される場合には、補正前のトルク指令Ｔｃ１等をパラメータとして入力し、トルク指令Ｔｃ１を補正して補正トルク指令Ｔｃ２を得るためのトルク補正値等のデータをトルク指令補正手段２１に出力する。
【００２５】
又、テーブルデータの形態で表される場合には、補正前のトルク指令Ｔｃ１等をパラメータとして入力し、このパラメータを用いてメモリから、トルク指令Ｔｃ１を補正して補正トルク指令Ｔｃ２を得るためのデータを読み出し、トルク指令補正手段２１に出力する。
【００２６】
トルク指令補正手段２１は、トルク指令−出力トルク関係データ部２２からトルク補正を行うためのデータを受け取り、このデータに基づいて補正前のトルク指令Ｔｃ１を補正して、補正トルク指令Ｔｃ２を形成し、電流ループに渡す。
【００２７】
なお、トルク補正値を用いて補正を行う処理に代えて、トルク指令−出力トルク関係データ部２２から、直接補正トルク指令Ｔｃ２を出力する構成とすることもできる。この場合には、トルク指令補正手段２１とトルク指令−出力トルク関係データ部２２は１つの構成とすることができる。
【００２８】
次に、関数の形態によって、トルク指令Ｔｃ１にトルク補正値を重畳させることによって、補正トルク指令補正Ｔｃ２を出力する構成例について、図３〜図６を用いて説明する。
【００２９】
図３はトルク補正回路の一構成例の概略ブロック図である。この構成では、低下したトルク定数を一定の定数に変換するために倍率を求め、この倍率を用いてトルク補正値を求め、さらに、このトルク補正値をトルク指令に重畳させて、補正トルク指令を得る。
【００３０】
トルク倍率算出手段２４は、低下したトルク定数を一定の定数に変換するためのトルク倍率を算出する手段であり、あらかじめ求めておいた算出関数を備え、トルク指令Ｔｃ１とベース電流等の算出のためのパラメータを入力し、算出関数を演算してトルク倍率を算出する。
【００３１】
トルク指令補正手段２３は、トルク倍率算出手段２４からのトルク倍率を受け取って補正トルクを求め、トルク指令Ｔｃ１を補正して補正トルク指令Ｔｃ２を得る。
【００３２】
図４は前記図１７を概略的に示したもので、トルク指令に対する実電流振幅値を示し、破線はトルク定数は一定の場合を示し、実線は実際のサーボモータの特性を示している。
【００３３】
図４において、トルク定数を一定の場合には、トルク指令Ｔｃ１に対し破線と交差するトルクＴが得られる。これに対して、トルク定数が低下するトルク指令の領域では、トルク指令Ｔｃ１に対し実線と交差するトルクＴ’となり、トルク指令Ｔｃ１が当初想定したトルクＴに達することができない。
【００３４】
図４中の矢印は、トルクＴを得るためには、トルクＴが実線と交差するトルク指令Ｔｃ２を要することを示しており、ここでは、トルク指令Ｔｃ１からトルク指令Ｔｃ２に変換するための係数をｆとする。
【００３５】
この係数ｆをトルク指令Ｔｃ１に乗ずることによって、補正トルク指令Ｔｃ２を得るためのトルク補正値を求めることができる。この係数ｆにトルク指令を乗じた値はトルク補正値となる。又、この係数ｆに１を加えた値をトルク倍率とし、このトルク倍率にトルク指令を乗じることによって、補正トルク指令Ｔｃ２を得ることができる。
【００３６】
以下、トルク倍率を用いたトルク補正について、図５のフローチャート、及び図６のトルク倍率を示すグラフを用いて説明する。
なお、図５のフローチャートは速度ループについてのみ示している。前記図５で示したように、速度検出器等から帰還速度を得て、速度フィードバックを取り込んで（ステップＳ１）、速度指令を求め（ステップＳ２）、トルク指令を求める。ここで求めたトルク指令をＴｃ１とする（ステップＳ３）。
【００３７】
図６のトルク倍率は、前記図４において、トルク指令に対してトルク定数の低下を求め、各トルク指令に対して、トルク定数が一定となるトルクを得るため要する倍率を求めることによって得ることができる。
【００３８】
図６に示す補正比は、このトルク倍率を表している。図６の補正比特性は、図４における誤差を２次近似で近似した例であり、
トルク倍率＝１＋ｋ×（｜トルク指令Ｔｃ１｜−トルクベースＩｂ）２
で近似した例を示している。
【００３９】
例えば、図６において、電流１００Ａの場合には、補正比は約１．０７であり、トルク倍率１．０７をトルク指令に乗ずることによって、補正トルク指令を得ることができる。
【００４０】
ここで、図６に示すように、トルクベースは補正比が１からはずれる限界の電流値を表している。このトルクベースより小さなトルク指令の場合には、トルク定数は一定であり、このトルクベースより大きなトルク指令の場合には、補正比に応じたトルク補正を行うことによって、トルク定数を一定に保つことができる。図６の例では、トルクベースは約３５Ａである。
【００４１】
そこで、ステップＳ４において、トルク指令Ｔｃ１の絶対値とトルクベースＩｂとを比較し、トルク指令Ｔｃ１の絶対値がトルクベースＩｂ以下の場合には、トルク補正を要さないため、補正することなく、補正トルク指令Ｔｃ２をトルク指令Ｔｃ１とし（ステップＳ８）、この補正トルク指令Ｔｃ２を電流ループに渡す（ステップＳ７）。
【００４２】
一方、ステップＳ４において、トルク指令Ｔｃ１の絶対値がトルクベースＩｂより大きい場合には、トルク補正を要するため、ステップＳ５，６の処理によって、トルク補正を行って、補正トルク指令Ｔｃ２を求め、求めた補正トルク指令Ｔｃ２を電流ループに渡す（ステップＳ７）。
【００４３】
ステップＳ５，６では、ｋ×（｜トルク指令Ｔｃ１｜−トルクベースＩｂ）２  の演算によって、トルク補正値を得るための係数ｆを求め、この係数ｆに１を加算した（１＋ｆ）にトルク指令Ｔｃ１を乗ずることによって補正トルク指令Ｔｃ２を求める。
【００４４】
従って、速度ループで計算されたトルク指令に対して、（トルク指令）×（トルク倍率）の演算を行うことによって、補正トルク指令を得ることができる。
なお、補正トルクは、（トルク指令）×（トルク倍率−１）により得ることができる。
次に、トルク指令と出力トルクとの間の関係を用いて、補正トルク指令を求める場合について説明する。
【００４５】
図７はトルク指令と出力トルクとの間の関係を表したグラフであり、サーボモータの速度制御において、トルク指令を変えながら出力トルクを測定することによって求めることができる。図７において、破線はトルク定数が一定である場合を示し、実線はサーボモータの速度制御における実特性を示している。
【００４６】
図７において、トルク定数が一定である場合にトルク指令Ｔｃ１によって得られるトルクは、実際のサーボモータではトルク指令Ｔｃ２を指令することによって得ることができる。このトルク指令Ｔｃ１とトルク指令Ｔｃ２の関係は、サーボモータの速度制御における実特性を求めることによって、一対一の関係で得ることができ、トルク指令あるいは出力トルクをパラメータとして求めることができる。
【００４７】
そこで、図７の各トルク指令について、トルク指令Ｔｃ１とトルク指令Ｔｃ２との関係を求めることによって、図８に示すような、補正前のトルク指令Ｔｃ１と補正後のトルク指令Ｔｃ２の関係を求めることができる。図８において、補正前のトルク指令Ｔｃ１に対して、実線で表される特性曲線で補正後のトルク指令Ｔｃ２を求めることによって、補正トルク指令Ｔｃ２を求めることができる。
この補正前のトルク指令Ｔｃ１と補正後のトルク指令Ｔｃ２の関係は、関数の形態とすることも、テーブルデータの形態とすることもできる。
【００４８】
テーブルデータの形態とする場合には、トルク指令Ｔｃ１をパラメータとしてトルク指令Ｔｃ２を記憶内容とするメモリを読み出すことによって、データの取り出しを行うことができる。
【００４９】
次に、トルク定数の変化がトルク及び速度に依存する場合について説明する。前記で説明したトルク指令と実電流振幅値、及びトルク指令と出力トルクとの関係は、図１１に示すように速度に依存する場合がある。なお、図１１はトルク指令と出力トルクの関係について示している。
【００５０】
トルク定数を変化させるパラメータとしてトルク及び速度がある場合には、図９に示すトルク補正回路２は、前記図２に示したトルク補正回路２とほぼ同様であり、トルク指令−出力トルク関係データ部２２には、トルク指令Ｔｃ１と速度をパラメータとして入力し、このトルク指令Ｔｃ１と速度に対応したトルク指令−出力トルク関係データを用いて、補正トルク指令をＴｃ２を出力する。ここでは、トルク補正回路２の詳細な説明は省略する。
【００５１】
図１０のフローチャートは、トルク及び速度に依存する場合の動作を説明するものである。なお、図１０のフローチャートは速度ループについてのみ示している。
【００５２】
図１０において、速度検出器等から帰還速度を得て、速度フィードバックを取り込んで（ステップＳ１１）、速度指令を求め（ステップＳ１２）、トルク指令を求める。ここで、求めたトルク指令をＴｃ１とする（ステップＳ１３）。
【００５３】
次に、速度フィードバックとトルク指令Ｔｃ１をパラメータとして、トルク指令−出力トルク関係データを読み出し（ステップＳ１４）、速度及びトルク指令Ｔｃ１に対するトルク補正値を求める（ステップＳ１５）。
【００５４】
求めたトルク補正値を用いて、補正トルク指令Ｔｃ２を求め（ステップＳ１６）、電流ループに渡す（ステップＳ１７）。
上記実施の形態によれば、速度やトルク指令等のパラメータに対応する補正トルク指令を、演算を要することなく直接求めることができる。
図１２は、実際に動作中の速度ループからのトルク指令（図中の補正前）と、電流ループに渡す補正トルク指令（図中の補正後）の関係を表している。図１２において、補正トルク指令がトルク指令より増加した状態を見ることができる。
【００５５】
図１３は、本発明によって、補正したトルク指令によって、トルク定数を一定に保つ制御を行った場合の加工精度の影響を示す図である。図１３（ａ），（ｂ），（ｃ），（ｄ）は、円弧半径１００ｍｍ、接線方向の送り速度はそれぞれ３００００ｍｍ／ｍｉｎ，４００００ｍｍ／ｍｉｎ，５００００ｍｍ／ｍｉｎ，及び６００００ｍｍ／ｍｉｎの条件において、指令に対する誤差を示している。なお、図において、周方向の１目盛りは２０μｍを表している。
【００５６】
図１３は、前記図１６と比較すると、送り速度が高い場合でも、指令からの誤差を抑制することができることを示している。
本発明によれば、速度制御において、特に大電流時において、サーボモータのトルク定数を一定に保つことができ、トルク定数の低下による速度ループゲインの低下によって生じる形状特性の悪化を防止し、高速（高加速）時においても低速時と同様な形状特性を得ることができる。
【００５７】
【発明の効果】
以上説明したように、本発明のサーボモータの制御装置によれば、速度制御において、サーボモータのトルク定数を一定に保つことができる。
【図面の簡単な説明】
【図１】本発明のサーボモータの制御装置を説明するための概略ブロック図である。
【図２】本発明の実施の形態を説明するための概略ブロック図である。
【図３】本発明のトルク補正回路の一構成例の概略ブロック図である。
【図４】トルク指令に対する実電流振幅値の概略グラフである。
【図５】本発明のトルク倍率を用いたトルク補正を説明するためのフローチャートである。
【図６】本発明のトルク倍率を示すグラフである。
【図７】トルク指令と出力トルクとの間の関係を表したグラフである。
【図８】本発明の補正前のトルク指令Ｔｃ１と補正後のトルク指令Ｔｃ２の関係を示すグラフである。
【図９】本発明のトルク補正回路の他の構成例の概略ブロック図である。
【図１０】本発明のトルク及び速度に依存する場合の動作を説明するフローチャートである。
【図１１】トルク指令と出力トルクの関係を示すグラフである。
【図１２】トルク指令と補正トルク指令の関係を示すグラフである。
【図１３】本発明による加工精度の影響を示す図である。
【図１４】サーボモータの位置ループ制御系の一構成を説明するためのブロック図である。
【図１５】サーボモータの速度ループ制御系の一構成を説明するためのブロック図である。
【図１６】トルク定数が一定でないことによる、加工精度の影響を示す図である。
【図１７】工作機械に使用されるサーボモータの電流値（トルク指令）と出力トルクとの関係を示すグラフである。
【符号の説明】
１  速度制御ループ
２  トルク補正回路
３  電流ループ
２１  トルク指令本補正段
２２  トルク指令−出力トルク関係データ部
２３  トルク指令補正手段
２４  トルク倍率算出手段
２５  パラメータ記憶部
【図１】
0003578900.tif 000002
【図２】
0003578900.tif 000003
【図３】
0003578900.tif 000004
【図４】
0003578900.tif 000005
【図５】
0003578900.tif 000006
【図６】
0003578900.tif 000007
【図７】
0003578900.tif 000008
【図８】
0003578900.tif 000009
【図９】
0003578900.tif 000010
【図１０】
0003578900.tif 000011
【図１１】
0003578900.tif 000012
【図１２】
0003578900.tif 000013
【図１３】
0003578900.tif 000014
【図１４】
0003578900.tif 000015
【図１５】
0003578900.tif 000016
【図１６】
0003578900.tif 000017
【図１７】
0003578900.tif 000018