(57)【要約】【課題】より安定性の高い制御システムを構築するためのゲイン定数を算出することができる制御系設計支援装置、制御系設計支援方法、及び制御系設計支援プログラムを提供することを目的とする。【解決手段】制御系設計支援装置１は、制御システムの開ループ伝達関数を、予め設定されたゲイン定数を有する線形関数と、非線形要素の記述関数を含む非線形関数とに分離する分離部３と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの出力点と原点とを結ぶ線分を直角三角形の底辺とし、入力信号を非線形要素に与えた場合の出力における所定の次数の高調波の振幅の値を持つ線分を直角三角形の対辺とした場合に、底辺と直角三角形の斜辺のなす角度を算出する角度算出部４と、位相閾値を設定する閾値設定部５と、線形関数の周波数応答における位相の最小値が位相閾値以上となる最大のゲイン定数を算出するゲイン算出部６とを備える。【選択図】図４
2019168777.tif 000002
【特許請求の範囲】
【請求項１】
制御システムの開ループ伝達関数を、線形要素の伝達関数を含み、予め設定されたゲイン定数を有する関数である線形関数と、非線形要素の記述関数の逆関数に−１を乗じた関数である非線形関数とに分離する分離部と、
複素平面上において、前記非線形要素への入力信号の振幅の値を前記非線形関数に入力したときの出力点と原点とを結ぶ線分を直角三角形の底辺とし、前記入力信号を前記非線形要素に与えた場合の出力における所定の次数の高調波の振幅の値を持つ線分を前記直角三角形の対辺とした場合に、前記底辺と前記直角三角形の斜辺のなす角度を算出する角度算出部と、
前記角度に基づいて位相閾値を設定する閾値設定部と、
前記線形関数の周波数応答における位相の最小値が前記位相閾値以上となる最大の前記ゲイン定数を第１ゲイン定数として算出するゲイン算出部と、
を備える制御系設計支援装置。
【請求項２】
前記閾値設定部は、−１８０度に前記角度を加算した値から−９０度の範囲において前記位相閾値を設定する請求項１に記載の制御系設計支援装置。
【請求項３】
前記ゲイン算出部は、複素平面上において、前記線形関数の周波数応答を示す軌跡と、前記非線形要素への前記入力信号の振幅の値を前記非線形関数に入力したときの応答を示す軌跡とが交差しない条件を満たす、前記ゲイン定数の最大値を第２ゲイン定数として算出する請求項１または２に記載の制御系設計支援装置。
【請求項４】
前記ゲイン算出部は、複素平面上において、前記線形関数の周波数応答を示す軌跡と、前記非線形要素への前記入力信号の振幅の値を前記非線形関数に入力したときの応答を示す軌跡とが交差している場合において、振幅が予め設定した最大許容振幅未満であり、周波数が最大許容周波数未満である自励振動が発生するときの前記ゲイン定数の最大値を第３ゲイン定数として算出する請求項３に記載の制御系設計支援装置。
【請求項５】
前記ゲイン算出部において算出された前記第１ゲイン定数、前記第２ゲイン定数、及び前記第３ゲイン定数の中から前記制御システムに対して予め設定された制御仕様を満たす前記ゲイン定数を選定する選定部を備える請求項４に記載の制御系設計支援装置。
【請求項６】
前記制御仕様とは、応答速度である請求項５に記載の制御系設計支援装置。
【請求項７】
制御システムの開ループ伝達関数を、線形要素の伝達関数を含み、予め設定されたゲイン定数を有する関数である線形関数と、符号が負である非線形要素の記述関数の逆関数に−１を乗じた関数である非線形関数とに分離する分離工程と、
複素平面上において、前記非線形要素への入力信号の振幅の値を前記非線形関数に入力したときの出力点と原点とを結ぶ線分を直角三角形の底辺とし、前記入力信号を前記非線形要素に与えた場合の出力における所定の次数の高調波の振幅の値を持つ線分を前記直角三角形の対辺とした場合に、前記底辺と前記直角三角形の斜辺のなす角度を算出する角度算出工程と、
前記角度に基づいて位相閾値を設定する閾値設定工程と、
前記線形関数の周波数応答における位相の最小値が前記位相閾値以上となる最大の前記ゲイン定数を第１ゲイン定数として算出するゲイン算出工程と、
を有する制御系設計支援方法。
【請求項８】
制御システムの開ループ伝達関数を、線形要素の伝達関数を含み、予め設定されたゲイン定数を有する関数である線形関数と、符号が負である非線形要素の記述関数の逆関数に−１を乗じた関数である非線形関数とに分離する分離処理と、
複素平面上において、前記非線形要素への入力信号の振幅の値を前記非線形関数に入力したときの出力点と原点とを結ぶ線分を直角三角形の底辺とし、前記入力信号を前記非線形要素に与えた場合の出力における所定の次数の高調波の振幅の値を持つ線分を前記直角三角形の対辺とした場合に、前記底辺と前記直角三角形の斜辺のなす角度を算出する角度算出処理と、
前記角度に基づいて位相閾値を設定する閾値設定処理と、
前記線形関数の周波数応答における位相の最小値が前記位相閾値以上となる最大の前記ゲイン定数を第１ゲイン定数として算出するゲイン算出処理と、
をコンピュータに実行させるための制御系設計支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御系設計支援装置、制御系設計支援方法、及び制御系設計支援プログラムに関するものである。
【背景技術】
【０００２】
制御システムにガタや摩擦、飽和等の非線形要素が存在すると、それらの非線形要素の影響で制御システムが不安定化し、リミットサイクル（自励振動）を生じる場合がある。
【０００３】
非線形要素を含む制御システムを解析するための方法として、Ｌｙａｐｕｎｏｖの安定定理や、ＬａＳａｌｌｅの定理といった数学的な解析手法があるが、線形の制御システムと比較して解析が複雑化してしまう。
【０００４】
また、非線形システムの安定判別法の一つとして記述関数法がある。例えば、特許文献１では、非線形要素を含む制御システムに対して、非線形要素を記述関数で表現して制御システムの安定判別を行うことが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−２５４３１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、記述関数は、非線形要素を線形近似表現する近似手法であり、非線形要素の出力における基本波のみを考慮し、高調波成分については考慮していない。このため、記述関数を用いて安定限界条件を判定したとしても、非線形要素の出力における高調波成分が起因して、制御システムが不安定となってしまう可能性がある。
【０００７】
本発明は、このような事情に鑑みてなされたものであって、非線形要素から出力される高調波を考慮して、より安定性の高い制御システムを構築するためのゲイン定数を算出することができる制御系設計支援装置、制御系設計支援方法、及び制御系設計支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１態様は、制御システムの開ループ伝達関数を、線形要素の伝達関数を含み、予め設定されたゲイン定数を有する関数である線形関数と、非線形要素の記述関数の逆関数に−１を乗じた関数である非線形関数とに分離する分離部と、複素平面上において、前記非線形要素への入力信号の振幅の値を前記非線形関数に入力したときの出力点と原点とを結ぶ線分を直角三角形の底辺とし、前記入力信号を前記非線形要素に与えた場合の出力における所定の次数の高調波の振幅の値を持つ線分を前記直角三角形の対辺とした場合に、前記底辺と前記直角三角形の斜辺のなす角度を算出する角度算出部と、前記角度に基づいて位相閾値を設定する閾値設定部と、前記線形関数の周波数応答における位相の最小値が前記位相閾値以上となる最大の前記ゲイン定数を第１ゲイン定数として算出するゲイン算出部と、を備える制御系設計支援装置である。
【０００９】
上記のような構成によれば、非線形要素から出力される高調波を考慮して、より安定性の高い制御システムを構築するためのゲイン定数を算出することができる。一般的な記述関数解析は、非線形要素の出力における基本波のみを考慮した近似手法であるため、複素平面上で線形関数と非線形関数とが交差せず理想的に安定となる場合でも、高調波成分に起因して、不安定となる可能性がある。そこで、高調波の振幅を考慮した位相閾値を用いて、線形関数におけるゲイン定数の最大値を算出することとした。このため、高周波成分を考慮した最大のゲイン定数を算出することができ、該ゲイン定数を用いることで、制御系を含む線形関数の特性を向上させつつ、より安定な制御システムを構築することができる。
【００１０】
上記制御系設計支援装置において、前記閾値設定部は、−１８０度に前記角度を加算した値から−９０度の範囲において前記位相閾値を設定することとしてもよい。
【００１１】
上記のような構成によれば、代数計算のみで容易に閾値を設定することができる。
【００１２】
上記制御系設計支援装置において、前記ゲイン算出部は、複素平面上において、前記線形関数の周波数応答を示す軌跡と、前記非線形要素への前記入力信号の振幅の値を前記非線形関数に入力したときの応答を示す軌跡とが交差しない条件を満たす、前記ゲイン定数の最大値を第２ゲイン定数として算出することとしてもよい。
【００１３】
上記のような構成によれば、線形関数と非線形関数とが交差しない条件における最大のゲイン定数を算出することとしたため、制御システムの安定性を保ちつつ、制御系を含む線形関数の特性を向上させることができる。
【００１４】
上記制御系設計支援装置において、前記ゲイン算出部は、複素平面上において、前記線形関数の周波数応答を示す軌跡と、前記非線形要素への前記入力信号の振幅の値を前記非線形関数に入力したときの応答を示す軌跡とが交差している場合において、振幅が予め設定した最大許容振幅未満であり、周波数が最大許容周波数未満である自励振動が発生するときの前記ゲイン定数の最大値を第３ゲイン定数として算出することとしてもよい。
【００１５】
上記のような構成によれば、線形関数と非線形関数とが交差して自励振動が発生する場合であっても、所定の自励振動の最大許容振幅または最大許容周波数となる最大のゲイン定数を算出することとしたため、許容できる自励振動は許容することとして、制御系を含む線形関数の特性を向上させることができる。
【００１６】
上記制御系設計支援装置において、前記ゲイン算出部において算出された前記第１ゲイン定数、前記第２ゲイン定数、及び前記第３ゲイン定数の中から前記制御システムに対して予め設定された制御仕様を満たす前記ゲイン定数を選定する選定部を備えることとしてもよい。
【００１７】
上記のような構成によれば、算出された第１ゲイン定数、第２ゲイン定数、及び第３ゲイン定数の中から、制御仕様を満たすゲイン定数を容易に選定することができる。
【００１８】
上記制御系設計支援装置において、前記制御仕様とは、応答速度であることとしてもよい。
【００１９】
上記のような構成によれば、制御仕様として予め設定された応答速度を満たすゲイン定数を容易に選定することができる。
【００２０】
本発明の第２態様は、制御システムの開ループ伝達関数を、線形要素の伝達関数を含み、予め設定されたゲイン定数を有する関数である線形関数と、符号が負である非線形要素の記述関数の逆関数に−１を乗じた関数である非線形関数とに分離する分離工程と、複素平面上において、前記非線形要素への入力信号の振幅の値を前記非線形関数に入力したときの出力点と原点とを結ぶ線分を直角三角形の底辺とし、前記入力信号を前記非線形要素に与えた場合の出力における所定の次数の高調波の振幅の値を持つ線分を前記直角三角形の対辺とした場合に、前記底辺と前記直角三角形の斜辺のなす角度を算出する角度算出工程と、前記角度に基づいて位相閾値を設定する閾値設定工程と、前記線形関数の周波数応答における位相の最小値が前記位相閾値以上となる最大の前記ゲイン定数を第１ゲイン定数として算出するゲイン算出工程と、を有する制御系設計支援方法である。
【００２１】
本発明の第３態様は、制御システムの開ループ伝達関数を、線形要素の伝達関数を含み、予め設定されたゲイン定数を有する関数である線形関数と、符号が負である非線形要素の記述関数の逆関数に−１を乗じた関数である非線形関数とに分離する分離処理と、複素平面上において、前記非線形要素への入力信号の振幅の値を前記非線形関数に入力したときの出力点と原点とを結ぶ線分を直角三角形の底辺とし、前記入力信号を前記非線形要素に与えた場合の出力における所定の次数の高調波の振幅の値を持つ線分を前記直角三角形の対辺とした場合に、前記底辺と前記直角三角形の斜辺のなす角度を算出する角度算出処理と、前記角度に基づいて位相閾値を設定する閾値設定処理と、前記線形関数の周波数応答における位相の最小値が前記位相閾値以上となる最大の前記ゲイン定数を第１ゲイン定数として算出するゲイン算出処理と、をコンピュータに実行させるための制御系設計支援プログラムである。
【発明の効果】
【００２２】
本発明によれば、非線形要素から出力される高調波を考慮して、より安定性の高い制御システムを構築するためのゲイン定数を算出することができるという効果を奏する。
【図面の簡単な説明】
【００２３】
【図１】本発明の一実施形態に係る制御系設計支援装置が適用されるシステムの概略構成を示す図である。
【図２】複素平面上での安定判別例を示す図である。
【図３】複素平面上での安定判別例を示す図である。
【図４】本発明の一実施形態に係る制御系設計支援装置が備える機能を示した機能ブロック図である。
【図５】本発明の一実施形態に係る角度算出部における角度算出の概念図である。
【図６】本発明の一実施形態に係る角度算出部において算出された角度の例を示すグラフである。
【図７】本発明の一実施形態に係る制御系設計支援装置におけるゲイン定数算出処理のフローチャートを示した図である。
【図８】本発明の一実施形態に係る制御系設計支援装置が適用される工作機械の概略構成を示す図である。
【図９】本発明の一実施形態に係る制御系設計支援装置が適用される工作機械のブロック線図である。
【発明を実施するための形態】
【００２４】
以下に、本発明に係る制御系設計支援装置、制御系設計支援方法、及び制御系設計支援プログラムの一実施形態について、図面を参照して説明する。本実施形態に係る制御系設計支援装置１は、例えば、図１に示すようなブロック線図となる制御システム（以下、単に「システム」という。）に適用される。図１に示すシステム（制御システム）には、制御系（制御装置）と、制御対象の機械系とが含まれており、ブロック線図で表現されているものとする。例えば、システムにおける機械系に非線形要素が含まれている場合であっても、制御系を調整することで、システム全体を安定に運転することが可能となる。本実施形態における制御系設計支援装置１は、制御系を調整（設計）するために必要な適切なゲイン定数を算出することが可能である。
【００２５】
なお、図１に示すシステムは一例であり、複雑なブロック線図の中に非線形要素が含まれるようなシステムであっても本実施形態における制御系設計支援装置１を適用可能である。すなわち、本実施形態の制御系設計支援装置１は、図１のような単純なシステムに限定されず、非線形要素（例えば、ガタや摩擦等）を含むシステム（例えば、航空機や水中航走体等）に幅広く適用することができる。
【００２６】
図１は、本発明の一実施形態に係る制御系設計支援装置１が適用されるフィードバックシステムを示した図である。図１に示すフィードバックシステムは、線形要素の伝達関数Ｇ（ｓ）と、非線形要素の記述関数Ｎ（ａ）とを有しており、システムの出力ｙが入力ｒ側にフィードバックされる構成となっている。なお、本実施形態では、非線形要素がガタ（不感帯幅δ）である場合について説明するが、他の非線形要素（例えば、摩擦や飽和等）であっても同様に適用することが可能である。なお、線形要素の伝達関数Ｇ（ｓ）は周波数（ｓ＝ｊω）を変数としており、非線形要素の記述関数Ｎ（ａ）は、非線形要素へ入力される信号の振幅ａ（基本波の振幅）を変数としている。
【００２７】
システムの安定性を判定するための一手法であるナイキストの安定判別法では、開ループ伝達関数が−１となるときに安定限界条件となる。図１のようなフィードバックシステムにおいても、入力を０として系をＰ点で開いた場合のループ（開ループ）として考えた場合には、ナイキストの安定判別法を適用することができる。具体的には、該開ループより伝達関数（開ループ伝達関数）はＧ（ｓ）・Ｎ（ａ）となり、安定限界条件では以下の（１）式を得る。なお、（１）式は、フィードバックシステムの閉ループ伝達関数より算出される特性方程式と同等となる。
【００２８】
【数１】
2019168777.tif 000003
【００２９】
（１）式を更に式変形すると、以下の（２）式を得ることができる。
【００３０】
【数２】
2019168777.tif 000004
【００３１】
（２）式において、左辺は線形要素の伝達関数（以下、「線形関数」という。）であり、右辺は、非線形要素の記述関数の逆関数に−１を乗じた関数（以下、「非線形関数」という）である。なお、図１に記載のシステムでは、線形要素の伝達関数と線形関数とは同一となる。（２）式より、複素平面上において、線形関数の軌跡（周波数応答）と、非線形関数の軌跡（非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答）とが交差した場合にリミットサイクルが発生することとなる。非線形要素が不感帯の場合、非線形関数は、非線形要素への入力信号の振幅の値が増加するに従って、複素平面上における実軸上を−１から無限大へ変化する関数である。
【００３２】
例えば、線形関数と非線形関数が図２のような関係である場合には、線形関数の軌跡と非線形関数の軌跡は交差しないため、図１に示すシステムは安定であると判定することができる。また、線形関数と非線形関数が図３のような関係である場合には、線形関数の軌跡と非線形関数の軌跡は交差しているため、（１）式の条件が満たされることとなり、図１に示すシステムは不安定（リミットサイクルが発生する状態）であると判定することができる。
【００３３】
例えば、線形関数の軌跡と非線形関数の軌跡とが図２のような関係であり、互いに交点がない場合には、システムとしては安定であるが、リミットサイクルの発生条件まで余裕がある。すなわち、システムの安定性を保ちつつ、制御系を含む線形関数の特性を改善することが可能となる。例えば、線形関数に含まれる制御系において、予め設定したゲイン定数Ｋを変化させることで、制御性能を向上させることが可能である。すなわち、線形関数Ｇ（ｓ）において、ゲイン定数Ｋを可変パラメータとして、線形関数Ｇ（ｓ、Ｋ）をみなす。例えば、制御系設計支援装置１が対象とするシステムに、制御系として、ゲイン定数を用いて表される位置制御部が含まれている場合には、該位置制御部のゲイン定数を可変パラメータとみなして、後述する制御系設計支援装置１の各種処理を実行し、最適なゲイン定数を推定する。本実施形態では、線形関数における制御系に含まれる位置制御部のゲイン定数を可変パラメータとみなすこととする。本実施形態では、制御系設計支援装置１を用いて、システムの安定性を維持できるとともに制御性能を最大化することが可能なゲイン定数Ｋの最適値を算出する。制御系設計支援装置１が対象とするシステムの具体例については、後述する。なお、制御系として他の制御部（例えば、速度制御部等）が備えられている場合には、該他の制御部のゲイン定数を可変パラメータとみなして、後述する制御系設計支援装置１の各種処理を行うこととしてもよい。線形関数における可変パラメータは、適宜設定可能である。すなわち、本実施形態においては、線形関数に含まれる任意のパラメータ（例えば、位置制御部のゲイン定数）を最適化することで、システムの安定性を維持しつつ、性能を向上させる。
【００３４】
制御系設計支援装置１は、予め設定された複数通りの制御仕様に適応するゲイン定数（第１ゲイン定数、第２ゲイン定数、第３ゲイン定数）を算出する。特に、制御系設計支援装置１は、非線形要素から出力される高調波を考慮して、より安定性の高いシステムを構築するためのゲイン定数（第１ゲイン定数）を算出する。システムの設計者は、システムの机上設計時に本実施形態における制御系設計支援装置１を用いることで、設定した制御仕様に適応する最適なゲイン定数を容易に得ることができ、ゲイン定数を用いて最適なシステム設計を行うことが可能となる。
【００３５】
制御系設計支援装置１は、例えば、図示しないＣＰＵ（中央演算装置）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリ、及びコンピュータ読み取り可能な記録媒体等を備えている。後述の各種機能を実現するための一連の処理の過程は、プログラムの形式で記録媒体等に記録されており、このプログラムをＣＰＵがＲＡＭ等に読み出して、情報の加工・演算処理を実行することにより、後述の各種機能が実現される。
【００３６】
図４は、制御系設計支援装置１が備える機能を示した機能ブロック図である。図４に示されるように、制御系設計支援装置１は、開ループ伝達関数算出部２と、分離部３と、角度算出部４と、閾値設定部５と、ゲイン算出部６と、選定部７と、を備えている。
【００３７】
開ループ伝達関数算出部２は、システムにおける開ループ伝達関数を算出する。具体的には、開ループ伝達関数算出部２は、設計者が制御系設計支援装置１に対して入力したシステムのブロック線図（機械系の各数式モデル（伝達関数）、制御系の数式モデル、非線形要素の記述関数等）に対して、開ループ伝達関数を算出する。なお、システムが図１のようなフィードバックシステムである場合には、ナイキストの安定判別法を適用するために、例えばＰ点で閉ループを開いて開ループとし、該開ループにおける開ループ伝達関数を算出する。算出された開ループ伝達関数は、分離部３へ出力される。なお、開ループ伝達関数が制御系設計支援装置１の使用者から直接入力される場合には、開ループ伝達関数算出部２を備えないこととしてもよい。
【００３８】
分離部３は、開ループ伝達関数を、安定限界条件に基づいて、線形要素の伝達関数を含む関数である線形関数と、非線形要素の記述関数の逆関数に−１を乗じた関数である非線形関数とに分離する。具体的には、開ループ伝達関数は、−１と等しくなるときに安定限界条件となる。このため、分離部３は、開ループ伝達関数の安定限界条件から、式変形を行うことで非線形要素の記述関数の逆関数に−１を乗じた関数（非線形関数）と線形要素の伝達関数を含む関数（線形関数）とに分離する。例えば、図１のシステムでは、開ループ伝達関数の安定限界条件は（１）式で表される。分離部３は、（１）式を変形することによって（２）式を算出し、線形関数（（２）式の左辺）と非線形関数（（２）式の右辺）とに分離する。このように、線形関数と非線形関数とに分離することで、周波数を変数とする関数（線形関数）と、非線形要素への入力信号の振幅を変数とする関数（非線形関数）とを別々の関数として分離することができ、複素平面上おける安定解析の見通しをよくすることができる。なお、分離後の線形関数と非線形関数が制御系設計支援装置１の使用者から直接入力される場合には、分離部３を備えないこととしてもよい。
【００３９】
角度算出部４は、複素平面上において、非線形要素への入力信号の振幅の値を非線形関数に入力したときの出力点と原点とを結ぶ線分を直角三角形の底辺とし、入力信号を非線形要素に与えた場合の出力における所定の次数の高調波の振幅の値を持つ線分を直角三角形の対辺とした場合に、底辺と直角三角形の斜辺のなす角度を算出する。なお、本実施形態では、所定の次数の高調波として３次高調波を用いることとする。また、角度算出部４において用いる非線形要素への入力信号とは、システムを動作させた場合に実際に非線形要素へ入力される信号（例えば、正弦波）の振幅である。
【００４０】
角度算出部４における角度算出の概念図を図５に示す。図５において、Ａ１点は、非線形要素へ入力される入力信号の振幅（基本波の振幅）がａ１である時の非線形関数の出力値であり、Ａ２は、非線形要素へ入力される入力信号の振幅（基本波の振幅）がａ２である時の非線形関数の出力値である。そして、円ｃ１における距離Ｌ１は、振幅ａ１の入力信号が非線形要素に入力された場合に出力される信号の３次高調波の振幅であり、円ｃ２における距離Ｌ２は、振幅ａ２の入力信号が非線形要素に入力された場合に出力される信号の３次高調波の振幅である。なお、非線形要素が不感帯の場合、振幅ａ１は振幅ａ２より小さく、非線形要素（不感帯幅δ）に入力される振幅が小さいほど出力信号はひずむため、３次高調波の振幅は大きくなる（Ｌ１＞Ｌ２）。一般的な安定判定法では、線形関数の軌跡が非線形関数の軌跡と交差する場合に不安定であると判定される。すなわち、非線形要素が不感帯の場合は、線形関数の軌跡の位相が−１８０度となる場合に不安定と判定される。しかしながら、高調波を考慮すると、非線形要素へ入力される入力信号の振幅がａ１である時には、円ｃ１で囲まれる範囲内についても、不安定となる可能性がある。すなわち、高調波成分を考慮して、より確実にシステムを安定化させるためには、線形関数の軌跡は、図５に示す円の範囲外になければならない。
【００４１】
実際に非線形要素へ入力される入力信号の振幅をａ１とすると、角度算出部４は、振幅ａ１を非線形関数へ代入した場合における出力値（Ａ１）を算出する。そして、該出力値分の大きさをもつ線分（複素平面上において、非線形関数の出力値Ａ１と原点０とを結ぶ線分）を算出し、直角三角形の底辺として仮想的に設定する。また、角度算出部４は、実際に非線形要素へ入力される該振幅ａ１を持つ入力信号が非線形要素に入力された場合に出力される信号について、３次高調波の振幅（Ｌ１）を算出する。そして、３次高調波の振幅の大きさ（Ｌ１）を持つ線分を、直角三角形の対辺として仮想的に設定する。そして、底辺と対辺が設定された直角三角形について、底辺と斜辺がなす角度θを算出する。なお、角度θについては、逆正接関数を用いるなど様々な方法を適用することができる。
【００４２】
非線形要素の不感帯幅δと非線形要素へ入力される入力信号の振幅ａとの比に基づいて、角度を算出した例を図６に示す。不感帯幅δを一定とすると、入力信号の振幅ａが大きい（ａ／δが大きい）ほど、非線形要素から出力される信号の高調波の振幅は小さくなる（出力信号の歪が小さくなる）ため、角度算出部４によって算出される角度は小さくなる。一方で、入力信号の振幅ａが小さい（ａ／δが小さい）ほど、非線形要素から出力される信号の高調波の振幅は大きくなる（出力信号の歪が大きくなる）ため、角度算出部４によって算出される角度は大きくなる。すなわち、非線形要素の不感帯幅δに対して非線形要素へ入力される入力信号の振幅ａが小さいほど、高周波成分が寄与して、リミットサイクルが発生するかどうか、すなわち安定解析の誤差が大きくなる。
【００４３】
閾値設定部５は、角度に基づいて位相閾値を設定する。具体的には、閾値設定部５は、−１８０度に算出した角度（絶対値）を加算した値から−９０度の範囲において位相閾値を設定する。例えば、閾値設定部５は、−１８０度に角度算出部４で算出した角度を加算した値を位相閾値として算出する。角度算出部４において算出された値が１度であった場合には、閾値設定部５は、−１８０度＋１度（角度算出部４で算出した角度）＝−１７９度を位相閾値と設定する。すなわち、線形関数の軌跡における位相の最小値が−１７９度以上である場合には、高周波が起因したとしてもシステムの安定性を向上させることができる。
【００４４】
ゲイン算出部６は、予め設定された複数の制御仕様に適応する複数のゲイン定数を算出する。本実施形態では、３種類の条件（制御仕様）に対応するゲイン定数をそれぞれ算出する。具体的には、ゲイン算出部６は、線形関数の周波数応答における位相の最小値が位相閾値以上となる最大のゲイン定数を第１ゲイン定数として算出する。また、ゲイン算出部６は、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差しない条件を満たす、ゲイン定数の最大値を第２ゲイン定数として算出する。また、ゲイン算出部６は、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差している場合において、予め設定した最大許容振幅または最大許容周波数のリミットサイクルが発生するときのゲイン定数の最大値を第３ゲイン定数として算出する。なお、本実施形態では、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差しておらず、線形関数におけるゲイン定数を増加させる余裕がある場合を例として説明する。
【００４５】
第１ゲイン定数は、非線形要素の出力における所定の次数の高調波を考慮し、より確実にリミットサイクルを避けることが可能なゲイン定数である。このため、第１ゲイン定数は、第２ゲイン定数及び第３ゲイン定数と比較して最も小さい値となる。第１ゲイン定数を算出するために、ゲイン算出部６は、ゲイン定数（例えば、１）を仮設定し、線形関数の軌跡（周波数応答）を算出する。そして、ゲイン算出部６は、算出した周波数応答においてとり得る位相の最小値を算出し、位相の最小値が位相閾値以上であるか否かを判定する。そして、位相の最小値が位相閾値以上である場合（位相が位相閾値に達しておらず、ゲイン定数を増加する余裕がある状態）には、仮設定したゲイン定数に所定数（例えば、１）を加算することによってゲイン定数を更新する。そして、更新したゲイン定数における線形関数の軌跡（周波数応答）を算出し、算出した周波数応答においてとり得る位相の最小値を算出し、位相の最小値が位相閾値以上であるか否かを判定する。そして、位相の最小値が位相閾値以上である場合には、ゲイン定数に対して更に所定数を加算して更新し、上記の処理を繰り返し実行する。そして、位相の最小値が位相閾値以上でないと判定された場合（位相の最小値が、位相閾値（例えば−１７９度）から−１８０度の範囲内にあり、高調波の影響によりリミットサイクルが発生する可能性のある状態）には、設定されているゲイン定数から該所定数を減算して第１ゲイン定数を算出する。すなわち、ゲイン算出部６は、線形関数の軌跡（周波数応答）においてとり得る位相の最小値が位相閾値以上となる最大のゲイン定数を第１ゲイン定数として算出している。
【００４６】
線形関数におけるゲイン定数が第１ゲイン定数である場合であっても、線形関数の周波数特性は、角度算出部４によって算出された角度以上の位相の余裕を保つことができるため、非線形要素の出力において高調波が影響したとしても、より確実にリミットサイクルを防止することができる。算出された第１ゲイン定数は、選定部７へ出力される。
【００４７】
第２ゲイン定数は、リミットサイクルを避けるために、非線形要素の出力における基本波のみを考慮したゲイン定数である。第２ゲイン定数は、第１ゲイン定数より大きく、第３ゲイン定数より小さい値となる。本実施形態において、第２ゲイン定数は、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差しない条件を満たせばよいため、第１ゲイン定数の算出条件より条件が緩和されている。このため、第２ゲイン定数の算出は、第１ゲイン定数が算出された後に開始される。
【００４８】
第２ゲイン定数を算出するために、ゲイン算出部６は、ゲイン定数を算出した第１ゲイン定数の値（または、算出した第１ゲイン定数の値に所定値を加算した値）として仮設定し、線形関数の軌跡（周波数応答）を算出する。そして、ゲイン算出部６は、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差しているか否かを判定する。そして、交差していない場合には、仮設定したゲイン定数に所定数（例えば、１）を加算することによってゲイン定数を更新する。そして、更新したゲイン定数における線形関数の軌跡（周波数応答）を算出し、上記の処理を繰り返し実行する。そして、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差していると判定された場合には、設定されているゲイン定数から該所定数を減算して、第２ゲイン定数を算出する。すなわち、ゲイン算出部６は、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差しない場合における最大のゲイン定数を第２ゲイン定数として算出する。
【００４９】
線形関数におけるゲイン定数が第２ゲイン定数である場合であっても、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とは交差しないため、リミットサイクルを防止することができる。しかし、第２ゲイン定数は、第１ゲイン定数と比較して、線形関数の周波数応答を示す軌跡がより−１８０度に近くなるため、非線形要素の出力において高調波が影響した場合には、リミットサイクルが発生する可能性がある。しかしながら、第２ゲイン定数は、第１ゲイン定数と比較してより大きな値とすることができるため、制御系を含む線形関数の特性をより向上させることができる。算出された第１ゲイン定数は、選定部７へ出力される。
【００５０】
第３ゲイン定数は、所定の条件においてリミットサイクルの発生を許容した場合におけるゲイン定数である。第３ゲイン定数は、第１ゲイン定数及び第２ゲイン定数より大きい値となる。本実施形態において、第３ゲイン定数は、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差してもよい（リミットサイクルの発生を許容している）ため、第２ゲイン定数の算出条件より条件が緩和されている。このため、第３ゲイン定数の算出は、第２ゲイン定数が算出された後に開始される。
【００５１】
第３ゲイン定数を算出するために、ゲイン算出部６は、ゲイン定数を算出した第２ゲイン定数の値（または、算出した第２ゲイン定数の値に所定値を加算した値）として仮設定し、線形関数の軌跡（周波数応答）を算出する。そして、ゲイン算出部６は、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差している場合に、交差点から、リミットサイクルの振幅と周波数を算出する。そして、リミットサイクルの振幅が最大許容振幅以上であるか否か、及びリミットサイクルの周波数が最大許容周波数以上であるか否かを判定する。そして、両条件が満たされない場合には、仮設定したゲイン定数に所定数（例えば、１）を加算することによってゲイン定数を更新する。そして、更新したゲイン定数における線形関数の軌跡（周波数応答）を算出し、上記の処理を繰り返し実行する。そして、リミットサイクルの振幅が最大許容振幅以上であると判定された場合、またはリミットサイクルの周波数が最大許容周波数以上であると判定された場合には、設定されているゲイン定数から該所定数を減算して、第３ゲイン定数を算出する。すなわち、ゲイン算出部６は、発生するリミットサイクルの振幅が最大許容振幅未満であって、かつ、発生するリミットサイクルの周波数が最大許容周波数未満である場合における最大のゲイン定数を第３ゲイン定数として算出する。
【００５２】
なお、最大許容振幅及び最大許容周波数は、制御系設計支援装置１が適用されるシステムにおいて発生が許容されるリミットサイクルの特性（振幅及び周波数）に基づいて決定される。
【００５３】
線形関数におけるゲイン定数が第３ゲイン定数である場合には、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とは交差するため、最大許容振幅未満の振幅であり、かつ、最大許容周波数未満の周波数をもつリミットサイクルが発生する。しかし、第３ゲイン定数は、第１ゲイン定数及び第２ゲイン定数と比較して、大きな値とすることができるため、制御系を含む線形関数の特性をより向上させることができる。算出された第３ゲイン定数は、選定部７へ出力される。
【００５４】
なお、ゲイン算出部６では、ゲイン定数を更新する場合に所定数（例えば、１）を加算することとしたが、所定数については制御系設計支援装置１が適用されるシステムに応じて適切な値を設定することができる。また、所定数を加算することに限られず、所定数倍（例えば、１．２倍）することとしてもよい。
【００５５】
選定部７は、ゲイン算出部６において算出された第１ゲイン定数、第２ゲイン定数、及び第３ゲイン定数の中から制御系設計支援装置１が適用されるシステムに対して予め設定された制御仕様を満たすゲイン定数を選定する。制御仕様とは、例えば、応答速度等であり、制御系設計支援装置１の使用者によって指定される。ゲイン定数は小さいほど（例えば、第１ゲイン定数）、システムの安定性が確保できるものの、応答速度が劣化する。このため、選定部７は、指定された制御仕様（応答速度）を確保できるとともに、システムの安定性に最も適したゲイン定数を、第１ゲイン定数、第２ゲイン定数、及び第３ゲイン定数の中から自動的に選定する。制御系設計支援装置１の使用者は、選定部７にて選定されたゲイン定数を用いることによって、制御仕様が満たされるシステムを設計することができる。なお、制御系設計支援部は、選定部７によって選定を行わずに、ゲイン算出部６において算出された第１ゲイン定数、第２ゲイン定数、及び第３ゲイン定数をすべて使用者に通知することとしてもよい。
【００５６】
次に、上述の制御系設計支援装置１によるゲイン定数算出処理について図７を参照して説明する。図７に示すフローは、制御系設計支援装置１の使用者によって、ゲイン定数の算出指令がされた場合に開始される。
【００５７】
まず、制御系設計支援装置１が適用されるシステムの開ループ伝達関数を算出する（Ｓ１０１）。次に、開ループ伝達関数を、安定限界条件に基づいて、線形関数と非線形関数とに分離する（Ｓ１０２）。
【００５８】
次に、複素平面上において、非線形要素へ実際に入力される入力信号の振幅の値を非線形関数に入力したときの出力点と原点とを結ぶ線分を直角三角形の底辺とし、該入力信号を非線形要素に与えた場合の出力における所定の次数の高調波の振幅の値を持つ線分を直角三角形の対辺とした場合に、底辺と直角三角形の斜辺のなす角度を算出する（Ｓ１０３）。
【００５９】
次に、算出した角度に基づいて、位相閾値を算出する（Ｓ１０４）。
【００６０】
次に、ゲイン定数を初期値（例えば、１）に設定する（Ｓ１０５）。
【００６１】
次に、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とを算出し、互いに交差しているか否かを判定する（Ｓ１０６）。
【００６２】
互いに交差していない場合（Ｓ１０６のＮＯ判定）には、線形関数の軌跡（周波数応答）と位相閾値に基づく線とが交差していないか否か（交点がないか否か）を判定する（Ｓ１０７）。なお、位相閾値に基づく線とは、例えば位相閾値が−１７９度である場合には、複素平面上において位相が−１７９度（実軸に対して時計回りに−１７９度）となる直線である。換言すると、本実施形態におけるＳ１０７では、非線形要素がガタである場合に、線形関数の軌跡（周波数応答）において位相の最小値を算出し、位相の最小値が位相閾値以上であるか否かを判定している。
【００６３】
線形関数の軌跡と位相閾値に基づく線とが交差していない場合（Ｓ１０７のＹＥＳ判定）には、仮設定したゲイン定数に所定数（例えば、１）を加算し（Ｓ１０８）、Ｓ１０６へ戻る。線形関数の軌跡と位相閾値に基づく線とが交差していない場合（Ｓ１０７のＹＥＳ判定）には、上記の処理が繰り返し実行され、その都度ゲイン定数が更新（Ｓ１０８）される。
【００６４】
線形関数の軌跡と位相閾値に基づく線とが交差している場合（Ｓ１０７のＮＯ判定）には、設定されているゲイン定数から所定数を減算して第１ゲイン定数を算出する（Ｓ１０９）とともに、Ｓ１０８において、設定されているゲイン定数（Ｓ１０９において減算が行われる前のゲイン定数）に更に所定数を加算し（Ｓ１０８）、Ｓ１０６へ戻る。上記の処理は、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とを算出し、互いに交差する（Ｓ１０６のＹＥＳ判定）まで繰り返し実行される。
【００６５】
ゲイン定数の値が増加して、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とを算出し、互いに交差する場合（Ｓ１０６のＹＥＳ判定）には、設定されているゲイン定数から所定数を減算して第２ゲイン定数を算出する（Ｓ１１０）とともに、設定されているゲイン定数（Ｓ１１０において減算が行われる前のゲイン定数）において、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差している点に基づいて、リミットサイクルの振幅と周波数を算出する。そして、リミットサイクルの振幅ａｏが最大許容振幅α以上であるか否か及びリミットサイクルの周波数ｆｏが最大許容周波数β以上であるか否かを判定する（Ｓ１１１）。
【００６６】
そして、両条件が満たされない場合、すなわちリミットサイクルの振幅が最大許容振幅未満であり、かつ、リミットサイクルの周波数が最大許容周波数未満である場合（Ｓ１１１のＮＯ判定）には、ゲイン定数に所定数（例えば、１）を加算することによってゲイン定数を更新する（Ｓ１１２）。なお、リミットサイクルの振幅が最大許容振幅以上である場合、またはリミットサイクルの周波数が最大許容周波数以上である場合（Ｓ１１１のＹＥＳ判定）まで、上記の処理が繰り返し実行され、その都度ゲイン定数が更新（Ｓ１１２）される。
【００６７】
リミットサイクルの振幅が最大許容振幅以上である場合、またはリミットサイクルの周波数が最大許容周波数以上である場合（Ｓ１１１のＹＥＳ判定）には、設定されているゲイン定数から所定数を減算して第３ゲイン定数を算出する（Ｓ１１３）。
【００６８】
本実施形態における制御系設計支援装置１は、図７に示すフローのように、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差していない場合に、ゲイン定数を所定数毎増加させていく。そして、線形関数の周波数応答における位相の最小値が位相閾値以上となる最大のゲイン定数を第１ゲイン定数として算出する。そして、ゲイン定数を更に増加させ、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差しない条件を満たすゲイン定数の最大値を第２ゲイン定数として算出する。そして、ゲイン定数を更に増加させ、複素平面上において、線形関数の周波数応答を示す軌跡と、非線形要素への入力信号の振幅の値を非線形関数に入力したときの応答を示す軌跡とが交差している場合において、振幅が最大許容振幅未満であり、かつ、周波数が最大許容周波数未満であるリミットサイクルが発生するときのゲイン定数の最大値を第３ゲイン定数として算出する。なお、本実施形態では、非線形要素がガタ（不感帯幅δ）である場合を想定しており、非線形関数が複素平面上の負の実軸（−∞から−１）に軌跡を描くため、線形関数の軌跡と非線形関数の軌跡とが交差するか否かは、線形関数の位相特性を監視することのみで判定可能とすることができる。しかしながら、非線形要素がガタ（不感帯幅δ）以外（例えば、リレーやヒステリシス等）であって、非線形関数が複素平面上の負の実軸に軌跡を描かない場合、すなわち、非線形関数の軌跡が虚数成分を持つ場合には、線形関数の位相特性に加えてゲイン特性を監視し、線形関数の軌跡と非線形関数の軌跡とが交差するか否かを監視することとすればよい。
【００６９】
制御系設計支援装置１は、このようにして、システムに与える影響の異なるゲイン定数（第１ゲイン定数、第２ゲイン定数、第３ゲイン定数）を算出する。そして、第１ゲイン定数、第２ゲイン定数、第３ゲイン定数が算出されると、選定部７によって、第１ゲイン定数、第２ゲイン定数、及び第３ゲイン定数の中から制御系設計支援装置１が適用されるシステムに対して予め設定された制御仕様を満たすゲイン定数が自動的に選定される。なお、ゲイン定数の選定が必要でない場合には、制御系設計支援装置１は、第１ゲイン定数、第２ゲイン定数、及び第３ゲイン定数を、制御系設計支援装置１の使用者に通知することとしてもよい。この場合には、使用者は、第１ゲイン定数、第２ゲイン定数、及び第３ゲイン定数の中から適切なゲイン定数を用いて、システムを効率的に設計することができる。
【００７０】
次に、上述の制御系設計支援装置１が適用される具体的なシステムの例について図８を参照して説明する。図８は、制御系設計支援装置１が適用される工作機械１００（テーブル送り軸）の概略構成を示している。図８に示すように、工作機械１００は、サーボモータ１０１と、テーブル１０２と、ボールねじ１０３と、を主な構成として備えている。
【００７１】
サーボモータ１０１は、内部に回転角度を検出する回転検出器を有し、精密な位置決めが可能なサーボモータ１０１である。テーブル１０２は、工作対象物を載せて、サーボモータ１０１の制御によって移動させるための台である。ボールねじ１０３は、ねじ部１０４とナット部１０５とを有しており、サーボモータ１０１の回動を直動に変換する駆動機構である。なお、ナット部１０５とテーブル１０２は結合されている。
【００７２】
サーボモータ１０１が回転すると、回転力がボールねじ１０３のねじ部１０４に伝わり、ねじ部１０４が回転する。ねじ部１０４は回転支持ブラケット１０６に支持されており、ねじ部１０４が回転すると、ナット部１０５がねじ部１０４に沿って直線移動する。そして、ナット部１０５の直線移動に応じてテーブル１０２が直線移動する。これにより、サーボモータ１０１の回転運動がボールねじ１０３によって直動運動に変換される。
【００７３】
図９は、図８に示す工作機械１００（機械系）と、工作機械１００を制御する制御系とを表す数式モデル（ブロック線図）の一例を示した図である。図９において、ＪＭはモータ側イナーシャであり、ＤＭはモータ側制動抵抗であり、ＪＬは負荷側イナーシャであり、ＤＬは負荷側制動抵抗であり、ＫＲはねじり剛性である。図９に示す例では、ガタが非線形要素となる。
【００７４】
図９に示すブロック線図における開ループ伝達関数は、以下の（３）式として算出される。
【００７５】
【数３】
2019168777.tif 000005
【００７６】
なお、（３）式では、速度センサ及び位置センサの特性を無視（速度センサ＝１、位置センサ＝１と理想的に近似）している。また、（３）式では、制御系における位置制御部Ｃｐと速度制御部Ｃｖをそれぞれ、以下の式で表される特性を持つこととしている。
【００７７】
【数４】
2019168777.tif 000006
【００７８】
【数５】
2019168777.tif 000007
【００７９】
なお、（４）式におけるＫｐは、位置制御部における位置比例ゲインであり、定数である。また、（４）式におけるＫｖは、速度制御部における速度比例ゲインであり、Ｔｉは、速度積分時間である。なお、（３）式では、簡単化のためにＴｉを無視している。
【００８０】
（３）式における開ループ伝達関数を、安定限界条件に基づいて線形要素の伝達関数を含む関数である線形関数と、非線形要素の記述関数の逆関数に−１を乗じた関数である非線形関数とに分離すると、以下の（６）式を得る。
【００８１】
【数６】
2019168777.tif 000008
【００８２】
図９に示すブロック線図の開ループ伝達関数を安定限界条件のもとで式変形すると、（６）式に示すように、線形関数と、非線形関数とに分離することができる。このため、図９に示すブロック線図についても、等価的に、図１に示すようなシステムとみなすことができる。すなわち、例えば図９に示されるシステムの位置制御部の特性（（４）式）において、Ｋｐをゲイン定数Ｋとして可変パラメータとみなすことができる。すなわち、線形関数Ｇ（ｓ）を、Ｇ（ｓ、Ｋ（＝Ｋｐ））とみなすことができる。そして、Ｋｐをゲイン定数Ｋとして上記の制御系設計支援装置１の処理を実行させることによって、ゲイン定数（第１ゲイン定数、第２ゲイン定数、第３ゲイン定数）を算出することが可能となる。システムの設計者は、算出されたゲイン定数（第１ゲイン定数、第２ゲイン定数、第３ゲイン定数）を用いて、位置制御部における特性Ｋｐを設計することができる。
【００８３】
制御系設計支援装置１の使用者は、第１ゲイン定数、第２ゲイン定数、第３ゲイン定数の中から適切なゲイン定数を選定（または選定部７により自動的に選定）し、該ゲイン定数を図９に示すブロック線図に適用することによってシステム設計を行う。具体的には、図９のブロック線図における制御系（位置制御部や速度制御部）の特性を、制御系設計支援装置１により算出したゲイン定数に基づいて改良し、システムを最適化する。なお、制御系設計支援装置１を図８に示す工作機械１００の実装し、また、ガタの不感帯幅δを自動検出することで、ガタの経年変化に対応した適切なゲイン定数を自動的に算出でき、制御系（位置制御部及び速度制御部）の制御パラメータを再調整することが可能となる。すなわち、非線形要素が経年変化したとしても、ゲイン定数を随時最適化して、システムの安定状態を維持することができる。
【００８４】
なお、制御系設計支援装置１において算出したゲイン定数ではリミットサイクルを避けることができない場合や、制御仕様を満たすことができない場合には、位相補償器（位相進み／遅れ補償器）を更に追加することとしてもよい。例えば、制御系設計支援装置１において算出したゲイン定数（第１ゲイン定数、第２ゲイン定数、第３ゲイン定数）の中から、応答速度条件を満たすゲイン定数を選定し、ゲイン定数を決定する。その上で、システムを安定化（リミットサイクルを確実に防止）するために、位相補償器をシステムに組み込めばよい。
【００８５】
以上説明したように、本実施形態に係る制御系設計支援装置１、制御系設計支援方法、及び制御系設計支援プログラムによれば、非線形要素から出力される高調波を考慮して、より安定性の高い制御システムを構築するためのゲイン定数を算出することができる。一般的な記述関数解析は、非線形要素の出力における基本波のみを考慮した近似手法であるため、安定限界条件から算出された線形関数と非線形関数とが交差していなくても、高調波成分が起因して、不安定となる可能性がある。そこで、高調波の振幅を考慮した位相閾値を用いて、線形関数におけるゲイン定数の最大値を算出することとした。このため、高周波成分を考慮した最大のゲイン定数を算出することができ、該ゲイン定数を用いることで、制御系を含む線形関数の特性を向上させつつ、より安定な制御系を構築することができる。
【００８６】
また、線形関数と非線形関数とが交差しない条件における最大のゲイン定数を算出することとした。このため、システムの安定性を保ちつつ、制御系を含む線形関数の特性を向上させることができる。
【００８７】
また、線形関数と非線形関数とが交差してリミットサイクルが発生する場合であっても、所定のリミットサイクル（最大許容振幅条件及び最大許容周波条件を満たすリミットサイクル）を許容して、より大きなゲイン定数を算出することとした。このため、制御系を含む線形関数の特性をより向上させることができる。
【００８８】
また、算出された第１ゲイン定数、第２ゲイン定数、及び第３ゲイン定数の中から、制御仕様を満たすゲイン定数を容易に選定することができる。選定されたゲイン定数を用いることで、制御系を含む線形関数の特性を向上させつつ、より安定な制御系を構築することができる。
【００８９】
また、制御系設計支援装置１を用いることによって、例えば机上検討の段階で適切なゲイン定数を算出することができる。特に、第１ゲイン定数は、一般的な記述関数解析では考慮できない高調波成分まで考慮して、システムの安定性を向上させることが可能となる。また、実験段階における制御系の微調整の手間を削減することができる。
【００９０】
本発明は、上述の実施形態のみに限定されるものではなく、発明の要旨を逸脱しない範囲において、種々変形実施が可能である。
【００９１】
例えば、制御系設計支援装置１を、システムに実装することとしてもよい。例えば、非線形要素であるガタの不感帯幅δは、経年劣化等によって変化する可能性がある。このため、制御系設計支援装置１をシステムに実装し、経年変化した不感帯要素の状態に合わせて適切なゲイン定数に更新（例えば、システムの起動時等）することとすることで、リミットサイクルの発生をより確実に防ぎ、安定運転を持続することが可能となる。
【００９２】
また、本実施形態における制御系設計支援装置１は、実施例にて説明した工作機械１００に限定されず、様々なシステム（機械）に適用することが可能となる。例えば、水中航走体や航空機等に適用することができる。
【符号の説明】
【００９３】
１      ：制御系設計支援装置
２      ：開ループ伝達関数算出部
３      ：分離部
４      ：角度算出部
５      ：閾値設定部
６      ：ゲイン算出部
７      ：選定部
１００  ：工作機械
１０１  ：サーボモータ
１０２  ：テーブル
１０３  ：ボールねじ
１０４  ：ねじ部
１０５  ：ナット部
１０６  ：回転支持ブラケット
【図１】
2019168777.tif 000009
【図２】
2019168777.tif 000010
【図３】
2019168777.tif 000011
【図４】
2019168777.tif 000012
【図５】
2019168777.tif 000013
【図６】
2019168777.tif 000014
【図７】
2019168777.tif 000015
【図８】
2019168777.tif 000016
【図９】
2019168777.tif 000017