(57)【要約】【課題】ボールねじの伸縮量に基づいて位置補正するサーボ制御装置を提供する。【解決手段】本発明に係るサーボ制御装置は、ボールねじに付与される張力の影響を考慮して、動作時のボールねじの伸縮量を補償するように送り軸に対する位置指令を補正する。サーボ制御装置は、ボールねじの、サーボモータから遠位側において作用する張力と、ボールねじを両端において支持する１対の固定部の間の距離と、サーボモータの近位側に設けられる固定部から移動体までの距離と、サーボモータに付与されるトルク指令に基づいて、ボールねじの伸縮量を計算する。そして、サーボ制御装置は、算出されたボールねじの伸縮量に基づいて、送り軸の位置補正量を計算する。【選択図】図１
2014087880.tif 000002
【特許請求の範囲】
【請求項１】
ボールねじを介してサーボモータの回転運動を移動体の直線運動に変換する送り軸を制御するサーボ制御装置において、
前記ボールねじは、該ボールねじの、前記サーボモータに対して近位の端部に配置される第１の固定部と、前記ボールねじの、前記近位の端部とは反対側の端部に配置される第２の固定部と、によって両端において支持されており、
サーボ制御装置は、
前記送り軸の位置に関連付けられる位置指令を作成する位置指令作成部と、
前記サーボモータのトルク指令を作成するトルク指令作成部と、
前記ボールねじの熱変位量を計算する熱変位量計算部と、
前記第１の固定部から前記第２の固定部までの間の距離、前記第１の固定部から前記移動体までの間の距離、前記熱変位量計算部によって計算される前記熱変位量及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記第２の固定部に作用する張力を計算する張力計算部と、
前記張力計算部によって計算される前記張力、前記第１の固定部から前記第２の固定部までの間の距離、前記第１の固定部から前記移動体までの間の距離及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記サーボモータの動作中における前記ボールねじの伸縮量を計算する伸縮量計算部と、
前記伸縮量計算部によって計算される前記伸縮量に基づいて、前記送り軸の位置に関連付けられる前記位置指令を補正する位置補正量を計算する位置補正量計算部と、
を備える、サーボ制御装置。
【請求項２】
前記張力計算部によって計算される前記張力が前記ボールねじを伸長させる伸長方向に作用するか、又は前記ボールねじを収縮させる方向に作用するかを判定する判定部をさらに備えるとともに、
前記伸縮量計算部は、
前記判定部によって前記張力が伸長方向に作用すると判定された場合に、前記第１の固定部から前記移動体までの間の距離、前記第１の固定部から前記第２の固定部までの間の距離及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記ボールねじの伸縮量を計算する第１の伸縮量計算部と、
前記判定部によって前記張力が収縮方向に作用すると判定された場合に、前記第１の固定部から前記移動体までの間の距離及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記ボールねじの伸縮量を計算する第２の伸縮量計算部と、をさらに備える、請求項１に記載のサーボ制御装置。
【請求項３】
前記第１の伸縮量計算部は、
前記第１の固定部から前記移動体までの間の距離と、
前記移動体から前記第２の固定部までの間の距離と、
常温における前記ボールねじの全長に前記熱変位量計算部によって計算される前記熱変位量の値を加算した加算距離と、
前記トルク指令作成部によって作成される前記トルク指令と、
の積に所定の定数を乗算することによって、前記ボールねじの伸縮量を計算するように構成される、請求項２に記載のサーボ制御装置。
【請求項４】
前記第２の伸縮量計算部は、
前記第１の固定部から前記移動体までの間の距離と、
前記トルク指令作成部によって作成される前記トルク指令と、
の積に所定の定数を乗算することによって、前記ボールねじの伸縮量を計算するように構成される、請求項２又は３に記載のサーボ制御装置。
【請求項５】
前記第１の固定部から前記第２の固定部までの間の距離は、常温における前記ボールねじの前記全長よりも大きく、
前記ボールねじは、前記ボールねじが伸長する方向において変形自在であるとともに、前記ボールねじが収縮する方向において変形不能であるように前記第１の固定部及び前記第２の固定部によって固定される、請求項１から４のいずれか１項に記載のサーボ制御装置。
【請求項６】
前記熱変位量計算部は、単位時間当りの平均速度に基づいて前記ボールねじの熱変位量を計算するように構成される、請求項１から５のいずれか１項に記載のサーボ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ボールねじを介してサーボモータの回転運動を移動体の直線運動に変換する送り軸を制御するサーボ制御装置に関する。
【背景技術】
【０００２】
種々の要因により生じ得るボールねじを介した送り軸の位置決め誤差を補正する機能を有する制御装置が知られている（特許文献１〜３参照）。例えば特許文献１は、移動体を高速で移動させる際に動力伝達機構部に含まれる弾性要素が弾性変形することによって生じる誤差を補正する制御装置を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４８６７１０５号明細書
【特許文献２】特許第４５０３１４８号明細書
【特許文献３】特許第３２９２９５８号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ボールねじを介してサーボモータの回転運動を移動体の直線運動に変換する送り軸を制御するサーボ制御装置において、送り軸の位置決め誤差を低減ないし解消することが望まれている。
【課題を解決するための手段】
【０００５】
本願の１番目の態様によれば、ボールねじを介してサーボモータの回転運動を移動体の直線運動に変換する送り軸を制御するサーボ制御装置において、前記ボールねじは、該ボールねじの、前記サーボモータに対して近位の端部に配置される第１の固定部と、前記ボールねじの、前記近位の端部とは反対側の端部に配置される第２の固定部と、によって両端において支持されており、サーボ制御装置は、前記送り軸の位置に関連付けられる位置指令を作成する位置指令作成部と、前記サーボモータのトルク指令を作成するトルク指令作成部と、前記ボールねじの熱変位量を計算する熱変位量計算部と、前記第１の固定部から前記第２の固定部までの間の距離、前記第１の固定部から前記移動体までの間の距離、前記熱変位量計算部によって計算される前記熱変位量及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記第２の固定部に作用する張力を計算する張力計算部と、前記張力計算部によって計算される前記張力、前記第１の固定部から前記第２の固定部までの間の距離、前記第１の固定部から前記移動体までの間の距離及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記サーボモータの動作中における前記ボールねじの伸縮量を計算する伸縮量計算部と、前記伸縮量計算部によって計算される前記伸縮量に基づいて、前記送り軸の位置に関連付けられる前記位置指令を補正する位置補正量を計算する位置補正量計算部と、を備える、サーボ制御装置が提供される。
【０００６】
本願の２番目の態様によれば、１番目の態様に係るサーボ制御装置において、前記張力計算部によって計算される前記張力が前記ボールねじを伸長させる伸長方向に作用するか、又は前記ボールねじを収縮させる方向に作用するかを判定する判定部をさらに備えるとともに、前記伸縮量計算部は、前記判定部によって前記張力が伸長方向に作用すると判定された場合に、前記第１の固定部から前記移動体までの間の距離、前記第１の固定部から前記第２の固定部までの間の距離及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記ボールねじの伸縮量を計算する第１の伸縮量計算部と、前記判定部によって前記張力が収縮方向に作用すると判定された場合に、前記第１の固定部から前記移動体までの間の距離及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記ボールねじの伸縮量を計算する第２の伸縮量計算部と、をさらに備える、サーボ制御装置が提供される。
【０００７】
本願の３番目の態様によれば、２番目の態様に係るサーボ制御装置において、前記第１の伸縮量計算部は、前記第１の固定部から前記移動体までの間の距離と、前記移動体から前記第２の固定部までの間の距離と、常温における前記ボールねじの全長に前記熱変位量計算部によって計算される前記熱変位量の値を加算した加算距離と、前記トルク指令作成部によって作成される前記トルク指令と、の積に所定の定数を乗算することによって、前記ボールねじの伸縮量を計算するように構成される、サーボ制御装置が提供される。
【０００８】
本願の４番目の態様によれば、２番目又は３番目の態様に係るサーボ制御装置において、前記第２の伸縮量計算部は、前記第１の固定部から前記移動体までの間の距離と、前記トルク指令作成部によって作成される前記トルク指令と、の積に所定の定数を乗算することによって、前記ボールねじの伸縮量を計算するように構成される、サーボ制御装置が提供される。
【０００９】
本願の５番目の態様によれば、１番目から４番目のいずれかの態様に係るサーボ制御装置において、前記第１の固定部から前記第２の固定部までの間の距離は、常温における前記ボールねじの前記全長よりも大きく、前記ボールねじは、前記ボールねじが伸長する方向において変形自在であるとともに、前記ボールねじが収縮する方向において変形不能であるように前記第１の固定部及び前記第２の固定部によって固定される、サーボ制御装置が提供される。
【００１０】
本願の６番目の態様によれば、１番目から５番目のいずれかの態様に係るサーボ制御装置において、前記熱変位量計算部は、単位時間当りの平均速度に基づいて前記ボールねじの熱変位量を計算するように構成されるサーボ制御装置が提供される。
【発明の効果】
【００１１】
前述した態様に係るサーボ制御装置によれば、ボールねじに作用する張力による影響を考慮した上でボールねじの伸縮量が計算される。したがって、ボールねじに作用する張力に起因して送り軸の位置決め誤差が生じるのを防止できる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係るサーボ制御装置の構成を示すブロック図である。
【図２】図１の伸縮量計算部のより詳細な構成を示すブロック図である。
【図３】本発明の実施形態に係るサーボ制御装置における処理を示すフローチャートである。
【図４】本発明を適用可能なボールねじの構成例を示す図である。
【図５】種々の状態におけるボールねじを説明するための概念図である。
【発明を実施するための形態】
【００１３】
以下、添付図面を参照して本発明の実施形態を説明する。図示される実施形態の各構成要素は、本発明の理解を助けるためにその縮尺が実用的な形態から変更されている場合があることに留意されたい。
【００１４】
図４は、本発明を適用可能なボールねじ１００の構成例を示す図である。ボールねじ１００は、外周面にねじ溝が形成されたねじ軸１０２と、ボール（図示せず）を介してねじ軸１０２のねじ溝に嵌合する雌ねじ部が内周面に形成されたナット１０４と、を備えている。ナット１０４には、例えばワーク（図示せず）が載置されるテーブル１０６が固定されており、ナット１０４とテーブル１０６とは互いに一体に運動可能になっている。テーブル１０６は、ボールねじ１００によって移動される移動体の例である。
【００１５】
ボールねじ１００のねじ軸１０２の両端１０２ａ，１０２ｂには、互いに所定の間隔を空けて配置される第１の固定部の例である第１のブラケット１０８と、第２の固定部の例である第２のブラケット１１０と、が設けられている。ねじ軸１０２は、それら第１のブラケット１０８及び第２のブラケット１１０の内部に形成される軸受部（図示せず）によって回転可能に支持されている。より具体的には、第１のブラケット１０８は、ボールねじ１００を長手方向に移動不能にかつボールねじ１００のねじ軸１０２を長手方向に伸びる軸線回りに回転可能に支持する。また、第２のブラケット１１０は、ボールねじ１００を長手方向において収縮不能でありながら伸長可能に支持するとともに、ボールねじ１００のねじ軸１０２を長手方向に伸びる軸線回りに回転可能に支持する。第１のブラケット１０８には、継手１１２を介してサーボモータ１２０が連結されている。サーボモータ１２０は、サーボモータ１２０の動作状態に関する情報、例えば回転位置及び回転速度を検出するエンコーダ１２２を備えている。
【００１６】
サーボモータ１２０は、後述するサーボ制御装置１０によって作成される指令信号に応答して回転するように形成されている。サーボモータ１２０の回転運動は、継手１１２を介してボールねじ１００のねじ軸１０２に伝達される。したがって、サーボモータ１２０が回転すると、ボールねじ１００のねじ軸１０２がそれに応じて所定の減速比で回転する。そして、ナット１０４は、ねじ軸１０２が回転するのに従って、第１のブラケット１０８と第２のブラケット１１０との間の領域において、テーブル１０６とともにねじ軸１０２の長手方向に往復移動する。このように、ボールねじ１００のねじ軸１０２及びナット１０４は、サーボモータ１２０の回転運動をねじ軸１０２に沿ったテーブル１０６の直線運動に変換する送り軸としての作用を有する。
【００１７】
ところで、ボールねじ１００は、ナット１０４がねじ軸１０２に対して直線運動する際にナット１０４とねじ軸１０２との間において生じる摩擦熱に起因して熱膨張する。このようなボールねじ１００の熱膨張は、ボールねじ１００における送り軸の位置決め精度を低下させる原因となり得る。そこで、ボールねじ１００が伸長した状態で保持されるように予張力がボールねじ１００に付与される場合がある。
【００１８】
図５は、種々の状態におけるボールねじ１００を説明するための概念図である。図５の（ａ）は張力が付与されていない常温時のボールねじ１００のねじ軸１０２を示している。この場合、ねじ軸１０２は、自然長である長さＬ０を有している。図５の（ｂ）は、ねじ軸１０２が長さＬ０よりも大きい長さＬ１を有するように長手方向に伸長されたボールねじ１００を示している。ボールねじ１００は、このように伸長された状態で第１のブラケット１０８及び第２のブラケット１１０によって固定されている。また、第１のブラケット１０８から距離Ｌ１１の位置だけ離間して配置されるテーブル１０６が図示されている。ここで、テーブル１０６と第２のブラケット１１０との間の距離をＬ１２とする。
【００１９】
なお、図中の（ａ）と（ｂ）との間に描かれた破線は、ボールねじ１００の各部位の対応関係を表している。すなわち、（ｂ）の状態において第１のブラケット１０８から距離Ｌ１１だけ離間するボールねじ１００の部位は、（ａ）の状態において第１のブラケット１０８から距離Ｌ０１だけ離間する部位に対応する。すなわち、（ｂ）の状態における第１のブラケット１０８とテーブル１０６との間の距離Ｌ１１は、（ａ）の状態においては距離Ｌ０１に相当する。また、（ｂ）の状態におけるテーブル１０６と第２のブラケット１１０との間の距離Ｌ１２は、（ａ）の状態においては距離Ｌ０２に相当する。
【００２０】
図５の（ｂ）の状態において、ボールねじ１００のねじ軸１０２には張力が一様に作用する。すなわち、テーブル１０６から第１のブラケット１０８側においてボールねじ１００に作用する張力Ｔ１１と、第２のブラケット１１０側のボールねじ１００に作用する張力Ｔ１２とは互いに等しく、次の式（１）が成立する。
【００２１】
Ｔ１１  ＝  Ｔ１２  ＝  Ｅ・｛（Ｌ１−Ｌ０）／Ｌ０｝・Ａ０    ・・・  式（１）
なお、上記式（１）におけるＥはヤング率であり、Ａ０はねじ軸１０２の断面積である。
【００２２】
テーブル１０６が第１のブラケット１０８から距離Ｌ１１だけ離間した位置に配置される図５の（ｂ）の状態において、テーブル１０６を加速又は減速させるトルクがサーボモータ１２０に付与される場合を考える。このとき、テーブル１０６を移動させる力は、ボールねじ１００のねじ軸１０２を伸縮させるように作用する。しかしながら、ねじ軸１０２の両端１０２ａ，１０２ｂは長手方向に固定されているので、ねじ軸１０２の長さＬ１は変化しない。したがって、ねじ軸１０２において長手方向に伸縮する部位と伸長する部位とがそれぞれ局所的に形成され、それら部位の伸縮量は全体としては互いに打消されるようになる。
【００２３】
図５の（ｃ）は、テーブル１０６を第１のブラケット１０８に向かって加速させるようなトルクが発生したときにおいて、ねじ軸１０２が伸縮する状態を示している。（ｃ）の状態において、テーブル１０６は、ねじ軸１０２がその内部において伸縮する結果として第１のブラケット１０８から距離Ｌ２１だけ離間した位置に変位する。ここで、テーブル１０６と第２のブラケット１１０との間の距離をＬ２２とし、さらに第１のブラケット１０８側においてボールねじ１００に作用する張力をＴ２１、第２のブラケット１１０側においてボールねじ１００に作用する張力をＴ２２とすると、Ｌ２１、Ｌ２２、Ｔ２１及びＴ２２の間には次の式（２）〜式（５）が成立する。
【００２４】
Ｔ２１  ＝  Ｅ・｛（Ｌ２１−Ｌ０１）／Ｌ０１｝・Ａ０    ・・・  式（２）
Ｔ２２  ＝  Ｅ・｛（Ｌ２２−Ｌ０２）／Ｌ０２｝・Ａ０    ・・・  式（３）
Ｌ２１＋Ｌ２２  ＝  Ｌ１    ・・・  式（４）
Ｔ２１−Ｔ２２  ＝  Ｆ    ・・・  式（５）
ここで、Ｆはテーブル１０６を第１のブラケット１０８に向かって動作させるように作用する力である。
【００２５】
上記式（２）〜式（５）を解くと、Ｌ２１、Ｌ２２、Ｔ２１及びＴ２は次の式（６）〜式（９）のように表される。
【００２６】
Ｌ２１  ＝  Ｌ１１＋｛（Ｌ０・Ｌ１１・Ｌ１２）／Ｌ１＾２｝・Ｆ／（Ｅ・Ａ０）  ＝  Ｌ１１＋｛（Ｌ０１・Ｌ０２）／Ｌ０｝・Ｆ／（Ｅ・Ａ０）    ・・・  式（６）
Ｌ２２  ＝  Ｌ１２−｛（Ｌ０・Ｌ１１・Ｌ１２）／Ｌ１＾２｝・Ｆ／（Ｅ・Ａ０）  ＝  Ｌ１２−｛（Ｌ０１・Ｌ０２）／Ｌ０｝・Ｆ／（Ｅ・Ａ０）    ・・・  式（７）
Ｔ２１  ＝  Ｅ・Ａ０・｛（Ｌ１−Ｌ０）／Ｌ０｝＋（Ｌ１２／Ｌ１）・Ｆ    ・・・  式（８）
Ｔ２２  ＝  Ｅ・Ａ０・｛（Ｌ１−Ｌ０）／Ｌ０｝−（Ｌ１１／Ｌ１）・Ｆ    ・・・  式（９）
【００２７】
Ｔ１には次の式（１０）
Ｔ１  ＝  Ｅ・｛（Ｌ１−Ｌ０）／Ｌ０｝・Ａ０  ＝  Ｅ・｛（Ｌ１１−Ｌ０１）／Ｌ０１｝・Ａ０  ＝  Ｅ・｛（Ｌ１２−Ｌ０２）／Ｌ０２｝・Ａ０    ・・・  式（１０）
が成立するので、Ｌ１１及びＬ１２はＬ０１及びＬ０２を用いて、次の式（１１）及び式（１２）のようにそれぞれ表される。
【００２８】
Ｌ１１  ＝  （Ｌ１／Ｌ０）・Ｌ０１    ・・・  式（１１）
Ｌ１２  ＝  （Ｌ１／Ｌ０）・Ｌ０２    ・・・  式（１２）
【００２９】
したがって、トルクがサーボモータ１２０に付与される前後の送り軸の位置の変位量であるＬ１１とＬ２１との間の差及びＬ２１とＬ２２との間の差は、次の式（１３）及び式（１４）によって表される。
【００３０】
Ｌ２１−Ｌ１１  ＝  ｛（Ｌ０・Ｌ１１・Ｌ１２）／Ｌ１＾２｝・Ｆ／（Ｅ・Ａ０）  ＝  （Ｌ０／Ｌ１）・｛（Ｌ１−Ｌ１１）／Ｌ１｝・｛Ｆ／（Ｅ・Ａ０）｝・Ｌ１１    ・・・  式（１３）
Ｌ２２−Ｌ１２  ＝  −｛（Ｌ０・Ｌ１１・Ｌ１２）／Ｌ１＾２｝・Ｆ／（Ｅ・Ａ０）  ＝  −（Ｌ０／Ｌ１）・｛（Ｌ１−Ｌ１１）／Ｌ１｝・｛Ｆ／（Ｅ・Ａ０）｝・Ｌ１１    ・・・  式（１４）
【００３１】
なお、力Ｆは、サーボモータ１２０に付与されるトルクＴと、サーボモータ１２０とボールねじ１００との間における動力伝達部の減速比とが分かれば次の式（１５）から導かれ得る。
Ｆ  ＝  （２π／ｌｅ）・Ｔ    ・・・  式（１５）
ここで、ｌｅはボールねじ１００のねじ溝のリード（ピッチの長さ）である。
【００３２】
上記式（１３）に従って、第１のブラケット１０８から距離Ｌ１１に位置するテーブル１０６に対して対応する位置補正量が算出され得る。このように算出される位置補正量を利用してテーブル１０６の位置を補正すれば、ボールねじ１００に予張力が作用している場合であってもテーブル１０６を正確に位置決めできるようになる。
【００３３】
第２のブラケット１１０側において作用する張力Ｔ２２が負であるとき、すなわち張力Ｔ２２がボールねじ１００を収縮する方向に作用する場合を考える。この場合、ボールねじ１００のねじ軸１０２の端部１０２ｂは、第２のブラケット１１０から突出するようになる。したがって、この状態では第２のブラケット１１０側のねじ軸１０２の端部１０２ｂは自由端になるので、ボールねじ１００の伸縮量を計算するのにボールねじ１００に作用する張力を考慮する必要はない。したがって、この場合の位置補正量は、第１のブラケット１０８からテーブル１０６までの距離に応じて、次の式（１６）によって定まる。
【００３４】
Ｌ２１−Ｌ１１  ＝  Ｌ１１・｛Ｆ／（Ｅ・Ａ０）｝    ・・・  式（１６）
なお、張力Ｔ２２が負となるための条件は、式（９）からＦ＞Ｅ・Ａ０・（Ｌ１−Ｌ０）・Ｌ０１である。
【００３５】
次に、ボールねじ１００の熱膨張を考慮する場合について考える。常温ｔ０［℃］におけるボールねじ１００のねじ軸１０２の長さをＬ０とすると、ｔ１［℃］におけるねじ軸の長さＬｔ１は、次の式（１７）で表される。
【００３６】
Ｌｔ１  ＝  Ｌ０・｛１＋α・（ｔ１−ｔ０）｝    ・・・  式（１７）
ここで、式（１７）におけるαは線膨張係数である。
【００３７】
ボールねじ１００の温度がｔ１［℃］まで上昇し、張力を考慮しない状態の長さＬ０がＬｔ１まで伸長する場合、Ｌ０にＬｔ１を代入することによって、ボールねじ１００の熱膨張による影響を補償できる。Ｌ０をＬｔ１で置換すると、ＬＴ１＞Ｌ０であるので、張力Ｔ２２が負に変わるための閾値Ｆはより小さくなる。また、温度ｔ１［℃］におけるボールねじ１００の長さＬｔ１が第１のブラケット１０８と第２のブラケット１１０との間の距離Ｌ１よりも大きくなると、ボールねじ１００に作用していた張力がゼロになる。このような見地に基づいて、距離Ｌ１は、常温よりも２〜３度程度上昇したときのボールねじ１００の長さに対応するよう定められる。このようにすれば、ボールねじ１００がある程度熱膨張する場合であってもボールねじ１００に作用する張力が残存するようになる。
【００３８】
続いて、サーボモータ１２０の動作を制御するサーボ制御装置１０について詳細に述べる。図１は、本発明の実施形態に係るサーボ制御装置１０の構成を示すブロック図である。サーボ制御装置１０は、位置指令作成部１２と、位置検出部１４と、速度指令作成部１６と、速度検出部１８と、トルク指令作成部２０と、移動体位置検出部２２と、熱変位量計算部２４と、張力計算部２６と、判定部２８と、伸縮量計算部３０と、位置補正量計算部３２と、を備えている。さらに、サーボ制御装置１０は、位置指令作成部１２の出力値から位置検出部１４の出力値を減算する第１の減算器３４と、第１の減算器３４の出力値に位置補正量計算部３２の出力値を加算する加算器３６と、速度指令作成部１６の出力値から速度検出部１８の出力値を減算する第２の減算器３８と、を備えている。
【００３９】
位置指令作成部１２は、例えばサーボ制御装置１０によって読出される制御プログラムから位置指令を作成し、サーボモータ１２０に対する位置指令を第１の減算器３４に出力する。なお、サーボモータ１２０に対する位置指令は、サーボモータ１２０の角度位置と、位置決め制御の対象であるボールねじ１００の送り軸の位置との間の対応関係に従って決定される。サーボモータ１２０の角度位置と、送り軸との間の対応関係は、サーボモータ１２０及びボールねじ１００の機械的構成に従って得られる。位置検出部１４は、サーボモータ１２０に関連付けられたエンコーダ１２２によって検出されるサーボモータ１２０の角度位置を取得し、検出角度位置を第１の減算器３４にフィードバックする。第１の減算器３４は、位置指令と検出位置との間の差である位置偏差量を計算し、算出値を加算器３６に送出する。加算器３６は、位置補正量計算部３２の出力値を第１の減算器３４の出力値に加算し、算出値を速度指令作成部１６に出力する。
【００４０】
速度指令作成部１６は、位置偏差量及び位置補正量に基づいて速度指令を作成し、サーボモータ１２０に対する速度指令を第２の減算器３８に出力する。速度検出部１８は、エンコーダ１２２によって検出されるサーボモータ１２０の速度を取得し、検出速度を第２の減算器３８にフィードバックする。第２の減算器３８は、サーボモータ１２０に関連付けられる速度指令及び速度検出値に基づいて速度偏差量を計算し、算出値をトルク指令作成部２０に出力する。トルク指令作成部２０は、速度偏差量に基づいてサーボモータ１２０のトルク指令を作成し、トルク指令をサーボモータ１２０に送出する。サーボモータ１２０は、トルク指令に従って印加される電流によって駆動され、それによりボールねじ１００を介してテーブル１０６を直線移動させる。図示される実施形態においては、サーボモータ１２０について位置フィードバック制御及び速度フィードバック制御が実行されるものの、本発明はこのような特定の実施形態に限定されない。例えば、ボールねじ１００における送り軸の位置についてフィードバック制御を行うことによって、サーボモータ１２０の動作を間接的に制御するようにサーボ制御装置１０を構成してもよい。この場合、送り軸に対する位置指令と、検出される送り軸の位置との間の偏差量に基づいて、サーボモータ１２０に付与されるトルク指令が決定される。このように、本発明との関係において、「送り軸の位置に関連付けられる位置指令」には、送り軸に対する位置指令と、送り軸の位置を間接的に決定できる位置指令（例えば前述したサーボモータ１２０の位置指令）と、の両方の場合が含まれる。
【００４１】
移動体位置検出部２２は、テーブル１０６の位置を検出して、検出された位置情報を張力計算部２６及び伸縮量計算部３０に送出する。テーブル１０６の位置は、例えばサーボモータ１２０の角度位置から求められる。或いは、テーブル１０６の位置を直接検出する図示されない位置センサによって、テーブル１０６の位置が検出されてもよい。熱変位量計算部２４は、例えばサーボモータ１２０の動作状態に応じてボールねじ１００における送り軸の熱変位量を概算する。例えば、所定のサンプリング期間当りのサーボモータ１２０の平均速度に基づいて、ボールねじ１００の送り軸の熱変位量が計算される。熱変位量計算部２４によって計算された熱変位量の値は、張力計算部２６に送出される。
【００４２】
張力計算部２６は、第１のブラケット１０８から第２のブラケット１１０までの間の距離Ｌ１と、第１のブラケット１０８からテーブル１０６までの間の距離Ｌ１１と、熱変位量計算部２４によって計算される熱変位量と、トルク指令作成部２０によって作成されたトルク指令と、に基づいて第２のブラケット１１０側においてボールねじ１００に作用する張力Ｔ２２を計算する。張力Ｔ２２は、前述したように式（９）に従って計算される。張力計算部２６において得られる張力Ｔ２２の算出値は、判定部２８に送出される。判定部２８は、張力Ｔ２２が正であるか否か、すなわち張力Ｔ２２がボールねじ１００を長手方向に伸長させる向きに作用しているか否かについて判定する。判定部２８における判定結果は伸縮量計算部３０に送出される。
【００４３】
伸縮量計算部３０は、伸縮量計算部３０のより詳細な構成を示す図２に示されるように第１の伸縮量計算部３０ａと、第２の伸縮量計算部３０ｂと、をさらに備えている。伸縮量計算部３０は、判定部２８における判定結果に基づいて第１の伸縮量計算部３０ａと、第２の伸縮量計算部３０ｂとのうちのいずれか一方を選択的に動作させるように形成されている。具体的には、第１の伸縮量計算部３０ａは、判定部２８において張力Ｔ２２が正の向き、すなわちボールねじ１００の伸長方向に作用すると判定された場合に、第１のブラケット１０８からテーブル１０６までの間の距離Ｌ１１と、第１のブラケット１０８から第２のブラケット１１０までの間の距離Ｌ１と、トルク指令作成部２０によって作成されたトルク指令と、に基づいてボールねじ１００の伸縮量を計算する。第１の伸縮量計算部３０ａは、前述した式（１３）に従ってボールねじ１００の伸縮量を計算する。
【００４４】
一方、第２の伸縮量計算部３０ｂは、判定部２８において張力Ｔ２２が負の向き、すなわちボールねじ１００の収縮方向に作用すると判定された場合に、第１のブラケット１０８からテーブル１０６までの間の距離Ｌ１１と、トルク指令作成部２０によって作成されたトルク指令と、に基づいてボールねじ１００の伸縮量を計算する。第２の伸縮量計算部３０ｂは、前述した式（１６）に従ってボールねじ１００の伸縮量を計算する。
【００４５】
伸縮量計算部３０によって計算された伸縮量は、位置補正量計算部３２に送出される。位置補正量計算部３２は、ボールねじ１００に付与される予張力の影響が考慮されたボールねじ１００の伸縮量に基づいて、送り軸に対する位置指令に関連付けられるサーボモータ１２０に対する位置指令を補正する位置補正量を計算し、算出値を加算器３６に送出する。
【００４６】
次に、図３を参照して、本実施形態に係るサーボ制御装置の処理について説明する。図３は、本発明の実施形態に係るサーボ制御装置における処理を示すフローチャートである。
【００４７】
サーボ制御装置１０が例えばテーブル１０６を所定の位置に位置決めするよう指令信号を受信すると、位置指令作成部１２が起動されてサーボモータ１２０に対する位置指令が作成される（ステップＳ１０１）。そして、位置指令作成部１２から送出される位置指令と、位置検出部１４から送出される位置検出値と、に基づいて、サーボモータ１２０に対する速度指令が速度指令作成部１６によって作成される（ステップＳ１０２）。次に、速度指令作成部１６から送出される速度指令と、速度検出部１８から送出される速度検出値と、に基づいて、サーボモータ１２０に対するトルク指令がトルク指令作成部２０によって作成される（ステップＳ１０３）。以上のステップＳ１０１からステップＳ１０３までの処理は、サーボモータ１２０の動作制御において通常実行される処理をそのまま適用できる。
【００４８】
続いて、サーボモータ１２０に対して近位に配置される第１のブラケット１０８と、テーブル１０６との間の距離Ｌ１１が移動体位置検出部２２の検出情報に基づいて取得される（ステップＳ１０４）。テーブル１０６の位置は、前述したようにサーボモータ１２０に関連付けられたエンコーダ１２２の検出値を利用して、又はテーブル１０６の位置を検出する位置センサを利用して取得され得る。また、ボールねじ１００の熱変位量が熱変位量計算部２４によって計算される（ステップＳ１０５）。ステップＳ１０５で計算された熱変位量は、例えばサーボモータ１２０の動作状態を考慮して概算される。
【００４９】
次に、サーボモータ１２０に対して遠位に配置される第２のブラケット１１０側においてボールねじ１００に付与される張力Ｔ２２が、張力計算部２６によって計算される（ステップＳ１０６）。張力計算部２６は、（ａ）第１のブラケット１０８からテーブル１０６までの間の距離Ｌ１１と、（ｂ）第１のブラケット１０８から第２のブラケット１１０までの間の距離Ｌ１と、（ｃ）熱変位量計算部２４によって計算される熱変位量と、（ｄ）トルク指令から式（１５）に従って計算される力Ｆと、に基づいて、式（９）に従って張力Ｔ２２を計算する。ここで、ボールねじ１００に張力が付与されていない状態における長さＬ０は、熱変位量計算部２４によって算出された熱変位量に基づいて調整された値によって置換される。
【００５０】
続いて、張力計算部２６によって計算された張力Ｔ２２に基づいて、張力Ｔ２２の作用方向が判定される。すなわち、張力Ｔ２２がボールねじ１００を伸長させる方向に作用するか否かについて、判定部２８によって判定される（ステップＳ１０７）。
【００５１】
ステップＳ１０７において、張力Ｔ２２が伸長方向に作用すると判定された場合、ステップＳ１０８に進み、ボールねじ１００の伸縮量が伸縮量計算部３０によって計算される。具体的には、伸縮量計算部３０の第１の伸縮量計算部３０ａは、（ｅ）第１のブラケット１０８からテーブル１０６までの間の距離Ｌ１１と、（ｆ）第１のブラケット１０８から第２のブラケット１１０までの間の距離Ｌ１と、（ｇ）トルク指令作成部２０によって作成されるトルク指令から式（１５）に従って計算される力Ｆと、に基づいて、式（１３）に従ってボールねじ１００の伸縮量を計算する（ステップＳ１０８）。
【００５２】
ステップＳ１０７において、張力Ｔ２２が伸長方向とは反対向きに作用すると判定された場合、ステップＳ１０９に進み、ボールねじ１００の伸縮量が伸縮量計算部３０によって計算される。具体的には、伸縮量計算部３０の第２の伸縮量計算部３０ｂは、（ｈ）第１のブラケット１０８からテーブル１０６までの間の距離Ｌ１１と、（ｉ）トルク指令作成部２０によって作成されるトルク指令から式（１５）に従って計算される力Ｆと、に基づいて、式（１６）に従ってボールねじ１００の伸縮量を計算する（ステップＳ１０９）。
【００５３】
そして、ステップＳ１０８又はステップＳ１０９において計算されたボールねじ１００の伸縮量に基づいて、ボールねじ１００における送り軸に対する位置補正量が位置補正量計算部３２によって計算される（ステップＳ１１０）。ステップＳ１１０において計算された位置補正量は加算器３６に送出され、サーボモータ１２０に対する位置指令と検出位置との間の誤差である位置偏差量に組入れられる。
【００５４】
このように、本実施形態に係るサーボ制御装置１０によれば、ボールねじ１００に作用する張力を考慮した上でボールねじ１００の伸縮量が算出されるので、ボールねじ１００の送り軸をより正確に位置決めできるようになる。すなわち、ボールねじ１００が加速又は減速される際のボールねじの伸縮量は、ボールねじ１００に作用する張力によって変化する。本実施形態によれば、そのような場合であってもボールねじ１００の位置補正を実施できる。また、サーボモータ１２０と移動体（テーブル１０６）との間の距離に応じてボールねじ１００の伸縮量が局所的に変化するような場合においても、ボールねじ１００の送り軸に対する位置補正が可能になる。さらに、本実施形態によれば、ボールねじ１００が加速又は減速する間の任意の時点においても、ボールねじ１００の送り軸に対する位置補正が可能である。
【００５５】
以上、本発明の実施形態の例を説明したが、本発明を他の態様によっても実施できることは当業者に自明である。特に、本発明の先行技術に係る構成を前述した実施形態に付加し、又は実施形態から削除し、或いは他の公知技術によって実施形態の構成を置換することも本発明の範囲に含まれ得ることに留意されたい。
【符号の説明】
【００５６】
１０    サーボ制御装置
１２    位置指令作成部
１４    位置検出部
１６    速度指令作成部
１８    速度検出部
２０    トルク指令作成部
２２    移動体位置検出部
２４    熱変位量計算部
２６    張力計算部
２８    判定部
３０    伸縮量計算部
３０ａ    第１の伸縮量計算部
３０ｂ    第２の伸縮量計算部
３２    位置補正量計算部
１００    ボールねじ
１０６    テーブル（移動体）
１０８    第１のブラケット（第１の固定部）
１１０    第２のブラケット（第２の固定部）
【図１】
2014087880.tif 000003
【図２】
2014087880.tif 000004
【図３】
2014087880.tif 000005
【図４】
2014087880.tif 000006
【図５】
2014087880.tif 000007
【手続補正書】
【提出日】平成25年10月30日(2013.10.30)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本願の３番目の態様によれば、２番目の態様に係るサーボ制御装置において、前記第１の伸縮量計算部は、前記第１の固定部から前記移動体までの間の距離と、前記第１の固定部から前記第２の固定部までの間の距離と、常温における前記ボールねじの全長に前記熱変位量計算部によって計算される前記熱変位量の値を加算した加算距離と、前記トルク指令作成部によって作成される前記トルク指令と、の積に所定の定数を乗算することによって、前記ボールねじの伸縮量を計算するように構成される、サーボ制御装置が提供される。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
上記式（２）〜式（５）を解くと、Ｌ２１、Ｌ２２、Ｔ２１及びＴ２２は次の式（６）〜式（９）のように表される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
Ｔ１１及びＴ１２には次の式（１０）
Ｔ１１  ＝  Ｔ１２  ＝  Ｅ・｛（Ｌ１−Ｌ０）／Ｌ０｝・Ａ０  ＝  Ｅ・｛（Ｌ１１−Ｌ０１）／Ｌ０１｝・Ａ０  ＝  Ｅ・｛（Ｌ１２−Ｌ０２）／Ｌ０２｝・Ａ０    ・・・  式（１０）
が成立するので、Ｌ１１及びＬ１２はＬ０１及びＬ０２を用いて、次の式（１１）及び式（１２）のようにそれぞれ表される。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
したがって、トルクがサーボモータ１２０に付与される前後の送り軸の位置の変位量であるＬ１１とＬ２１との間の差及びＬ１２とＬ２２との間の差は、次の式（１３）及び式（１４）によって表される。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００３４
【補正方法】変更
【補正の内容】
【００３４】
Ｌ２１−Ｌ１１  ＝  Ｌ１１・｛Ｆ／（Ｅ・Ａ０）｝    ・・・  式（１６）
なお、張力Ｔ２２が負となるための条件は、式（９）からＦ＞Ｅ・Ａ０・（Ｌ１−Ｌ０）／Ｌ０１である。
【手続補正６】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ボールねじを介してサーボモータの回転運動を移動体の直線運動に変換する送り軸を制御するサーボ制御装置において、
前記ボールねじは、該ボールねじの、前記サーボモータに対して近位の端部に配置される第１の固定部と、前記ボールねじの、前記近位の端部とは反対側の端部に配置される第２の固定部と、によって両端において支持されており、
サーボ制御装置は、
前記送り軸の位置に関連付けられる位置指令を作成する位置指令作成部と、
前記サーボモータのトルク指令を作成するトルク指令作成部と、
前記ボールねじの熱変位量を計算する熱変位量計算部と、
前記第１の固定部から前記第２の固定部までの間の距離、前記第１の固定部から前記移動体までの間の距離、前記熱変位量計算部によって計算される前記熱変位量及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記第２の固定部に作用する張力を計算する張力計算部と、
前記張力計算部によって計算される前記張力、前記第１の固定部から前記第２の固定部までの間の距離、前記第１の固定部から前記移動体までの間の距離及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記サーボモータの動作中における前記ボールねじの伸縮量を計算する伸縮量計算部と、
前記伸縮量計算部によって計算される前記伸縮量に基づいて、前記送り軸の位置に関連付けられる前記位置指令を補正する位置補正量を計算する位置補正量計算部と、
を備える、サーボ制御装置。
【請求項２】
前記張力計算部によって計算される前記張力が前記ボールねじを伸長させる伸長方向に作用するか、又は前記ボールねじを収縮させる方向に作用するかを判定する判定部をさらに備えるとともに、
前記伸縮量計算部は、
前記判定部によって前記張力が伸長方向に作用すると判定された場合に、前記第１の固定部から前記移動体までの間の距離、前記第１の固定部から前記第２の固定部までの間の距離及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記ボールねじの伸縮量を計算する第１の伸縮量計算部と、
前記判定部によって前記張力が収縮方向に作用すると判定された場合に、前記第１の固定部から前記移動体までの間の距離及び前記トルク指令作成部によって作成される前記トルク指令に基づいて、前記ボールねじの伸縮量を計算する第２の伸縮量計算部と、をさらに備える、請求項１に記載のサーボ制御装置。
【請求項３】
前記第１の伸縮量計算部は、
前記第１の固定部から前記移動体までの間の距離と、
前記第１の固定部から前記第２の固定部までの間の距離と、
常温における前記ボールねじの全長に前記熱変位量計算部によって計算される前記熱変位量の値を加算した加算距離と、
前記トルク指令作成部によって作成される前記トルク指令と、
の積に所定の定数を乗算することによって、前記ボールねじの伸縮量を計算するように構成される、請求項２に記載のサーボ制御装置。
【請求項４】
前記第２の伸縮量計算部は、
前記第１の固定部から前記移動体までの間の距離と、
前記トルク指令作成部によって作成される前記トルク指令と、
の積に所定の定数を乗算することによって、前記ボールねじの伸縮量を計算するように構成される、請求項２又は３に記載のサーボ制御装置。
【請求項５】
前記第１の固定部から前記第２の固定部までの間の距離は、常温における前記ボールねじの前記全長よりも大きく、
前記ボールねじは、前記ボールねじが伸長する方向において変形自在であるとともに、前記ボールねじが収縮する方向において変形不能であるように前記第１の固定部及び前記第２の固定部によって固定される、請求項１から４のいずれか１項に記載のサーボ制御装置。
【請求項６】
前記熱変位量計算部は、単位時間当りの平均速度に基づいて前記ボールねじの熱変位量を計算するように構成される、請求項１から５のいずれか１項に記載のサーボ制御装置。