(57)【要約】【課題】制御対象機械の、主に摩擦などの非線形成分を適切に補償し、位置決め精度の高い制御装置、制御方法及びプログラムを提供する。【解決手段】制御装置は、制御対象機械についての観測値が指令値と一致するように制御する制御装置であって、前記指令値と前記観測値との偏差に応じた制御信号を生成する制御信号生成部と、前記制御信号を、前記制御対象機械の非線形成分を補償するための非線形補償制御信号に変換し、前記制御対象機械に向けて出力する非線形補償部と、を備える。前記非線形補償部は、前記制御信号を量子化するときの量子化幅を、前記制御対象機械についての制御状態量に応じて連続的に変化させて、前記非線形補償制御信号に変換する。【選択図】図１
2019159619.tif 000002
【特許請求の範囲】
【請求項１】
制御対象機械についての観測値が指令値と一致するように制御する制御装置であって、
前記指令値と前記観測値との偏差に応じた制御信号を生成する制御信号生成部と、
前記制御信号を、前記制御対象機械の非線形成分を補償するための非線形補償制御信号に変換し、前記制御対象機械に向けて出力する非線形補償部と、
を備え、
前記非線形補償部は、
前記制御信号を量子化するときの量子化幅を、前記制御対象機械についての制御状態量に応じて連続的に変化させて、前記非線形補償制御信号に変換する
制御装置。
【請求項２】
前記非線形補償部は、前記量子化幅を、前記制御対象機械についての速度指令値と速度観測値との偏差である速度偏差に応じて連続的に変化させる
請求項１に記載の制御装置。
【請求項３】
前記制御信号と、前記観測値を当該制御対象機械の逆モデルに入力して得られた結果との偏差を示す補償信号を取得するとともに、当該補償信号を前記制御信号に重畳して外乱補償制御信号を出力する外乱オブザーバを更に備え、
前記非線形補償部は、前記量子化幅を、前記補償信号に応じて連続的に変化させる
請求項１に記載の制御装置。
【請求項４】
前記非線形補償部は、更に、
前記速度指令値が予め規定された判定閾値以下であった場合に、入力された前記制御信号を前記量子化幅で量子化することで前記非線形補償制御信号に変換する
請求項１から請求項３の何れか一項に記載の制御装置。
【請求項５】
前記非線形補償部は、
前記非線形補償制御信号のうち特定の周波数帯に属する成分を除去可能なフィルタ部を更に備える
請求項１から請求項４の何れか一項に記載の制御装置。
【請求項６】
前記制御信号と、前記観測値を当該制御対象機械の逆モデルに入力して得られた結果との偏差を示す補償信号を取得するとともに、当該補償信号を前記制御信号に重畳して外乱補償制御信号を出力する外乱オブザーバを更に備える
請求項１から請求項５の何れか一項に記載の制御装置。
【請求項７】
制御対象機械についての観測値が指令値と一致するように制御する方法であって、
前記指令値と前記観測値との偏差に応じた制御信号を生成するステップと、
前記制御信号を、前記制御対象機械の非線形成分を補償するための非線形補償制御信号に変換し、前記制御対象機械に向けて出力するステップと、
を有し、
前記非線形補償制御信号に変換して出力するステップは、更に、
前記制御信号を量子化するときの量子化幅を、前記制御対象機械についての制御状態量に応じて連続的に変化させて、前記非線形補償制御信号に変換する
制御方法。
【請求項８】
制御対象機械についての観測値が指令値と一致するように制御する制御装置のコンピュータに、
前記指令値と前記観測値との偏差に応じた制御信号を生成するステップと、
前記制御信号を、前記制御対象機械の非線形成分を補償するための非線形補償制御信号に変換し、前記制御対象機械に向けて出力するステップと、
を実行させ、
前記非線形補償制御信号に変換して出力するステップは、更に、
前記制御信号を量子化するときの量子化幅を、前記制御対象機械についての制御状態量に応じて連続的に変化させて、前記非線形補償制御信号に変換する
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、制御方法及びプログラムに関する。
【背景技術】
【０００２】
機械を駆動するアクチュエータでは、主に摩擦要素の非線形性に起因する位置決め精度の低下が生じ、品質の低下が課題となっている。すべり面の摩擦変動によって生じるスティックスリップ現象は、特に低速動作時において、静摩擦による停止と移動を繰り返すことで生じる振動現象であり、階段状の位置決め応答を発生させ、位置決め精度を悪化させる。
【０００３】
摩擦を補償する制御はいくつか提案されている。例えば、油圧アクチュエータではディザ信号を与えることで静摩擦に打ち勝つような力（トルク）を与える方法が知られている。また、電気サーボ系では、動き始めの際に、進行方向に、あらかじめ計測した摩擦に相当する力（トルク）を上乗せして先行指令する方法が知られている。さらに、摩擦特性を摺動面の振る舞いまで厳密にモデル化して、速度に対するその瞬間の摩擦力を精度よく推定し、先行指令する方法も提案されている。
【０００４】
なお、特許文献１には、油圧駆動システムの制御方式について開示されている。特許文献１に記載の制御方式では、連続制御信号を空間的及び時間的に離散した離散値制御信号に変換することが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２１７４１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述したディザ手法では、その振幅が大きすぎると過補償になり、小さすぎると追従性は低下し、調整が難しい。あらかじめ計測した摩擦に相当する力を先行指令する方法にも同様の課題がある。また、摩擦特性を精緻にモデル化する方法は、モデル化そのものが難しく労力を要するものである上に、モデル化誤差に弱いという課題がある。
【０００７】
本発明の目的は、制御対象機械の、主に摩擦などの非線形成分を適切に補償し、位置決め精度の高い制御装置、制御方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明の第１の態様によれば、制御装置は、制御対象機械についての観測値が指令値と一致するように制御する制御装置であって、前記指令値と前記観測値との偏差に応じた制御信号を生成する制御信号生成部と、前記制御信号を、前記制御対象機械の非線形成分を補償するための非線形補償制御信号に変換し、前記制御対象機械に向けて出力する非線形補償部と、を備え、前記非線形補償部は、前記制御信号を量子化するときの量子化幅を、前記制御対象機械についての制御状態量に応じて連続的に変化させて、前記非線形補償制御信号に変換する。
【０００９】
また、本発明の第２の態様によれば、前記非線形補償部は、前記量子化幅を、前記制御対象機械についての速度指令値と速度観測値との偏差である速度偏差に応じて連続的に変化させる。
【００１０】
また、本発明の第３の態様によれば、上述の制御装置は、前記制御信号と、前記観測値を当該制御対象機械の逆モデルに入力して得られた結果との偏差を示す補償信号を取得するとともに、当該補償信号を前記制御信号に重畳して外乱補償制御信号を出力する外乱オブザーバを更に備え、前記非線形補償部は、前記量子化幅を、前記補償信号に応じて連続的に変化させる。
【００１１】
また、本発明の第４の態様によれば、前記非線形補償部は、更に、前記速度指令値が予め規定された判定閾値以下であった場合に、入力された前記制御信号を前記量子化幅で量子化することで前記非線形補償制御信号に変換する。
【００１２】
また、本発明の第５の態様によれば、前記非線形補償部は、前記非線形補償制御信号のうち特定の周波数帯に属する成分を除去可能なフィルタ部を更に備える。
【００１３】
また、本発明の第６の態様によれば、上述の制御装置は、前記制御信号と、前記観測値を当該制御対象機械の逆モデルに入力して得られた結果との偏差を示す補償信号を取得するとともに、当該補償信号を前記制御信号に重畳して外乱補償制御信号を出力する外乱オブザーバを更に備える。
【００１４】
また、本発明の第７の態様によれば、制御方法は、制御対象機械についての観測値が指令値と一致するように制御する方法であって、前記指令値と前記観測値との偏差に応じた制御信号を生成するステップと、前記制御信号を、前記制御対象機械の非線形成分を補償するための非線形補償制御信号に変換し、前記制御対象機械に向けて出力するステップと、を有し、前記非線形補償制御信号に変換して出力するステップは、更に、前記制御信号を量子化するときの量子化幅を、前記制御対象機械についての制御状態量に応じて連続的に変化させて、前記非線形補償制御信号に変換する。
【００１５】
また、本発明の第８の態様によれば、プログラムは、制御対象機械についての観測値が指令値と一致するように制御する制御装置のコンピュータに、前記指令値と前記観測値との偏差に応じた制御信号を生成するステップと、前記制御信号を、前記制御対象機械の非線形成分を補償するための非線形補償制御信号に変換し、前記制御対象機械に向けて出力するステップと、を実行させ、前記非線形補償制御信号に変換して出力するステップは、更に、前記制御信号を量子化するときの量子化幅を、前記制御対象機械についての制御状態量に応じて連続的に変化させて、前記非線形補償制御信号に変換する。
【発明の効果】
【００１６】
上述の発明の各態様によれば、制御対象機械の非線形成分を適切に補償し、位置決め精度の高い制御装置、制御方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００１７】
【図１】第１の実施形態に係る制御装置を具備する工作機械の１軸の駆動構成要素のを示す図である。
【図２】第１の実施形態に係る制御装置の機能構成を示す図である。
【図３】第１の実施形態に係る制御対象機械を物理モデルとして表した図である。
【図４】第１の実施形態に係る非線形補償部の機能構成を示す図である。
【図５】第１の実施形態に係る量子化幅決定部の機能を説明するための図である。
【図６】第１の実施形態の変形例に係る非線形補償部の機能を説明するための図である。
【図７】第１の実施形態の変形例に係る量子化幅決定部の機能を説明するための図である。
【図８】第１の実施形態の変形例に係る制御装置の機能構成を示す図である。
【図９】第１の実施形態の変形例に係る非線形補償部の機能構成を示す図である。
【図１０】第２の実施形態に係る制御装置の機能構成を示す図である。
【図１１】第２の実施形態に係る外乱オブザーバの機能構成を示す図である。
【図１２】第３の実施形態に係る制御装置の機能構成を示す図である。
【図１３】第３の実施形態に係る非線形補償部の機能構成を示す図である。
【発明を実施するための形態】
【００１８】
＜第１の実施形態＞
以下、第１の実施形態に係る制御装置について、図１〜図５を参照しながら説明する。
【００１９】
（工作機械の１軸の駆動構成要素）
図１は、第１の実施形態に係る制御装置を具備する工作機械の１軸の駆動構成要素を示す図である。
図１に示すように、工作機械１は、制御装置１０と制御対象機械１１とを有してなる。
【００２０】
制御装置１０は、制御対象機械１１についての観測値が、上位装置（図示せず）から入力される指令値に一致するように、当該制御対象機械１１を制御する。具体的には、制御装置１０は、制御対象機械１１（モータ１１ａ）についての観測値であるモータ位置観測値θＭと、上位装置から入力されるモータ位置指令値θＭ＊との偏差に応じたトルクτを、制御対象機械１１に対して出力する。
【００２１】
制御対象機械１１は、工作機械１の機械的可動機構であり、例えば、モータ１１ａと、ギア１１ｂと、テーブル１１ｃとを有してなる。図１に示すように、モータ１１ａとギア１１ｂ、及び、ギア１１ｂとテーブル１１ｃは、それぞれ、ボールねじなどの連結部材で連結され、モータ１１ａが発生させたトルクが負荷であるテーブル１１ｃまで伝達する機構を構成する。モータ１１ａは、例えば、よく知られているサーボモータであって、内蔵するエンコーダを通じて、モータ１１ａの回転位置の観測値（モータ位置観測値θＭ）を出力する。
【００２２】
（制御装置の機能構成）
図２は、第１の実施形態に係る制御装置の機能構成を示す図である。
図２に示すように、制御装置１０は、位置比例制御部１００と、非線形補償部１０１と、速度比例積分制御部１０２と、電流制御部１０３と、擬似微分処理部１０４と、を備えている。
【００２３】
位置比例制御部１００は、上位装置から入力されたモータ位置指令値θＭ＊と、モータ１１ａ（図１参照）から入力されたモータ位置観測値θＭとの偏差（θＭ＊−θＭ）に比例する大きさのモータ速度指令値ωＭ＊（制御信号）を生成して出力する。
【００２４】
非線形補償部１０１は、位置比例制御部１００から入力されたモータ速度指令値ωＭ＊を、制御対象機械１１の非線形成分を補償するための非線形補償モータ速度指令値ωＭｑ＊（非線形補償制御信号）に変換して出力する。非線形補償部１０１は、モータ速度指令値ωＭ＊とモータ速度観測値ωＭとの偏差であるモータ速度偏差ΔωＭ（速度偏差）を入力する。非線形補償部１０１の具体的な機能及び動作については後述する。
【００２５】
速度比例積分制御部１０２は、非線形補償部１０１から入力された非線形補償モータ速度指令値ωＭｑ＊と、擬似微分処理部１０４（後述）を介して入力されたモータ速度観測値ωＭとの偏差（ωＭｑ＊−ωＭ）及びその時間積分に比例した大きさのトルク指令値τ＊（制御信号）を生成して出力する。
【００２６】
電流制御部１０３は、速度比例積分制御部１０２から入力されたトルク指令値τ＊に応じたモータ電流を出力する。制御対象機械１１のモータ１１ａ（図１参照）は、このモータ電流により、トルク指令値τ＊に一致するトルクτを出力する。
【００２７】
擬似微分処理部１０４は、モータ１１ａから入力されるモータ位置観測値θＭを擬似微分処理して、モータ速度観測値ωＭを出力する。
【００２８】
（制御対象機械の物理モデル）
図３は、第１の実施形態に係る制御対象機械を物理モデルとして表した図である。
工作機械１の制御対象機械１１は、モータ１１ａについての伝達関数と、ギア１１ｂについての伝達関数と、テーブル１１ｃについての伝達関数との組み合わせにより、図３のようにモデル化される。
【００２９】
図３に示すように、モータ１１ａについての伝達関数は、モータ１１ａの慣性モーメントＪＭ、及び、モータ１１ａの粘性係数ＤＭによって規定される。また、ギア１１ｂについての伝達関数は、ギア１１ｂの慣性モーメントＪｄ、及び、ギア１１ｂの粘性係数Ｄｄによって規定される。また、テーブル１１ｃについての伝達関数は、テーブル１１ｃの慣性モーメントＪＬ、及び、テーブル１１ｃの粘性係数ＤＬによって規定される。
また、伝達関数Ｔ１は、モータ１１ａとギア１１ｂとを連結する連結部材の剛性係数Ｋｇによって規定される。また、伝達関数Ｔ２は、ギア１１ｂとテーブル１１ｃとを連結する連結部材の剛性係数ＫＲによって規定される。
【００３０】
さらに、図３に示すように、テーブル１１ｃについての伝達関数には、制御対象機械１１が有する非線形成分の一つである摩擦特性１１ｆが含まれる。摩擦特性１１ｆは、テーブル１１ｃの速度（テーブル速度観測値ωＬ）に応じて当該テーブル１１ｃが発生させる摩擦抵抗ＴｆＬの特性を示している。摩擦特性１１ｆは、テーブル１１ｃの静止時に発生する静摩擦と、テーブル１１ｃの動作時に発生する動摩擦とを有してなる（動摩擦は静摩擦よりも摩擦抵抗が小さい）。図３に示す摩擦特性１１ｆによれば、静止しているテーブル１１ｃが動き出すとき（静止時から動作時に移行するとき）には静摩擦による高い摩擦抵抗が発生する。また、テーブル１１ｃが一旦動作し始めた後は、動摩擦による低い摩擦抵抗に推移する。
なお、図３には図示を省略しているが、同様の摩擦特性は、テーブル１１ｃのみならず、モータ１１ａ及びギア１１ｂにも存在する。
なお、図３に示した制御対象機械１１の物理モデルは、あくまで、各駆動機構（モータ１１ａ、ギア１１ｂ及びテーブル１１ｃ等）に、摩擦特性を主とする非線形要素が含まれていることを説明するために例示したものであり、制御対象機械１１の実際の物理モデルは、これとは異なるものであってよい。
【００３１】
（非線形補償部の機能構成）
図４は、第１の実施形態に係る非線形補償部の機能構成を示す図である。
図４に示すように、非線形補償部１０１は、サンプルホールド部１０１０と、量子化処理部１０１１と、量子化幅決定部１０１２とを有してなる。
【００３２】
サンプルホールド部１０１０は、連続時間信号である入力信号（後述する誤差積算モータ速度指令値ωＭＣ＊）を離散時間信号に変換して出力する。
量子化処理部１０１１は、サンプルホールド部１０１０の出力信号（離散時間信号）の振幅値（本実施形態においては、誤差積算モータ速度指令値ωＭＣ＊）を量子化幅ξで離散化（量子化）する。
また、後述するように、サンプルホールド部１０１０及び量子化処理部１０１１を通じて時間領域、空間領域で離散化（量子化）されてなる非線形補償モータ速度指令値ωＭｑ＊は、制御対象機械１１の非線形成分（特に、図３に示した摩擦特性１１ｆ等）を補償可能な制御信号となる。
【００３３】
量子化幅決定部１０１２は、量子化処理部１０１１において適用される量子化幅ξをモータ速度偏差ΔωＭに応じた値に決定する。ここで、モータ速度偏差ΔωＭは、モータ速度指令値ωＭ＊とモータ速度観測値ωＭとの偏差（ωＭ＊−ωＭ）である。
【００３４】
伝達関数Ｑは、設計パラメータＱ（ｓ）によって規定される伝達関数である。以下、簡単のため、“Ｑ（ｓ）＝１”であるものとして説明するが、実際には、設計パラメータＱ（ｓ）は、制御対象機械１１の観測手段が有する時間分解能及び空間分解能の量子化誤差がより低減可能なように、適切に設定される。
伝達関数Ｑには、誤差積算モータ速度指令値ωＭＣ＊と非線形補償モータ速度指令値ωＭｑ＊との偏差である量子化誤差Δｑ（＝ωＭＣ＊−ωＭｑ＊）が入力される。
【００３５】
以下、非線形補償部１０１の動作例について説明する。
【００３６】
例えば、量子化処理部１０１１の量子化幅ξが“０．２”であったとする。そして、あるタイミングで、非線形補償部１０１に“０．１５”なるモータ速度指令値ωＭ＊が入力されたとする。そうすると、まず、誤差積算モータ速度指令値ωＭＣ＊は“０．１５”となって、（サンプルホールド部１０１０を介して）量子化処理部１０１１に入力される。“０．１５”なる誤差積算モータ速度指令値ωＭＣ＊が量子化幅ξ“０．２”で量子化された結果、量子化処理部１０１１から“０”なる非線形補償モータ速度指令値ωＭｑ＊が出力される。
この場合、非線形補償部１０１に対する入力値（モータ速度指令値ωＭ＊）が“０．１５”であったにもかかわらず、その出力値（非線形補償モータ速度指令値ωＭｑ＊）が“０”であったため、量子化誤差Δｑ（ωＭＣ＊−ωＭｑ＊）は、“＋０．１５”となる。量子化誤差Δｑは、非線形補償部１０１に入力されるモータ速度指令値ωＭ＊に加算される。この段階でモータ速度指令値ωＭ＊が“０．１５”のままであったとすると、当該モータ速度指令値ωＭ＊（＝０．１５）に、“＋０．１５”なる量子化誤差Δｑが加算される。その結果、誤差積算モータ速度指令値ωＭＣ＊は“０．３”となって量子化処理部１０１１に入力される。“０．３”なる誤差積算モータ速度指令値ωＭＣ＊が量子化幅ξ“０．２”で量子化された結果、量子化処理部１０１１から“０．２”なる非線形補償モータ速度指令値ωＭｑ＊が出力される。
このように、量子化処理部１０１１による量子化に伴い、入力されたモータ速度指令値ωＭ＊よりも低い非線形補償モータ速度指令値ωＭｑ＊が出力される状態になると、当該モータ速度指令値ωＭ＊に対し正の量子化誤差Δｑが徐々に積算され、増加していく。そして、ある時点で、非線形補償モータ速度指令値ωＭｑ＊が、（例えば、“０”から“０．２”へと）ステップ状に上昇する。
【００３７】
非線形補償モータ速度指令値ωＭｑ＊が“０”から“０．２”へとステップ状に上昇した時点で、量子化誤差Δｑは“＋０．１”に減少する。この段階でモータ速度指令値ωＭ＊が“０．１５”のままであったとすると、当該モータ速度指令値ωＭ＊（＝０．１５）に“＋０．１”なる量子化誤差Δｑが加算され、誤差積算モータ速度指令値ωＭＣ＊は“０．２５”となって量子化処理部１０１１に入力される。“０．２５”なる誤差積算モータ速度指令値ωＭＣ＊が量子化幅ξ“０．２”で量子化された結果、量子化処理部１０１１から“０．２”なる非線形補償モータ速度指令値ωＭｑ＊が出力される。これにより、量子化誤差Δｑは“＋０．０５”に減少する。続いて、モータ速度指令値ωＭ＊（＝０．１５）に“＋０．０５”なる量子化誤差Δｑが加算されると、誤差積算モータ速度指令値ωＭＣ＊は“０．２”となって量子化処理部１０１１に入力される。“０．２”なる誤差積算モータ速度指令値ωＭＣ＊が量子化幅ξ“０．２”で量子化された結果、量子化処理部１０１１から“０．２”なる非線形補償モータ速度指令値ωＭｑ＊が出力される。これにより、量子化誤差Δｑは“±０”に減少する。量子化誤差Δｑが“±０”まで減少すると、誤差積算モータ速度指令値ωＭＣ＊は、再び、モータ速度指令値ωＭ＊（＝０．１５）そのものとなって量子化処理部１０１１に入力される。この場合、“０．１５”なる誤差積算モータ速度指令値ωＭＣ＊が量子化幅ξ“０．２”で量子化された結果、量子化処理部１０１１から“０”なる非線形補償モータ速度指令値ωＭｑ＊が出力される。
このように、量子化処理部１０１１による量子化に伴い、モータ速度指令値ωＭ＊よりも高い非線形補償モータ速度指令値ωＭｑ＊が出力される状態になると、積算されていた量子化誤差Δｑは徐々に減少する。そして、ある時点で、非線形補償モータ速度指令値ωＭｑ＊が、（例えば、“０．２”から“０”へと）ステップ状に下降する。
【００３８】
以上のように、非線形補償部１０１の量子化処理部１０１１によって、時間領域及び空間領域において連続信号であったモータ速度指令値ωＭ＊が、時間領域及び空間領域において離散信号である非線形補償モータ速度指令値ωＭｑ＊に変換される。これにより、制御装置１０は、静止状態にあって大きな摩擦抵抗が働いている制御対象機械１１（モータ１１ａ）に対し、インパルス状の非線形補償モータ速度指令値ωＭｑ＊を与えることができる。このことは、大きな摩擦力が働いている物体の位置を微調整するのに対し、ハンマーなどでインパルス状の力を与えると容易になることと同様の効果を発揮する。すなわち、制御装置１０は、非線形補償部１０１の量子化処理により、摩擦特性に起因する制御対象機械１１の非線形成分を補償可能な制御信号を出力することができる。
【００３９】
なお、上述した非線形補償部１０１の動作例は、あくまで非線形補償部１０１の基本的な動作についての説明であり、上述の動作例においては、量子化幅決定部１０１２の動作は考慮されていない。
第１の実施形態に係る非線形補償部１０１は、さらに、量子化幅決定部１０１２の機能により、量子化処理部１０１１で適用される量子化幅ξが動的に変化することを特徴としている。以下、図５を参照しながら、量子化幅決定部１０１２の機能について説明する。
【００４０】
（量子化幅決定部の機能）
図５は、第１の実施形態に係る量子化幅決定部の機能を説明するための図である。
図５に示すように、第１の実施形態に係る量子化幅決定部１０１２は、量子化処理部１０１１に適用する量子化幅ξを、モータ速度偏差ΔωＭ（＝ωＭ＊−ωＭ）に比例するように連続的に増減させる。このような量子化幅決定部１０１２によれば、量子化幅ξは、モータ速度偏差ΔωＭが大きいほど大きくなり、モータ速度偏差ΔωＭが小さいほど小さくなるように、動的に決定される。そうすると、モータ速度偏差ΔωＭが大きい状態では、非線形補償部１０１（図２）の量子化処理が有効となるが、モータ速度偏差ΔωＭが小さい状態においては、量子化幅ξが低減され、非線形補償部１０１の量子化処理が無効化される。
【００４１】
（作用、効果）
以上に説明したように、第１の実施形態に係る制御装置１０は、入力された制御信号（モータ速度指令値ωＭ＊）を、制御対象機械１１の非線形成分を補償するための非線形補償制御信号（非線形補償モータ速度指令値ωＭｑ＊）に変換して出力する非線形補償部１０１を備える。そして、非線形補償部１０１は、入力された制御信号（モータ速度指令値ωＭ＊）を量子化幅ξで量子化することで非線形補償制御信号（非線形補償モータ速度指令値ωＭｑ＊）に変換する。さらに、非線形補償部１０１は、量子化幅ξを、制御対象機械１１についてのモータ速度指令値ωＭ＊とモータ速度観測値ωＭとの偏差であるモータ速度偏差ΔωＭに応じて連続的に変化させる。
【００４２】
以下、このような非線形補償部１０１を有する制御装置１０の作用、効果について説明する。
静止状態にある制御対象機械１１（モータ１１ａ）を所望する位置に移動させようとする場合、当該制御対象機械１１に印加されるトルクτが静摩擦を上回るまでは、制御対象機械１１は静摩擦にトラップされ、入力されるモータ速度指令値ωＭ＊に追随して動くことができない。そのため、制御対象機械１１が静摩擦にトラップされている間は、モータ速度偏差ΔωＭが増加する。量子化幅決定部１０１２は、当該モータ速度偏差ΔωＭの増加に応じて、量子化幅ξを大きい値に決定する。これにより、特に、制御対象機械１１が動き出す前の段階（静摩擦にトラップ中の段階）において、非線形補償部１０１による量子化処理が有効化されることとなる。そうすると、制御装置１０は、動き出す前の段階にある制御対象機械１１に対し、適切に、インパルス状のトルク指令値τ＊を出力することができる。
【００４３】
他方、インパルス状のトルクτが静摩擦に打ち勝って制御対象機械１１が動き始めると、静摩擦に起因する制御対象機械１１の非線形成分の影響は低減される。つまり、制御対象機械１１が一旦動き始めた後は、速度比例積分制御部１０２によるフィードバック制御（速度比例積分制御）だけで、モータ速度指令値ωＭ＊に追随して動くことができるようになる。そのため、制御対象機械１１が一旦動き始めた後は、速度偏差ΔωＭが小さくなる。この段階において、非線形補償部１０１による量子化処理を有効化させたままでいると、むしろ、当該非線形補償部１０１が発生させる量子化された指令に起因して、速度比例積分制御部１０２によるきめ細やかな位置決め処理を阻害してしまう。そこで、制御対象機械１１が一旦動き始めた後（速度偏差ΔωＭが小さい状態に遷移した後）は、速度偏差ωＭに応じて、量子化幅ξを小さい値に決定する。これにより、特に、制御対象機械１１が動き出した後の段階で非線形補償部１０１による量子化処理が無効化されるので、制御装置１０は、動き出した制御対象機械１１に対し、適切に、連続的に変化するトルク指令値τ＊を出力することができる。
【００４４】
以上のように、第１の実施形態に係る制御装置１０は、制御対象機械１１が動き出す前の状態（速度偏差が大きい状態）から、動き出した後の状態（速度偏差が小さい状態）への連続的な遷移に伴って、非線形補償部１０１による量子化処理の“効き”の度合いをシームレスに低減させることができる。このような制御装置１０によれば、制御対象機械１１の、主に摩擦などの非線形成分を適切に補償し、位置決め精度を高めることができる。
【００４５】
＜第１の実施形態の変形例＞
以上、第１の実施形態に係る制御装置１０について詳細に説明したが、制御装置１０の具体的な態様は、上述のものに限定されることはなく、要旨を逸脱しない範囲内において種々の設計変更等を加えることは可能である。
以下、図６〜図９を参照しながら、第１の実施形態の変形例について説明する。
【００４６】
（非線形補償部の機能）
図６は、第１の実施形態の変形例に係る非線形補償部の機能を説明するための図である。
第１の実施形態の変形例に係る非線形補償部１０１は、モータ速度指令値ωＭ＊が予め規定された判定閾値ωＭ＊＿ｔｈ以下であった場合に、入力された制御信号（モータ速度指令値ωＭ＊）を量子化幅ξで量子化して、非線形補償制御信号（非線形補償モータ速度指令値ωＭｑ＊）に変換してもよい。
【００４７】
具体的には、第１の実施形態の変形例に係る非線形補償部１０１は、図６に示す処理フローを実行する。
まず、非線形補償部１０１は、位置比例制御部１００（図２）から入力されるモータ速度指令値ωＭ＊が、所定の判定閾値ωＭ＊＿ｔｈよりも小さいか否かを判定する（ステップＳ０１）。
位置比例制御部１００（図２）から入力されるモータ速度指令値ωＭ＊が所定の判定閾値ωＭ＊＿ｔｈ以下であった場合（ステップＳ０１：ＹＥＳ）、非線形補償部１０１は、量子化処理部１０１１（図４）による量子化処理を実行する（ステップＳ０２）。
他方、位置比例制御部１００から入力されるモータ速度指令値ωＭ＊が所定の判定閾値ωＭ＊＿ｔｈを上回っていた場合（ステップＳ０１：ＮＯ）、非線形補償部１０１は、量子化処理部１０１１（図４）による量子化処理を実行することなく処理を終了する。
【００４８】
以上のような処理によれば、位置比例制御部１００から出力されるモータ速度指令値ωＭ＊が所定の判定閾値ωＭ＊＿ｔｈ以下となる条件を満たしている場合にのみ、非線形補償部１０１による量子化処理が有効となる。
ここで、制御対象機械１１（モータ１１ａ）が静止状態にあって、静摩擦による非線形成分の影響が大きい状態にある場合、モータ速度指令値ωＭ＊が所定の判定閾値ωＭ＊＿ｔｈ以下となる条件を満たしている蓋然性が高い。したがって、上述のような構成とすることで、非線形補償部１０１を、静摩擦に起因する非線形成分の補償に特化させることができる。
【００４９】
（量子化幅決定部の機能）
図７は、第１の実施形態の変形例に係る量子化幅決定部の機能を説明するための図である。
第１の実施形態においては、量子化幅決定部１０１２は、量子化幅ξを、モータ速度偏差ΔωＭに比例するように決定するものとして説明したが、他の実施形態においてはこの態様に限定されない。
例えば、量子化幅決定部１０１２に規定される量子化幅ξとモータ速度偏差ΔωＭとの関係は、図７に示すような関数Ｗ１、Ｗ２で規定されるものであってもよい。
関数Ｗ１の場合、モータ速度偏差ΔωＭがある程度まで低減された時点で量子化幅ξがほとんどゼロになるため、量子化処理を早めに無効化することができる。他方、関数Ｗ２の場合、モータ速度偏差ΔωＭがある程度低減するまでは、量子化幅ξを大きい値のままで維持して、量子化処理を有効化することができる。
関数Ｗ１は、例えば、偶数次数関数等で規定され、関数Ｗ２は、例えば、シグモイド曲線等で規定されるものであってよい。
【００５０】
（制御装置の機能構成）
図８は、第１の実施形態の変形例に係る制御装置の機能構成を示す図である。
第１の実施形態に係る制御装置１０では、非線形補償部１０１は、位置比例制御部１００の後段に配置されるものとして説明したが、他の実施形態においてはこの態様に限定されない。
例えば、図８に示すように、非線形補償部１０１は、速度比例積分制御部１０２の後段に配置される態様とされてもよい。この場合、非線形補償部１０１は、速度比例積分制御部１０２による制御信号であるトルク指令値τ＊を入力とし、当該トルク指令値τ＊が時間領域及び空間領域で離散化されてなる非線形補償トルク指令値τｑ＊（非線形補償制御信号）を出力するものとする。なお、この場合であっても、非線形補償部１０１の量子化幅決定部１０１２（図４）は、モータ速度偏差ΔωＭに応じて量子化幅ξを動的に決定するものとする。
【００５１】
（非線形補償部の機能構成）
図９は、第１の実施形態の変形例に係る非線形補償部の機能構成を示す図である。
第１の実施形態の変形例に係る非線形補償部１０１は、第１の実施形態（図４）と比して、フィルタ部１０１３を備えている点で相違する。
【００５２】
フィルタ部１０１３は、量子化処理部１０１１による量子化処理がなされた非線形補償制御信号（非線形補償モータ速度指令値ωＭｑ＊）を入力する。フィルタ部１０１３は、入力された非線形補償制御信号のうち特定の周波数帯に属する成分を除去可能なフィルタであって、例えば、ノッチフィルタである。
【００５３】
ここで、量子化処理部１０１１によって量子化処理が施された非線形補償制御信号（非線形補償モータ速度指令値ωＭｑ＊）は、インパルス状の信号波形となるため、多数の周波数成分を含んでいる。そうすると、例えば、制御対象機械１１に、特定の周波数で共振振動を起こす共振特性が存在した場合に、多数の周波数成分を含むインパルス状の非線形補償制御信号を入力させると、制御対象機械１１に対して意図しない共振振動を励起させてしまい、結果的に位置決め精度を悪化させることが想定される。そこで、制御対象機械１１について共振振動が生じ得る周波数帯を予め把握するとともに、非線形補償制御信号から、当該周波数帯に属する成分のみを除去することによって、制御対象機械１１に対し、共振振動を励起させないようにすることができる。
【００５４】
＜第２の実施形態＞
次に、第２の実施形態に係る制御装置について、図１０〜図１１を参照しながら説明する。
【００５５】
（制御装置の機能構成）
図１０は、第２の実施形態に係る制御装置の機能構成を示す図である。
第２の実施形態に係る制御装置１０は、第１の実施形態（図２）と比して、外乱オブザーバ１０５を備えている点で相違する。
【００５６】
外乱オブザーバ１０５は、一般に良く知られている外乱オブザーバであって、制御対象機械１１の外乱（非線形成分）を補償する。第２の実施形態に係る外乱オブザーバ１０５は、速度比例積分制御部１０２からのトルク指令値τ＊を入力し、当該トルク指令値τ＊を、外乱を補償可能な外乱補償トルク指令値τ’＊（外乱補償制御信号）に変換して出力する。外乱オブザーバ１０５は、制御対象機械１１（擬似微分処理部１０４）から入力されるモータ速度観測値ωＭに基づいて、外乱補償トルク指令値τ’＊を決定する。
【００５７】
（外乱オブザーバの機能構成）
図１１は、第２の実施形態に係る外乱オブザーバの機能構成を示す図である。
図１１に示すように、外乱オブザーバ１０５は、ハイパスフィルタ１０５０と、逆モデル１０５１とを有してなる。
【００５８】
ハイパスフィルタ１０５０は、トルク指令値τ＊のうち所定の周波数以上の成分のみを通過させる。
【００５９】
逆モデル１０５１は、制御対象機械１１の逆モデルであって、例えば、図３に示す制御対象機械１１のモデルの逆モデルとして規定される。逆モデル１０５１には、制御対象機械１１についての観測値であるモータ速度観測値ωＭが入力される。逆モデル１０５１は、入力されたモータ速度観測値ωＭに基づいて、擬似トルク指令値τ＊＿ｒを出力する。ここで、実際の制御対象機械１１が、逆モデル１０５１に規定されるモデル通りに振る舞うと仮定した場合、制御対象機械１１に入力されたトルク指令値τ＊と、逆モデル１０５１から出力される擬似トルク指令値τ＊＿ｒとは完全に一致するはずである。しかし、実際には、擬似トルク指令値τ＊＿ｒは、制御対象機械１１に入力されたトルク指令値τ＊に対して誤差を有している。この誤差（補償信号ε）は、実際の制御対象機械１１の伝達特性のうち逆モデル１０５１に考慮されていない成分であって、実際の制御対象機械１１が有する未知の外乱（非線形成分）に起因して生じたものである。
そこで、外乱オブザーバ１０５は、トルク指令値τ＊と、モータ速度観測値ωＭを逆モデル１０５１に入力して得られた結果（擬似トルク指令値τ＊＿ｒ）との偏差を示す補償信号εを取得するとともに、当該補償信号εをトルク指令値τ＊に重畳して、外乱補償トルク指令値τ’＊（外乱補償制御信号）を出力する。
このようにして得られた外乱補償トルク指令値τ’＊（＝τ＊＋ε）を、未知の外乱を含む制御対象機械１１に入力することで、制御対象機械１１のモータ速度観測値ωＭをより精度良くモータ速度観測値ωＭに近づけることができる。
【００６０】
また、一般に、外乱オブザーバは、外乱補償に遅れ（モータ速度観測値ωＭを受け付けてから補償することによる無駄時間）が生じることが知られている。このような外乱オブザーバ１０５の遅れに対しては、先行して、非線形補償部１０１が非線形補償制御信号（非線形補償モータ速度指令値ωＭｑ＊）を出力することで、摩擦特性に基づく非線形成分を補償することができる。このように、非線形補償部１０１と外乱オブザーバ１０５とを組み合わせた相乗効果によって、摩擦特性に基づく制御対象機械１１の非線形特性を一層精度よく補償することができる。
【００６１】
＜第２の実施形態の変形例＞
以上、第２の実施形態に係る制御装置１０について詳細に説明したが、制御装置１０の具体的な態様は、上述のものに限定されることはなく、要旨を逸脱しない範囲内において種々の設計変更等を加えることは可能である。
例えば、第２の実施形態に係る外乱オブザーバ１０５は、速度比例積分制御部１０２の後段に配置されるものとして説明したが、他の実施形態においてはこの態様に限定されない。すなわち、他の実施形態に係る外乱オブザーバ１０５は、例えば、位置比例制御部１００の後段に配置されてもよいし、非線形補償部１０１の後段に配置される態様であってもよい。
また、第２の実施形態に係る非線形補償部１０１は、図８を参照して説明した第１の実施形態の変形例と同様に、速度比例積分制御部１０２の後段に配置される態様であってもよい。
【００６２】
＜第３の実施形態＞
次に、第３の実施形態に係る制御装置について、図１２〜図１３を参照しながら説明する。
【００６３】
（制御装置の機能構成）
図１２は、第３の実施形態に係る制御装置の機能構成を示す図である。
第３の実施形態に係る制御装置１０は、第２の実施形態（図１０）と比して、非線形補償部１０１が、外乱オブザーバ１０５で生成される補償信号εを入力する点で相違する。
なお、第３の実施形態に係る外乱オブザーバ１０５は、第２の実施形態（図１１）と同様の構成であるため、詳細な説明を省略する。
【００６４】
（非線形補償部の機能構成）
図１３は、第３の実施形態に係る非線形補償部の機能構成を示す図である。
第３の実施形態に係る非線形補償部１０１は、外乱オブザーバ１０５で生成される補償信号εに応じて量子化幅ξを変化させる点で、第１、第２の実施形態と相違する。
より具体的には、図１３に示すように、非線形補償部１０１の量子化幅決定部１０１２は、外乱オブザーバ１０５（図１２）で生成される補償信号εを入力する。そして、量子化幅決定部１０１２は、入力した補償信号εに比例するように、量子化幅ξを決定する。
【００６５】
補償信号εが大きいほど外乱（摩擦特性に基づく非線形成分の影響）が大きい状態にあると考えられるので、量子化幅ξを大きくして、非線形補償部１０１による量子化処理を有効化する。一方、補償信号εが小さい場合は、外乱（摩擦特性に基づく非線形成分の影響）が小さい状態にあると考えられるので、量子化幅ξを小さくして、非線形補償部１０１による量子化処理を無効化する。
【００６６】
（その他の変形例）
第１の実施形態に係る制御装置１０は、制御対象機械１１についての「制御状態量」の一態様である「モータ速度偏差ΔωＭ」に応じて連続的に量子化幅ξを変化させるものとして説明した。また、第３の実施形態に係る制御装置１０は、「制御状態量」の一態様である「補償信号ε」に応じて連続的に量子化幅ξを変化させるものとして説明した。
しかし、他の実施形態において、「制御状態量」の態様はこれらに限定されない。例えば、「制御状態量」としては、ギア１１ｂについての速度偏差や、テーブル１１ｃ（負荷）についての速度偏差（負荷速度偏差ΔωＬ）に応じて連続的に量子化幅ξを変化させてもよい。また、例えば、モータ１１ａ、ギア１１ｂ、テーブル１１ｃについての位置指令値と位置観測値との偏差（位置偏差）に応じて連続的に量子化幅ξを変化させてもよい。
【００６７】
第１〜第３の実施形態に係る制御対象機械１１は、上記構成であるものとして説明したが、他の実施形態においてはこの態様に限定されない。
例えば、第１〜第３の実施形態（及びその変形例）で説明した制御対象機械１１は、モータ１１ａに加え、ギア１１ｂ及びテーブル１１ｃを備えるものとして説明したが、他の実施形態においてはこの態様に限定されない。
また、制御装置１０の適用対象は、工作機械に限定されない。例えば、制御装置１０は、原子力発電所用バルブを制御対象としてもよい。
【００６８】
なお、上述の各実施形態においては、上述した制御装置１０の各種処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって上記各種処理が行われる。また、コンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【００６９】
上記プログラムは、上述した機能の一部を実現するためのものであってもよい。更に、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００７０】
また、他の実施形態においては、第１〜第３の実施形態（及びその変形例）で説明した制御装置１０が有する各機能の一部を、ネットワークで接続された他のコンピュータが具備する態様であってもよい。
【００７１】
以上のとおり、本発明に係るいくつかの実施形態を説明したが、これら全ての実施形態は、例として提示したものであり、発明の範囲を限定することを意図していない。これらの実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で種々の省略、置き換え、変更を行うことができる。これらの実施形態及びその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７２】
１  工作機械
１０  制御装置
１００  位置比例制御部（制御信号生成部）
１０１  非線形補償部
１０１０  サンプルホールド部
１０１１  量子化処理部
１０１２  量子化幅決定部
１０１３  フィルタ部
１０２  速度比例積分制御部（制御信号生成部）
１０３  電流制御部
１０４  擬似微分処理部
１０５  外乱オブザーバ
１０５０  ハイパスフィルタ
１０５１  逆モデル
１１  制御対象機械
１１ａ  モータ
１１ｂ  ギア
１１ｃ  テーブル
θＭ＊  モータ位置指令値
ωＭ＊  モータ速度指令値（制御信号）
ωＭｑ＊  非線形補償モータ速度指令値（非線形補償制御信号）
τ＊  トルク指令値（制御信号）
τｑ＊  非線形補償トルク指令値（非線形補償制御信号）
τ’＊  外乱補償トルク指令値（外乱補償制御信号）
θＭ  モータ位置観測値
ωＭ  モータ速度観測値
τ  トルク
ε  補償信号
【図１】
2019159619.tif 000003
【図２】
2019159619.tif 000004
【図３】
2019159619.tif 000005
【図４】
2019159619.tif 000006
【図５】
2019159619.tif 000007
【図６】
2019159619.tif 000008
【図７】
2019159619.tif 000009
【図８】
2019159619.tif 000010
【図９】
2019159619.tif 000011
【図１０】
2019159619.tif 000012
【図１１】
2019159619.tif 000013
【図１２】
2019159619.tif 000014
【図１３】
2019159619.tif 000015