(57)【要約】【課題】サーボモータの静摩擦補正を適正に行えるサーボモータ制御装置を提供する。【解決手段】サーボモータ制御装置１は、サーボモータ１２の位置をフィードバック制御する位置制御ループＬ１と、サーボモータ１２の速度をフィードバック制御する速度制御ループＬ２と、サーボモータ１２に対する位置指令値を作成する位置指令作成部２と、サーボモータ１２が停止しているか否かを判断する停止判断部３と、サーボモータ１２の静摩擦補正量を計算する静摩擦補正量計算部５と、サーボモータ１２が停止してから停止前と同方向に動き始める場合に、静摩擦補正量計算部５が計算した静摩擦補正量に所定の変更を行う静摩擦補正量変更部６と、を備えている。静摩擦補正量変更部６は、位置指令作成部２が作成した位置指令値から求められたサーボモータ１２の指令加速度に基づいて、所定の変更を行う。【選択図】図１
2018077575.tif 000002
【特許請求の範囲】
【請求項１】
サーボモータの位置をフィードバック制御するための位置制御ループと、
前記サーボモータの速度をフィードバック制御するための速度制御ループと、
前記サーボモータに対する位置指令値を作成する位置指令作成部と、
前記サーボモータが停止しているか否かを判断する停止判断部と、
前記サーボモータの静摩擦補正量を計算する静摩擦補正量計算部と、
前記サーボモータが停止してから停止前と同方向に動き始める場合に、前記静摩擦補正量計算部が計算した静摩擦補正量に所定の変更を行う静摩擦補正量変更部と、を備え、
前記静摩擦補正量変更部は、前記位置指令作成部が作成した前記位置指令値から求められた前記サーボモータの指令加速度に基づいて、前記所定の変更を行う、サーボモータ制御装置。
【請求項２】
前記停止判断部は、前記位置指令作成部が作成した前記位置指令値を用いて、前記サーボモータが停止しているか否かを判断する、請求項１に記載のサーボモータ制御装置。
【請求項３】
前記速度制御ループにおいて、前記サーボモータの速度に基づいて積分項を算出する積分器を更に備え、
前記静摩擦補正量計算部が計算した静摩擦補正量は、前記積分器が算出した積分項に加算される、請求項１又は２に記載のサーボモータ制御装置。
【請求項４】
前記静摩擦補正量計算部が計算した静摩擦補正量は、前記速度制御ループの速度指令値に加算される、請求項１から３までのいずれかに記載のサーボモータ制御装置。
【請求項５】
前記静摩擦補正量変更部は、前記指令加速度に基づいて決定した係数を前記静摩擦補正量に乗算することにより、前記所定の変更を行う、請求項１から４までのいずれかに記載のサーボモータ制御装置。
【請求項６】
前記静摩擦補正量変更部は、前記指令加速度に基づいて決定した係数を前記静摩擦補正量に乗算し、更に、前記指令加速度に基づいて決定した加算量を加算することにより、前記所定の変更を行う、請求項１から４までのいずれかに記載のサーボモータ制御装置。
【請求項７】
前記係数は、前記指令加速度に比例する、請求項５又は６に記載のサーボモータ制御装置。
【請求項８】
前記係数は、前記指令加速度の平方根に比例する、請求項５又は６に記載のサーボモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーボモータ制御装置に関する。
【背景技術】
【０００２】
従来、サーボモータ制御装置においては、制御対象であるサーボモータが停止状態から動き始めるときに、いわゆる静摩擦補正を行うことにより、速度の立ち上がりが遅れるのを未然に防止しようとする技術が提案されている（例えば、特許文献１、２、３参照）。こうした静摩擦補正を行う際には、速度制御ループの速度指令値（指令速度）に静摩擦補正量を加算していた。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２００１／０２９６２８号
【特許文献２】特開平５−２８２０１９号公報
【特許文献３】特開２０００−１０６３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、この静摩擦補正量としては、サーボモータの指令加速度に依存しない固定値が採用されている。その場合、速度制御ループの速度指令値に過不足が発生し、サーボモータの静摩擦補正が必ずしも適正に行われない恐れがあった。
【０００５】
本発明は、このような事情に鑑み、サーボモータが停止状態から停止前と同方向に動き始める場合に、このサーボモータの静摩擦補正を適正に行うことが可能なサーボモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係るサーボモータ制御装置（例えば、後述のサーボモータ制御装置１）は、サーボモータ（例えば、後述のサーボモータ１２）の位置をフィードバック制御するための位置制御ループ（例えば、後述の位置制御ループＬ１）と、前記サーボモータの速度をフィードバック制御するための速度制御ループ（例えば、後述の速度制御ループＬ２）と、前記サーボモータに対する位置指令値を作成する位置指令作成部（例えば、後述の位置指令作成部２）と、前記サーボモータが停止しているか否かを判断する停止判断部（例えば、後述の停止判断部３）と、前記サーボモータの静摩擦補正量を計算する静摩擦補正量計算部（例えば、後述の静摩擦補正量計算部５）と、前記サーボモータが停止してから停止前と同方向に動き始める場合に、前記静摩擦補正量計算部が計算した静摩擦補正量に所定の変更を行う静摩擦補正量変更部（例えば、後述のオーバライド計算部６）と、を備え、前記静摩擦補正量変更部は、前記位置指令作成部が作成した前記位置指令値から求められた前記サーボモータの指令加速度に基づいて、前記所定の変更を行う。
【０００７】
前記停止判断部は、前記位置指令作成部が作成した位置指令値を用いて、前記サーボモータが停止しているか否かを判断してもよい。
【０００８】
前記速度制御ループにおいて、前記サーボモータの速度に基づいて積分項を算出する積分器（例えば、後述の積分器８３）を更に備え、前記静摩擦補正量計算部が計算した静摩擦補正量は、前記積分器が算出した積分項に加算されてもよい。
【０００９】
前記静摩擦補正量計算部が計算した静摩擦補正量は、前記速度制御ループの速度指令値に加算されてもよい。
【００１０】
前記静摩擦補正量変更部は、前記指令加速度に基づいて決定した係数を前記静摩擦補正量に乗算することにより、前記所定の変更を行ってもよい。
【００１１】
前記静摩擦補正量変更部は、前記指令加速度に基づいて決定した係数を前記静摩擦補正量に乗算し、更に、前記指令加速度に基づいて決定した加算量を加算することにより、前記所定の変更を行ってもよい。
【００１２】
前記係数は、前記指令加速度に比例してもよい。
【００１３】
前記係数は、前記指令加速度の平方根に比例してもよい。
【発明の効果】
【００１４】
本発明によれば、サーボモータ制御装置において、サーボモータが停止状態から停止前と同方向に動き始める場合に、このサーボモータの指令加速度に応じて静摩擦補正を行うことができる。したがって、サーボモータの指令加速度が変わっても、サーボモータの立ち上がり時の軌跡誤差を低減することができ、ひいてはサーボモータの静摩擦補正を適正に行うことが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態に係るサーボモータ制御装置の構成を示すブロック図である。
【図２】本発明の実施形態に係るサーボモータ制御装置における静摩擦補正の手順を示すフローチャートである。
【発明を実施するための形態】
【００１６】
〔実施形態の構成〕
以下、本発明の実施形態の一例について説明する。
図１は、本発明の実施形態に係るサーボモータ制御装置の構成を示すブロック図である。
【００１７】
サーボモータ制御装置１は、図１に示すように、位置制御ループＬ１と、速度制御ループＬ２と、位置指令作成部２と、停止判断部３と、静摩擦補正量計算部５と、静摩擦補正量変更部としてのオーバライド計算部６と、位置制御器７と、速度制御器８と、電流制御器９と、アンプ１０と、積分器１１と、サーボモータ１２と、ボールねじ１３と、ナット１５と、テーブル１６と、検出器１７と、を有している。更に、速度制御器８には、比例ゲイン８１、積分ゲイン８２および積分器８３が内蔵されている。ここで、積分ゲイン８２と積分器８３とは直列に接続されており、これらの積分ゲイン８２および積分器８３と比例ゲイン８１とは並列に接続されている。
【００１８】
位置制御ループＬ１は、サーボモータ１２の位置（具体的には、回転角度）をフィードバック制御するためのものである。速度制御ループＬ２は、サーボモータ１２の速度（具体的には、回転速度）をフィードバック制御するためのものである。
【００１９】
位置指令作成部２は、サーボモータ１２に対する位置指令値を作成する。停止判断部３は、位置指令作成部２が作成した位置指令値を用いて、サーボモータ１２が停止しているか否かを判断する。静摩擦補正量計算部５は、サーボモータ１２の静摩擦補正量を計算し、積分器１１が算出した積分項に加算する形で、速度制御ループＬ２の速度指令値（具体的には、位置指令値を微分した値）に加算する。
【００２０】
オーバライド計算部６は、サーボモータ１２が停止してから停止前と同方向に動き始める場合に、位置指令作成部２が作成した位置指令値から求められたサーボモータ１２の指令加速度（具体的には、指令回転加速度）に基づいて、静摩擦補正量計算部５が計算した静摩擦補正量に所定の変更を行う。
例えば、サーボモータ１２の指令加速度に基づいて決定した係数ｋを静摩擦補正量に乗算することにより、この所定の変更を行う。或いは、サーボモータ１２の指令加速度に基づいて決定した係数ｋを静摩擦補正量に乗算し、更に、サーボモータ１２の指令加速度に基づいて決定した加算量を加算することにより、この所定の変更を行う。
【００２１】
位置制御器７は、位置制御ループＬ１において、位置指令作成部２から位置偏差が入力されて、それに対応する速度指令を速度制御器８に出力する。
【００２２】
速度制御器８は、速度制御ループＬ２において、位置制御器７から速度指令が入力されて、それに対応する電流指令を電流制御器９に出力する。この速度制御器８内の積分器８３は、速度制御ループＬ２において、サーボモータ１２の速度に基づいて積分項を算出する。そして、速度制御器８は、電流制御器９に電流指令を出力するとき、積分器８３で速度偏差に積分ゲイン８２を乗じて積分した値（積分器８３の出力値）に、速度偏差に比例ゲイン８１を乗じた値を加算する。
【００２３】
電流制御器９は、速度制御器８から電流指令が入力されて、それに対応する電気信号をアンプ１０で増幅してサーボモータ１２に出力する。
【００２４】
積分器１１は、位置制御ループＬ１において、サーボモータ１２の速度に基づいて積分項を算出し、この積分項を位置制御器７に出力する。
【００２５】
サーボモータ１２は、電流制御器９からの電気信号に基づき、ボールねじ１３を正逆方向に回転させることにより、ナット１５を介してテーブル１６を水平方向（Ｘ方向）に移動させる。
【００２６】
検出器１７は、サーボモータ１２の速度を検出し、検出した速度を、位置制御ループＬ１において積分器１１に出力するとともに、速度制御ループＬ２において速度制御器８に出力する。
【００２７】
〔静摩擦補正の手順〕
次に、実施形態に係るサーボモータ制御装置における静摩擦補正の手順について説明する。図２は、本発明の実施形態に係るサーボモータ制御装置における静摩擦補正の手順を示すフローチャートである。
【００２８】
まず、ステップＳ１において、停止判断部３は、位置指令作成部２が作成した位置指令値を用いて、サーボモータ１２が停止しているか否かを判断する。この判断がＮＯの場合、サーボモータ１２が回転しており、サーボモータ１２に静摩擦力が作用していないと考えられるため、停止判断部３は、処理をステップＳ２に移行させる。ステップＳ２において、静摩擦補正量計算部５は、サーボモータ１２の静摩擦補正量をゼロとする。その後、ステップＳ７において、静摩擦補正量計算部５は、この静摩擦補正量（ゼロ）で速度制御ループＬ２を補正する。すなわち、この処理の流れの場合、速度制御ループＬ２において、静摩擦補正は行われない。
【００２９】
逆に、ステップＳ１での判断がＹＥＳの場合、停止判断部３は、処理をステップＳ３に移行させて、サーボモータ１２が停止前と同方向に移動するか否かを判断する。この判断がＮＯの場合、停止判断部３は、処理をステップＳ４に移行させる。ステップＳ４において、静摩擦補正量計算部５は、サーボモータ１２の静摩擦補正量をゼロとする。その後、ステップＳ７において、静摩擦補正量計算部５は、この静摩擦補正量（ゼロ）で速度制御ループＬ２を補正する。すなわち、この処理の流れの場合も、速度制御ループＬ２において、静摩擦補正は行われない。
【００３０】
逆に、ステップＳ３での判断がＹＥＳの場合（つまり、サーボモータ１２が停止状態から停止前と同方向に移動する場合）、停止判断部３は、処理をステップＳ５に移行させる。ステップＳ５において、静摩擦補正量計算部５は、サーボモータ１２の静摩擦補正量を計算する。
【００３１】
次いで、ステップＳ６において、オーバライド計算部６は、位置指令作成部２が作成した位置指令値から求められたサーボモータ１２の指令加速度（具体的には、この位置指令値を２階微分した値）に基づいて係数ｋを決定し、この係数ｋを静摩擦補正量に乗算してオーバライドをかける（静摩擦補正量に所定の変更を行う）。この係数ｋは、サーボモータ１２の駆動特性などの状況を踏まえて、例えば、サーボモータ１２の指令加速度に比例するように決定されたり、サーボモータ１２の指令加速度の平方根に比例するように決定されたりする。
【００３２】
こうして、静摩擦補正量にオーバライドがかけられた後（静摩擦補正量に所定の変更が行われた後）、ステップＳ７において、静摩擦補正量計算部５は、このオーバライドされた静摩擦補正量で速度制御ループＬ２を補正する。したがって、この処理の流れの場合には、サーボモータ１２の指令加速度に依存して静摩擦補正量にオーバライドがかけられた上で、速度制御ループＬ２が補正される。
【００３３】
〔実施形態の効果〕
このように、本実施形態によれば、サーボモータ制御装置１において、サーボモータ１２が停止状態から停止前と同方向に動き始める場合に、このサーボモータ１２の指令加速度に応じて静摩擦補正を行うことができる。したがって、サーボモータ１２の指令加速度が変わっても、このサーボモータ１２の立ち上がり時の軌跡誤差を低減することができ、ひいてはサーボモータ１２の静摩擦補正を適正に行うことが可能となる。
【００３４】
しかも、停止判断部３は、上述したとおり、サーボモータ１２が停止しているか否かを判断する際に、位置指令作成部２が作成した位置指令値を用いる。そもそも、この位置指令値は、サーボモータ１２の位置や速度をフィードバック制御するために必須のものである。したがって、停止判断部３は、この位置指令値を流用することにより、サーボモータ１２が停止しているか否かの判断を容易に実行することができる。
【００３５】
また、静摩擦補正量計算部５が計算した静摩擦補正量は、上述したとおり、速度制御ループＬ２の速度指令値に加算されるので、サーボモータ１２の静摩擦補正を行う際に、サーボモータ１２の速度のフィードバック制御を支障なく円滑に実行することができる。
【００３６】
さらに、静摩擦補正量計算部５が計算した静摩擦補正量は、速度制御器８内の積分器８３が算出した積分項に加算されるので、サーボモータ１２の静摩擦補正を行う際に、サーボモータ１２の速度のフィードバック制御を高精度に実行することができる。
【００３７】
〔その他の実施形態〕
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
【００３８】
上述した実施形態では、サーボモータ１２の指令加速度に基づいて係数ｋを決定する際に、サーボモータ１２の指令加速度又はその平方根に比例するように決定する場合について説明した。しかし、係数ｋの決定方法は、これに限るわけではなく、例えば、サーボモータ１２の指令加速度又はその平方根と係数ｋとを１次関数（直線関係）を用いて対応させ、この対応関係に基づいてサーボモータ１２の指令加速度から係数ｋを決定するようにしてもよい。
【００３９】
上述した実施形態では、サーボモータ１２が停止状態から停止前と同方向に動き始める場合に限って、サーボモータ１２の指令加速度に基づいて静摩擦補正を行う場合について説明した。しかし、サーボモータ１２が停止状態から停止前と逆方向に移動する場合（反転時）にも、本発明を同様に適用することができる。
【００４０】
上述した実施形態では、静摩擦補正量計算部５とオーバライド計算部６とは別個に設けられているが、これに制限されず、静摩擦補正量計算部５とオーバライド計算部６とが一体的に構成されていてもよい。
【符号の説明】
【００４１】
１……サーボモータ制御装置
２……位置指令作成部
３……停止判断部
５……静摩擦補正量計算部
６……オーバライド計算部（静摩擦補正量変更部）
１２……サーボモータ
８３……積分器
Ｌ１……位置制御ループ
Ｌ２……速度制御ループ
【図１】
2018077575.tif 000003
【図２】
2018077575.tif 000004