(57)【要約】【課題】連結機構の剛性の変化を検出するサーボモータ制御装置を提供する。【解決手段】サーボモータ制御装置は、サーボモータと、サーボモータにより駆動される被駆動体と、サーボモータと被駆動体とを連結し、サーボモータの動力を被駆動体へ伝える連結機構と、サーボモータの位置を検出する第１位置検出部と、被駆動体の位置を検出する第２位置検出部と、サーボモータを制御するモータ制御部１０Ａとを備え、モータ制御部１０Ａは、連結機構と被駆動体との連結部において被駆動体に作用する駆動力を推定する力推定部２０と、第１位置検出部で検出されたサーボモータの位置と、第２位置検出部で検出された被駆動体の位置と、力推定部２０で推定された駆動力とに基づいて、連結機構の剛性の大きさを推定する剛性推定部２２と、剛性推定部で推定された剛性の大きさに基づいて、連結機構の剛性の変化を検出する剛性変化検出部２６Ａとを有する。【選択図】図２
2018206143.tif 000002
【特許請求の範囲】
【請求項１】
サーボモータと、
前記サーボモータにより駆動される被駆動体と、
前記サーボモータと前記被駆動体とを連結し、前記サーボモータの動力を前記被駆動体へ伝える連結機構と、
前記サーボモータの位置を検出する第１位置検出部と、
前記被駆動体の位置を検出する第２位置検出部と、
前記サーボモータを制御するモータ制御部と、
を備え、
前記モータ制御部は、
前記連結機構と前記被駆動体との連結部において前記被駆動体に作用する駆動力を推定する力推定部と、
前記第１位置検出部で検出された前記サーボモータの位置と、前記第２位置検出部で検出された前記被駆動体の位置と、前記力推定部で推定された駆動力とに基づいて、前記連結機構の剛性の大きさを推定する剛性推定部と、
前記剛性推定部で推定された剛性の大きさに基づいて、前記連結機構の剛性の変化を検出する剛性変化検出部と、
を有する、サーボモータ制御装置。
【請求項２】
前記剛性推定部は、前記第１位置検出部で検出された前記サーボモータの位置と前記第２位置検出部で検出された前記被駆動体の位置との差（δ）、及び、前記力推定部で推定された駆動力（Ｔ）に基づいて、下式（１）より、前記連結機構の剛性の大きさ（Ｒ）を推定する、請求項１に記載のサーボモータ制御装置。
剛性の大きさ（Ｒ）＝駆動力（Ｔ）／サーボモータの位置と被駆動体の位置との差（δ）
・・・（１）
【請求項３】
前記剛性変化検出部は、前記剛性推定部で推定された剛性の大きさが所定の閾値以下に低下したときに、前記連結機構の剛性の変化として前記連結機構の劣化を検出する、請求項１又は２に記載のサーボモータ制御装置。
【請求項４】
前記モータ制御部は、所定時間間隔又は不定時間間隔ごとに前記剛性推定部で推定された複数の剛性の大きさを剛性データとして保存する保存部を更に備え、
前記剛性変化検出部は、前記保存部に保存された剛性データに基づいて、前記連結機構の剛性の変化及び変化量を検出する、
請求項１又は２に記載のサーボモータ制御装置。
【請求項５】
前記モータ制御部は、前記剛性変化検出部で検出された劣化を示す情報、又は、前記剛性推定部で推定された剛性の大きさを示す情報を通知する通知部を更に備える、請求項３に記載のサーボモータ制御装置。
【請求項６】
前記モータ制御部は、前記剛性変化検出部で検出された剛性の変化及び変化量の少なくとも１つを示す情報、又は、前記剛性推定部で推定された剛性の大きさを示す情報を通知する通知部を更に備える、請求項４に記載のサーボモータ制御装置。
【請求項７】
前記通知部は、情報を表示する表示装置である、請求項５又は６に記載のサーボモータ制御装置。
【請求項８】
前記モータ制御部は、
前記サーボモータの駆動制御のための位置指令値と前記第１位置検出部で検出された前記サーボモータの位置との第１偏差の高周波数成分に基づくセミクローズドフィードバック制御と、前記位置指令値と前記第２位置検出部で検出された前記被駆動体の位置との第２偏差の低周波数成分に基づくフルクローズドフィードバック制御とを行うデュアル位置制御部と、
前記剛性推定部で推定された前記連結機構の剛性の低下に応じて、前記デュアル位置制御部における前記セミクローズドフィードバック制御の割合を増加させ、前記フルクローズドフィードバック制御の割合を減少させる制御割合変更部と、
を更に備える、請求項１〜７の何れか１項に記載のサーボモータ制御装置。
【請求項９】
前記デュアル位置制御部は、
前記位置指令値と前記第１位置検出部で検出された前記サーボモータの位置との第１偏差を求める第１減算部と、
前記位置指令値と前記第２位置検出部で検出された前記被駆動体の位置との第２偏差を求める第２減算部と、
前記第１減算部からの前記第１偏差を入力するハイパスフィルタと、
前記第２減算部からの前記第２偏差を入力するローパスフィルタと、
前記ハイパスフィルタから出力される前記第１偏差の高周波数成分と前記ローパスフィルタから出力される前記第２偏差の低周波数成分とを加算する加算部と、
を更に備え、
前記制御割合変更部は、前記連結機構の剛性の低下に応じて、前記ハイパスフィルタのカットオフ周波数及び前記ローパスフィルタのカットオフ周波数を低下させる、
請求項８に記載のサーボモータ制御装置。
【請求項１０】
前記制御割合変更部は、前記ハイパスフィルタのカットオフ周波数と前記ローパスフィルタのカットオフ周波数とを同一に設定させる、請求項９に記載のサーボモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーボモータと被駆動体とを連結してサーボモータの動力を被駆動体に伝える連結機構の剛性の経年変化の自己監視機能を有するサーボモータ制御装置に関する。
【背景技術】
【０００２】
例えば工作機械等において、サーボモータを用いて被加工物（ワーク）の位置を制御するサーボモータ制御装置が知られている。サーボモータ制御装置は、テーブル（被駆動体）（移動体ともいう）上に被加工物を搭載し、テーブルを連結機構を介してサーボモータで移動させる。連結機構は、サーボモータに連結されるカップリングと、カップリングに固定されるボールねじと、ボールねじに螺合されるとともにテーブルに連結されるナットとを有する。これにより、サーボモータでボールねじを回転させると、ボールねじに螺着されたナットがボールねじの軸方向に移動され、ナットに連結されたテーブルが移動される。
【０００３】
このような連結機構（特に、カップリング及びボールねじ）では、比較的に剛性が低く、弾性変形が生じる。連結機構が弾性変形すると、テーブルの位置に弾性変形量分の誤差が生じる。この点に関し、テーブルの位置を補正する技術が知られている。
【０００４】
特許文献１及び２には、サーボモータにおけるエンコーダで検出されたサーボモータの回転量（セミクローズドフィードバック値）と、テーブルに固定されたリニアスケールで検出されたテーブルの移動量（フルクローズドフィードバック値）とに基づいて、連結機構の剛性の経年変化に起因した位置偏差（位置決め誤差）を補正する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−３４５０２５号公報
【特許文献２】特開平１１−２３７９２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、連結機構の剛性の経年変化の度合いによっては、連結機構の保守が必要である。そのため、連結機構の剛性の経年変化を把握する必要がある。
【０００７】
本発明は、連結機構の剛性の変化を検出するサーボモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
（１）  本発明に係るサーボモータ制御装置（例えば、後述のサーボモータ制御装置１，１Ａ，１Ｂ，１Ｃ）は、サーボモータ（例えば、後述のサーボモータ５０）と、前記サーボモータにより駆動される被駆動体（例えば、後述のテーブル７０）と、前記サーボモータと前記被駆動体とを連結し、前記サーボモータの動力を前記被駆動体へ伝える連結機構（例えば、連結機構６０）と、前記サーボモータの位置を検出する第１位置検出部（例えば、後述のエンコーダ４０）と、前記被駆動体の位置を検出する第２位置検出部（例えば、後述のスケール８０）と、前記サーボモータを制御するモータ制御部（例えば、後述のモータ制御部１０，１０Ａ，１０Ｂ，１０Ｃ）とを備え、前記モータ制御部は、前記連結機構と前記被駆動体との連結部において前記被駆動体に作用する駆動力を推定する力推定部（例えば、後述の力推定部２０）と、前記第１位置検出部で検出された前記サーボモータの位置と、前記第２位置検出部で検出された前記被駆動体の位置と、前記力推定部で推定された駆動力とに基づいて、前記連結機構の剛性の大きさを推定する剛性推定部（例えば、後述の剛性推定部２２）と、前記剛性推定部で推定された剛性の大きさに基づいて、前記連結機構の剛性の変化を検出する剛性変化検出部（例えば、後述の劣化検出部２６Ａ、剛性変化検出部２６Ｂ）とを有する。
【０００９】
（２）  （１）に記載のサーボモータ制御装置において、前記剛性推定部は、前記第１位置検出部で検出された前記サーボモータの位置と前記第２位置検出部で検出された前記被駆動体の位置との差（δ）、及び、前記力推定部で推定された駆動力（Ｔ）に基づいて、下式（１）より、前記連結機構の剛性の大きさ（Ｒ）を推定してもよい。
剛性の大きさ（Ｒ）＝駆動力（Ｔ）／サーボモータの位置と被駆動体の位置との差（δ）
・・・（１）
【００１０】
（３）  （１）又は（２）に記載のサーボモータ制御装置において、前記剛性変化検出部は、前記剛性推定部で推定された剛性の大きさが所定の閾値以下に低下したときに、前記連結機構の剛性の変化として前記連結機構の劣化を検出してもよい。
【００１１】
（４）  （１）又は（２）に記載のサーボモータ制御装置において、前記モータ制御部は、所定時間間隔又は不定時間間隔ごとに前記剛性推定部で推定された複数の剛性の大きさを剛性データとして保存する保存部（例えば、後述の保存部２４）を更に備えてもよく、前記剛性変化検出部は、前記保存部に保存された剛性データに基づいて、前記連結機構の剛性の変化及び変化量を検出してもよい。
【００１２】
（５）  （３）に記載のサーボモータ制御装置において、前記モータ制御部は、前記剛性変化検出部で検出された劣化を示す情報、又は、前記剛性推定部で推定された剛性の大きさを示す情報を通知する通知部（例えば、後述する表示部２８）を更に備えてもよい。
【００１３】
（６）  （４）に記載のサーボモータ制御装置において、前記モータ制御部は、前記剛性変化検出部で検出された剛性の変化及び変化量の少なくとも１つを示す情報、又は、前記剛性推定部で推定された剛性の大きさを示す情報を通知する通知部（例えば、後述する表示部２８）を更に備えてもよい。
【００１４】
（７）  （５）又は（６）に記載のサーボモータ制御装置において、前記通知部は、情報を表示する表示装置であってもよい。
【００１５】
（８）  （１）から（７）のいずれかに記載のサーボモータ制御装置において、前記モータ制御部は、前記サーボモータの駆動制御のための位置指令値と前記第１位置検出部で検出された前記サーボモータの位置との第１偏差の高周波数成分に基づくセミクローズドフィードバック制御と、前記位置指令値と前記第２位置検出部で検出された前記被駆動体の位置との第２偏差の低周波数成分に基づくフルクローズドフィードバック制御とを行うデュアル位置制御部（例えば、後述のデュアル位置制御部３０）と、前記剛性推定部で推定された前記連結機構の剛性の低下に応じて、前記デュアル位置制御部における前記セミクローズドフィードバック制御の割合を増加させ、前記フルクローズドフィードバック制御の割合を減少させる制御割合変更部（例えば、後述の制御割合変更部３５）とを更に備えてもよい。
【００１６】
（９）  （８）に記載のサーボモータ制御装置において、前記デュアル位置制御部は、
前記位置指令値と前記第１位置検出部で検出された前記サーボモータの位置との第１偏差を求める第１減算部（例えば、後述の減算器３１Ａ）と、前記位置指令値と前記第２位置検出部で検出された前記被駆動体の位置との第２偏差を求める第２減算部（例えば、後述の減算器３１Ｂ）と、前記第１減算部からの前記第１偏差を入力するハイパスフィルタ（例えば、後述のハイパスフィルタ３２Ａ）と、前記第２減算部からの前記第２偏差を入力するローパスフィルタ（例えば、後述のローパスフィルタ３２Ｂ）と、前記ハイパスフィルタから出力される前記第１偏差の高周波数成分と前記ローパスフィルタから出力される前記第２偏差の低周波数成分とを加算する加算部（例えば、後述の加算器３３）とを更に備えてもよく、前記制御割合変更部は、前記連結機構の剛性の低下に応じて、前記ハイパスフィルタのカットオフ周波数及び前記ローパスフィルタのカットオフ周波数を低下させてもよい。
【００１７】
（１０）  （９）に記載のサーボモータ制御装置において、前記制御割合変更部は、前記ハイパスフィルタのカットオフ周波数と前記ローパスフィルタのカットオフ周波数とを同一に設定させてもよい。
【発明の効果】
【００１８】
本発明によれば、連結機構の剛性の変化を検出するサーボモータ制御装置を提供することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施形態に係るサーボモータ制御装置の構成の一例を示す図である。
【図２】第１実施形態に係るサーボモータ制御装置におけるモータ制御部の構成を示す図である。
【図３】第１実施形態に係るサーボモータ制御装置による連結機構の剛性推定及び劣化検出の動作を示すフローチャートである。
【図４】第２実施形態に係るサーボモータ制御装置におけるモータ制御部の構成を示す図である。
【図５】第２実施形態に係るサーボモータ制御装置による連結機構の剛性推定動作を示すフローチャートである。
【図６】第２実施形態に係るサーボモータ制御装置による連結機構の剛性変化検出動作を示すフローチャートである。
【図７】第３実施形態に係るサーボモータ制御装置におけるモータ制御部の構成を示す図である。
【図８】第３実施形態に係るサーボモータ制御装置によるデュアル位置フィードバック制御の割合変更動作を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下、添付の図面を参照して本発明の実施形態の一例について説明する。なお、各図面において同一又は相当の部分に対しては同一の符号を附すこととする。
【００２１】
図１は、本発明の実施形態に係るサーボモータ制御装置の構成の一例を示す図である。図１に示すように、サーボモータ制御装置１は、モータ制御部１０と、サーボモータ５０と、エンコーダ（第１位置検出部）４０と、連結機構６０と、テーブル（被駆動体）７０と、スケール（第２位置検出部）８０とを備える。
【００２２】
サーボモータ制御装置１は、サーボモータ５０で連結機構６０を介してテーブル７０を移動させ、テーブル７０の上に搭載された被加工物（ワーク）を加工する。連結機構６０は、サーボモータ５０に連結されたカップリング６１と、カップリング６１に固定されるボールねじ６２とを有し、ボールねじ６２にナット６３が螺合されている。サーボモータ５０の回転駆動によって、ボールねじ６２に螺着されたナット６３がボールねじ６２の軸方向に移動され、ナット６３に連結されたテーブル７０が移動される。
【００２３】
サーボモータ５０の回転角度位置は、サーボモータ５０に設けられたエンコーダ４０によって検出され、検出された回転位置（回転量）は第１位置フィードバック（以下、位置ＦＢ１という。）として利用される。ここで、サーボモータ５０の回転角度位置とテーブル７０の位置とは対応関係にあるため、エンコーダ４０で検出された回転位置、すなわち位置ＦＢ１値は、テーブル７０の位置を示す。なお、エンコーダ４０は回転速度を検出可能であり、検出された速度は速度フィードバック（以下、速度ＦＢという。）として利用可能である。
【００２４】
また、テーブル７０の位置は、テーブル７０に設けられたスケール８０によって検出され、検出された位置は第２位置フィードバック（以下、位置ＦＢ２という。）として利用される。
【００２５】
モータ制御部１０は、加工プログラムに従う位置指令値、位置ＦＢ１値又は位置ＦＢ２値、及び、速度ＦＢ値に基づいて、サーボモータ５０を制御する。また、モータ制御部１０は、連結機構６０の剛性の変化（例えば、劣化又は変化量）を検出する。モータ制御部１０の詳細については後述する。
【００２６】
以下、サーボモータ制御装置１として、３つの実施形態のサーボモータ制御装置１Ａ，１Ｂ，１Ｃについて詳細に説明する。第１〜第３実施形態のサーボモータ制御装置１Ａ，１Ｂ，１Ｃは、上述したサーボモータ制御装置１において、モータ制御部１０としてモータ制御部１０Ａ，１０Ｂ，１０Ｃをそれぞれ備える点で相違する。第１〜第３実施形態のサーボモータ制御装置１Ａ，１Ｂ，１Ｃのその他の構成は、上述したサーボモータ制御装置１と同一である。
【００２７】
（第１実施形態のサーボモータ制御装置）
図１において、第１実施形態に係るサーボモータ制御装置１Ａは、上述したモータ制御部１０としてモータ制御部１０Ａを備える。
【００２８】
図２は、第１実施形態に係るサーボモータ制御装置１Ａにおけるモータ制御部１０Ａの構成を示す図である。図２に示すように、モータ制御部１０Ａは、位置指令生成部１２と、減算器１３，１５と、速度指令生成部１４と、トルク指令生成部１６と、力推定部２０と、剛性推定部２２と、保存部２４と、劣化検出部（剛性変化検出部）２６Ａと、表示部（通知部）２８とを備える。
【００２９】
位置指令生成部１２は、図示しない上位制御装置や外部入力装置等から入力されるプログラムや命令に従って、サーボモータ５０の位置指令値を作成する。減算器１３は、位置指令生成部１２で作成された位置指令値とエンコーダ４０からの位置ＦＢ１値（又は、スケール８０からの位置ＦＢ２値）との差を求める。速度指令生成部１４は、減算器１３で求められた差分に基づいてサーボモータ５０の速度指令値を作成する。減算器１５は、速度指令生成部１４で作成された速度指令値とエンコーダ４０からの速度ＦＢ値との差を求める。トルク指令生成部１６は、減算器１５で求められた差分に基づいてサーボモータ５０のトルク指令値を作成し、サーボモータ５０に供給する。
【００３０】
力推定部２０は、トルク指令生成部１６からのトルク指令値に基づいて、テーブル７０（ナット６３）と連結機構６０との連結部においてテーブル７０に作用する駆動トルク（駆動力）を推定する。なお、力推定部２０は、電流検出器を用いて検出したサーボモータ５０の駆動電流、すなわち実電流（実トルク）に基づいて駆動トルクを推定してもよい。
【００３１】
剛性推定部２２は、力推定部２０で推定された駆動トルクと、エンコーダ４０からの位置ＦＢ１値（エンコーダ４０で検出されたサーボモータ５０の位置、すなわちテーブル７０の位置）と、スケール８０からの位置ＦＢ２値（スケール８０で検出されたテーブル７０の位置）とに基づいて、連結機構６０の剛性の大きさを推定する。具体的には、剛性推定部２２は、推定された駆動トルク値（Ｔ）、及び、位置ＦＢ１値と位置ＦＢ２値との差（δ）に基づいて、下式（２）より、連結機構６０の剛性の大きさ（Ｒ）を推定する。
剛性の大きさ（Ｒ）＝駆動トルク値（Ｔ）／位置ＦＢ１値と位置ＦＢ２値との差（δ）
・・・（２）
連結機構６０の剛性の大きさの推定方法の詳細については後述する。
【００３２】
保存部２４は、連結機構６０の劣化検出のための閾値を予め保存する。閾値は、例えば、加工精度の仕様を満たすための連結機構６０の剛性の下限値である。保存部２４は、例えばＥＥＰＲＯＭ等の書き換え可能なメモリである。
【００３３】
劣化検出部２６Ａは、剛性推定部２２で推定された剛性の大きさに基づいて、連結機構６０の劣化（剛性の変化）を検出する。具体的には、劣化検出部２６Ａは、剛性推定部２２で推定された剛性の大きさが保存部２４に保存された閾値以下に低下したときに、連結機構６０の劣化を検出する。
【００３４】
表示部２８は、劣化検出部２６Ａで検出された連結機構６０の劣化を示す情報（例えば、数値、文字、画像等）を表示する。表示部２８は、剛性推定部２２で推定された剛性の大きさを示す情報を表示してもよい。表示部２８は、例えば液晶ディスプレイ等の表示装置である。
【００３５】
モータ制御部１０Ａ（及び、後述するモータ制御部１０Ｂ，１０Ｃ）は、例えば、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の演算プロセッサで構成される。モータ制御部１０Ａ（モータ制御部１０Ｂ，１０Ｃ）の各種機能（位置指令生成部１２、減算器１３，１５、速度指令生成部１４、トルク指令生成部１６、力推定部２０、剛性推定部２２、劣化検出部２６Ａ、後述する剛性変化検出部２６Ｂ、後述するデュアル位置制御部３０（減算器３１Ａ，３１Ｂ、ハイパスフィルタ３２Ａ、ローパスフィルタ３２Ｂ、加算器３３）、及び、後述する制御割合変更部３５）は、記憶部（例えば、保存部２４）に格納された所定のソフトウェア（プログラム）を実行することで実現される。モータ制御部１０Ａ（モータ制御部１０Ｂ，１０Ｃ）の各種機能は、ハードウェアとソフトウェアとの協働で実現されてもよいし、ハードウェア（電子回路）のみで実現されてもよい。
【００３６】
次に、図３を参照して、第１実施形態のサーボモータ制御装置１Ａによる連結機構６０の剛性推定及び劣化検出の動作について説明する。図３は、第１実施形態のサーボモータ制御装置１Ａによる連結機構６０の剛性推定及び劣化検出の動作を示すフローチャートである。
【００３７】
まず、ステップＳ１１において、モータ制御部１０Ａは、位置指令（移動指令）に応じたトルク指令をサーボモータ５０に供給して、サーボモータ５０を回転させる。このとき、力推定部２０は、トルク指令生成部１６からのトルク指令に基づいて、テーブル７０（ナット６３）と連結機構６０との連結部においてテーブル７０に作用する駆動トルクを推定する。また、サーボモータ５０におけるエンコーダ４０により、サーボモータ５０の回転位置（テーブル７０の位置に対応した回転位置）を検出し、位置ＦＢ１値としてモータ制御部１０Ａに送信する。また、テーブル７０におけるスケール８０により、テーブル７０の位置を検出し、位置ＦＢ２値としてモータ制御部１０Ａに送信する。
【００３８】
次に、ステップＳ１２において、剛性推定部２２は、力推定部２０で推定された駆動トルク値、及び、エンコーダ４０からの位置ＦＢ１値とスケール８０からの位置ＦＢ２値との差に基づいて、連結機構６０の剛性の大きさを推定する。
【００３９】
ここで、エンコーダ４０で検出されたサーボモータ５０の回転位置（すなわち、テーブル７０の位置に対応する回転位置）（位置ＦＢ１値）と、スケール８０で検出されたテーブル７０の位置（位置ＦＢ２値）との差は、連結機構（ボールネジ、カップリングなど）の捻じれなどの弾性変形に起因して生じる。そして、剛性は、加える力（駆動トルク）に対する変形量（弾性変形量）の比で表される。これより、剛性推定部２２は、下式（２）より、剛性の大きさ（Ｒ）を推定する。
剛性の大きさ（Ｒ）＝駆動トルク値（Ｔ）／弾性変形量
＝駆動トルク値（Ｔ）／位置ＦＢ１値と位置ＦＢ２値との差（δ）
・・・（２）
なお、本実施形態では、剛性推定部２２で推定される剛性は、弾性変形とガタの影響とを含む。
【００４０】
連結機構６０の剛性は、経年変化（低下）する。例えば、連結機構６０におけるボールねじ６２の剛性は、経時的に予圧が弱まることにより低下する。剛性が低下すると工作機械の加工精度が低下するため、連結機構６０の保守が必要となる。
【００４１】
そこで、ステップＳ１３において、劣化検出部２６Ａは、剛性推定部２２で推定された剛性の大きさに基づいて、連結機構６０の劣化を検出する。具体的には、劣化検出部２６Ａは、剛性推定部２２で推定された剛性の大きさが保存部２４に保存された閾値以下に低下したか否かを判定する。一般に、連結機構６０の剛性が低下しても加工精度の仕様を満たすように、モータ制御部１０Ａの制御ループのゲインにおいて２０％〜３０％程度のマージンが設定されている。これより、閾値は、例えば剛性の初期値の７０％程度に設定される。
【００４２】
ステップＳ１３において、剛性の大きさが閾値以下に低下した場合、劣化検出部２６Ａは、連結機構６０の劣化を検出する。このとき、ステップＳ１４において、表示部２８は、連結機構６０の劣化を示す情報を表示する。
【００４３】
一方、ステップＳ１３において、剛性の大きさが閾値よりも大きい場合、モータ制御部１０Ａは、所定時間経過後にステップＳ１１に戻り、上述した動作を繰り返す。なお、モータ制御部１０Ａは、予め定めた一定時間（所定時間）経過後に限らず、不規則な時間経過後に（不定時間間隔で）上述した動作を繰り返してもよい。或いは、モータ制御部１０Ａは、常時、又は設定された特定の動作時（例えば、起動時）に上述した動作を繰り返してもよい。
【００４４】
なお、ステップＳ１２において、剛性推定部２２は、推定した剛性の大きさを保存部２４に保存してもよい。また、ステップＳ１３において、劣化検出部２６Ａは、保存部２４に保存された最新の剛性の大きさに基づいて、連結機構６０の劣化を検出してもよい。
【００４５】
以上説明したように、本実施形態のサーボモータ制御装置１Ａでは、力推定部２０が、連結機構６０とテーブル（被駆動体）７０との連結部においてテーブル７０に作用する駆動トルクを推定する。また、剛性推定部２２が、力推定部２０で推定された駆動トルクと、エンコーダ（第１位置検出部）４０で検出されたサーボモータ５０の位置（位置ＦＢ１値）と、スケール（第２位置検出部）８０で検出されたテーブル７０の位置（位置ＦＢ２値）とに基づいて、連結機構６０の剛性の大きさを推定する。また、劣化検出部（剛性変化検出部）２６Ａが、剛性推定部２２で推定された剛性の大きさに基づいて、連結機構６０の劣化（剛性変化）を検出する。したがって、連結機構６０の保守の必要性の有無を確認することができる。
【００４６】
また、本実施形態のサーボモータ制御装置１では、表示部（通知部）２８が、連結機構６０の劣化を示す情報を表示するので、ユーザは連結機構６０の保守の必要性の有無を確認することができる。
【００４７】
（第２実施形態に係るサーボモータ制御装置）
第１実施形態では、剛性の大きさを推定する度に連結機構６０の劣化を検出した。第２実施形態では、所定時間間隔又は不定時間間隔ごとに剛性の大きさを推定して、これらの複数の剛性の大きさを剛性データとして保存し、保存した剛性データに基づいて剛性の経年変化（低下）及びその変化量（低下量）を検出する。
【００４８】
図１において、第２実施形態に係るサーボモータ制御装置１Ｂは、上述したモータ制御部１０としてモータ制御部１０Ｂを備える。
【００４９】
図４は、第２実施形態に係るサーボモータ制御装置１Ｂにおけるモータ制御部１０Ｂの構成を示す図である。図４に示す第２実施形態のモータ制御部１０Ｂは、図２に示すモータ制御部１０Ａにおいて劣化検出部２６Ａに代えて剛性変化検出部２６Ｂを備える点で第１実施形態と異なる。
【００５０】
保存部２４は、所定時間間隔ごとに剛性推定部２２で推定された複数の剛性の大きさをそのときの稼働量（例えば時間）と関連付けて、剛性データとして保存する。なお、保存部２４は、予め定めた一定時間間隔（所定時間間隔）ごとに限らず、不規則な時間間隔（不定時間間隔）ごとに複数の剛性の大きさをそのときの稼働量（例えば時間）と関連付けて保存してもよい。
【００５１】
剛性変化検出部２６Ｂは、保存部２４に保存された剛性データに基づいて、連結機構６０の剛性の変化（低下）及びその変化量（低下量）を検出する。
【００５２】
表示部２８は、剛性変化検出部２６Ｂで検出された連結機構６０の剛性の変化（低下）及びその変化量（低下量）を示す情報を表示する。
【００５３】
次に、図５及び図６を参照して、第２実施形態のサーボモータ制御装置１Ｂによる連結機構６０の剛性推定動作及び剛性変化検出動作について説明する。図５は、第２実施形態のサーボモータ制御装置１Ｂによる連結機構６０の剛性推定動作を示すフローチャートであり、図６は、第２実施形態のサーボモータ制御装置１Ｂによる連結機構６０の剛性変化検出動作を示すフローチャートである。
【００５４】
（剛性推定動作）
まず、図５のステップＳ２１において、上述した図３のステップＳ１１と同様に、モータ制御部１０Ｂは、サーボモータ５０を回転させ、テーブル７０（ナット６３）と連結機構６０との連結部においてテーブル７０に作用する駆動トルクを推定する。また、エンコーダ４０により、サーボモータ５０の回転位置（テーブル７０の位置に対応した回転位置）を検出し、位置ＦＢ１値としてモータ制御部１０Ｂに送信する。また、スケール８０により、テーブル７０の位置を検出し、位置ＦＢ２値としてモータ制御部１０Ｂに送信する。
【００５５】
次に、ステップＳ２２において、上述した図３のステップＳ１２と同様に、剛性推定部２２は、力推定部２０で推定された駆動トルク値、及び、エンコーダ４０からの位置ＦＢ１値とスケール８０からの位置ＦＢ２値との差に基づいて、連結機構６０の剛性の大きさを推定する。
【００５６】
次に、ステップＳ２３において、剛性推定部２２は、推定した剛性の大きさを現在の稼働量と関連付けて剛性データとして保存部２４に保存する。
【００５７】
モータ制御部１０Ｂは、上述したステップＳ２１〜Ｓ２３の動作を、所定時間間隔ごとに繰り返す。これにより、保存部２４には、所定時間間隔ごとに推定された複数の剛性の大きさと稼働量とが関連付けされた剛性データが保存される。
なお、モータ制御部１０Ｂは、上述したステップＳ２１〜Ｓ２３の動作を、不規則な時間間隔（不定時間間隔）ごとに繰り返してもよい。この場合、保存部２４には、不規則な時間間隔（不定時間間隔）ごとに推定された複数の剛性の大きさと稼働量とが関連付けされた剛性データが保存される。或いは、モータ制御部１０Ｂは、上述したステップＳ２１〜Ｓ２３の動作を、常時、又は設定された特定の動作時（例えば、起動時）に繰り返してもよい。
【００５８】
（剛性変化検出動作）
図６のステップＳ３１において、剛性変化検出部２６Ｂは、保存部２４に保存された剛性データに基づいて、連結機構６０の剛性の経年変化（低下）及びその変化量（低下量）を検出する。
【００５９】
次に、ステップＳ３２において、表示部２８は、剛性変化検出部２６Ｂで検出された剛性の経年変化（低下）及びその変化量（低下量）を示す情報を表示する。
【００６０】
本実施形態のサーボモータ制御装置１Ｂでも、力推定部２０が、連結機構６０とテーブル（被駆動体）７０との連結部においてテーブル７０に作用する駆動トルクを推定する。また、剛性推定部２２が、力推定部２０で推定された駆動トルクと、エンコーダ（第１位置検出部）４０で検出されたサーボモータ５０の位置（位置ＦＢ１値）と、スケール（第２位置検出部）８０で検出されたテーブル７０の位置（位置ＦＢ２値）とに基づいて、連結機構６０の剛性の大きさを推定する。また、剛性変化検出部２６Ｂが、保存部２４に保存された剛性データであって、所定時間間隔又は不定時間間隔ごとに剛性推定部２２で推定された複数の剛性の大きさを含む剛性データに基づいて、連結機構６０の剛性の経年変化（低下）及びその変化量（低下量）を検出する。したがって、連結機構６０の保守の必要性の有無を確認することができる。
【００６１】
また、本実施形態のサーボモータ制御装置１Ｂでは、表示部２８が、連結機構６０の剛性の経年変化（低下）及びその変化量（低下量）を示す情報を表示するので、ユーザは連結機構６０の保守の必要性の有無を確認することができる。
【００６２】
また、本実施形態のサーボモータ制御装置１Ｂでは、剛性データを、例えばネットワークを介して接続された外部のサーバ装置の保存部に保存していてもよい。
【００６３】
（第３実施形態に係るサーボモータ制御装置）
第１実施形態では、サーボモータ５０のエンコーダ４０からの位置ＦＢ１値と位置指令値との偏差に基づくセミクローズドフィードバック制御、又は、テーブル７０のスケール８０からの位置ＦＢ２値と位置指令値との偏差に基づくフルクローズドフィードバック制御を例示した。第３実施形態では、位置ＦＢ１値と位置指令値との第１偏差に基づくセミクローズドフィードバック制御、及び、位置ＦＢ２値と位置指令値との第２偏差に基づくフルクローズドフィードバック制御を行うデュアル位置フィードバック制御を例示する。
【００６４】
図１において、第３実施形態に係るサーボモータ制御装置１Ｃは、上述したモータ制御部１０としてモータ制御部１０Ｃを備える。
【００６５】
図７は、第３実施形態に係るサーボモータ制御装置１Ｃにおけるモータ制御部１０Ｃの構成を示す図である。図７に示す第３実施形態のモータ制御部１０Ｃは、図２に示すモータ制御部１０Ａにおいて減算器１３に代えてデュアル位置制御部３０と制御割合変更部３５とを更に備える点で第１実施形態と異なる。
【００６６】
デュアル位置制御部３０は、位置指令生成部１２で作成された位置指令値とエンコーダ４０からの位置ＦＢ１値との第１偏差の高周波数成分に基づくセミクローズドフィードバック制御と、位置指令値とスケール８０からの位置ＦＢ２値との第２偏差の低周波数成分に基づくフルクローズドフィードバック制御とを行う。デュアル位置制御部３０は、減算器３１Ａ，３１Ｂと、ハイパスフィルタ３２Ａと、ローパスフィルタ３２Ｂと、加算器３３とを備える。
【００６７】
減算器（第１減算部）３１Ａは、位置指令生成部１２で作成された位置指令値とエンコーダ４０からの位置ＦＢ１値との第１偏差を求める。ハイパスフィルタ３２Ａは、減算器３１Ａで求められた第１偏差における高周波数成分を通過させ、低周波数成分をカットする。ハイパスフィルタ３２Ａのカットオフ周波数は、制御割合変更部３５からの制御信号Ｓ１に応じて変更される。
【００６８】
減算器（第２減算部）３１Ｂは、位置指令生成部１２で作成された位置指令値とスケール８０からの位置ＦＢ２値との第２偏差を求める。ローパスフィルタ３２Ｂは、減算器３１Ｂで求められた第２偏差における低周波数成分を通過させ、高周波数成分をカットする。ローパスフィルタ３２Ｂのカットオフ周波数は、制御割合変更部３５からの制御信号Ｓ２に応じて変更される。
【００６９】
加算器３３は、ハイパスフィルタ３２Ａを通過した第１偏差の高周波数成分と、ローパスフィルタ３２Ｂを通過した第２偏差の低周波数成分とを加算し、速度指令生成部１４に送信する。
【００７０】
ここで、ハイパスフィルタ３２Ａ及びローパスフィルタ３２Ｂのカットオフ周波数ｆ［Ｈｚ］と時定数τ［ｓ］との間には以下の関係が成り立つ。
ｆ＝１／（２π×τ）
これより、カットオフ周波数を調整することは、時定数を調整することと同義である。
【００７１】
第１偏差をＥ１、第２偏差をＥ２とすると、ハイパスフィルタ３２Ａの出力ＥＨ、ローパスフィルタ３２Ｂの出力ＥＬは次式のように表される。
ＥＨ＝τｓ／（１＋τｓ）×Ｅ１
ＥＬ＝１／（１＋τｓ）×Ｅ２
ｓ：角周波数
これより、加算器３３で加算された偏差は次式のように表される。
偏差＝τｓ／（１＋τｓ）×Ｅ１＋１／（１＋τｓ）×Ｅ２  ・・・（３）
【００７２】
上式（３）より、時定数がτ＝∞、すなわちカットオフ周波数がｆ＝０では、偏差＝Ｅ１となり、セミクローズドフィードバック制御が支配的となる。一方、時定数がτ＝０、すなわちカットオフ周波数がｆ＝∞では、偏差＝Ｅ２となり、フルクローズドフィードバック制御が支配的となる。
また、時定数τの大きさ、すなわちカットオフ周波数ｆの大きさを制御して、セミクローズドフィードバック制御とフルクローズドフィードバック制御との比率を変更することができる。
【００７３】
保存部２４は、連結機構６０の剛性の大きさを入力とし、入力した剛性の大きさに応じた制御信号であって、ハイパスフィルタ３２Ａのカットオフ周波数及びローパスフィルタ３２Ｂのカットオフ周波数を変更する制御信号Ｓ１，Ｓ２を出力とする関数を保存する。例えば、保存部２４は、関数として、剛性の大きさと制御信号Ｓ１，Ｓ２とが関連付けされたテーブルを保存する。例えば、テーブルでは、剛性が低下するほど、カットオフ周波数を低くするような制御信号Ｓ１，Ｓ２が設定される。
【００７４】
制御割合変更部３５は、剛性推定部２２で推定された連結機構６０の剛性の大きさに応じて、デュアル位置制御部３０におけるセミクローズドフィードバック制御とフルクローズドフィードバック制御との割合を変更する。具体的には、制御割合変更部３５は、推定された連結機構６０の剛性の低下に応じて、セミクローズドフィードバック制御の割合を増加させ、フルクローズドフィードバック制御の割合を減少させる。
【００７５】
より具体的には、制御割合変更部３５は、保存部２４に保存された関数（例えば、テーブル）に基づいて、剛性推定部２２で推定された連結機構６０の剛性の大きさに対応した制御信号Ｓ１，Ｓ２を生成し、ハイパスフィルタ３２Ａ及びローパスフィルタ３２Ｂにそれぞれ送信する。これにより、制御割合変更部３５は、ハイパスフィルタ３２Ａ及びローパスフィルタ３２Ｂのカットオフ周波数を変更させる。具体的には、制御割合変更部３５は、推定された連結機構６０の剛性の低下に応じて、ハイパスフィルタ３２Ａ及びローパスフィルタ３２Ｂのカットオフ周波数を低下させる。
【００７６】
制御信号Ｓ１，Ｓ２は、同一であってもよいし、異なっていてもよい。すなわち、ハイパスフィルタ３２Ａのカットオフ周波数とローパスフィルタ３２Ｂのカットオフ周波数とは、同一であってもよいし、異なっていてもよい。これらのフィルタのカットオフ周波数が同一である場合、Ｅ１とＥ２の値が近い値となると加算器３３で加算された偏差の周波数特性は全体域に渡ってフラットに近い特性にすることができる。なお、これらのフィルタのカットオフ周波数が同一でない場合には、これらのフィルタのカットオフ周波数間の周波数成分が減衰又は増幅されるため、これらのある特定の周波数成分を増幅あるいは減衰してもよい。
【００７７】
次に、図８を参照して、第３実施形態のサーボモータ制御装置１Ｃによるデュアル位置フィードバック制御の割合変更動作について説明する。図８は、第３実施形態のサーボモータ制御装置１Ｃによるデュアル位置フィードバック制御の割合変更動作を示すフローチャートである。
【００７８】
まず、図８のステップＳ１１及びＳ１２において、すなわち図３において上述したステップＳ１１及びＳ１２の動作により、剛性推定部２２によって連結機構６０の剛性の大きさが推定される。
【００７９】
ここで、連結機構６０の剛性が低下すると、サーボモータ制御装置（すなわち、工作機械）の共振周波数が低下し、工作機械に低周波数の振動が生じる可能性が高くなる。工作機械に低周波数の振動が発生すると、工作機械の加工精度が低下する。
【００８０】
そこで、ステップＳ４１において、制御割合変更部３５は、保存部２４に保存された関数（例えば、テーブル）に基づいて、剛性推定部２２で推定された連結機構６０の剛性の大きさに対応した制御信号Ｓ１，Ｓ２を生成し、デュアル位置制御部３０のハイパスフィルタ３２Ａ及びローパスフィルタ３２Ｂにそれぞれ送信する。これにより、制御割合変更部３５は、ハイパスフィルタ３２Ａ及びローパスフィルタ３２Ｂのカットオフ周波数を変更させる。具体的には、制御割合変更部３５は、推定された連結機構６０の剛性の低下に応じて、ハイパスフィルタ３２Ａ及びローパスフィルタ３２Ｂのカットオフ周波数を低下させる。
【００８１】
これにより、ローパスフィルタ３２Ｂを通過する位置指令値と位置ＦＢ２値との第２偏差の低周波数成分の割合が減少し、ハイパスフィルタ３２Ａを通過する位置指令値と位置ＦＢ１値との第１偏差の高周波数成分の割合が増加する。そのため、第２偏差の低周波数成分に基づくフルクローズドフィードバック制御の割合が減少し、第１偏差の高周波数成分に基づくセミクローズドフィードバック制御の割合が増加する。
【００８２】
ここで、デュアル位置制御部３０では、高周波数の偏差が生成される過渡動作時には、ハイパスフィルタ３２Ａを含むセミクローズドフィードバック制御が支配的となる。一方、低周波数の偏差が生成される位置決め時には、ローパスフィルタ３２Ｂを含むフルクローズドフィードバック制御が支配的となる。
【００８３】
位置指令値と位置ＦＢ１値との第１偏差に基づくセミクローズドフィードバック制御は、サーボモータ５０のエンコーダ４０からの位置ＦＢ１を用いるため、換言すれば、フィードバックループに連結機構６０が含まれないため、制御が安定するという特徴を有する。一方、位置指令値と位置ＦＢ２値との第２偏差に基づくフルクローズドフィードバック制御は、テーブル（被駆動体）７０の近くに設けられたスケール８０からの位置ＦＢ２値を用いるため、位置決め精度が高いという特徴を有する。
【００８４】
これより、デュアル位置制御部３０によれば、過渡動作時には、安定な動作を得ることができ、工作機械の振動を抑制することができる。一方、位置決め時には、高い位置決め精度を得ることができる。
【００８５】
更に、制御割合変更部３５により、連結機構６０の剛性の低下に応じて、ハイパスフィルタ３２Ａのカットオフ周波数及びローパスフィルタ３２Ｂのカットオフ周波数を低下させるので、連結機構６０を含むフルクローズドフィードバック制御の割合が減少し、連結機構６０を含まず安定動作が可能なセミクローズドフィードバック制御の割合が増加する。これより、位置決め時の高い位置決め精度を損なうことなく、連結機構６０の剛性の低下に起因する工作機械の振動の発生を抑制することができる。そのため、工作機械の振動の発生に起因する工作機械の加工精度の低下を抑制することができる。
【００８６】
なお、ハイパスフィルタ３２Ａ及びローパスフィルタ３２Ｂのカットオフ周波数が低いほど、過渡動作時のセミクローズドフィードバック制御から位置決め時のフルクローズドフィードバック制御への切り換えが緩やかになる（遅くなる）。
【００８７】
その後、ステップＳ１３及びＳ１４において、すなわち図３において上述したステップＳ１３及びＳ１４の動作により、劣化検出部２６Ａによって連結機構６０の劣化の検出が行われ、劣化が検出された場合には表示部２８によって連結機構６０の劣化を示す情報が表示される。
【００８８】
本実施形態のサーボモータ制御装置１Ｃでも、第１実施形態のサーボモータ制御装置１Ａと同様の利点を得ることができる。
【００８９】
更に、本実施形態のサーボモータ制御装置１Ｃによれば、制御割合変更部３５が、剛性推定部２２で推定された連結機構６０の剛性の低下に応じて、デュアル位置制御部３０のハイパスフィルタ３２Ａのカットオフ周波数及びローパスフィルタ３２Ｂのカットオフ周波数を低下させる。これより、位置指令値と位置ＦＢ２値との第２偏差の低周波数成分に基づくフルクローズドフィードバック制御の割合が減少し、位置指令値と位置ＦＢ１値との第１偏差の高周波数成分に基づくセミクローズドフィードバック制御の割合が増加する。すなわち、連結機構６０を含むフルクローズドフィードバック制御の割合が減少し、連結機構６０を含まず安定動作が可能なセミクローズドフィードバック制御の割合が増加する。これより、位置決め時の高い位置決め精度を損なうことなく、連結機構６０の剛性の低下に起因する工作機械の振動の発生を抑制することができる。そのため、工作機械の振動の発生に起因する工作機械の加工精度の低下を抑制することができる。
【００９０】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
【００９１】
例えば、上述した実施形態は、適宜変更されてもよいし、組み合わされて実施されてもよい。例えば、第１実施形態と第２実施形態とを組み合わせ、現在の剛性の大きさが閾値よりも大きい場合に剛性の変化及び変化量を検出して表示し、現在の剛性の大きさが閾値以下に低下した場合に剛性の劣化を検出して表示してもよい。
【００９２】
また、上述した実施形態では、通知部の一例として表示部を例示したが、通知部はこれに限定されない。例えば、通知部は、１又は複数のＬＥＤ等の発光部であってもよい。１つのＬＥＤの場合、点灯及び点滅等により異なる情報を通知してもよい。また、複数のＬＥＤの場合、同色の点灯数、又は、異なる色により異なる情報を通知してもよい。また、例えば、通知部は、ブザー音又は音声等の発音部であってもよい。
【００９３】
また、上述した第１及び第２実施形態では、サーボモータ制御装置として位置指令に基づく位置制御を行う形態を例示したが、本発明の特徴は、速度指令に基づく速度制御を行う形態にも適用可能である。
【符号の説明】
【００９４】
１，１Ａ，１Ｂ，１Ｃ  サーボモータ制御装置
１０，１０Ａ，１０Ｂ，１０Ｃ  モータ制御部
１２  位置指令生成部
１３，１５  減算器
１４  速度指令生成部
１６  トルク指令生成部
２０  力推定部
２２  剛性推定部
２４  保存部
２６Ａ  劣化検出部（剛性変化検出部）
２６Ｂ  剛性変化検出部
２８  表示部（通知部）
３０  デュアル位置制御部
３１Ａ  減算器（第１減算部）
３１Ｂ  減算器（第２減算部）
３２Ａ  ハイパスフィルタ
３２Ｂ  ローパスフィルタ
３３  加算器（加算部）
３５  制御割合変更部
４０  エンコーダ（第１位置検出部）
５０  サーボモータ
６０  連結機構
６１  カップリング
６２  ボールねじ
６３  ナット
７０  テーブル（被駆動体）
８０  スケール（第２位置検出部）
【図１】
2018206143.tif 000003
【図２】
2018206143.tif 000004
【図３】
2018206143.tif 000005
【図４】
2018206143.tif 000006
【図５】
2018206143.tif 000007
【図６】
2018206143.tif 000008
【図７】
2018206143.tif 000009
【図８】
2018206143.tif 000010