(57)【要約】【課題】一定の低速送り動作時のトルク指令にコギングトルク以外の成分（重力トルク等）が重畳される場合にあっても適正なコギングトルク補正量を算出することができるモータ制御装置を提供する。【解決手段】本モータ制御装置は、モータを一定速で動作させたときのトルク指令を観測するトルク指令観測部と、モータのコギングトルク周期の整数倍の区間において、観測されたトルク指令からトルク指令近似成分を近似計算する近似算出部と、トルク指令からトルク指令近似成分を減算することにより、第二のトルク指令を算出する第二のトルク指令算出部と、算出された第二のトルク指令を周波数解析することにより、コギングトルクの基本周波数の整数倍の各周波数成分を抽出する第二のトルク指令周波数解析部と、抽出された各周波数成分の振幅と位相とからコギング補正量を算出するコギング補正量算出部と、を具備する。【選択図】図５
2011135645.tif 000002
【特許請求の範囲】
【請求項１】
工作機械に用いられるモータを制御するモータ制御装置であって、
モータを一定速で動作させたときのトルク指令を観測するトルク指令観測部と、
モータのコギングトルク周期の整数倍の区間において、前記トルク指令観測部で観測されたトルク指令からトルク指令近似成分を近似計算する近似算出部と、
前記トルク指令観測部にて観測されたトルク指令から、前記近似算出部にて算出されたトルク指令近似成分を減算することにより、第二のトルク指令を算出する第二のトルク指令算出部と、
前記第二のトルク指令算出部にて算出された第二のトルク指令を周波数解析することにより、コギングトルクの基本周波数の整数倍の各周波数成分を抽出する第二のトルク指令周波数解析部と、
前記第二のトルク指令周波数解析部にて抽出された各周波数成分の振幅と位相とからコギング補正量を算出するコギング補正量算出部と、
を具備するモータ制御装置。
【請求項２】
前記近似算出部は、モータのコギングトルクの周波数より低次の多項式近似を行う、請求項１に記載のモータ制御装置。
【請求項３】
工作機械に用いられるモータを制御するモータ制御装置であって、
モータを一定速で動作させたときのトルク指令を観測するトルク指令観測部と、
モータ位置を観測するモータ位置観測部と、
前記モータ位置観測部にて観測されたモータ位置から、それぞれのモータ位置における重力トルク分を算出する重力トルク算出部と、
モータのコギングトルク周期の整数倍の区間において、前記トルク指令観測部にて観測されたトルク指令から、前記重力トルク算出部にて算出された重力トルク分を減算することにより、第二のトルク指令を算出する第二のトルク指令算出部と、
前記第二のトルク指令算出部にて算出された第二のトルク指令を周波数解析することにより、コギングトルクの基本周波数の整数倍の各周波数成分を抽出する第二のトルク指令周波数解析部と、
前記第二のトルク指令周波数解析部にて抽出された各周波数成分の振幅と位相とからコギング補正量を算出するコギング補正量算出部と、
を具備するモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御上外乱となるコギングトルクを打ち消すための補正量を算出してトルク指令を補正する機能（以下、コギングトルク補正又はコギング補正という。）を備えたモータ制御装置に関する。
【背景技術】
【０００２】
近年、工作機械の回転軸において、高速化及び高精度化のためにダイレクトドライブモータが採用される場合が増加している。一般に、ダイレクトドライブモータを搭載した軸では、モータのコギングトルクが通常の軸付きモータの場合と比較して大きくなることから、送りの滑らかさを向上するためにコギング補正が行われる。コギング補正では、一定の低速送り動作時に速度ループ制御器から出力されるトルク指令について周波数解析を行なうことで補正量が算出される。
【０００３】
ここで、重力の影響が変動しない送り軸の場合、低速送り動作時のトルク指令はほぼ一定となり、トルク指令にはコギングトルクによる変動成分のみが含まれるため、トルク指令を周波数解析することにより、コギング補正量を算出することができる。
【０００４】
ところが、テーブルを傾斜させる軸の場合、角度によって重力の影響が変化するため、低速送り動作時のトルク指令は一定でなく、角度に応じて大きく変化する。トルク指令に重力による変動成分が含まれるため、トルク指令に対してそのまま周波数解析を行っても、適正なコギング補正量を算出することができない。
【０００５】
このように、一定の低速送り動作時のトルク指令には、コギングトルク以外の成分（重力トルク等）が重畳される場合があり、その場合には、そのまま周波数解析を行うと、適正なコギング補正量を算出することができないという問題がある。すなわち、単調増加または単調減少するような成分がトルク指令に重畳されると、単純にフーリエ変換しても適正な補正量が得られない。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平７−２８４２８６号公報
【特許文献２】特開２００５−２２４０５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、上述した問題点に鑑みてなされたものであり、その目的は、一定の低速送り動作時のトルク指令にコギングトルク以外の成分（重力トルク等）が重畳される場合にあっても適正なコギングトルク補正量を算出することができるモータ制御装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の第一の面によれば、工作機械に用いられるモータを制御するモータ制御装置であって、モータを一定速で動作させたときのトルク指令を観測するトルク指令観測部と、モータのコギングトルク周期の整数倍の区間において、前記トルク指令観測部で観測されたトルク指令からトルク指令近似成分を近似計算する近似算出部と、前記トルク指令観測部にて観測されたトルク指令から、前記近似算出部にて算出されたトルク指令近似成分を減算することにより、第二のトルク指令を算出する第二のトルク指令算出部と、前記第二のトルク指令算出部にて算出された第二のトルク指令を周波数解析することにより、コギングトルクの基本周波数の整数倍の各周波数成分を抽出する第二のトルク指令周波数解析部と、前記第二のトルク指令周波数解析部にて抽出された各周波数成分の振幅と位相とからコギング補正量を算出するコギング補正量算出部と、を具備するモータ制御装置が提供される。
【０００９】
上述の如く構成されたモータ制御装置においては、コギングトルク以外のトルク成分が近似計算され、トルク指令から当該成分を除去して得られる波形を用いてコギングトルク補正量が計算される。
【００１０】
また、本発明の第二の面によれば、工作機械に用いられるモータを制御するモータ制御装置であって、モータを一定速で動作させたときのトルク指令を観測するトルク指令観測部と、モータ位置を観測するモータ位置観測部と、前記モータ位置観測部にて観測されたモータ位置から、それぞれのモータ位置における重力トルク分を算出する重力トルク算出部と、モータのコギングトルク周期の整数倍の区間において、前記トルク指令観測部にて観測されたトルク指令から、前記重力トルク算出部にて算出された重力トルク分を減算することにより、第二のトルク指令を算出する第二のトルク指令算出部と、前記第二のトルク指令算出部にて算出された第二のトルク指令を周波数解析することにより、コギングトルクの基本周波数の整数倍の各周波数成分を抽出する第二のトルク指令周波数解析部と、前記第二のトルク指令周波数解析部にて抽出された各周波数成分の振幅と位相とからコギング補正量を算出するコギング補正量算出部と、を具備するモータ制御装置が提供される。
【００１１】
上述の如く構成されたモータ制御装置においては、モータ位置に応じた重力トルク分が算出され、トルク指令から重力トルク分を除去して得られる波形を用いてコギングトルク補正量が計算される。
【発明の効果】
【００１２】
本発明によるモータ制御装置によれば、一定の低速送り動作時のトルク指令にコギングトルク以外の成分又は重力トルク分が重畳される場合にあっても適正なコギングトルク補正量が算出されることでモータ速度の変動が改善される、という効果がある。
【図面の簡単な説明】
【００１３】
【図１】（Ａ）、（Ｂ）、（Ｃ）及び（Ｄ）は、コギング補正の方法について説明するための図である。
【図２】（Ａ）及び（Ｂ）は、コギング補正前及びコギング補正後のトルク指令波形を示す図である。
【図３】（Ａ）、（Ｂ）、（Ｃ）及び（Ｄ）は、傾斜回転軸でトルクが変化することを説明するための図である。
【図４】（Ａ）、（Ｂ）、（Ｃ）及び（Ｄ）は、重力によるトルクオフセットが変化する場合に周波数分析によるコギングトルク成分の抽出が困難になることを説明するための図である。
【図５】本発明の第一実施形態に係るモータ制御装置の概略構成を示すブロック図である。
【図６】関連する図表とともにモータ制御装置の動作を示すフローチャートである。
【図７】トルク指令波形、近似曲線、及びコギング波形を例示する波形図である。
【図８】（Ａ）、（Ｂ）、（Ｃ）及び（Ｄ）は、ｎ次多項式の概略形状を示す図である。
【図９】（Ａ）、（Ｂ）及び（Ｃ）は、元のトルク指令波形に対し、従来技術によるコギング補正を適用した後のトルク指令波形と本発明によるコギング補正を適用した後のトルク指令波形とを比較して示す図である。
【図１０】本発明の第二実施形態に係るモータ制御装置の概略構成を示すブロック図である。
【発明を実施するための形態】
【００１４】
最初に、コギング補正について説明する。図１（Ａ）、（Ｂ）、（Ｃ）及び（Ｄ）は、コギング補正の方法について説明するための図である。コギングトルクは制御上外乱となるため、図１（Ａ）に示されるように、実際のモータは、速度制御器から与えられるトルク指令にコギングトルクを加算してその結果を理想的なモータに与えるようにして動作する。そのため、図１（Ｂ）に示されるように、実際のモータ速度には、外乱たるコギングトルクの影響による変動がわずかに残る。コギング補正は、図１（Ｃ）に示されるように、コギングトルクに対応する逆位相のトルク補正量を求めてトルク指令を補正するものである。コギング補正を行なうと、図１（Ｄ）に示されるように、実際のモータ速度の変動が改善される。
【００１５】
図２（Ａ）及び（Ｂ）は、コギング補正前及びコギング補正後のトルク指令波形を示す図である。図２（Ａ）に示されるように、トルク指令にはコギングトルクによる変動成分が重畳する。コギングトルクによる周期的な変動を除けば、トルク指令は平坦な図形となり、移動方向の同じ区間での波形の傾きが０となる。つまり、コギング補正後においては、図２（Ｂ）に示されるように、コギングトルク成分が打ち消されることで平坦なトルク指令波形が得られる。
【００１６】
図３（Ａ）、（Ｂ）、（Ｃ）及び（Ｄ）は、傾斜回転軸でトルクが変化することを説明するための図である。前述のように、重力の影響が変動しない送り軸の場合、低速送り動作時のトルク指令はほぼ一定となるが、図３（Ａ）に示されるように、テーブルを傾斜させる軸（傾斜回転軸）の場合、角度によって重力の影響が変化する。すなわち、角度θに応じて重力の回転方向成分が変化する。そのため、軸保持に必要な力すなわちトルクオフセットが角度θに応じて変化する。より具体的には、図３（Ｃ）に示されるように、傾斜回転軸の重さ Ｍ 、角度 θ としたとき、重力は Ｍｇ となり、傾斜回転軸にかかる円弧接線方向の力 Ｆ は Ｍｇ sin θ となる。かくして、力 Ｆ は、図３（Ｄ）に示されるように、θに応じて変化する。したがって、トルクオフセット及びその変化率は、図３（Ｂ）に示されるようになる。図３（Ｂ）からわかるように、機械的に最も安定な位置（下死点付近）で波形測定を行なうと、トルクオフセットの変化率が最大となる。したがって、傾斜回転軸の場合、低速送り動作時のトルク指令は一定でなく、角度に応じて大きく変化する。トルク指令に重力による変動成分が含まれるため、トルク指令に対してそのまま周波数解析を行っても、適正なコギング補正量を算出することができない。
【００１７】
図４（Ａ）、（Ｂ）、（Ｃ）及び（Ｄ）は、重力によってトルクオフセットが変化する場合に周波数分析によるコギングトルク成分の抽出が困難になることを説明するための図である。重力の影響が変動せず、トルクオフセットが一定の場合には、トルク指令波形は、図４（Ａ）に示されるように平坦となる。この場合、フーリエ変換により周波数領域での波形を求めると、図４（Ｂ）に示されるように特定周波数での振幅の増大が識別可能となり、コギングトルク成分を抽出することができる。一方、重力の影響が変動し、トルクオフセットが変化する場合には、トルク指令波形は、例えば図４（Ｃ）に示されるように単調に減少する成分を含むものとなる。この場合には、フーリエ変換により周波数領域での波形を求めると、図４（Ｄ）に示されるようになり、オフセット変化による周波数成分が現れて、コギングトルク成分が埋没する。
【００１８】
図５は、本発明の第一実施形態に係るモータ制御装置の概略構成を示すブロック図である。この第一実施形態は、一定の低速送り動作時に速度ループ制御器から出力されるトルク指令に含まれるコギングトルク以外の成分を低い次数の多項式で近似して求め、これを元のトルク指令から減算して得られる波形に対し周波数解析を行うことで、適正なコギング補正量を算出する。図５において、モータ制御装置５００は、工作機械に用いられるモータ５９０を制御する装置である。モータ５９０には、モータの位置（基準位相）を検出するエンコーダ５９２が取付けられている。
【００１９】
モータ制御装置５００は、位置及び速度制御ループ５０２、コギング補正トルク算出部５０４、加算器５０６、電流制御ループ５０８、及びコギング補正パラメータ算出部５２０を備える。
【００２０】
位置及び速度制御ループ５０２は、上位装置からの位置指令と位置フィードバックとから求まる位置偏差に基づいて速度指令を算出する位置制御器と、速度指令と速度フィードバックとから求まる速度偏差に基づいてトルク指令を算出する速度制御器と、を含む。コギング補正トルク算出部５０４は、コギング補正パラメータ算出部５２０から与えられる補正パラメータ（周波数、振幅、及び位相）に基づいてコギング補正トルクを算出する。加算器５０６は、トルク指令とコギング補正トルクとを加算して補正済トルク指令を出力する。電流制御ループ５０８は、補正済トルク指令分の電流と電流フィードバックとから求まる電流偏差に基づいて駆動指令を算出してモータ５９０に対し出力する。
【００２１】
コギング補正パラメータ算出部５２０は、トルク指令観測部５３０、トルク指令近似算出部５４０、加算器５５０、第二のトルク指令周波数解析部５６０、及びモータ位置観測部５７０を含む。
【００２２】
トルク指令観測部５３０は、モータ５９０を一定速で動作させたときの位置及び速度制御ループ５０２からのトルク指令を観測する。トルク指令近似算出部５４０は、モータ５９０のコギングトルク周期の整数倍の区間において、トルク指令観測部５３０で観測されたトルク指令からトルク指令近似成分を近似計算する。加算器５５０は、トルク指令観測部５３０にて観測されたトルク指令から、トルク指令近似算出部５４０にて算出されたトルク指令近似成分を減算することにより、第二のトルク指令を算出する。
【００２３】
第二のトルク指令周波数解析部５６０は、加算器５５０にて算出された第二のトルク指令を周波数解析することにより、コギングトルクの基本周波数の整数倍の各周波数成分を抽出し、補正パラメータ（周波数、振幅、及び位相）をコギング補正トルク算出部５０４に供給する。モータ位置観測部５７０は、エンコーダ５９２の出力に基づいて、モータ５９０のコギングトルク周期の整数倍の区間を求め、解析範囲としてトルク指令近似算出部５４０及び第二のトルク指令周波数解析部５６０に供給する。
【００２４】
図６は、関連する図表とともに図５のモータ制御装置の動作を示すフローチャートである。まず、モータ５９０が一定の低速送りで動作している状態において、トルク指令観測部５３０が、位置及び速度制御ループ５０２からのトルク指令を観測することにより、トルク指令波形６２２を取得する（ステップ６０２）。
【００２５】
次いで、トルク指令近似算出部５４０が、取得されたトルク指令波形６２２を低次の多項式で近似することにより、近似波形６２４を取得する（ステップ６０４）。具体的には、トルク指令波形６２２を最小二乗法により次の多項式（１）で近似する（ｎは任意の整数）。ｆ(x) の係数 ａ0，ａ1，…，ａn は、ｆ0(x) をトルク指令波形、ｆ(x) を近似波形としたとき、Σ｛ｆ0(x) −ｆ(x)｝2 を最小とする値として求められる。
【数１】
2011135645.tif 000003
【００２６】
ここで、トルク指令近似算出部５４０は、モータのコギングトルクの周波数より低次の多項式近似を行う。すなわち、トルク指令波形の近似次数 ｎ は、コギング成分のうち周波数が最小の成分の当該周波数より小さい値とされる。例えば、フーリエ変換範囲におけるコギング成分の最小周波数が２（「山」「谷」の数で言えば４）であれば、次の式（２）に示されるように、近似次数は最大でも３に制限し、コギング成分が近似式に含まれてしまうことを回避する。
【数２】
2011135645.tif 000004
【００２７】
近似波形についての上記算出例について、図７を用いてより詳細に説明する。図７に示されるように、トルク指令波形（ＴＣＭＤ波形）に、「２回／フーリエ変換範囲」なる周波数のコギング波形が含まれるものとする。この場合、コギング波形は、「山」「谷」「山」「谷」の形状を持つ。ｎ次多項式の形状は、図８（Ａ）、（Ｂ）、（Ｃ）及び（Ｄ）に示されるように、概ね、２次の場合「山」、３次の場合「山」「谷」、４次の場合「山」「谷」「山」、５次の場合「山」「谷」「山」「谷」、という各形状となる。そのため、高次の多項式で近似を行なうと、コギング波形の周波数まで近似曲線に含まれてしまうことになる。なお、図７の例では、５次の多項式（「山」「谷」「山」「谷」）を用いた場合に、コギング波形（「山」「谷」「山」「谷」）と「山」「谷」の数が一致してしまう。したがって、コギング波形が近似曲線に含まれてしまうことを回避するため、４次以下の多項式で近似を行なう必要があり、図７中の近似曲線は３次式によるものである。
【００２８】
図６に戻り、ステップ６０４に次いで、加算器５５０において、元のトルク指令波形から近似式を減算することにより第二のトルク指令６２６を算出する処理が行われる（ステップ６０６）。この第二のトルク指令は、コギングトルク成分に該当する。
【００２９】
次いで、第二のトルク指令周波数解析部５６０が、第二のトルク指令について、コギングトルクの整数倍の周期の範囲をフーリエ変換することにより、フーリエ変換結果６２８を取得する（ステップ６０８）。さらに、第二のトルク指令周波数解析部５６０は、フーリエ変換結果６２８から、コギングトルクの各周波数成分を抽出し、周波数 ｎ 、振幅 Ａn 、及び位相 ψn からなる補正パラメータ６３０を算出する（ステップ６１０）。
【００３０】
最後に、コギング補正トルク算出部５０４が、補正パラメータ６３０（周波数ｎ、振幅Ａn、及び位相ψn）に基づいて、次の式（３）に表されるコギング補正トルクを算出し、そのコギング補正トルクが、加算器５０６にてトルク指令に加算され、その補正済トルク指令が、電流制御ループ５０８に入力される（ステップ６１２）。次の式（３）中、Ａnはｎ倍周波数成分の振幅、θは位相情報（コギングトルクの基本周期）、ψnはｎ倍周波数成分の位相、をそれぞれ表す。
【数３】
2011135645.tif 000005
【００３１】
図９（Ａ）、（Ｂ）及び（Ｃ）は、元のトルク指令波形に対し、従来技術によるコギング補正を適用した後のトルク指令波形と本発明によるコギング補正を適用した後のトルク指令波形とを比較して示す図である。図９（Ａ）に示される元のトルク指令波形に対し、従来技術によるコギング補正を適用すると、補正後のトルク指令波形は図９（Ｂ）に示されるようになり、過剰な補正がなされることとなる。一方、本発明によるコギング補正を適用すると、適正な補正量が算出される結果、補正後のトルク指令波形は図９（Ｃ）に示されるようになり、適正な補正が実現される。
【００３２】
以上の第一実施形態は、トルク指令に含まれるコギングトルク以外の成分を近似し、その近似値をトルク指令から除去して得られる波形を用いてコギング補正量を計算するものである。ここで、コギングトルク以外の成分としては、姿勢変化による重力トルクの変化が最も大きな要素として考えられるが、それ以外にも機械構造によっては機械の位置に依存して力が変化するものが次のように存在すると考えられる。
【００３３】
・位置保持機構にばね要素を持つもので、ばね要素の伸び縮みによってかかる力が変化する
・重力バランサーのシリンダの伸び縮みで軸を動かす力が変化する（粘性摩擦＋ばね要素）
・ガイドの平行度が悪く、中間位置に比較して端の方では動かしにくい
・テレスコカバーの位置によって軸を動かしにくくなる
【００３４】
図１０は、本発明の第二実施形態に係るモータ制御装置１０００の概略構成を示すブロック図である。この第二実施形態は、重力の影響をモータ位置（即ち、テーブルの傾斜角度）の関数として与えて、それをトルク指令から除去して得られる波形を用いてコギング補正量を計算する。以下、第一実施形態と相違する部分であるコギング補正パラメータ算出部１０２０について説明する。
【００３５】
トルク指令観測部１０３０は、モータ５９０を一定速で動作させたときの位置及び速度制御ループ５０２からのトルク指令を観測する。モータ位置観測部１０７０は、エンコーダ５９２の出力に基づいて、モータ５９０の位置を観測する。重力トルク算出部１０８０は、モータ位置観測部１０７０にて観測されたモータ位置から、それぞれのモータ位置における重力トルク分を算出する。この算出は、例えば、図３（Ｃ）について先に説明したように、傾斜回転軸にかかる、重力による円弧接線方向の力 Ｆ が、角度θによる関数 Ｍｇ sin θ となることに基づいて行なわれる。
【００３６】
加算器（第二のトルク指令算出部）１０５０は、トルク指令観測部１０３０にて観測されたトルク指令から、重力トルク算出部１０８０にて算出された重力トルク分を減算することにより、第二のトルク指令を算出する。第二のトルク指令周波数解析部１０６０は、加算器１０５０にて算出された第二のトルク指令を周波数解析することにより、コギングトルクの基本周波数の整数倍の各周波数成分を抽出し、補正パラメータ（周波数、振幅、及び位相）としてコギング補正トルク算出部５０４に供給する。
【００３７】
上記構成を備える第二実施形態は、第一実施形態と同様に、一定の低速送り動作時のトルク指令に重力トルク分が重畳される場合にあっても適正なコギングトルク補正量を算出することでモータ速度の変動を改善する。
【符号の説明】
【００３８】
５００    モータ制御装置
５０２    位置及び速度制御ループ
５０４    コギング補正トルク算出部
５０６    加算器
５０８    電流制御ループ
５２０    コギング補正パラメータ算出部
５３０    トルク指令観測部
５４０    トルク指令近似算出部
５５０    加算器（第二のトルク指令算出部）
５６０    第二のトルク指令周波数解析部
５７０    モータ位置観測部
５９０    モータ
５９２    エンコーダ
１０２０    コギング補正パラメータ算出部
１０３０    トルク指令観測部
１０７０    モータ位置観測部
１０５０    加算器（第二のトルク指令算出部）
１０６０    第二のトルク指令周波数解析部
１０７０    モータ位置観測部
１０８０    重力トルク算出部
【図１】
2011135645.tif 000006
【図２】
2011135645.tif 000007
【図３】
2011135645.tif 000008
【図４】
2011135645.tif 000009
【図５】
2011135645.tif 000010
【図６】
2011135645.tif 000011
【図７】
2011135645.tif 000012
【図８】
2011135645.tif 000013
【図９】
2011135645.tif 000014
【図１０】
2011135645.tif 000015