(57)【特許請求の範囲】
【請求項１】
モータにより駆動される可動部および該可動部により駆動される被駆動部を備えたモータ制御装置（１０）において、
前記可動部の位置を検出する第一位置検出部（１１）と、
前記被駆動部の位置を検出する第二位置検出部（１２）と、
前記第一位置検出部が検出した第一位置検出値と前記第二位置検出部が検出した第二位置検出値との間の偏差を計算する偏差計算部（３１）と、
第一駆動方向および該第一駆動方向とは反対の第二駆動方向において前記可動部が前記被駆動部に係合したときに前記偏差計算部により計算される偏差をそれぞれ第一初期偏差および第二初期偏差として保持する保持部（３３）と、
前記可動部および前記被駆動部の間のバックラッシと前記可動部が前記被駆動部に係合することにより生じる弾性変形とを補正する補正量を計算する補正量計算部（３４）と、を具備し、
該補正量計算部は、前記保持部により保持された前記第一初期偏差および前記第二初期偏差と、ゼロより大きくて１以下の所定の定数とに基づいて指令偏差を計算し、前記偏差計算部により計算された現在の偏差を前記指令偏差から減算して前記補正量を計算するようにし、
前記モータが反転した後の駆動方向が前記第一駆動方向である場合には、前記指令偏差は、第一初期偏差×定数＋第二初期偏差×（１−定数）で表され、
前記モータが反転した後の駆動方向が前記第二駆動方向である場合には、前記指令偏差は、第一初期偏差×（１−定数）＋第二初期偏差×定数で表されるようにした、モータ制御装置。
【請求項２】
前記定数が０．７５から０．９５の間の値であるようにした請求項１に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械および産業機械における送り軸および産業用ロボットのアームに連結されたモータを制御するモータ制御装置に関する。
【背景技術】
【０００２】
工作機械および産業機械における送り軸および産業用ロボットのアーム等の軸（機械可動部）には、サーボモータが連結されている。サーボモータの回転はボールネジなどによりテーブルなどの直線運動に変換されたり、サーボモータの伝達速度が減速機により減速されたりしている。
【０００３】
これらボールネジまたは減速機において或る位置への正方向における停止位置と、負方向における停止位置との間に差が存在する場合がある。一般に、このような差はバックラッシと呼ばれており、位置精度を低下させる原因になっている。
【０００４】
図８Ａ〜図８Ｃは、バックラッシを説明するための図である。図８Ａには、図示しないモータにより移動する可動部ＷＡと、可動部ＷＡによって駆動される被駆動部ＷＢとが示されている。可動部ＷＡはその両端に突出部Ａ１、Ａ２を有しており、被駆動部ＷＢはその中央に突起部Ｂを有している。従って、例えば可動部ＷＡが右方向に移動すると、可動部ＷＡの一方の突出部Ａ１の内方端が被駆動部ＷＢの突起部Ｂの一端に係合する。これにより、可動部ＷＡおよび被駆動部ＷＢが一体的に右方向に移動するようになる。
【０００５】
また、モータが反転して可動部ＷＡが右方向から左方向に移動する場合には、図８Ｂに示されるように、可動部ＷＡが左方向に移動する。そして、図８Ｃに示されるように、可動部ＷＡの他方の突出部Ａ２の内方端が被駆動部ＷＢの突起部Ｂの他端に係合すると、可動部ＷＡおよび被駆動部ＷＢが一体的に左方向に移動するようになる。
【０００６】
このように反転時には可動部ＷＡが被駆動部ＷＢに係合する前に、バックラッシと呼ばれる所定の移動量だけ移動する必要がある。図８Ａおよび図８Ｃに示されるバックラッシＣは位置精度を低下させる原因になりうる。このため、バックラッシＣについての補正量を作成し、反転時にこの補正量をモータの位置指令に加算することが行われている。
【０００７】
被駆動部ＷＢの位置情報を得ることなしに、モータの位置情報に基づいて被駆動部ＷＢの位置制御を行う機械はセミクローズド制御機である。このようなセミクローズド制御機においては、速度指令の反転後の移動指令にバックラッシ長を加算した、補正位置指令をモータに指令し、それにより、被駆動部ＷＢを移動指令分だけ移動させている。
【０００８】
また、モータの位置情報および被駆動部ＷＢの位置情報の両方を把握することができる機械、すなわち、フルクローズド制御機では、被駆動部ＷＢのセンサを備えているので、移動指令として所望値を与えれば十分である。このようなフルクローズド制御機においては、速度指令の反転時に、モータがバックラッシ長だけ移動した後で、被駆動部ＷＢが移動開始するので、遅れが発生する。このため、フルクローズド制御機は、速度指令の反転後で、モータを加速させる速度指令補正機能を有しうる。
【０００９】
これら二つの技術においては、適切なタイミングで適切な補正を行っており、補正の量および補正のタイミングは動作に先立って決定される。従って、これら二つの技術はフィードフォワード制御である。
【００１０】
これに対し、特許文献１においては、バックラッシにおけるモータの位置を把握して、バックラッシ補正量を決定している。この場合にはバックラッシにおけるモータの現在の位置を用いてバックラッシ補正量が定まるので、特許文献１の技術はフィードバック制御である。特許文献１においては、可動部が被駆動部に係合したときの可動部と被駆動部との間の偏差を初期偏差としている。そして、可動部および被駆動部の現在の位置の間の偏差を初期偏差から減算して、補正量を算出している。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２０１４−０５４００１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
特許文献１においては、バックラッシを歯面間の単なる隙間として解釈されている。しかしながら、通常の機械においては、単なる隙間としてのバックラッシに加えて、可動部と被駆動部との間に作用する力により生じる弾性変形に基づくロストモーションが存在する。また、そのような弾性変形は、線形に変形する場合と非線形に変形する場合を含みうる。
【００１３】
ロストモーションが弾性変形を含む場合、特許文献１において初期偏差を求めるときにバックラッシ端にかかる力の大きさと、モータ反転時に必要とされる力の大きさとが異なり、算出された補正量が要求される補正量とは異なる可能性がでてくる。
【００１４】
補正量が過小の場合、ワークが加工不足になりがちである。補正量が過大な場合、ワークが過剰に加工されて切込みが生じる可能性がある。特に、補正量が過大の場合、ワークの加工面における切込みはキズのように見えるので、ワークが加工不良と判断される可能性が高く、たびたび問題視される。
【００１５】
本発明はこのような事情に鑑みてなされたものであり、弾性変形を考慮することにより、過大な補正量が作成されるのを回避することのできるモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１６】
前述した目的を達成するために１番目の発明によれば、モータにより駆動される可動部および該可動部により駆動される被駆動部を備えたモータ制御装置において、前記可動部の位置を検出する第一位置検出部と、前記被駆動部の位置を検出する第二位置検出部と、前記第一位置検出部が検出した第一位置検出値と前記第二位置検出部が検出した第二位置検出値との間の偏差を計算する偏差計算部と、第一駆動方向および該第一駆動方向とは反対の第二駆動方向において前記可動部が前記被駆動部に係合したときに前記偏差計算部により計算される偏差をそれぞれ第一初期偏差および第二初期偏差として保持する保持部と、前記可動部および前記被駆動部の間のバックラッシと前記可動部が前記被駆動部に係合することにより生じる弾性変形とを補正する補正量を計算する補正量計算部と、を具備し、該補正量計算部は、前記保持部により保持された前記第一初期偏差および前記第二初期偏差と、ゼロより大きくて１以下の所定の定数とに基づいて指令偏差を計算し、前記偏差計算部により計算された現在の偏差を前記指令偏差から減算して前記補正量を計算するようにし、前記モータが反転した後の駆動方向が前記第一駆動方向である場合には、前記指令偏差は、第一初期偏差×定数＋第二初期偏差×（１−定数）で表され、
前記モータが反転した後の駆動方向が前記第二駆動方向である場合には、前記指令偏差は、第一初期偏差×（１−定数）＋第二初期偏差×定数で表されるようにした、モータ制御装置が提供される。
２番目の発明によれば、１番目の発明において、前記定数が０．７５から０．９５の間の値であるようにした。
【発明の効果】
【００１７】
１番目の発明においては、第一初期偏差および第二初期偏差と所定の定数とに基づいて計算した指令偏差から現在の偏差を減算して補正量を計算している。この場合には、弾性変形が考慮されるので、補正量が過大になることはない。このため、ワークが過大に加工されることはなく、ワークの表面に切込みが形成されることもない。従って、ワークが加工不良と判断される可能性を下げることができる。
２番目の発明においては、ワークが加工不良と判断される可能性を更に下げることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明に基づくモータ制御装置の機能ブロック図である。
【図２】図１のボールネジ機構部を模式的に示す図である。
【図３Ａ】可動部が左方向に移動した場合における部分模式図である。
【図３Ｂ】可動部が右方向に移動した場合における部分模式図である。
【図４】本発明のモータ制御装置の動作の一部分を示すフローチャートである。
【図５】本発明のモータ制御装置の動作の残りの部分を示すフローチャートである。
【図６】第一弾性変形部および第二弾性変形部に相当するバネの変位と力との関係を示す図である。
【図７】指令偏差の模式図である。
【図８Ａ】バックラッシを説明するための第一の図である。
【図８Ｂ】バックラッシを説明するための第二の図である。
【図８Ｃ】バックラッシを説明するための第三の図である。
【発明を実施するための形態】
【００１９】
以下、添付図面を参照して本発明の実施形態を説明する。以下の図面において同様の部材には同様の参照符号が付けられている。理解を容易にするために、これら図面は縮尺を適宜変更している。
【００２０】
図１は本発明に基づくモータ制御装置の機能ブロック図である。図１に示されるように、モータＭの出力軸に取付けられたボールネジ機構部のネジ５１にナット５２が螺合している。そしてナット５２は、結合部材５３を介してテーブル５４に連結されている。モータＭの位置はモータＭに取付けられた第一位置検出器、例えばエンコーダ１１により検出される。エンコーダ１１は、連続した複数のモータＭの位置に基づいて速度検出値ＤＶも検出するものとする。さらに、テーブル５４の位置はテーブル５４に対して平行に配置された第二位置検出器、例えばスケール１２により検出される。
【００２１】
図２はボールネジ機構部を模式的に示す図である。図２においては、両端に突出部Ａ１、Ａ２を備えた可動部ＷＡと、可動部ＷＡの突出部Ａ１、Ａ２の間で摺動する係合部材Ｂとが主に示されている。そして、可動部ＷＡの下面は、第一弾性変形部６１を介して、モータＭの位置を示すモータ位置部材６３に連結されている。また、係合部材Ｂは第二弾性変形部６２を介してテーブル５４に連結されている。
【００２２】
図３Ａおよび図３Ｂは可動部がそれぞれ左方向および右方向に移動した場合における部分模式図である。モータ位置部材６３が左方向に移動すると、第一弾性変形部材６１が弾性変形することにより、可動部ＷＡはモータ位置部材６３よりもわずかながら遅れて左方向に移動する。
【００２３】
そして、係合部材Ｂが可動部ＷＡの突出部Ａ１に係合すると、係合部材Ｂは可動部ＷＡと一緒に移動するようになる。係合部材Ｂがさらに左方向に移動すると、第二弾性変形部材６２が弾性変形することにより、テーブル５４は係合部材Ｂよりも遅れて左方向に移動することとなる。なお、図３Ｂに示されるように、モータ位置部材６３が右方向に移動する場合も概ね同様であるので説明を省略する。
【００２４】
そして、図３Ａに示されるように、係合部材Ｂが可動部ＷＡの一方の突出部Ａ１に係合したときには、係合部材Ｂと他方の突出部Ａ２との間には、バックラッシＣが存在している。バックラッシＣは、三次元測定器などで可動部ＷＡの移動距離を測定し、これをモータＭの移動量と比較してその差を測定することにより求められる。あるいは、象限が切替わるときに生じる、いわゆる象限突起を測定することにより、バックラッシＣを求めてもよい。
【００２５】
ここで、図１と図２とを比較して分かるように、図１の第一位置検出器（エンコーダ）１１およびモータＭは、図２において直線型検出器を兼ねた直線型アクチュエータ６４に対応する。さらに、図１のネジ５１およびナット５２は、可動部ＷＡ、被駆動部ＷＢおよび弾性変形可能な第一弾性変形部６１に対応する。そして、図１の結合部材５３は、弾性変形可能な第二弾性変形部６２に対応する。以下においては、図１のボールネジ機構部が、図２に示された模式的なボールネジ機構部に置き換わったものとして説明することとする。
【００２６】
図１を参照すると、本発明に基づくモータ制御装置１０は、可動部ＷＡの位置指令値ＣＰを周期的に作成する位置指令作成部２０と、可動部ＷＡの速度指令を作成する速度指令作成部２４と、モータＭのトルク指令を作成するトルク指令作成部２６とを主に含んでいる。
【００２７】
さらに、モータ制御装置１０は、第一位置検出部１１が検出した第一位置検出値ＤＰ１と第二位置検出部１２が検出した第二位置検出値ＤＰ２との間の偏差ΔＰを計算する偏差計算部３１を含んでいる。また、モータ制御装置１０は、可動部ＷＡを任意の初期位置から第一駆動方向および該第一駆動方向とは反対の第二駆動方向に移動させたときに可動部ＷＡの突出部Ａ１、Ａ２が被駆動部ＷＢに係合したか否かを判定する判定部３２を含んでいる。
【００２８】
さらに、モータ制御装置１０は、判定部３２によって可動部ＷＡが被駆動部ＷＢに係合したことが判定されたときに偏差計算部３１が計算した偏差ΔＰを第一駆動方向または第二駆動方向に関連づけて初期偏差として保持する保持部３３を含んでいる。なお、保持部３３は、速度などの他の要素も保持できるものとする。さらに、モータ制御装置１０は、可動部ＷＡおよび被駆動部ＷＢの間のバックラッシと可動部ＷＡが被駆動部ＷＢに係合することにより第一弾性変形部６１および第二弾性変形部６２の弾性変形とを補正するための補正量を計算する補正量計算部３４を含んでいる。
【００２９】
図４および図５は本発明のモータ制御装置の動作を示すフローチャートである。図４および図５に示される内容は所定の制御周期毎に繰返し行われるものとする。以下、図１から図５を参照して本発明のモータ制御装置の動作を説明する。
【００３０】
はじめに、位置指令作成部２０が位置指令値ＣＰを作成する。そして、図４のステップＳ１１、Ｓ１２おいて第一位置検出部１１および第二位置検出部１２が可動部ＷＡの第一位置検出値ＤＰ１および被駆動部ＷＢの第二位置検出値ＤＰ２をそれぞれ検出する。
【００３１】
そして、図４に示されるように、ステップＳ１３において、偏差計算部３１が第一位置検出値ＤＰ１および第二位置検出部ＤＰ２との間の偏差ΔＰを計算する。偏差ΔＰは保持部３３に順次保持されるものとする。このとき、偏差ΔＰには、駆動方向が関連づけられて保持されるものとする。
【００３２】
次いで、ステップＳ１４においては、駆動方向が第一駆動方向であるか否かが判定される。本願明細書においては、図２等における右方向が第一駆動方向であり、左方向が第二駆動方向であるものとする。駆動方向は、位置指令作成部２０が出力する位置指令の差分の符号から容易に把握できる。
【００３３】
駆動方向が第一駆動方向であると判定された場合には、ステップＳ１５に進む。ステップＳ１５においては、判定部３２は、第一駆動方向において可動部ＷＡの突出部Ａ１が被駆動部ＷＢに係合したか否かを判定する。そして、可動部ＷＡの突出部Ａ１が被駆動部ＷＢに係合している場合には、ステップＳ１６において、現在の偏差ΔＰを第一初期偏差ΔＰ１として駆動方向と共に保持部３３に保持する。
【００３４】
例えば、判定部３２は、モータＭが駆動して一定時間経過後にテーブル５４が一定速度で第一駆動方向に移動しているかまたは加速している場合に、可動部ＷＡの突出部Ａ１が被駆動部ＷＢに係合したと判定する。これにより、第一初期偏差ΔＰ１は第一弾性変形部６１および第二弾性変形部６２の第一駆動方向における弾性変形を含むこととなる。なお、当然のことながら、他の手法で可動部ＷＡの突出部Ａ１が被駆動部ＷＢに係合したと判定してもよい。
【００３５】
これに対し、ステップＳ１４において、駆動方向が第二駆動方向であると判定された場合には、ステップＳ１７に進む。ステップＳ１７においては、判定部３２は、第二駆動方向において可動部ＷＡの突出部Ａ２が被駆動部ＷＢに係合したか否かを判定する。この場合の判定手法は前述したのと概ね同様である。そして、可動部ＷＡの突出部Ａ２が被駆動部ＷＢに係合している場合には、ステップＳ１８において、現在の偏差ΔＰを第二初期偏差ΔＰ２として駆動方向と共に保持部３３に保持する。前述したのと同様に、第二初期偏差ΔＰ２は第一弾性変形部６１および第二弾性変形部６２の第二駆動方向における弾性変形を含む。
【００３６】
そして、図５におけるステップＳ１９においては、速度指令が反転した後で、可動部ＷＡが被駆動部ＷＢの反対側の突出部に係合したか否かが判定される。可動部ＷＡが被駆動部ＷＢの反対側の突出部に係合した場合には、補正する必要がないので処理を終了する。
【００３７】
次いで、ステップＳ２０においては、第一初期偏差ΔＰ１および第二初期偏差ΔＰ２の両方が保持部３３に保持されているか否かが判定される。第一初期偏差ΔＰ１および第二初期偏差ΔＰ２のうちの一方または両方が保持されていない場合には、後述する指令偏差を計算することができない。従って、この場合には、処理を終了する。
【００３８】
第一初期偏差ΔＰ１および第二初期偏差ΔＰ２の両方が保持されている場合には、ステップＳ２１に進んで、駆動方向が第一駆動方向であるか否かが判定される。駆動方向が第一駆動方向である場合には、ステップＳ２２に進む。ステップＳ２２においては、以下の式（１）に基づいて、補正量計算部３４が指令偏差を算出する。
指令偏差←ΔＰ１・α＋ΔＰ２・（１−α）                  （１）
式（１）および後述する式（２）において、αは０より大きくて１以下の定数である。定数αは操作者が実験等により予め定め、保持部３３に保持されているのが好ましい。なお、算出された指令偏差は補正量計算部３４が一時的に保持するものとする。
【００３９】
これに対し、駆動方向が第二駆動方向である場合には、ステップＳ２３に進む。ステップＳ２３においては、以下の式（２）に基づいて、補正量計算部３４が指令偏差を算出する。
指令偏差←ΔＰ１・（１−α）＋ΔＰ２・α                  （２）
【００４０】
次いで、ステップＳ２４においては、補正量計算部３４が補正量を以下の式（３）に基づいて算出する。
補正量＝Ｇ×（指令偏差−現在偏差）                  （３）
なお、式（３）において、Ｇはゲインを示しており、現在の偏差はステップＳ１３で算出された最新の偏差を意味する。そして、図４および図５に示される処理は所定の制御周期毎に繰返されるものとする。
【００４１】
図１を再び参照すると、位置指令作成部２０により作成された位置指令値ＣＰから、第一位置検出部１１により検出された第一位置検出値ＤＰ１が減算器２１にて減算される。そして、補正量計算部３４により作成された補正量は加算器２２において位置指令ＣＰに加算されて、速度指令作成部２４に入力される。速度指令作成部２４は速度指令値ＣＶを作成する。
【００４２】
さらに、第一位置検出部１１により検出された速度検出値ＤＶが、減算器２５において速度指令値ＣＶから減算されて、トルク指令作成部２６に入力される。トルク指令作成部２６により作成されたトルク指令値はモータＭに入力されてモータＭを駆動する。
【００４３】
ここで、図６はバネの変位と力との関係を示す図である。このバネは第一弾性変形部６１および第二弾性変形部６２に相当する。図６に示されるように、第一弾性変形部６１および第二弾性変形部６２に対応するバネは、バネ定数の異なる二つのバネが直列で接続された構成を想定している。すなわち、力がゼロとＦ０との間においては、変位は比較的大きいものの、力がＦ０を越えると、変位はわずかにのみ変化する。
【００４４】
従来技術においては、保持された初期偏差から現在の偏差を減算することにより、補正量を算出していた。例えば図６において初期偏差が保持されたときの力がＦ０よりも大きい場合には、変位もＬ０よりわずかながら大きくなる。そして、反転後にかかる力がＦ０より小さい場合には、実際の変位はＬ０よりもかなり小さくなるはずである。しかしながら、この場合には、Ｌ０よりもわずかに大きい変位で計算された補正量が使用されるので、補正量が過大になり、ワークに切込みが発生する可能性がある。
【００４５】
これに対し、本発明においては、ステップＳ２２、Ｓ２３で説明した式（１）、（２）を用いて、第一初期偏差ΔＰ１および第二初期偏差ΔＰ２と所定の定数αとに基づいて指令偏差を計算している。そして、式（３）を用いて、指令偏差から現在の偏差を減算して補正量を計算している。指令偏差の模式図である図７に示されるように、指令偏差は第一方向における初期偏差ΔＰ１と第二方向における初期偏差ΔＰ２との合計をα：１−αに内分する内分点である。
【００４６】
この場合には、第一弾性変形部６１および第二弾性変形部６２の弾性変形が考慮されるので、補正量が過大になることはない。このため、本発明においては、ワークが過大に加工されることはなく、ワークの表面に切込みが形成されることもない。このため、ワークが加工不良と判断される可能性を下げることができる。
【００４７】
また、定数αは例えば０．７５〜０．９５の間の値であるのが好ましい。このような場合には、ワークが加工不良と判断される可能性を更に下げることができる。また、定数αが０．７５またはその近傍である場合には、ワークの表面に切込みが生じる可能性を大幅に低下することが可能である。
【符号の説明】
【００４８】
１０    モータ制御装置
１１    エンコーダ（第一位置検出部）
１２    スケール（第二位置検出部）
２０    位置指令作成部
２１    減算器
２２    加算器
２４    速度指令作成部
２５    減算器
２６    トルク指令作成部
３１    偏差計算部
３２    判定部
３３    保持部
３４    補正量計算部
５１    ネジ
５２    ナット
５３    結合部材
５４    テーブル
６１    第一弾性変形部
６２    第二弾性変形部
６３    モータ位置部材
６４    直線型アクチュエータ
ＷＡ    可動部
ＷＢ    被駆動部
【図１】
0005890473.tif 000002
【図２】
0005890473.tif 000003
【図３Ａ】
0005890473.tif 000004
【図３Ｂ】
0005890473.tif 000005
【図４】
0005890473.tif 000006
【図５】
0005890473.tif 000007
【図６】
0005890473.tif 000008
【図７】
0005890473.tif 000009
【図８Ａ】
0005890473.tif 000010
【図８Ｂ】
0005890473.tif 000011
【図８Ｃ】
0005890473.tif 000012