(57)【要約】【課題】送り軸同期制御における機械位置を補正する数値制御装置を提供する。【解決手段】マスタ軸−スレーブ軸間のトルク差ΔＴに基づいて機械位置誤差を補正する数値制御装置１は、移動指令に従ってマスタ軸及び前記スレーブ軸を移動させる移動指令部１０１と、移動後のトルク差ΔＴを取得するトルク差取得部１０２と、トルク差ΔＴから機械ゆがみに由来するトルク差Ｔｍを除外した値に基づく補正量により機械位置誤差を補正する機械位置誤差補正部１０４と、を有し、移動指令部１０１は、機械位置誤差補正部１０４からフィードバックされる補正量を、次回の移動指令に加えることを特徴とする。【選択図】図１１
2019145032.tif 000002
【特許請求の範囲】
【請求項１】
マスタ軸−スレーブ軸間のトルク差ΔＴに基づいて機械位置誤差を補正する数値制御装置であって、
移動指令に従って前記マスタ軸及び前記スレーブ軸を移動させる移動指令部と、
前記移動後の前記トルク差ΔＴを取得するトルク差取得部と、
前記トルク差ΔＴから機械ゆがみに由来するトルク差Ｔｍを除外した値に基づく補正量により機械位置誤差を補正する機械位置誤差補正部と、を有し、
前記移動指令部は、前記機械位置誤差補正部からフィードバックされる前記補正量を、次回の前記移動指令に加えることを特徴とする
数値制御装置。
【請求項２】
前記トルク差Ｔｍを算出するための補正量算出部をさらに有し、
前記移動指令部は、前記マスタ軸及び前記スレーブ軸を複数の観測点に移動させ、
前記トルク差取得部は、前記複数の観測点それぞれにおいて前記トルク差ΔＴを測定し、
前記補正量算出部は、前記複数の観測点それぞれにおいて測定された前記トルク差ΔＴの平均を前記トルク差Ｔｍとすることを特徴とする
請求項１記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は数値制御装置に関し、特に送り軸同期制御における機械位置を補正する数値制御装置に関する。
【背景技術】
【０００２】
図１に示すように、門形などの送り軸同期を使用した工作機械において機械位置を補正する数値制御装置がある。例えば特許文献１には、複数の推進軸をそれぞれサーボモータで同期駆動し、推進軸に螺合される可動部を移動させるための駆動制御装置において、複数の推進軸間で機械的剛性が異なることにより発生する振動を抑制し、その位置精度と応答性を向上させる同期制御装置が記載されている。
【０００３】
従来の数値制御装置は、ボールねじのピッチデータに従ってマスタ軸とスレーブ軸にピッチ誤差を設定して機械位置を補正している。同期制御軸において、マスタ軸とスレーブ軸とのピッチが合っていない場合などは、マスタ−スレーブ間の位置がずれるため、例えばモータ電流が安定しないといった問題が生じる。そのため従来は図２に示すようにレーザ測定器等で実際の機械位置誤差を測定し、ピッチ誤差補正等を行うことで機械位置を修正していた。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２６３２２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ピッチ誤差補正を行うためにピッチを測定する作業、レーザ測定器等で実際の機械位置誤差を測定する作業は多くの時間を必要とする。また、マスタ軸、スレーブ軸各々のピッチを正しく設定できれば良いが、スレーブ軸はマスタ軸に依存するためピッチの設定が難しい。特許文献１のようにトルク差を用いた機械位置補正を行うものがあるが、機械ゆがみを考慮した正確な機械位置補正はできない。ここで機械ゆがみとは、部品の製造（鋳造）時に発生する機械位置のずれをいう。
【０００６】
本発明はこのような問題点を解決するためになされたものであって、送り軸同期制御における機械位置を補正する数値制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一実施の形態にかかる数値制御装置は、マスタ軸−スレーブ軸間のトルク差ΔＴに基づいて機械位置誤差を補正する数値制御装置であって、移動指令に従って前記マスタ軸及び前記スレーブ軸を移動させる移動指令部と、前記移動後の前記トルク差ΔＴを取得するトルク差取得部と、前記トルク差ΔＴから機械ゆがみに由来するトルク差Ｔｍを除外した値に基づく補正量により機械位置誤差を補正する機械位置誤差補正部と、を有し、前記移動指令部は、前記機械位置誤差補正部からフィードバックされる前記補正量を、次回の前記移動指令に加えることを特徴とする。
本発明の一実施の形態にかかる数値制御装置は、前記トルク差Ｔｍを算出するための補正量算出部をさらに有し、前記移動指令部は、前記マスタ軸及び前記スレーブ軸を複数の観測点に移動させ、前記トルク差取得部は、前記複数の観測点それぞれにおいて前記トルク差ΔＴを測定し、前記補正量算出部は、前記複数の観測点それぞれにおいて測定された前記トルク差ΔＴの平均を前記トルク差Ｔｍとすることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、送り軸同期制御における機械位置を補正する数値制御装置を提供することが可能である。
【図面の簡単な説明】
【０００９】
【図１】従来の機械位置誤差補正を行う数値制御装置の例を示す図である。
【図２】従来の機械位置誤差補正手法の一例を示す図である。
【図３】数値制御装置１による機械位置誤差補正手法を説明する図である。
【図４】数値制御装置１による機械位置誤差補正手法を説明する図である。
【図５】数値制御装置１による機械位置誤差補正手法を説明する図である。
【図６】数値制御装置１による機械位置誤差補正手法を説明する図である。
【図７】数値制御装置１の動作を示すフローチャートである。
【図８】数値制御装置１の動作を示すフローチャートである。
【図９】補正量の算出方法を説明する図である。
【図１０】数値制御装置１による機械位置誤差補正手法を説明する図である。
【図１１】数値制御装置１のハードウェア構成図である。
【図１２】数値制御装置１の機能構成を示すブロック図である。
【００１０】
本発明の実施の形態にかかる数値制御装置１の構成について説明する。
図１１は、本発明の実施の形態にかかる数値制御装置１の要部の概略的なハードウェア構成図である。
【００１１】
数値制御装置１が備えるＣＰＵ１１は、数値制御装置１を全体的に制御するプロセッサである。ＣＰＵ１１は、不揮発性メモリ１４に格納されたプログラムをバス２０を介して読み出し、プログラムに従って数値制御装置１全体を制御する。
【００１２】
不揮発性メモリ１４は、例えば図示しないバッテリでバックアップされるなどして、数値制御装置１の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ１４に記憶されているプログラム、データは、利用時には揮発性メモリ１３に展開されても良い。揮発性メモリ１３には、不揮発性メモリ１４から展開されたプログラム、データの他、一時的な計算データや表示データ、入力装置を介して入力されたデータ等が格納される。
【００１３】
表示器／ＭＤＩユニット７０はディスプレイやキーボード等を備えたデータ入出力装置である。表示器／ＭＤＩユニット７０のキーボードから入力された指令やデータは、インタフェース１５を介してＣＰＵ１１に渡される。また、ＣＰＵ１１から出力された表示データは、インタフェース１５を介して表示器／ＭＤＩユニット７０のディスプレイに表示される。
【００１４】
サーボコントローラ８０はマスタ軸及びスレーブ軸を駆動するサーボモータの制御を行う。ＣＰＵ１１から出力されたサーボモータ駆動指令は、インタフェース１６を介してサーボコントローラ８０に伝達される。サーボコントローラ８０はサーボモータの負荷等の情報を、インタフェース１６を介してＣＰＵ１１に伝達する。
【００１５】
図１２は、本発明の実施の形態に係る数値制御装置１の概略的な機能構成を示すブロック図である。数値制御装置１は、マスタ軸及びスレーブ軸を移動させる移動指令部１０１、マスタ軸とスレーブ軸との間のトルク差を取得するトルク差取得部１０２、複数の観測点から取得したトルク差に基づいて機械ゆがみに由来するトルク差を特定し、適切な補正量を算出する補正量算出部１０３、当該補正量に基づいて機械位置誤差を補正する機械位置誤差補正部１０４を有する。
【００１６】
図３乃至図５、図１０を用いて、本実施形態にかかる数値制御装置１による機械位置誤差補正の基本となる考え方について説明する。数値制御装置１は、データ取得モードと補正モードとの２つのモードを有する。
【００１７】
データ取得モードにおいて、数値制御装置１は、図３に示すようなマスタ−スレーブ軸間のトルク差ΔＴ＝ＴＭ−（−ＴＳ）を、図１０に示すように複数の観測点１，２，・・・，ｎで測定する。ここでＴＭはマスタ軸のトルク値、ＴＳはスレーブ軸のトルク値である。なお各観測点におけるトルク差ΔＴは、ピッチ誤差、ワーク荷重によるねじれ及び熱変位による機械位置ずれに由来する成分と、機械固有の機械ゆがみに由来する成分との双方を含んでいる。
【００１８】
補正モードにおいて、数値制御装置１は、移動指令にトルク差ΔＴに基づく補正値をフィードバックすることで、最適な機械位置への補正を行う。すなわち数値制御装置１は、マスタ軸及びスレーブ軸を動作させる度にトルク差ΔＴに基づく機械位置補正を行う。図４に示すように、動作位置（観測点Ａとする）におけるマスタ−スレーブ軸間の位置ずれ等に起因して、マスタ−スレーブ軸間にはトルク差ΔＴが発生する。このトルク差ΔＴを補正値として使用する（すなわちモータへの負荷がかからない＝０となるよう補正する）ことにより、同期制御を行うことができる。
【００１９】
なお数値制御装置１は、当初はデータ取得モードにおいて一括取得した各観測点におけるトルク差ΔＴに基づいて機械位置補正を行うことができるが、その後は動作毎にトルク差ΔＴの取得、補正値の算出及びフィードバックを行うことで、随時変化する熱変位等の影響を織り込んだより精密な機械位置補正をリアルタイムに実施することが可能である。
【００２０】
ところで、このようにトルク差ΔＴが生じない位置に補正を行うのみでは、最適な同期制御を行うことはできない。トルク差ΔＴには、機械ゆがみにより発生しているトルク負荷Ｔｍも含まれているためである。すなわち図５に示すように、単にトルク差ΔＴを補正値として機械位置補正を行うと、Ｔｍの分だけ過剰に補正を行うこととなり、加工点が理想的な補正位置からずれてしまう。なおレーザ測定器等を使用して機械位置補正を行う場合には、機械ゆがみが無いように位置決めするため、この問題は発生しない。トルク差を使用した機械位置補正において特有のこの問題を解消するためには、補正値にＴｍが含まれないように処理する必要がある。
【００２１】
そこで数値制御装置１は、データ取得モードにおいて複数の観測点でトルク差ΔＴを測定した後、それらの観測点で定常的に加わるトルク差を計算により求め、これを機械ゆがみに由来するトルク差Ｔｍとみなす。具体的には、図６に示すように、複数の観測点１，２，・・・，ｎにおいて、マスタ−スレーブ軸間のトルク差ΔＴ１，ΔＴ２，・・・，ΔＴｎを取得する。そしてこれらのトルク差の平均値をＴｍとする。
Ｔｍ＝（ΔＴ１＋ΔＴ２＋・・・＋ΔＴｎ）／ｎ      ・・・（１）
【００２２】
そして数値制御装置１は、機械ゆがみに由来するトルク差Ｔｍについては補正せず、トルク差ΔＴからＴｍを除いた補正値を使用して機械位置補正を行う。これにより、機械ゆがみを修正するために必要なトルク差Ｔｍは与えたまま機械をまっすぐに維持し、ピッチ誤差、ワーク荷重によるねじれ及び熱変位による機械位置ずれのみを補正して、加工点を理想的な位置に置くことが可能となる。
【００２３】
図７及び図８を用いて、数値制御装置１の動作について時系列を追って説明する。
図７はデータ取得モードにおける数値制御装置１の動作を示すフローチャートである。典型的には、数値制御装置１は加工開始前にデータ取得モードでの動作を行い、複数の観測点において静的に発生するトルク差、すなわちワーク負荷や熱変位の影響を受けていない状態での、主にピッチ誤差や機械ゆがみ等に起因するトルク差を取得する。また、数値制御装置１は各観測点において定常的に発生するトルク差Ｔｍを計算し、機械ゆがみに由来するトルク差成分を特定する。
【００２４】
Ｓ１０１：移動指令部１０１が、マスタ軸及びスレーブ軸のサーボモータに対し、所定の観測点までの移動指令を出力する。
【００２５】
Ｓ１０２：Ｓ１０１の移動指令に応じてマスタ軸及びスレーブ軸のサーボモータが駆動し、機械を観測点まで移動させる。
【００２６】
Ｓ１０３：トルク差取得部１０２が、マスタ軸−スレーブ軸間のトルク差ΔＴを取得する。
【００２７】
Ｓ１０４：全ての観測点（ｎ個とする）についてＳ１０１乃至Ｓ１０３の処理を行ったならば、Ｓ１０５に遷移する。その他の場合はＳ１０１に戻り、次の観測点について同様の処理を繰り返す。
【００２８】
Ｓ１０５：補正量算出部１０３は、ｎ個の観測点でそれぞれ取得されたトルク差ΔＴの平均値Ｔｍを式（１）により求める。Ｔｍは、全ての観測点において定常的に発生するトルク差であって、ほぼ機械ゆがみに起因して発生しているトルク差といえる。
【００２９】
Ｓ１０６：補正量算出部１０３は、各観測点毎に補正量を算出し、揮発性メモリ１３等に設けられた所定の記憶領域に保存する。補正量は、各観測点において静的に発生するトルク差ΔＴから機械ゆがみに由来するトルク差Ｔｍを除いたトルク差に基づいて計算できる。観測点１，２，・・・，ｎにおけるトルク差をΔＴ１，ΔＴ２，・・・，ΔＴｎとすると、観測点１，２，・・・，ｎにおける補正量はΔＴ１−Ｔｍ，ΔＴ２−Ｔｍ，・・・，ΔＴｎ−Ｔｍに基づいて決定される。
【００３０】
なおトルク差に基づく補正量の算出方法は例えば次のとおりである。図９を用いて説明する。補正量算出部１０３はまず、トルク差Ｔ［Ｎｍ］から機械位置のずれによる負荷Ｆ［Ｎ］を求める。次に、負荷Ｆ［Ｎ］により生じる機械ひずみΔＬ［ｍ］を算出する。この機械ひずみΔＬ［ｍ］が補正量となる。
トルクＴ［Ｎｍ］と負荷Ｆ［Ｎ］との関係は式（２）により求められる。また、負荷Ｆ［Ｎ］と応力との関係は式（３）により求められる。そして応力と機械ひずみΔＬ［ｍ］との対応関係は、予め応力−ひずみ曲線として与えられるものとする。
Ｔ＝［（Ｆ×Ｐｂ／２π×η）＋（μ０×Ｆ０×Ｐｂ／２π）］／Ｓｆ／ｉ
・・・（２）
Ｆ＝応力×ｍｇ（ｓｉｎθ＋μｃｏｓθ）  ・・・（３）
ここで、ｍ：テーブルとワークの重量、Ｐｂ：ボールねじのリード、ｉ：減速比、Ｆ０：ボールねじの予圧荷重、μ：摺動面の摩擦係数、μ０：与圧ナットの内部摩擦係数、Ｓｆ：安全率、θ：ボールねじの傾斜角である。
【００３１】
図８は補正モードにおける数値制御装置１の動作を示すフローチャートである。数値制御装置１は加工中、補正モードでの動作を行い、動的に発生するトルク差、すなわちワーク負荷や熱変位の影響によるトルク差も加味して、リアルタイムな補正を行う。なおその際、機械ゆがみに起因するトルク差Ｔｍについては補正しない。
【００３２】
Ｓ２０１：移動指令部１０１が、マスタ軸及びスレーブ軸のサーボモータに対し、所定の観測点までの移動指令を出力する。
【００３３】
Ｓ２０２：機械位置誤差補正部１０４は、所定の記憶領域を参照して補正情報が存在するか否かを確認する。補正情報とは、Ｓ１０６で保存された各観測点における補正量（以下、初期補正量という）、又は後述する補正情報フィードバック値である。補正情報が存在する場合、Ｓ２０３に遷移した後Ｓ２０４の処理を行う。その他の場合はＳ２０４に進む。
【００３４】
Ｓ２０３：機械位置誤差補正部１０４は、補正情報フィードバック値が存在する場合、補正情報フィードバック値を移動指令に加算する。補正情報フィードバック値が存在しない場合は、移動先の観測点における初期補正量を移動指令に加算する。
【００３５】
Ｓ２０４：Ｓ２０１の移動指令、又はＳ２０３で補正された移動指令に応じてマスタ軸及びスレーブ軸のサーボモータが駆動し、機械を観測点まで移動させる。
【００３６】
Ｓ２０５：トルク差取得部１０２が、マスタ軸−スレーブ軸間のトルク差ΔＴを取得する。
【００３７】
Ｓ２０６：機械位置誤差補正部１０４は、Ｓ２０５で取得したトルク差ΔＴが、予め定められた補正しきい値を超えるか否かを判定する。補正しきい値を超える場合はＳ２０７に遷移する。
【００３８】
Ｓ２０７：機械位置誤差補正部１０４は、トルク差ΔＴから機械ゆがみに由来するトルク差Ｔｍを除いたΔＴ−Ｔｍに基づく補正量で、機械位置を補正する。
【００３９】
Ｓ２０８：機械位置誤差補正部１０４は、Ｓ２０７で使用した補正量を補正情報フィードバック値として所定の記憶領域に保存する。
【００４０】
ここで保存された補正情報フィードバック値は、次回の移動指令の実行時にＳ２０３の処理において用いられる。これにより、数値制御装置１は前回の補正量を加味して移動指令を実行するので、発生する機械位置誤差を小さくすることができる。移動指令を繰り返し実行するとき、熱変位など動的に発生する機械位置誤差に追従して補正が行われていく。
【００４１】
本実施の形態によれば、数値制御装置１は、データ取得モードにおいて複数の観測点において定常的に発生するトルク差Ｔｍを算出する。これにより機械ゆがみに由来するトルク差を特定できる。そして移動指令の実行時には、実際に取得されるトルク差ΔＴから機械ゆがみに由来するトルク差Ｔｍを除外したΔＴ−Ｔｍに基づく補正量で機械位置誤差を補正するので、機械ゆがみの影響を排除した適切な補正を行うことが可能である。
【００４２】
また本実施の形態によれば、数値制御装置１は前回の補正量を補正情報フィードバック値としてフィードバックし、前回までの補正量を加味して移動指令を実行するため、熱変位など動的に発生する機械位置誤差に追従した精緻かつ効率的な補正を行うことが可能である。
【００４３】
なお、本発明は上述の実施の形態に限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。例えば、本実施の形態では、データ取得モードにおいて複数の観測点においてトルク差ΔＴを取得し、それらの平均を計算することでＴｍを求めた。しかしながら本発明はこれに限定されるものでなく、他の手法で機械ゆがみに由来するトルク差Ｔｍを求めても良い。例えば、従来より使用されているレーザ測定器を用いて機械位置を修正した状態でトルク差ΔＴを取得し、これをＴｍとして採用しても構わない。
【符号の説明】
【００４４】
１  数値制御装置
１１  ＣＰＵ
１３  揮発性メモリ
１４  不揮発性メモリ
１５  インタフェース
１６  インタフェース
２０  バス
７０  表示器／ＭＤＩユニット
８０  サーボコントローラ
１０１  移動指令部
１０２  トルク差取得部
１０３  補正量算出部
１０４  機械位置誤差補正部
【図１】
2019145032.tif 000003
【図２】
2019145032.tif 000004
【図３】
2019145032.tif 000005
【図４】
2019145032.tif 000006
【図５】
2019145032.tif 000007
【図６】
2019145032.tif 000008
【図７】
2019145032.tif 000009
【図８】
2019145032.tif 000010
【図９】
2019145032.tif 000011
【図１０】
2019145032.tif 000012
【図１１】
2019145032.tif 000013
【図１２】
2019145032.tif 000014