(57)【要約】【課題】制御系の設計において、制御対象の周波数応答および補償要素の周波数応答から制御系のステップ応答、ランプ応答などの時間応答をシミュレーションすることにより、設計した補償要素を組み込んだ実機を構成することなく、補償要素の設計の段階で時間応答を予測し、補償要素の設計を評価することを可能にする装置を提供する。【解決手段】制御対象の周波数応答を測定するため、正弦波信号、ステップ信号などの測定信号を発生する信号発生部と、これらの信号を制御系に出力し、その応答から制御系の開ループ系および閉ループ系の周波数応答を計算する周波数応答計算部を備える。また、時間応答を計算するため、前記測定信号により測定した開ループ系周波数応答と補償要素の周波数応答から補償後の閉ループ系周波数応答を計算する閉ループ系周波数応答計算部と、補償後の閉ループ系周波数応答から制御系の時間応答を計算する時間応答計算部を備える。【選択図】図１
2016194916.tif 000002
【特許請求の範囲】
【請求項１】
制御対象を制御するためのフィードバック要素を含む制御系において、目標値信号ｘ１（ｔ）を前記制御系に与えたときの前記制御対象の制御量の時間応答ｃ（ｔ）を算出する制御系の時間応答シミュレーション方法であって、
前記制御系を前記制御対象と接続した状態で、前記制御系に周波数を掃引した正弦波信号ｘ０（ｔ）を与えて、前記制御系における前記制御対象の制御量信号ｙ１（ｔ）を測定する測定ステップと、
前記測定ステップで測定した前記制御量信号ｙ１（ｔ）に基づいて、前記制御系の開ループ系周波数応答Ｙ０ｏ（ω）を求める補償前周波数応答算出ステップと、
前記補償前周波数応答算出ステップで求めた前記開ループ系周波数応答Ｙ０ｏ（ω）と、与えられた補償要素の周波数応答ＹＣ（ω）とに基づいて、前記補償要素による補償後の閉ループ系周波数応答Ｚ０ｃ（ω）を求める補償後周波数応答算出ステップと、
前記補償後周波数応答算出ステップで求めた前記補償後の閉ループ系周波数応答Ｚ０ｃ（ω）に基づいて、前記目標値信号ｘ１（ｔ）に対する前記制御系の前記時間応答ｃ（ｔ）を求める時間応答算出ステップと、
を具備することを特徴とする制御系の時間応答シミュレーション方法。
【請求項２】
制御対象を制御するためのフィードバック要素を含む制御系において、目標値信号ｘ１（ｔ）を前記制御系に与えたときの前記制御対象の制御量の時間応答ｃ（ｔ）を算出する制御系の時間応答シミュレーション方法であって、
前記制御系を前記制御対象と接続した状態で、前記制御系に前記目標値信号ｘ１（ｔ）を与えて、前記制御系における前記制御対象の制御量信号ｙ１（ｔ）を測定する測定ステップと、
前記測定ステップで測定した前記制御量信号ｙ１（ｔ）に基づいて、前記制御系の開ループ系周波数応答Ｙ１ｏ（ω）を求める補償前周波数応答算出ステップと、
前記補償前周波数応答算出ステップで求めた前記開ループ系周波数応答Ｙ１ｏ（ω）と、与えられた補償要素の周波数応答ＹＣ（ω）とに基づいて、補償後の閉ループ系周波数応答Ｚ１ｃ（ω）を求める補償後周波数応答算出ステップと、
前記補償後周波数応答算出ステップで求めた前記補償後の閉ループ系周波数応答Ｚ１ｃ（ω）に基づいて、前記目標値信号ｘ１（ｔ）に対する前記制御系の前記時間応答ｃ（ｔ）を求める時間応答算出ステップと、
を具備することを特徴とする制御系の時間応答シミュレーション方法。
【請求項３】
制御対象を制御するためのフィードバック要素を含む制御系において、目標値信号ｘ１（ｔ）を前記制御系に与えたときの前記制御対象の制御量の時間応答ｃ（ｔ）を算出する制御系の時間応答シミュレーション方法であって、
前記制御系を前記制御対象と接続した状態で、前記制御系に前記目標値信号ｘ１（ｔ）を与えて、前記制御系における前記制御対象の制御量信号ｙ１（ｔ）を測定するととともに、前記制御系に周波数を掃引した正弦波信号ｘ０（ｔ）を与えて、前記制御系における前記制御対象の制御量信号ｙ１（ｔ）を測定する測定ステップと、
前記測定ステップで前記目標値信号ｘ１（ｔ）を与えて測定した前記制御量信号ｙ１（ｔ）に基づいて、前記制御系の開ループ系周波数応答Ｙ１ｏ（ω）を求めるとともに、前記測定ステップで前記正弦波信号ｘ０（ｔ）を与えて測定した前記制御量信号ｙ１（ｔ）に基づいて、前記制御系の開ループ系周波数応答Ｙ０ｏ（ω）を求める補償前周波数応答算出ステップと、
低周波数領域の周波数応答は、前記補償前周波数応答算出ステップで求めた前記開ループ系周波数応答Ｙ１ｏ（ω）であり、高周波数領域の周波数応答は、前記補償前周波数応答算出ステップで求めた前記開ループ系周波数応答Ｙ０ｏ（ω）である、開ループ系結合周波数応答Ｙ２ｏ（ω）を求める周波数応答結合ステップと、
前記周波数応答結合ステップで求めた前記開ループ系結合周波数応答Ｙ２ｏ（ω）と、与えられた補償要素の周波数応答ＹＣ（ω）とに基づいて、補償後の閉ループ系周波数応答Ｚ２ｃ（ω）を求める補償後周波数応答算出ステップと、
前記補償後周波数応答算出ステップで求めた前記補償後の閉ループ系周波数応答Ｚ２ｃ（ω）に基づいて、前記目標値信号ｘ１（ｔ）に対する前記制御系の前記時間応答ｃ（ｔ）を求める時間応答算出ステップと、
を具備することを特徴とする制御系の時間応答シミュレーション方法。
【請求項４】
前記補償前周波数応答算出ステップでは、前記制御量信号ｙ１（ｔ）に基づいて、閉ループ系周波数応答Ｙ１ｃ（ω）若しくは閉ループ系周波数応答Ｙ０ｃ（ω）を求め、
前記周波数応答結合ステップでは、前記開ループ系結合周波数応答Ｙ２ｏ（ω）を、前記補償前周波数応答算出ステップで求めた前記閉ループ系周波数応答Ｙ１ｃ（ω）若しくは閉ループ系周波数応答Ｙ０ｃ（ω）の共振周波数が前記低周波数領域に含まれるように構成することを特徴とする請求項３に記載の制御系の時間応答シミュレーション装置。
【請求項５】
前記測定ステップにおいて、前記制御量信号ｙ１（ｔ）と同じ条件で、前記制御対象への入力値信号ｙ２（ｔ）を測定し、
前記補償前周波数応答算出ステップでは、前記制御系の開ループ系周波数応答（Ｙ０ｏ（ω），Ｙ１ｏ（ω））を、前記測定ステップで測定した前記制御量信号ｙ１（ｔ）に基づいて求めた閉ループ系周波数応答（Ｙ０ｃ（ω），Ｙ１ｃ（ω））と、前記測定ステップで測定した前記入力値信号ｙ２（ｔ）とを用いて求めることを特徴とする請求項１又は２に記載の制御系の時間応答シミュレーション方法。
【請求項６】
前記測定ステップにおいて、前記制御系に周波数を掃引した正弦波信号ｘ０（ｔ）を与えて、前記制御系における前記制御対象への入力値信号ｙ２（ｔ）を測定し、
前記補償前周波数応答算出ステップでは、前記制御系の開ループ系周波数応答Ｙ０ｏ（ω）を、前記測定ステップで前記正弦波信号ｘ０（ｔ）を与えて測定した前記制御量信号ｙ１（ｔ）に基づいて求めた閉ループ系周波数応答Ｙ０ｃ（ω）と、前記測定ステップで前記正弦波信号ｘ０（ｔ）を与えて測定した前記入力値信号ｙ２（ｔ）とを用いて求めることを特徴とする請求項３又は４に記載の制御系の時間応答シミュレーション方法。
【請求項７】
前記測定ステップにおいて、前記制御系に前記目標値信号ｘ１（ｔ）を与えて、前記制御系における前記制御対象への入力値信号ｙ２（ｔ）を測定し、
前記補償前周波数応答算出ステップでは、前記制御系の開ループ系周波数応答Ｙ１ｏ（ω）を、前記測定ステップで前記目標値信号ｘ１（ｔ）を与えて測定した前記制御量信号ｙ１（ｔ）に基づいて求めた閉ループ系周波数応答Ｙ１ｃ（ω）と、前記測定ステップで前記目標値信号ｘ１（ｔ）を与えて測定した前記入力値信号ｙ２（ｔ）とを用いて求めることを特徴とする請求項３又は４に記載の制御系の時間応答シミュレーション方法。
【請求項８】
その都度、前記補償要素を設計し直して、前記補償後周波数応答算出ステップ、及び、前記時間応答算出ステップを複数回繰り返し実行することを特徴とする請求項１乃至７のいずれか一項に記載の制御系の時間応答シミュレーション方法。
【請求項９】
前記目標値信号ｘ１（ｔ）を、所定のフーリエ係数（ｃ０、ａｎ、ｂｎ）を備えたフーリエ級数に基づいて生成し、
前記時間応答算出ステップでは、前記目標値信号ｘ１（ｔ）を前記フーリエ級数で表したときの前記制御系の時間応答ｃ（ｔ）を、前記フーリエ級数に、前記補償後の閉ループ系周波数応答Ｚ０ｃ（ω）、Ｚ１ｃ（ω）、Ｚ２ｃ（ω）のゲインｇ及び位相を適用して求めることを特徴とする請求項１乃至８のいずれか一項に記載の制御系の時間応答シミュレーション方法。
【請求項１０】
前記フーリエ係数の変動成分（ａｎ，ｂｎ）として、ギブス現象を抑制するための窓関数を乗算したもの（ｗｎ・ａｎ、ｗｎ・ｂｎ）を用いることを特徴とする請求項９に記載の制御系の時間応答シミュレーション方法。
【請求項１１】
前記測定ステップにおいて、前記正弦波信号ｘ０（ｔ）の代わりに０〔Ｖ］の定常信号を与えたときの前記制御量信号ｙ１（ｔ）の値をオフセット値Ｖ０１０ｆｆとして予め計測し、
前記補償前周波数応答算出ステップでは、前記制御量信号ｙ１（ｔ）から前記オフセット量Ｖ０１０ｆｆを予め減算した値ｙ１（ｔ）−Ｖ０１０ｆｆを前記制御量信号として用いて計算を実施し、
前記時間応答算出ステップでは、前記オフセット量Ｖ０１０ｆｆを予め減算した値ｙ１（ｔ）−Ｖ０１０ｆｆに基づいて求めた前記時間応答ｃ′（ｔ）に前記オフセット量Ｖ０１０ｆｆの補償後の対応量Ｖ０１ｏｆｆ／ｇｃｏｍｐ_ｄｃ（ｇｃｏｍｐ_ｄｃは補償要素の直流に対するゲイン）を加算した値を、前記時間応答ｃ（ｔ）＝ｃ′（ｔ）＋Ｖ０１ｏｆｆ／ｇｃｏｍｐ_ｄｃとして求めることを特徴とする請求項１に記載の制御系の時間応答シミュレーション方法。
【請求項１２】
前記測定ステップにおいて、前記目標値信号ｘ１（ｔ）の代わりに０〔Ｖ］の定常信号を与えたときの前記制御量信号ｙ１（ｔ）の値をオフセット値Ｖｓ０ｆｆとして予め計測し、
前記補償前周波数応答算出ステップでは、前記制御量信号ｙ１（ｔ）から前記オフセット量Ｖｓ０ｆｆを予め減算した値ｙ１（ｔ）−Ｖｓ０ｆｆを前記制御量信号として用いて計算を実施し、
前記時間応答算出ステップでは、前記オフセット量Ｖｓ０ｆｆを予め減算した値ｙ１（ｔ）−Ｖｓ０ｆｆに基づいて求めた前記時間応答ｃ′（ｔ）に前記オフセット量Ｖｓ０ｆｆの補償後の対応量Ｖｓｏｆｆ／ｇｃｏｍｐ_ｄｃ（ｇｃｏｍｐ_ｄｃは補償要素の直流に対するゲイン）を加算した値を、前記時間応答ｃ（ｔ）＝ｃ′（ｔ）＋Ｖｓｏｆｆ／ｇｃｏｍｐ_ｄｃとして求めることを特徴とする請求項２又は３に記載の制御系の時間応答シミュレーション方法。
【請求項１３】
前記目標値信号ｘ１（ｔ）は、ステップ信号、ランプ信号、加速度入力信号の少なくともいずれか一つであることを特徴とする請求項１乃至１２のいずれか一項に記載の制御系の時間応答シミュレーション方法。
【請求項１４】
制御対象を制御するためのフィードバック要素を含む制御系において、目標値信号ｘ１（ｔ）を前記制御系に与えたときの前記制御対象の制御量の時間応答ｃ（ｔ）を算出するための制御系の時間応答シミュレーション装置であって、
制御部（１０）と、
前記制御部（１０）の制御下において、前記制御系に前記目標値信号ｘ１（ｔ）及び周波数を掃引して正弦波信号ｘ０（ｔ）を出力する信号発生部（１１）と、
前記制御部（１０）の制御下において、前記制御系に前記信号発生部（１１）から信号を与えたときの前記制御対象の制御量信号ｙ１（ｔ）に基づいて、前記制御系の閉ループ系周波数応答Ｙ１ｃ（ω），Ｙ０ｃ（ω）を求める閉ループ系周波数応答計算部（３１）と、
前記制御部（１０）の制御下において、前記閉ループ系周波数応答Ｙ１ｃ（ω），Ｙ０ｃ（ω）に基づいて前記制御系の開ループ系周波数応答Ｙ１ｏ（ω），Ｙ０ｏ（ω）を求める開ループ系周波数応答計算部（３３、３２）と、
前記制御部（１０）の制御下において、前記開ループ系周波数応答Ｙ１ｏ（ω），Ｙ０ｏ（ω）と、与えられた補償要素の周波数応答ＹＣ（ω）とに基づいて、前記補償要素による補償後の開ループ系周波数応答Ｚ１ｏ（ω），Ｚ０ｏ（ω）を求めるとともに、該補償後の開ループ系周波数応答Ｚ１ｏ（ω），Ｚ０ｏ（ω）に基づいて、補償後の閉ループ系周波数応答Ｚ１ｃ（ω），Ｚ０ｃ（ω）を求める補償後閉ループ系周波数応答計算部（５０）と、
前記制御部（１０）の制御下において、前記補償後の閉ループ系周波数応答Ｚ１ｃ（ω），Ｚ０ｃ（ω）に基づいて、前記目標値信号ｘ１（ｔ）に対する前記制御系の前記時間応答ｃ（ｔ）を求める時間応答計算部（６０）と、
を具備することを特徴とする制御系の時間応答シミュレーション装置。
【請求項１５】
前記制御部（１０）の制御下において、低周波数領域の周波数応答が前記目標値信号ｘ１（ｔ）を与えて測定した前記制御量信号ｙ１（ｔ）に基づいて求めた前記開ループ系周波数応答Ｙ１ｏ（ω）であり、高周波数領域の周波数応答が前記正弦波信号ｘ０（ｔ）を与えて測定した前記制御量信号ｙ１（ｔ）に基づいて求めた前記開ループ系周波数応答Ｙ０ｏ（ω）であって、前記目標値信号ｘ１（ｔ）を与えて測定した前記制御量信号ｙ１（ｔ）に基づいて求めた前記閉ループ系周波数応答Ｙ１ｃ（ω）若しくは前記正弦波信号ｘ０（ｔ）を与えて測定した前記制御量信号ｙ１（ｔ）に基づいて求めた前記閉ループ系周波数応答Ｙ０ｃ（ω）の共振周波数が前記低周波数領域に含まれるように構成された、開ループ系結合周波数応答Ｙ２ｏ（ω）を求める周波数応答結合手段（５０）をさらに具備し、
前記補償後閉ループ系周波数応答計算部（５０）は、前記開ループ系結合周波数応答Ｙ２ｏ（ω）を、前記開ループ系周波数応答Ｙ１ｏ（ω）の代わりに用いて、補償後の開ループ系周波数応答Ｚ２ｏ（ω）を求めるとともに、該補償後の開ループ系周波数応答Ｚ２ｏ（ω）に基づいて、補償後の閉ループ系周波数応答Ｚ２ｃ（ω）を求め、
前記時間応答計算部（６０）は、前記補償後の閉ループ系周波数応答Ｚ２ｃ（ω）に基づいて、前記時間応答ｃ（ｔ）を求めることを特徴とする請求項１４に記載の制御系の時間応答シミュレーション装置。
【請求項１６】
前記開ループ系周波数応答計算部（３２）は、前記制御部（１０）の制御下において、前記制御系に前記信号発生部（１１）から信号を与えたときの前記制御対象への入力値信号ｙ２（ｔ）と、前記制御系の閉ループ系周波数応答Ｙ１ｃ（ω），Ｙ０ｃ（ω）とに基づいて、前記制御系の開ループ系周波数応答Ｙ１ｏ（ω），Ｙ０ｏ（ω）を求めることを特徴とする請求項１４又は１５に記載の制御系の時間応答シミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御系の時間応答シミュレーション方法及び装置に係り、特に、制御系を設計する場合において設計された制御系の評価を容易かつ適切に行うことを可能にする方法及び装置に関する。
【背景技術】
【０００２】
制御系の時間応答については、応答の目標値に近づく速さ（速応性）、応答に振動が発生したときはその振動の消滅する速さ（減衰性）、応答が定常状態に達したときの応答と目標値との間の偏差（定常偏差）が重要であり、これらが所望の応答になるように制御系の設計が行われる。
【０００３】
周波数応答を用いた制御系の設計では、開ループ系の周波数応答を測定し、制御系の時間応答が所望の応答となるよう設計パラメータを決定し補償要素を設計する。設計の評価については、設計した補償要素を制御系に組み込み、制御系の時間応答を求め、所望の時間応答が得られるかを評価する。所望の時間応答が得られない場合は設計パラメータを変更し、補償要素を再設計することになる。このとき，補償要素を実際に製作し制御対象に組み込んだ実機を使用したのでは評価に時間がかかり、効率的な設計・評価を行うことができない。
【０００４】
そのため、設計した制御系の時間応答をシミュレーションにより求め、設計を評価することが行われている。しかし、従来は、制御系の時間応答をシミュレーションする際に制御対象の実機が必要となる場合や、制御系の伝達関数などの数式モデルを導出する必要があるなど複雑な方法であった。
【０００５】
特許文献１に示されるシミュレーションシステムでは、補償要素の応答を実時間で演算するリアルタイムシミュレータを備え、リアルタイムシミュレータを制御対象に接続し、制御シミュレーションを行う。リアルタイムシミュレータは数値解析プログラムを実時間で処理できる装置であり、外部からセンサの信号を入力し、演算処理を行い、制御対象へ信号を出力する。また、リアルタイムシミュレータ内部に制御対象の周波数応答を計測する機能を有する。このシミュレーションシステムは、補償要素の応答をシミュレーションするものであり、制御系の応答が所望の応答であるかを評価するには実機を動作させる必要がある。
【０００６】
特許文献２では、電気炉などの制御系について、実際の炉の温度変化と同等の温度変化を示す温度制御シミュレーションモデルをコンピュータ上に構成し、実際の炉を使用しなくても温度制御方法を開発できる温度制御シミュレーション装置が提案されている。このシミュレーション装置では、ヒータ入力に対する温度変化の関係を表わす伝達関数を求め、その伝達関数を用いて温度制御のシミュレーションが行われる。伝達関数は、ヒータに関する伝達関数と炉に関する伝達関数の積で表わされ、それぞれの伝達関数は一次遅れ要素とむだ時間要素の積となっている。伝達関数のパラメータはヒータにステップ入力を加えたときの応答から実験により求めるが、ヒータの加熱ゾーン間に干渉があることから伝達関数はゾーン間の干渉を取り入れる必要がある。また、温度によって伝達関数のパラメータが変動することから、温度帯ごとに伝達関数を求める必要がある。このように伝達関数を求めるためには複雑な手順が必要である。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１０−５１０６１号公報
【特許文献２】特開２０００−５８４６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明では、制御系の設計において、制御対象の周波数応答（開ループ系周波数応答）および補償要素の周波数応答から制御系のステップ応答、ランプ応答などの時間応答をシミュレーションする。これにより、設計した補償要素を組み込んだ実機を構成することなく、補償要素の設計の段階で時間応答を予測することができ、補償要素の設計を評価することを可能にする装置を提供する。
【課題を解決するための手段】
【０００９】
周波数応答の測定機能として、制御対象の周波数応答（ゲイン、位相）を求めるための測定に際して制御系に与える信号（正弦波信号、ステップ信号、ランプ信号などの目標値信号）を発生する信号発生部と、正弦波信号、ステップ信号、ランプ信号などの目標値信号を制御系に出力し、その応答から制御系の開ループ系および閉ループ系の周波数応答を計算する補償前の周波数応答計算部を備える。また、時間応答を計算するため、補償要素の周波数応答および開ループ系周波数応答から補償後の開ループ系周波数応答を求め、さらにその周波数応答から補償後の閉ループ系周波数応答を計算する補償後の閉ループ系周波数応答計算部と、補償後の閉ループ系周波数応答から制御系の時間応答を計算する時間応答計算部を備える。
【００１０】
ここで、上記の信号発生部におけるステップ信号およびランプ信号の生成はフーリエ級数を用いるが、ギブス現象の発生を抑えるため、フーリエ係数の変動成分に窓関数を乗算し、フーリエ級数を計算することが好ましい。
【００１１】
時間応答の計算に用いる周波数応答については、目標値信号を用いた測定に基づく周波数応答と、正弦波信号を用いた測定に基づく周波数応答とのいずれか一方を用いるか、或いは、目標値信号を用いた測定に基づく低周波域の周波数応答と、正弦波信号を用いた測定に基づく高周波域の周波数応答とを結合させた結合周波数応答を用いることが好ましい。この結合周波数応答の低周波域においては、上記目標値信号として、例えば、ステップ応答をシミュレーションする際はステップ信号を、ランプ応答をシミュレーションする際はランプ信号を用いた測定から求めた周波数応答を使用し、高周波域においては正弦波信号を用いた測定から求めた周波数応答を使用する。そして、これらの低周波域と高周波域の周波数応答を結合し、時間応答計算のベースとなる周波数応答を生成することが好ましい。
【００１２】
例えば、補償前の制御系において、正弦波信号のみで周波数応答を測定し、その周波数応答からステップ応答を計算すると、電気回路などの制御系では実測と一致する時間応答が得られるが、機械制御系などでは実際の応答よりも振動が大きく、減衰性が小さいものとなることがある。これに対し、目標値信号としてステップ信号を用いてステップ応答で周波数応答を測定し、その周波数応答からステップ応答を計算すると機械制御系でも実際の応答とほぼ一致する。しかし、ステップ応答で測定した周波数応答に補償要素の周波数応答を組み込み、補償後のステップ応答を計算すると、補償要素によっては実際の応答にはない振動が発生することがある。これは、ステップ信号は高周波ほど成分が少ないため、高周波域の周波数応答が正確に測定できないためで、この影響が補償要素を組み込んだときに現れる。そこで、高周波域を正確に測定するため、高周波域の周波数応答を正弦波信号により測定する。このように、或る目標値信号に対する時間応答を算出するには、同じ目標値信号を用いた測定から求めた開ループ系周波数応答を用いることが好ましいが、一般的に、制御系の補償要素を評価するための目標値信号では高周波成分の周波数応答を精度よく測定することが難しいため、高周波域の周波数応答として正弦波信号を用いた測定により得られる周波数応答を用いることが好ましい。
【００１３】
本発明は、正弦波信号を用いた測定を基礎とする方法、予測すべき時間応答と同じ目標値信号を用いた測定を基礎とする方法、並びに、正弦波信号を用いた測定と予測すべき時間応答と同じ目標値信号を用いた測定の双方を基礎とする方法を提供し、制御系の種類や補償要素の内容などの状況に応じて、正確な時間応答の予測を可能にする方法及び装置を実現する。
【発明の効果】
【００１４】
本発明によれば、補償要素の設計に必要となる制御対象の周波数応答（開ループ系周波数応答）を測定に基づいて求めることができ、その周波数応答をもとに補償要素を設計し、その周波数応答を取り込めば補償要素を制御系に組み込んだときの制御系の時間応答を予測することができ、補償後の制御系を実際に構成しなくても補償要素の設計を評価できる。
【００１５】
制御対象の伝達関数などの数式モデルを求める必要がなく、測定した制御対象の周波数応答から時間応答をシミュレーションすることができる。数式モデルを用いなくても実際の制御系の時間応答に即したシミュレーション結果を得ることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の構成図である。
【図２】本発明と測定対象との接続図である。
【図３】ステップ応答をシミュレーションする際のフローチャートである。
【図４】ステップ応答をシミュレーションする際の開ループ系周波数応答（補償前）の生成を示す図（ａ）及び補償後の開ループ系周波数応答の生成を示す図（ｂ）である。
【図５】オフセットの処理を説明する図である。
【図６】本発明の実施例の構成図である。
【図７】正弦波信号により測定した実施例の閉ループ系周波数応答である。
【図８】正弦波信号により測定した実施例の開ループ系周波数応答である。
【図９】窓関数を用いたステップ信号の生成を示す図である。
【図１０】ステップ信号により測定した実施例の閉ループ系周波数応答である。
【図１１】ステップ信号により測定した実施例の開ループ系周波数応答である。
【図１２】位相進み補償要素の周波数数応答である。
【図１３】ステップ信号により測定した周波数応答と正弦波信号により測定した周波数応答から生成した補償前の開ループ系周波数応答である（結合周波数ｆ０＝１７Ｈｚ）。
【図１４】位相進み補償後の開ループ系周波数応答である。
【図１５】位相進み補償後のステップ応答のシミュレーション結果である。
【図１６】ゲイン調整の場合に周波数応答を正弦波信号で測定しときのシミュレーション結果である。
【図１７】ゲイン調整の場合に周波数応答を結合したときのシミュレーション結果である（ｆ０＝５Ｈｚ）。
【図１８】ゲイン調整の場合に周波数応答を結合したときのシミュレーション結果である（ｆ０＝９Ｈｚ）。
【図１９】ゲイン調整の場合に周波数応答を結合したときのシミュレーション結果である（ｆ０＝１１Ｈｚ）。
【図２０】ゲイン調整の場合に周波数応答を結合したときのシミュレーション結果である（ｆ０＝１７Ｈｚ）。
【図２１】ゲイン調整の場合に周波数応答をステップ信号で測定したときのシミュレーション結果である。
【図２２】位相進み補償の場合に周波数応答を正弦波信号で測定したときのシミュレーション結果である。
【図２３】位相進み補償の場合に周波数応答を結合したときのシミュレーション結果である（ｆ０＝９Ｈｚ）。
【図２４】位相進み補償の場合に周波数応答を結合したときのシミュレーション結果である（ｆ０＝１１Ｈｚ）。
【図２５】位相進み補償の場合に周波数応答を結合したときのシミュレーション結果である（ｆ０＝１７Ｈｚ）。
【図２６】位相進み補償の場合に周波数応答をステップ信号で測定したときのシミュレーション結果である。
【発明を実施するための形態】
【００１７】
本発明の実施の形態を図を用いて説明する。図１は本発明に係る実施形態の構成図、図２は本発明にシミュレーションの対象となる制御系を接続するときの接続図、図３は動作を示すフローチャートである。これらを用いて本実施形態の装置構成および動作を説明する。
【００１８】
本実施形態では、以下の測定ステップ、補償前周波数応答算出ステップ、補償後周波数応答算出ステップ、時間応答算出ステップを、コンピュータを用いた演算処理によって実行する。また、必要な場合には、周波数応答結合ステップをさらに実行する。これらは、コンピュータに記憶させた動作プログラムを実行することによって行う。上記測定ステップでは、コンピュータに備え付けたＡ／Ｄ・Ｄ／Ａ変換ボードを使用し、信号発生部１１で生成した目標値信号ｘ１（ｔ）や正弦波信号ｘ０（ｔ）のディジタルデータをアナログデータに変換してコンピュータから出力して制御系に与え、このときの制御系の制御対象の制御量信号ｙ１（ｔ）や制御対象への入力値信号ｙ２（ｔ）のアナログデータをディジタルデータに変換してコンピュータに取り込むようにした。また、上記動作プログラムは、コンピュータにおいて、上記測定ステップによって取り込まれたデータに基づいて、測定の対象となった制御対象の閉ループ系周波数応答Ｙ１ｃ（ω），Ｙ０ｃ（ω）及び開ループ系周波数応答Ｙ１ｏ（ω），Ｙ０ｏ（ω）を求める補償前周波数応答算出手段と、この補償前周波数応答算出手段によって求められた制御対象の開ループ系周波数応答Ｙ１ｏ（ω），Ｙ０ｏ（ω）に基づいて、周波数応答ＹＣ（ω）の補償要素によって補償された後の開ループ系周波数応答Ｚ１ｏ（ω），Ｚ０ｏ（ω）及び閉ループ系周波数応答Ｚ１ｃ（ω），Ｚ０ｃ（ω）を導出する補償後周波数応答算出手段と、この閉ループ系周波数応答Ｚ１ｃ（ω），Ｚ０ｃ（ω）から目標値信号ｘ１（ｔ）に対応する時間応答ｃ（ｔ）を求める時間応答算出手段とを実現する。
【００１９】
本実施形態の第１の態様では、正弦波信号ｘ０（ｔ）を制御系に与えて制御対象の制御量信号ｙ１（ｔ）を測定し、場合によっては制御対象への入力値信号ｙ２（ｔ）も測定して、これらから正弦波信号を与えたときの閉ループ系周波数応答Ｙ０ｃ（ω）及び開ループ系周波数応答Ｙ０ｏ（ω）を求める。そして、この開ループ系周波数応答Ｙ０ｏ（ω）と、補償要素の周波数応答ＹＣ（ω）とに基づいて、補償後の開ループ系周波数応答Ｚ０ｏ（ω）及び補償後の閉ループ系周波数応答Ｚ０ｃ（ω）を求める。そして、最後に、補償後の閉ループ系周波数応答Ｚ０ｃ（ω）から、目標値信号ｘ１（ｔ）の時間応答ｃ（ｔ）を求める。
【００２０】
また、本実施形態の第２の態様では、ステップ信号、ランプ信号、加速度入力信号などの目標値信号ｘ１（ｔ）を制御系に与えて制御対象の制御量信号ｙ１（ｔ）を測定し、場合によっては制御対象への入力値信号ｙ２（ｔ）も測定して、これらから目標値信号ｘ１（ｔ）を与えたときの閉ループ系周波数応答Ｙ１ｃ（ω）及び開ループ系周波数応答Ｙ１ｏ（ω）を求める。そして、この開ループ系周波数応答Ｙ１ｏ（ω）と、補償要素の周波数応答ＹＣ（ω）とに基づいて、補償後の開ループ系周波数応答Ｚ１ｏ（ω）及び補償後の閉ループ系周波数応答Ｚ１ｃ（ω）を求める。そして、最後に、補償後の閉ループ系周波数応答Ｚ１ｃ（ω）から、目標値信号ｘ１（ｔ）の時間応答ｃ（ｔ）を求める。
【００２１】
さらに、本実施形態の第３の態様では、正弦波信号ｘ０（ｔ）を制御系に与えて制御対象の制御量信号ｙ１（ｔ）の測定を行うとともに、場合によっては制御対象への入力値信号ｙ２（ｔ）の測定を行うだけでなく、目標値信号ｘ１（ｔ）を制御系に与えて制御対象の制御量信号ｙ１（ｔ）の測定を行うとともに、場合によっては制御対象への入力値信号ｙ２（ｔ）の測定を行う。そして、上記と同様に求めた上記開ループ系周波数応答Ｙ０ｏ（ω）とＹ１ｏ（ω）とに基づいて、後述する開ループ系結合周波数応答Ｙ２ｏ（ω）を生成する。そして、この開ループ系結合周波数応答Ｙ２ｏ（ω）に基づいて、補償後の開ループ系周波数応答Ｚ２ｏ（ω）及び閉ループ系周波数応答Ｚ２ｃ（ω）を算出し、これから、補償要素を含む制御系における上記目標値信号ｘ１（ｔ）の時間応答ｃ（ｔ）を求める。以下に説明する本実施形態では、この第３の態様の手順を実施する実施例を主体に説明するが、先の二つの第１及び第２の態様についても、その説明によって当業者であれば容易に実施することができる。また、本実施形態の以下の制御部１０や信号生成部１１などの各部は、制御系の時間応答シミュレーション装置としての専用の装置構成として設けられるものであってもよく、また、上記動作プログラムを、Ｄ／Ａ・Ａ／Ｄ変換ボードを備えたコンピュータにより実行させた場合に実現される、機能実現手段を示すものであってもよい。
【００２２】
図１において、制御部１０は各部を制御する。信号発生部１１に対しては、制御系の周波数応答を測定するための正弦波信号ｘ０（ｔ）と、目標値信号ｘ１（ｔ）としてのステップ信号、ランプ信号等の生成を制御する。また、オフセットおよび０［Ｈｚ］におけるゲインを測定するための信号の生成を制御する。さらに、ＳＷ１を切り替え、測定の際に制御系に与える上記信号の種類に応じて閉ループ系および開ループ系周波数応答の計算を制御する。
【００２３】
１１は周波数応答を測定するために制御系に与える各信号を発生する信号発生部で、制御部１０からの指定により、正弦波信号ｘ０（ｔ）と目標値信号ｘ１（ｔ）を生成する。正弦波信号ｘ０（ｔ）は振幅を一定とし、周波数を掃引する。また、目標値信号ｘ１（ｔ）は、正弦波信号以外の、本実施形態において設計される補償要素の評価を行うために必要な時間応答の元となる、制御系に与えられる目標値の時間関数である。信号発生部１１は、この目標値信号ｘ１（ｔ）として、例えば、ステップ応答をシミュレーションするときはステップ信号、ランプ応答をシミュレーションするときはランプ信号を発生させる。ステップ信号は、ギブス現象の発生を抑えるため、矩形波のフーリエ係数（変動成分ａｎ，ｂｎ）に窓関数を乗算したものをフーリエ係数（変動成分ａｎ，ｂｎ）とし、その係数からフーリエ級数を計算することにより生成する。ランプ信号についても同様にランプ信号のフーリエ係数（変動成分ａｎ，ｂｎ）に窓関数を乗算し、フーリエ級数により生成する。目標値信号ｘ１（ｔ）としては、上記の他に、加速度入力信号（ｘ１（ｔ）＝１／２ｔ２）（加速度が一定の信号）などが考えられるが、これらを組み合わせた信号など、制御系及びその制御対象に応じて設計される補償要素の評価を行うに適した任意の信号を用いることができる。また、この信号発生部１１では、制御系のオフセットおよび０［Ｈｚ］におけるゲインを測定するための信号を生成する。以上のように、この信号発生部１１では、これらの信号のディジタル値を生成し、１２のＤＡ変換器へ送る。
【００２４】
１２はＤＡ変換器で、信号発生部１１で生成したディジタル値をアナログ信号に変換し、測定対象の制御系に測定信号として出力する。
【００２５】
２１、２２はＡＤ変換器で、入力１、入力２から入力した信号（後述する、制御量信号ｙ１（ｔ）と入力値信号ｙ２（ｔ））をディジタル値に変換する。なお、本実施形態では、（ｔ）は時間の関数であることを示し、（ω）は周波数の関数であることを示すが、コンピュータ（ＭＰＵ）により演算処理する場合には、それぞれ時間や周波数と関連づけられた離散的な数値の列として扱われる。
【００２６】
３１、３２、３３、ＳＷ１は周波数応答計算部である。正弦波信号ｘ０（ｔ）を測定信号とした場合は、ＡＤ変換器２１（入力１）からの出力である、制御対象の制御量信号ｙ１（ｔ）を３１の閉ループ系周波数応答計算部においてフーリエ積分し、閉ループ系周波数応答Ｙ０ｃ（ω）を計算する。このとき、ＳＷ１は制御部１０によってａ側に切り替えられており、閉ループ系周波数応答計算部３１で計算した閉ループ系周波数応答Ｙ０ｃ（ω）は３２の開ループ系周波数応答計算部に送られる。また、ＡＤ変換器２２（入力２）からの出力である、後述する制御対象への入力値信号ｙ２（ｔ）を開ループ系周波数応答計算部３２においてフーリエ積分し周波数応答を求め、その結果と閉ループ系周波数応答計算部３１から送られる閉ループ系周波数応答Ｙ０ｃ（ω）から正弦波信号ｘ０（ｔ）を測定信号としたときの開ループ系周波数応答Ｙ０ｏ（ω）を計算する。すなわち、入力１の制御量信号ｙ１（ｔ）のフーリエ積分から閉ループ系周波数応答Ｙ０ｃ（ω）を求め、この閉ループ系周波数応答Ｙ０ｃ（ω）と、入力２の入力値信号ｙ２（ｔ）のフーリエ積分から求めた周波数応答とから、開ループ系周波数応答Ｙ０ｏ（ω）（制御対象の周波数応答）を求める。なお、上記制御量信号ｙ１（ｔ）及び上記入力値信号ｙ２（ｔ）から周波数応答への変換処理は、フーリエ変換処理（実際には離散時間フーリエ変換処理）によって行われる。
【００２７】
なお、この開ループ系周波数応答Ｙ０ｏ（ω）の求め方としては、上記の方法とは異なり、後述する目標値信号ｘ１（ｔ）に対する開ループ系周波数応答の求め方と同様に、上記の入力値信号ｙ２（ｔ）を測定せずに、上記閉ループ系周波数応答Ｙ０ｃ（ω）のみから開ループ系周波数応答Ｙ０ｏ（ω）を算出することも可能である。
【００２８】
目標値信号ｘ１（ｔ）であるステップ信号およびランプ信号を測定時に制御系に与えられる信号としたときは、ＡＤ変換器２１（入力１）からの出力を閉ループ系周波数応答計算部３１においてフーリエ積分し、閉ループ系周波数応答Ｙ１ｃ（ω）を計算する。このとき、ＳＷ１は制御部１０によってｂ側に切り替えられており、閉ループ系周波数応答計算部３１で計算した閉ループ系周波数応答Ｙ１ｃ（ω）は開ループ系周波数応答計算部３３に送られ、開ループ系周波数応答Ｙ１ｏ（ω）が計算される。すなわち、ＡＤ変換器２１（入力１）の出力である制御量信号ｙ１（ｔ）をフーリエ積分し、閉ループ系周波数応答Ｙ１ｃ（ω）を計算し、その閉ループ系周波数応答Ｙ１ｃ（ω）からさらに開ループ系周波数応答Ｙ１ｏ（ω）を計算する。
【００２９】
なお、この目標値信号ｘ１（ｔ）についても、上記の正弦波信号ｘ０（ｔ）を制御系に与えたときの測定に基づく計算処理と同じように、測定値から求めた閉ループ系周波数応答Ｙ１ｃ（ω）と、上記入力値信号ｙ２（ｔ）のフーリエ積分から求めた周波数応答とから、開ループ系周波数応答Ｙ１ｏ（ω）（制御対象の周波数応答）を求めることが可能である。
【００３０】
図１の４０は正弦波信号ｘ０（ｔ）により測定した開ループ系周波数応答Ｙ０ｏ（ω）から制御理論に基づいて、位相遅れ補償、位相進み補償、位相進み遅れ補償といった補償要素を設計することを示している。この設計により得られた補償要素の周波数応答ＹＣ（ω）を閉ループ系周波数応答計算部５０に入力する。本実施形態では、補償要素の周波数応答ＹＣ（ω）のゲインｇｃｏｍｐ（ω）及び位相θｃｏｍｐ（ω）を外部から装置若しくはコンピュータへ入力されることを待って、以下の処理を実行するようにしてもよい。
【００３１】
閉ループ系周波数応答計算部５０は、補償要素を制御系に組み込んだときの閉ループ系周波数応答Ｚ０ｃ（ω）若しくはＺ１ｃ（ω）を計算する。この補償後の閉ループ周波数応答Ｚ０ｃ（ω）は、上記第１の態様においては、正弦波信号ｘ０（ｔ）を制御系に与えたときの測定結果に基づいて得られた上記開ループ系周波数応答Ｙ０ｏ（ω）と、上記設計された補償要素の周波数応答ＹＣ（ω）とに基づいて計算する。また、上記第２の態様においては、補償後の閉ループ周波数応答Ｚ１ｃ（ω）は、目標値信号ｘ１（ｔ）を制御系に与えたときの測定結果に基づいて得られた上記開ループ系周波数応答Ｙ１ｏ（ω）と、上記設計された補償要素の周波数応答ＹＣ（ω）とに基づいて計算する。このように、目標値信号ｘ１（ｔ）を制御系に与えたときの時間応答ｃ（ｔ）は、正弦波信号ｘ０（ｔ）を制御系に与えたときの測定結果から導出した開ループ系周波数応答Ｙ０ｏ（ω）を用いることによって求めることができるし（第１の態様）、或いは、同じ目標値信号ｘ１（ｔ）を制御系に与えたときの測定結果から導出した開ループ系周波数応答Ｙ１ｏ（ω）を用いることによって求めることもできる（第２の態様）。そして、この開ループ系周波数応答Ｙ０ｏ（ω）若しくはＹ１ｏ（ω）と補償要素の周波数応答ＹＣ（ω）とから補償後の開ループ系周波数応答Ｚ０ｏ（ω）若しくはＺ１ｏ（ω）を求める。そして、この補償後の開ループ系周波数応答Ｚ０ｏ（ω）若しくはＺ１ｏ（ω）から上記の補償後の閉ループ系周波数応答Ｚ０ｃ（ω）若しくはＺ１ｃ（ω）を求める。そして、この補償後の閉ループ系周波数応答Ｚ０ｃ（ω）若しくはＺ１ｃ（ω）が目標値信号ｘ１（ｔ）の時間応答ｃ（ｔ）を算出する際のベースとなる。
【００３２】
しかしながら、上記の基本的な時間応答のシミュレーション方法では、制御系の種類によっては、算出した時間応答ｃ（ｔ）が実測値とずれたり、上記のように設計された補償要素の周波数応答ＹＣ（ω）により補償することにより、実際の応答では見られないような振動が発生したりする場合がある。すなわち、上記第１の態様の正弦波信号ｘ０（ｔ）を制御系に与えたときの測定値から上記基本的な方法で求めた時間応答ｃ（ｔ）は、ＲＣ回路などの制御系では実測値と一致する時間応答を算出可能であるが、後述するＶＣＭ制御系などの機械制御系において実測値とずれが生ずる。例えば、本願発明者らが行った実験では、ＲＣ回路で構成した一次遅れ系や二次遅れ系の制御モデルでは、上記の基本的な方法でシミュレーション波形と実測波形が一致し、良好な時間応答ｃ（ｔ）の予測が可能であった。しかし、二次遅れ系のＶＣＭ（ボイスコイルモータ）制御系について実験した結果、初期値誤差や減衰性誤差が発生し、適切な時間応答ｃ（ｔ）が得られないことが判明した。そして、本願発明者らの実験結果の解析により、このＶＣＭ制御系では、他の制御系とは異なり、正弦波信号ｘ０（ｔ）や目標値信号ｘ１（ｔ）の態様に応じて、共振周波数付近の周波数応答が大きく変化することが確認され、したがって、上記の測定時において与えられる信号の態様による応答特性が上記減衰性誤差の原因であることが考えられた。
【００３３】
そこで、本願発明者らは、目標値信号ｘ１（ｔ）の時間応答ｃ（ｔ）を求める場合に、その目標値信号ｘ１（ｔ）を制御系に与えたときの測定値から周波数応答を求めることで、上記の信号の態様に依存する変化を回避し、正確な時間応答ｃ（ｔ）を予測できるものと考えた。そして、この第２の態様に係る方法では、機械制御系においても実際の応答に近い時間応答を導出することができた。
【００３４】
しかしながら、この第２の態様に係る方法においてステップ応答などの応答性を高めるために補償要素を組み込み、補償後のステップ応答を計算すると、補償要素によっては実際の応答にはない振動が発生することがあった。これは、目標値信号ｘ１（ｔ）には正弦波信号とは異なり周波数分布に偏りがあるため、目標値信号を与えたときの測定値から求めた周波数応答では、高周波域の応答特性が精度よく検出されていないものと考えられた。そこで、本実施形態では、より好ましい実施態様（上記第３の態様）として、以下のような手順を採用した。
【００３５】
すなわち、この実施態様では、目標値信号ｘ１（ｔ）を与えて測定した結果から求めた開ループ系周波数応答Ｙ１ｏ（ω）と、正弦波信号ｘ０（ｔ）を与えて測定した結果から求めた開ループ系周波数応答Ｙ０ｏ（ω）とを結合し、時間応答ｃ（ｔ）を求めるためのベースとなる開ループ系結合周波数応答Ｙ２ｏ（ω）を生成する。例えば、ステップ応答をシミュレーションする場合は、ステップ信号ｘ１（ｔ）により測定した開ループ周波数応答Ｙ１ｏ（ω）の低周波域と、正弦波信号ｘ０（ｔ）により測定した開ループ周波数応答Ｙ０ｏ（ω）の高周波域とを結合し、時間応答を求めるためのベースとなる開ループ系結合周波数応答Ｙ２ｏ（ω）を新たに構成する。次に、この開ループ系周波数応答Ｙ２ｏ（ω）と設計により得られた補償要素の周波数応答ＹＣ（ω）から、補償要素を組み込んだときの開ループ系周波数応答Ｚ２ｏ（ω）を計算し、さらにその開ループ系周波数応答Ｚ２ｏ（ω）から閉ループ系周波数応答Ｚ２ｃ（ω）を計算する。
【００３６】
ランプ応答をシミュレーションする場合は、ランプ信号により測定した開ループ周波数応答Ｙ１ｏ（ω）の低周波域と、正弦波信号ｘ０（ｔ）により測定した開ループ周波数応答Ｙ０ｏ（ω）の高周波域を結合し、時間応答ｃ（ｔ）を求めるためのベースとなる開ループ系周波数応答Ｙ２ｏ（ω）を構成する。次に、この開ループ系周波数応答Ｙ２ｏ（ω）と設計により得られた補償要素の周波数応答ＹＣ（ω）から補償要素を組み込んだときの開ループ系周波数応答Ｚ２ｏ（ω）を計算し、さらにその開ループ系周波数応答Ｚ２ｏ（ω）から閉ループ系周波数応答Ｚ２ｃ（ω）を計算する。
【００３７】
時間応答計算部６０は、上記補償後の閉ループ系周波数応答Ｚ０ｃ（ω）、Ｚ１ｃ（ω）又はＺ２ｃ（ω）と、目標値信号ｘ１（ｔ）のパラメータとに基づいて、時間応答ｃ（ｔ）を求める。ステップ応答をシミュレーションする場合は、ステップ信号を生成した際の信号発生部１１のフーリエ係数（後述する窓関数を乗算したもの。）と、閉ループ系周波数応答計算部５０で計算した閉ループ系周波数応答（補償後）とからフーリエ級数を用いてステップ応答を計算する。ランプ応答をシミュレーションする場合は、ランプ信号を生成した際の信号発生部１１のフーリエ係数（後述する窓関数を乗算したもの。）と、閉ループ系周波数応答計算部５０で計算した閉ループ系周波数応答（補償後）とからフーリエ級数を用いてランプ応答を計算する。この計算結果がステップ応答、ランプ応答のシミュレーションである。
【００３８】
より具体的には、上記の補償後の閉ループ系周波数応答Ｚ０ｃ（ω）、Ｚ１ｃ（ω）又はＺ２ｃ（ω）の各周波数値におけるゲイン及び位相ｇ０ｃ、θ０ｃ、ｇ１ｃ、θ１ｃ又はｇ2ｃ、θ2ｃを、目標値信号ｘ１（ｔ）のフーリエ級数展開の式の各周波数値における係数値に適用することにより、上記目標値信号ｘ１（ｔ）の時間応答ｃ（ｔ）を算出することができる。
【００３９】
図２は本発明に係る制御系の時間応答シミュレーション装置に制御系を接続するときの一例を示す接続図である。図２において、１００は図１に示した時間応答シミュレーション装置、２００は時間応答シミュレーションの対象となる制御系である。２０１は制御系の入力である。２０２は補償要素であるが、周波数応答を測定する場合は制御系を安定化させる適当な回路を仮の補償要素として用いる。２０３はドライブ回路、２０４はモータなどのアクチュエータ、２０５は位置などを検出するセンサである。センサ２０５の出力信号２０６は制御対象の制御量信号ｙ１（ｔ）に相当し、ドライブ回路２０３の入力信号２０７は制御対象への入力値信号ｙ２（ｔ）に相当するものであって、それぞれ時間応答シミュレーション装置１００の入力１、入力２に接続される。ここで、前記制御対象は、上記ドライブ回路２０３及び上記アクチュエータ２０４である。
【００４０】
なお、入力２は、後述する図６に示すように、補償要素の入力側の偏差信号に接続してもよい。この場合には、入力値信号ｙ２（ｔ）がフィードバック制御系の偏差信号に相当するものになる。そして、この偏差信号を入力値信号ｙ２（ｔ）として測定した結果から求めた開ループ系周波数応答Ｙ０ｏ（ω）、Ｙ１ｏ（ω）やＹ２ｏ（ω）は、ドライブ回路２０３及びアクチュエータ２０４だけでなく、補償要素２０２をも含めたものを制御対象とした場合について求めたものとなる。このため、これらの周波数応答には、仮に設定した当初の補償要素の周波数応答ＹＣ０（ω）が既に含まれている。すなわち、この場合の開ループ系周波数応答は、Ｙ０ｏ′（ω）＝Ｙ０ｏ（ω）・ＹＣＯ（ω）、Ｙ１ｏ′（ω）＝Ｙ１ｏ（ω）・ＹＣＯ（ω）、或いは、Ｙ２ｏ′（ω）＝Ｙ２ｏ（ω）・ＹＣＯ（ω）となる。ただし、Ｙ０ｏ（ω）、Ｙ１ｏ（ω）、Ｙ２ｏ（ω）は仮の補償要素ＹＣＯ（ω）を含めない場合（図２に示す場合）の開ループ系周波数応答である。したがって、上述のように仮の補償要素を含めるかどうかによって、新たな補償要素を設計する際に考慮する元の開ループ系周波数応答が異なってくる。しかしながら、補償要素を設計する際には、元となる開ループ系周波数応答の特性に応じて設計を行うため、元となる開ループ系周波数応答がＹ０ｏ（ω），Ｙ１ｏ（ω），Ｙ２ｏ（ω）かＹ０ｏ′（ω），Ｙ１ｏ′（ω），Ｙ２ｏ′（ω）かに応じて、補償要素の周波数応答ＹＣ（ω）の内容が異なってくるだけであり、結果としては同じことになる。
【００４１】
図６に示す例では、新たに設計した補償要素の周波数応答ＹＣ′（ω）と、上記開ループ系周波数応答Ｙ０ｏ′（ω）、Ｙ１ｏ′（ω）若しくはＹ２ｏ′（ω）とから補償後の開ループ系周波数応答Ｚ０ｏ（ω）、Ｚ１ｏ（ω）若しくはＺ２ｏ（ω）を求め、上述のように時間応答ｃ（ｔ）を求める基礎とする。したがって、新たに設計した上記補償要素の周波数応答ＹＣ′（ω）を、既に或る制御系（仮の補償要素ＹＣＯ（ω）を含む）、
Ｙ０ｏ′（ω）＝Ｙ０ｏ（ω）・ＹＣＯ（ω）
Ｙ１ｏ′（ω）＝Ｙ１ｏ（ω）・ＹＣＯ（ω）
Ｙ２ｏ′（ω）＝Ｙ２ｏ（ω）・ＹＣＯ（ω）
にそのまま適用すると考えれば、補償後の開ループ系周波数応答Ｚ０ｏ（ω）、Ｚ１ｏ（ω）若しくはＺ２ｏ（ω）は、
Ｚ０ｏ（ω）＝Ｙ０ｏ′（ω）・ＹＣ′（ω）＝Ｙ０ｏ（ω）・ＹＣ′（ω）・ＹＣＯ（ω）＝Ｙ０ｏ（ω）・ＹＣ（ω）
Ｚ１ｏ（ω）＝Ｙ１ｏ′（ω）・ＹＣ′（ω）＝Ｙ１ｏ（ω）・ＹＣ′（ω）・ＹＣＯ（ω）＝Ｙ１ｏ（ω）・ＹＣ（ω）
Ｚ２ｏ（ω）＝Ｙ２ｏ′（ω）・ＹＣ′（ω）＝Ｙ２ｏ（ω）・ＹＣ′（ω）・ＹＣＯ（ω）＝Ｙ２ｏ（ω）・ＹＣ（ω）
となる。このため、基本的に図２に示す場合にと同じ計算により処理することができる。
なお、ＹＣ（ω）は、制御対象に仮の補償要素ＹＣＯ（ω）を含めない場合（図２に示す場合）に新たに設計された補償要素の周波数応答であり、ＹＣ′（ω）＝ＹＣ（ω）・（１／ＹＣＯ（ω））である。
【００４２】
図３は動作を示すフローチャートである。以下、図１、２、３を用いて、本実施形態の時間応答シミュレーション装置の動作を説明する。周波数応答の測定は、補償要素を設計する場合は、正弦波信号ｘ０（ｔ）と、目標値信号ｘ１（ｔ）、例えば、ステップ応答をシミュレーションする場合はステップ信号、ランプ応答をシミュレーションする場合はランプ信号を、それぞれ測定に際して制御系に与える信号とする。正弦波信号ｘ０（ｔ）で周波数応答を測定する場合は、時間応答シミュレーション装置１００（図１）の信号発生部１１において正弦波信号ｘ０（ｔ）を発生させ、ＤＡ変換器１２でアナログ信号に変換し、測定に際して制御系に与えられる信号として制御系の入力２０１へ出力する。図３ではステップＳ１である。正弦波信号ｘ０（ｔ）を制御系に入力したときの制御系の応答を、２０６、２０７からそれぞれ、時間応答シミュレーション装置１００の入力１（ｙ１）から制御量信号ｙ１（ｔ）として、入力２（ｙ２）から入力値信号ｙ２（ｔ）として、入力し、図１の２１および２２のＡＤ変換器でディジタル値に変換する。これらのディジタル値から周波数応答計算部３１、３２によって閉ループ系周波数応答Ｙ０ｃ（ω）および開ループ系周波数応答Ｙ０ｏ（ω）を求める。これを正弦波の周波数を掃引して行う。図３ではステップＳ２である。実際には、コンピュータ上では離散値として計算を行うため、正弦波の各周波数値に対応する応答値をそれぞれ個々に導出することにより、これらを離散周波数値毎の応答値の数列として入力し、これをメモリなどに記録することになる。
【００４３】
次に、目標値信号ｘ１（ｔ）としてのステップ信号で周波数応答を測定する場合は、信号発生部１１においてステップ信号を発生させ、制御系の入力２０１へ出力する。図３ではステップＳ３である。そのときの応答を時間応答シミュレーション装置１００の入力１（ｙ１）から制御量信号ｙ１（ｔ）として入力し、周波数応答計算部３１、３３で閉ループ系周波数応答Ｙ１ｃ（ω）および開ループ系周波数応答Ｙ１ｏ（ω）を求める。図３ではステップＳ４である。目標値信号ｘ１（ｔ）としてのランプ信号で周波数応答を測定する場合は、信号発生部１１においてランプ信号を生成し、ステップ信号の場合と同様に周波数応答を測定する。ここまでが、本実施形態において、補償要素を設計するための周波数応答および時間応答を計算するための周波数応答を測定する過程（補償前周波数応答算出ステップ）である。
【００４４】
ここで補償要素の設計を行う。これは図１の補償要素設計４０であるが、時間応答シミュレーション装置１００により、正弦波信号ｘ０（ｔ）を用いて測定した開ループ系周波数応答Ｙ０ｏ（ω）をもとに、制御理論にもとづいて所望の時間応答が得られるように補償要素を設計し、その周波数応答ＹＣ（ω）を求める。図３ではステップＳ５である。このステップは、実際には、外部装置から供給されるデータ、若しくは、所定の作業者によりコンピュータの入力装置を用いて入力されるデータとして、補償要素の周波数応答ＹＣ（ω）（ゲインｇｃｏｍｐ（ω）、位相θｃｏｍｐ（ω））、或いは、これらに相当する情報を受け入れるステップである。
【００４５】
次に、時間応答のシミュレーションであるが、このときは時間応答シミュレーション装置１００に制御系を接続しなくても構わない。また、ここでは、上記目標値信号ｘ１（ｔ）の例としてのステップ信号とランプ信号に対応するステップ応答およびランプ応答を扱うが、他の目標値信号ｘ１（ｔ）に対応するものであれば、他の応答をシミュレーションしてもよい。
【００４６】
まず、次のように時間応答の計算に必要となる補償後の閉ループ系周波数応答Ｚ０ｃ（ω）、Ｚ１ｃ（ω）、Ｚ２ｃ（ω）を生成する。この補償後の閉ループ系周波数応答Ｚ０ｃ（ω）、Ｚ１ｃ（ω）、Ｚ２ｃ（ω）は、上記のステップで得た開ループ系周波数応答Ｙ０ｏ（ω）、Ｙ１ｏ（ω）、Ｙ２ｏ（ω）と、補償要素の周波数応答ＹＣ（ω）とに基づいて求める。特に、Ｚ２ｃ（ω）を生成する場合には、時間応答シミュレーション装置１００の閉ループ系周波数応答計算部５０において、ステップ応答をシミュレーションする場合はステップ信号により測定した開ループ系周波数応答、ランプ応答をシミュレーションする場合はランプ信号により測定した開ループ系周波数応答を用い、これらの開ループ系周波数応答Ｙ１ｏ（ω）の低周波域と、正弦波信号ｘ０（ｔ）により測定した開ループ系周波数応答Ｙ０ｏ（ω）の高周波域を結合し、時間応答をシミュレーションするためのベースとなる開ループ系結合周波数応答Ｙ２ｏ（ω）を生成する。図３ではステップＳ６である。
【００４７】
次に、閉ループ系周波数応答計算部５０において、図１の補償要素設計４０で設計した補償要素の周波数応答ＹＣ（ω）を入力し、この周波数応答ＹＣ（ω）と前記開ループ系周波数応答Ｙ０ｏ（ω）、Ｙ１ｏ（ω）、Ｙ２ｏ（ω）から補償要素を組み込んだ補償後の開ループ系周波数応答Ｚ０ｏ（ω）、Ｚ１ｏ（ω）、Ｚ２ｏ（ω）を計算する。図３ではステップＳ７である。
【００４８】
さらに前記補償後の開ループ系周波数応答Ｚ０ｏ（ω）、Ｚ１ｏ（ω）、Ｚ２ｏ（ω）から補償後の閉ループ系周波数応答Ｚ０ｃ（ω）、Ｚ１ｃ（ω）、Ｚ２ｃ（ω）を計算する。図３ではステップＳ８である。ここまでで、時間応答ｃ（ｔ）の計算に必要となる補償後の閉ループ系周波数応答Ｚ０ｃ（ω）、Ｚ１ｃ（ω）、Ｚ２ｃ（ω）が得られる。
【００４９】
次に、時間応答の計算であるが、時間応答シミュレーション装置１００の時間応答計算部６０において、ステップ応答をシミュレーションする場合は、前記閉ループ系周波数応答Ｚ０ｃ（ω）、Ｚ１ｃ（ω）、Ｚ２ｃ（ω）およびステップ信号を生成した際の信号発生部１１のフーリエ係数（ｃ０、ｗｎ・ａｎ、ｗｎ・ｂｎ；変動成分のフーリエ係数には窓関数ｗｎを乗算したもの。）からフーリエ級数により制御系の時間応答を計算する。この計算結果（時間応答ｃ（ｔ））が、補償後のステップ応答のシミュレーション結果である。図３ではステップＳ９である。また、ランプ応答をシミュレーションする場合は、前記閉ループ系周波数応答Ｚ０ｃ（ω）、Ｚ１ｃ（ω）、Ｚ２ｃ（ω）およびランプ信号を生成した際のフーリエ係数からフーリエ級数により時間応答を計算する。
【００５０】
前記時間応答ｃ（ｔ）のシミュレーション結果を制御系の速応性、減衰性、定常特性について所望の時間応答と比較し、設計した補償要素により望ましい時間応答が得られているか補償要素の設計を評価する。図３ではステップＳ１０である。
【００５１】
前記時間応答のシミュレーション結果が所望の時間応答を満たしていない場合は、補償要素の設計において設計パラメータを変更し、補償要素を再設計する。図３ではステップＳ１１である。再設計した補償要素の周波数応答ＹＣ（ω）を図１の閉ループ系周波数応答計算部５０に入力し、前記のように図３のステップＳ７、Ｓ８，Ｓ９の手順により時間応答ｃ（ｔ）を再度シミュレーションする。
【００５２】
次に、周波数応答の測定方法、時間応答の計算法を説明する。図１の信号発生部１１において、閉ループ系および開ループ系の周波数応答を測定する正弦波信号ｘ０（ｔ）の電圧Ｖ０、測定周波数の上限値ｆｍａｘ、周波数を０[Ｈｚ]からｆｍａｘまで変化させるときのステップ数Ｎ、周波数の変化幅Δｆ（＝ｆｍａｘ／Ｎ）を決定する。図３ではステップＳ１に関する。
【００５３】
ここで、正弦波信号ｘ０（ｔ）による閉ループ系周波数応答Ｙ０ｃ（ω）の測定方法を説明する。図１の信号発生部１１からｘ＝０[Ｖ]とした目標値信号を図２の測定対象制御系の入力２０１へ出力し、制御系の出力２０６（制御対象の制御量信号ｙ１（ｔ））を時間応答シミュレーション装置１００の入力１（ｙ１）へ入力する。これをＡＤ変換器２１によりＡＤ変換し、図１の閉ループ系周波数応答計算部３１へ送る。これを制御系出力のオフセット値Ｖ0１ｏｆｆとする。図３ではステップＳ２に関する。
【００５４】
図１の信号発生部１１からｘ＝Ｖ０[Ｖ]とした目標値信号を図２の測定対象制御系の入力２０１へ出力し、制御系出力２０６（制御対象の制御量）を前記シミュレーション装置１００の入力１（ｙ１）に入力する。これをＡＤ変換器２１によりＡＤ変換し、閉ループ系周波数応答計算部３１へ送る。これをＶ１とする。閉ループ系周波数応答計算部３１において、前記目標値信号ｘ＝Ｖ０、前記制御量信号ｙ１＝Ｖ１、前記オフセットＶ０１ｏｆｆより、０[Ｈｚ]におけるゲインＧｄｃ１（＝(Ｖ１−Ｖ０１ｏｆｆ)／Ｖ０）を求める。図３ではステップＳ２に関する。
【００５５】
図１の信号発生部１１において、電圧Ｖ０[Ｖ]、周波数ｆｎ[Ｈｚ]（＝ｎΔｆ，１≦ｎ≦Ｎ）の正弦波信号ｘ０（ｔ）を生成し、測定の際に制御系に与える目標値信号として図２の測定対象制御系の入力２０１へ出力する。制御系出力２０６（制御量信号）は前記シミュレーション装置１００の入力１（ｙ１）に入力する。制御系の応答が定常状態になるまでの待ち時間Ｔｗ[ｓ]経過した後、入力１（ｙ１）からｍ周期分の制御系出力である制御量信号ｙ１（ｔ）をＡＤ変換器２１によりＡＤ変換し、閉ループ系周波数応答計算部３１へ送る。これをｆｙ１（ｔ）とする。正弦波信号ｘ０（ｔ）は前記電圧Ｖ０および周波数ｆｎより数式１のようになる。図３ではステップＳ１に関する。
【００５６】
【数１】
2016194916.tif 000003
【００５７】
図１の閉ループ系周波数応答計算部３１において、前記制御系出力ｆｙ１（ｔ）から制御系の閉ループ系周波数応答Ｙ０ｃ（ω）を計算する。図３ではステップＳ２に関する。まず、数式２に示すように、前記制御系出力ｆｙ１（ｔ）から前記オフセットＶ０１ｏｆｆを除いたｆ１（ｔ）を求め、ｆ１（ｔ）に対してフーリエ積分を行い、閉ループ系周波数応答Ｙ０ｃ（ω）の周波数ｆｎのときのゲインｇ（ω＝２πｆｎ）と位相θ（ω＝２πｆｎ）を求める。数式３に計算式を示す。Ｔは周波数ｆｎ[Ｈｚ]の正弦波信号の周期である。オフセットＶ０１ｏｆｆを除くのは、オフセットＶ０１ｏｆｆの影響を排除して周波数応答を求めるためである。図５に示すように、制御系出力のオフセットを測定し、周波数応答を求める際にそのオフセットを除去した後に周波数応答を測定する。そして、時間応答を計算する際にオフセットを加算する。このような処理を行うことにより、時間応答のシミュレーションにおいて、制御系出力のオフセットも再現することができる。後に述べるように、正弦波信号ｘ０（ｔ）による開ループ系周波数応答Ｙ０ｏ（ω）の測定およびステップ信号等による周波数応答Ｙ１ｃ（ω）、Ｙ１ｏ（ω）の測定の際にもオフセットの除去を行う。
【００５８】
【数２】
2016194916.tif 000004
【００５９】
上記のように、周波数ｆｎ［Ｈｚ］の正弦波信号ｘ０（ｔ）を与えたときの制御量信号ｙ１（ｔ）の測定値ｆｙ１（ｔ）からオフセットＶ０１ｏｆｆを減算した値を数式２に示すようにｆ１（ｔ）とし、これを数式３に示すようにフーリエ積分する。
【００６０】
【数３】
2016194916.tif 000005
【００６１】
そして、以下の数式４に示すようにして、周波数ｆｎにおける閉ループ系周波数応答Ｙ０ｃ（ω＝２πｆｎ）のゲインｇ０ｃ（ω＝２πｆｎ）と位相θ０ｃ（ω＝２πｆｎ）を求める。
【００６２】
【数４】
2016194916.tif 000006
【００６３】
上記のゲインおよび位相を、周波数ｆｎ＝ｎΔｆ（１≦ｎ≦Ｎ）の各周波数について測定する。これに前記０[Ｈｚ]におけるゲインＧｄｃ１とを合わせることにより、０[Ｈｚ]からｆｍａｘ（＝ＮΔｆ)までの閉ループ系周波数応答Ｙ０ｃ（ω）が得られる。
【００６４】
次に、正弦波信号ｘ０（ｔ）による開ループ系周波数応答Ｙ０ｏ（ω）の測定方法を説明する。図１の信号発生部１１からｘ＝０[Ｖ]とした測定時に与える目標値信号を図２の測定対象制御系の入力２０１へ出力し、制御系の信号２０７を入力値信号ｙ２（ｔ）として時間応答シミュレーション装置１００の入力２（ｙ２）へ入力する。これをＡＤ変換器２２によりＡＤ変換し、図１の開ループ系周波数応答計算部３２へ送る。これを信号２０７のオフセットＶ０２ｏｆｆとする。図３ではステップＳ２に関する。
【００６５】
図１の信号発生部１１からｘ＝Ｖ０[Ｖ]とした測定信号を図２の測定対象制御系の入力２０１へ出力し、制御系の信号２０７を入力値信号ｙ２（ｔ）として前記シミュレーション装置１００の入力２（ｙ２）に入力する。これをＡＤ変換器２２によりＡＤ変換し、開ループ系周波数応答計算部３２へ送る。これをＶ２とする。開ループ系周波数応答計算部３２において、前記測定信号ｘ＝Ｖ０、前記Ｖ２、前記オフセットＶ０２ｏｆｆより０[Ｈｚ]におけるゲインＧｄｃ２（＝(Ｖ２−Ｖ０２ｏｆｆ)／Ｖ０）を求める。図３ではＳ２に関する。
【００６６】
図１の信号発生部１１において、電圧Ｖ０[Ｖ]、周波数ｆｎ[Ｈｚ]＝ｎΔｆ（１≦ｎ≦Ｎ）の正弦波信号ｘ０（ｔ）を生成し、測定時に与える目標値信号として図２の測定対象制御系の入力２０１へ出力する。制御系の信号２０７は入力値信号として前記シミュレーション装置１００の入力２（ｙ２）に入力する。制御系の応答が定常状態になるまでの待ち時間Ｔｗ[ｓ]経過した後、入力２（ｙ２）からｍ周期分の信号ｙ２（ｔ）をＡＤ変換器２２によりＡＤ変換し、開ループ系周波数応答計算部３２へ送る。これをｆｙ２（ｔ）とする。図３ではステップＳ１に関する。
【００６７】
図１の開ループ系周波数応答計算部３２において、前記信号ｆｙ２（ｔ）から前記オフセットＶ０２ｏｆｆを除いたｆ２（ｔ）を数式５に示すように求める。このｆ２（ｔ）に対して数式６に示すようにフーリエ積分を行い、測定時の正弦波信号ｘ０（ｔ）と測定された信号ｆ２（ｔ）の間の周波数応答のゲインｇ０２と位相θ０２を数式７に示すように求める。図３ではステップＳ２に関する。なお、Ｔは周波数ｆｎ[Ｈｚ]の正弦波信号ｘ０（ｔ）の周期である。
【００６８】
【数５】
2016194916.tif 000007
【００６９】
【数６】
2016194916.tif 000008
【００７０】
【数７】
2016194916.tif 000009
【００７１】
開ループ系周波数応答計算部３２において、これらのゲインｇ０２と位相θ０２と、ＳＷ１をａ側に切り替えることで閉ループ系周波数応答計算部３１から送られた前記閉ループ系周波数応答Ｙ０ｃ（ω）のゲインｇ０ｃおよび位相θ０ｃとから、開ループ系周波数応答のゲインｇ０ｏ、位相θ０ｏを計算する。計算式を数式８に示す。
【００７２】
【数８】
2016194916.tif 000010
【００７３】
上記の入力値信号ｙ２（ｔ）は、周波数ｆｎ＝ｎΔｆ（１≦ｎ≦Ｎ）の各周波数について測定され、ゲインｇ０ｏおよび位相θ０ｏを各周波数について求める。また、開ループ系周波数応答Ｙ０ｏ（ω）の０[Ｈｚ]におけるゲインをＧ０ｄｃ＝Ｇｄｃ１／Ｇｄｃ２により計算することにより、０[Ｈｚ]からｆｍａｘ（＝ＮΔｆ)までの開ループ系周波数応答Ｙ０ｏ（ω）が全て得られる。
【００７４】
次に、目標値信号ｘ１（ｔ）としてのステップ信号による周波数応答の測定方法を説明する。図１の信号発生部１１からｘ＝０[Ｖ]とした測定信号を図２の測定対象制御系の入力２０１へ出力し、制御系の出力２０６を制御量信号ｙ１（ｔ）として時間応答シミュレーション装置１００の入力１（ｙ１）に入力する。これをＡＤ変換器２１によりＡＤ変換し、図１の閉ループ系周波数応答計算部３１へ送る。これを制御系出力２０６のオフセットＶｓｏｆｆとする。図３ではステップＳ４に関する。
【００７５】
図１の信号発生部１１においてステップ信号を生成する。図３ではステップＳ３に関する。ステップ信号は、電圧Ｖｓ［Ｖ］、周期Ｔｓ［ｓ］の矩形波のフーリエ級数展開を用いて生成するが、ギブス現象の発生を抑えるため、矩形波のフーリエ係数に窓関数を乗算したものをフーリエ係数とし、その係数を用いてフーリエ級数を計算することにより生成する。数式９にフーリエ級数展開によるステップ信号ｘ１（ｔ）の計算式を示す。ここで、係数ｃ０、ａｎ、ｂｎは数式１０に示す矩形波のフーリエ係数であり、数式１１で表される。変動成分のフーリエ係数ａｎ、ｂｎには数式９のように窓関数ｗｎを乗算する。ｗｎは数式１２に示すハミング窓のほか、ハニング窓、ブラックマン窓でもよい。また、数式９において周波数ｆｎはｆｎ[Ｈｚ]＝ｎ／Ｔｓ（１≦ｎ≦Ｎ）である。なお、ランプ信号を生成する場合は、数式１１の係数ｃ０、ａｎ、ｂｎの代わりに、数式１３に示すランプ信号ｘ１（ｔ）をフーリエ級数展開したときのフーリエ係数（数式１４）を使用すればよい。ここで、Ｔはランプ信号ｘ１（ｔ）の周期、ＶＲはｔ＝Ｔ／２における電圧値（最大値）である。
【００７６】
【数９】
2016194916.tif 000011
【００７７】
【数１０】
2016194916.tif 000012
【００７８】
【数１１】
2016194916.tif 000013
【００７９】
【数１２】
2016194916.tif 000014
【００８０】
【数１３】
2016194916.tif 000015
【００８１】
【数１４】
2016194916.tif 000016
【００８２】
このようにして生成したステップ信号を測定時の目標値信号として図２の測定対象制御系の入力２０１へ出力する。制御系出力２０６を制御量信号ｙ１（ｔ）として前記シミュレーション装置１００の入力１（ｙ１）へ入力する。これをＡＤ変換器２１によりＡＤ変換し、閉ループ系周波数応答計算部３１へ送る。これをｆ１ｓ（ｔ）とする。図３ではステップＳ３に関する。
【００８３】
図１の閉ループ系周波数応答計算部３１において、数式１５に示すように、前記制御系出力ｆ１ｓ（ｔ）から前記オフセットＶｓｏｆｆを除いたｆｓ（ｔ）を求め、また、数式１６に示すように、前記ステップ信号の電圧Ｖｓ［Ｖ］、周期Ｔｓ［ｓ］から０[Ｈｚ]におけるゲインＧｄｃｓを計算する。図３ではステップＳ４に関する。
【００８４】
【数１５】
2016194916.tif 000017
【００８５】
【数１６】
2016194916.tif 000018
【００８６】
ステップ信号を用いた場合の閉ループ系周波数応答の計算を説明する。図１の閉ループ系周波数応答計算部３１において、前記ｆｓ（ｔ）に対して数式１７に示すフーリエ積分を行い、数式１８に計算式を示すように、閉ループ系周波数応答のゲインｇｓｃと位相θｓｃを求める。図３ではステップＳ４に関する。ここで、周波数ｆｎ[Ｈｚ]＝ｎ／Ｔｓ（１≦ｎ≦Ｎ）である。Ｔは周波数ｆｎ[Ｈｚ]の正弦波信号の周期である。ｗnは前記窓関数、ａn、ｂnはステップ信号を生成するフーリエ係数である。また、ランプ信号を用いて閉ループ系周波数応答を計算する場合は、係数ａn、ｂnにランプ応答を生成するときのフーリエ係数を使用する。
【００８７】
【数１７】
2016194916.tif 000019
【００８８】
【数１８】
2016194916.tif 000020
【００８９】
以上により求められた閉ループ系周波数応答のゲインｇscと位相θscは、ＳＷ１をｂ側に切り替えることにより開ループ系周波数応答計算部３３に送られ、ここで開ループ系周波数応答のゲインｇsoと位相θsoが求められる。計算式を数式１９に示す。
【００９０】
【数１９】
2016194916.tif 000021
【００９１】
以上のステップ信号ｘ１（ｔ）による開ループ系周波数応答Ｙ１ｏ（ω）の測定方法は、時間応答シミュレーション装置１００の入力１（制御対象の制御量信号ｙ１（ｔ））のみを用いる方法であるが、正弦波信号ｘ０（ｔ）による開ループ系周波数応答の測定と同様に、入力１と入力２（制御対象の制御量信号ｙ１（ｔ）と制御対象への入力値信号ｙ２（ｔ））を用いて開ループ系周波数応答を測定することも可能である。その方法を説明する。
【００９２】
前記のように、ステップ信号ｘ１（ｔ）を用いて閉ループ系周波数応答を測定する。次に、図１の信号発生部１１からｘ＝０[Ｖ]とした測定時に与える信号を測定対象制御系の入力２０１へ出力し、制御系の信号２０７を前記シミュレーション装置１００の入力２（ｙ２）へ入力し、信号２０７のオフセットＶｓｏｆｆ２を測定する。次に、ステップ信号ｘ１（ｔ）を測定時に与える信号として測定対象制御系の入力２０１へ出力する。制御系の信号２０７（入力値信号ｙ２（ｔ））を前記シミュレーション装置１００の入力２（ｙ２）へ入力し、信号ｆ２ｓ（ｔ）とする。数式１５において、ｆ１ｓ（ｔ）を前記ｆ２ｓ（ｔ）、Ｖｓｏｆｆを前記Ｖｓｏｆｆ２と置き、オフセットＶｓｏｆｆ２を除いたｆｓ（ｔ）を求め、数式１６により０[Ｈｚ]におけるゲインＧｄｃｓを計算する。
【００９３】
次に、数式１７と数式１８を用いてゲインと位相を計算するが、ここで得られるゲインと位相は測定信号ｘ１（ｔ）と入力値信号ｆｓ２（ｔ）の間のゲインおよび位相であり、数式７と同様にゲインをｇ０２、位相をθ０２とする。次に、このゲインｇ０２と位相θ０２およびステップ信号ｘ１（ｔ）により測定した閉ループ系周波数応答Ｙ１ｃ（ω）のゲインｇｓｃと位相θｓｃから、ｇ０ｃの代わりにｇｓｃ、θｏｃの代わりにθｓｃとして数式８を用いて、開ループ系周波数応答Ｙ１ｏ（ω）のゲインｇｓｏ（数式８のｇ０ｏ）と位相θｓｏ（数式８のθ０ｏ）を計算する。この結果は、上記数式１９により得られる値の代わりに用いることができる。なお、これらの数式１５、数式１６、数式１７、数式１８および数式８の計算は、図１の開ループ系周波数応答計算部３２において行い、開ループ系周波数応答計算部３３およびＳＷ１を用いる必要はない。
【００９４】
次に、上記の各測定及び開ループ系周波数応答の算出に基づく時間応答ｃ（ｔ）の計算法を説明する。この場合、上述のように、正弦波信号ｘ０（ｔ）を与えたときの測定に基づく上記開ループ系周波数応答Ｙ０ｏ（ω）をベースとして、補償後の開ループ系周波数応答Ｚ０ｏ（ω）を求め、その後、補償後の閉ループ系周波数応答Ｚ０ｃ（ω）を求めて、このＺ０ｃ（ω）に基づいて時間応答ｃ（ｔ）を求めることができ、或いは、目標値信号ｘ１（ｔ）としてのステップ信号を与えたときの測定に基づく上記開ループ系周波数応答Ｙ１ｏ（ω）をベースとして、補償後の開ループ系周波数応答Ｚ１ｏ（ω）を求め、その後、補償後の閉ループ系周波数応答Ｚ１ｃ（ω）を求めて、このＺ１ｃ（ω）に基づいて時間応答ｃ（ｔ）を求めることができる。しかし、これらの方法は、以下の開ループ系結合周波数応答Ｙ２ｏ（ω）を生成する過程を除いて、基本的に以下の実施形態と同じ手順で実施できるため、その説明は省略する。以下の実施形態では、上記のように正弦波信号ｘ０（ｔ）を与えたときの測定に基づく上記開ループ系周波数応答Ｙ０ｏ（ω）を算出し、上記開ループ系周波数応答Ｙ１ｏ（ω）とこの開ループ系周波数応答Ｙ０ｏ（ω）とを結合して開ループ系結合周波数応答Ｙ２ｏ（ω）を生成している。このＹ２ｏ（ω）から補償後の開ループ系周波数応答Ｚ２ｏ（ω）、補償後の閉ループ系周波数応答Ｚ２ｃ（ω）が得られ、最終的に時間応答ｃ（ｔ）が求められる。
【００９５】
まず、図１の閉ループ系周波数応答計算部５０における処理を説明する。図３ではステップＳ６である。ステップ応答をシミュレーションする場合は、目標値信号ｘ１（ｔ）としてのステップ信号により測定した開ループ周波数応答Ｙ１ｏ（ω）の低周波域と、正弦波信号ｘ０（ｔ）により測定した開ループ周波数応答Ｙ０ｏ（ω）の高周波域を結合し、ステップ応答を求めるためのベースとなる開ループ系結合周波数応答Ｙ２ｏ（ω）を新たに構成する。これを数式２０および図４（ａ）に示す。ステップ信号により測定したゲインおよび位相ｇso、θso、正弦波信号により測定したゲインおよび位相ｇ０ｏ、θ０ｏ、周波数ｆ０は周波数応答を結合する周波数であり、ｆ０以下の周波数についてはステップ信号により測定したゲイン、位相を用い、ｆ０を超える周波数については正弦波信号により測定したゲイン、位相を用い、開ループ系結合周波数応答（ゲインｇ２ｏおよび位相θ２ｏ）を構成する。周波数ｆ０は、閉ループ系周波数応答Ｙ０ｃ（ω）やＹ１ｃ（ω）の共振周波数よりも高い周波数に設定し、共振周波数がステップ信号により測定した周波数範囲に入るようにする。周波数ｆ０の設定として、閉ループ系周波数応答の遮断周波数が目安となる。ランプ応答をシミュレーションする場合は、ｆ０以下の周波数についてはランプ信号により測定したゲイン、位相を用い、ｆ０を超える周波数については正弦波信号により測定したゲイン、位相を用いる。
【００９６】
【数２０】
2016194916.tif 000022
【００９７】
次に、図１の閉ループ系周波数応答計算部５０において、補償前の開ループ系結合周波数応答Ｙ２ｏ（ω）と補償要素の周波数応答ＹＣ（ω）に基づいて、補償要素を組み込んだ補償後の開ループ系周波数応答Ｚ２ｏ（ω）を計算する。図３ではステップＳ７である。補償要素（その周波数応答をＹＣ（ω）とする。）は図１の補償要素設計４０において設計されており、補償要素のゲインおよび位相をそれぞれｇｃｏｍｐ、θｃｏｍｐとする。補償後の開ループ系周波数応答Ｚ２ｏ（ω）の計算式を数式２１に示す。ゲインｇ２ｏおよび位相θ２ｏは数式２０により構成したゲインと位相である。図４（ｂ）に補償の例を示す。図４（ａ）に示すゲインｇ２ｏ（図中ではｇｓｔｅｐ、ｇｓｉｎで示す。）および位相θ２ｏ（図中ではθｓｔｅｐ、θｓｉｎで示す。）は、補償前の開ループ系結合周波数応答Ｙ２ｏ（ω）のゲイン及び位相であり、これに対して補償を行うと、図４（ｂ）に示すように、補償要素の周波数応答ＹＣ（ω）のゲインｇｃｏｍｐ（ω）および位相θｃｏｍｐ（ω）が加わり、補償後の開ループ系周波数応答Ｚ２ｏ（ω）のゲインｇ２ｃｏ（図中では補償後ｇｏｐｅｎ）および位相θ２ｃｏ（図中では補償後θｏｐｅｎ）が得られる。この補償は位相進み補償の例である。
【００９８】
【数２１】
2016194916.tif 000023
【００９９】
次に、図１の閉ループ系周波数応答計算部５０において、補償後の開ループ系周波数応答Ｚ２ｏ（ω）から補償後の閉ループ系周波数応答Ｚ２ｃ（ω）を計算する。図３のステップＳ８である。計算式を数式２２に示す。ｇ２ｃｃは補償後の閉ループ系周波数応答Ｚ２ｃ（ω）のゲイン、θ２ｃｃは補償後の閉ループ系周波数応答Ｚ２ｃ（ω）の位相である。
【０１００】
【数２２】
2016194916.tif 000024
【０１０１】
次に、図１の時間応答計算部６０において、補償後の制御系の時間応答ｃ（ｔ）を計算する。図３のステップＳ９である。補償後のステップ応答を計算する場合は、図１の信号発生部１１でステップ信号を生成した際のフーリエ係数ｃ０、ａｎ、ｂｎ(前記数式１１)、窓関数ｗn（前記数式１２）、数式２２により計算した補償後の閉ループ系周波数応答Ｚ２ｃ（ω）からフーリエ級数を用いて時間応答を計算する。時間応答の計算式を数式２３に示す。ｃ（ｔ）は制御系の時間応答であり、これがシミュレーション結果である。ここで、Ｇｄｃｓは補償後の閉ループ系周波数応答Ｚ２ｃ（ω）の０[Ｈｚ]におけるゲインであり、ステップ信号ｘ１（ｔ）により測定した開ループ系周波数応答Ｙ１ｏ（ω）の０［Ｈｚ］のゲインＧｄｃ１に対して、数式２４で補償を行い、さらに数式２５で閉ループ系周波数応答Ｚ２ｃ（ω）の上記ゲインＧｄｃｓとなるように計算する。一方、ｇ２ｃｃｎは、数式２２により計算した補償後の閉ループ系周波数応答Ｚ２ｃ（ω）のω＝２πｆｎのときのゲイン、θ２ｃｃｎは、ω＝２πｆｎのときの位相である。また、ｆｎ[Ｈｚ]＝ｎ／Ｔｓ（１≦ｎ≦Ｎ）である。ｇｃｏｍｐ_ｄｃは補償要素の直流に対するゲインである。さらに、数式２３の第３項は制御系出力に存在するオフセットを再現する項であり、Ｖｓｏｆｆはステップ信号ｘ１（ｔ）により閉ループ系周波数応答Ｙ１ｃ（ω）を測定した際のオフセットである。ｇｃｏｍｐ_ｄｃで除するのは、補償によるオフセットの減少を再現するためである。補償後のランプ応答を計算する場合は、ｃ０、ａｎ、ｂｎに数式１４に示すランプ信号を生成するときのフーリエ係数を用い、補償後の閉ループ系周波数応答はランプ信号で測定した周波数応答から生成したものを使用する。
【０１０２】
【数２３】
2016194916.tif 000025
【０１０３】
【数２４】
2016194916.tif 000026
【０１０４】
【数２５】
2016194916.tif 000027
【０１０５】
なお、上記実施形態の第３の態様においては、ステップ信号などの目標値信号ｘ１（ｔ）を与えたときの測定値であるｙ１（ｔ）からオフセットＶｓｏｆｆを差し引いて計算し、最終的に補償後の閉ループ系周波数応答Ｚ２ｃ（ω）と目標値信号ｘ１（ｔ）に基づいて時間応答ｃ（ｔ）を求めるときに、Ｖｓｏｆｆ／ｇｃｏｍｐ_ｄｃを加算している。このようなオフセットの取り扱いは、上記実施形態の第３の態様とは異なり、目標値信号ｘ１（ｔ）を与えたときの測定値のみを用い、正弦波信号ｘ０（ｔ）を与えたときの測定値を用いない第２の態様でも同様に実施することができる。一方、正弦波信号ｘ０（ｔ）を与えたときの測定値のみを用いる第１の態様では、上記と同様にｙ２（ｔ）を用いるか否かに拘わらず、時間応答ｃ（ｔ）に閉ループ系周波数応答Ｙ０ｃ（ω）を求める際に用いる測定値ｙ１（ｔ）のオフセットに基づき、Ｖ０１ｏｆｆ／ｇｃｏｍｐ_ｄｃを加算すればよい。
【実施例】
【０１０６】
本発明の具体的な実施例を、ＶＣＭ（ボイスコイルモータ）を用いたリニアスライダーの位置制御系に適用した場合を用いて説明する。図６は実施例の構成図であり、実施例に基づいて図２を具体的に描いたものである。図６において、１００は本発明の時間応答シミュレーション装置であり、図１に示したものである。３００はシミュレーションの対象であるリニアスライダーの位置制御系である。位置制御系３００において、３０２は補償要素、３０３はドライブ回路、３０４はＶＣＭ、３０５はリニアスライダー、３０６は位置センサである。
【０１０７】
リニアスライダー３０５はＶＣＭ３０４が発生する力により一軸方向に駆動され、リニアスライダーの位置が制御量として位置センサ３０６によって検出される。位置センサは光学式のセンサであり、リニアスライダーに取り付けた光源からの光をセンサが受光し、位置を検出する。位置センサは、ＶＣＭおよびリニアスライダーの設置されているベースに固定されている。位置センサの出力は位置信号３０７（制御量信号に相当する。）としてフィードバックされ、位置制御系の目標値入力３０１と位置信号３０７との偏差（入力値信号に相当する。）が補償要素３０２に送られ、ドライブ回路３０３で駆動信号を生成しＶＣＭ３０４を駆動する。
【０１０８】
補償要素３０２は、位置制御系の速応性、減衰性、定常特性などの時間応答ｃ（ｔ）を決定する要素であり、時間応答ｃ（ｔ）が所望の応答になるように補償要素を設計する。一般に、周波数応答法による補償要素の設計では、制御対象（図６の例では、補償要素３０２、ドライブ回路３０３、ＶＣＭ３０４及びリニアスライダー３０５に相当する。）の開ループ系周波数応答を用い、位相遅れ補償、位相進み補償、位相進み遅れ補償といった補償要素を設計する。ここで用いる上記開ループ系周波数応答は、Ｙ１ｏ（ω）若しくはＹ２ｏ（ω）でもよいが、上記のＹ０ｏ（ω）とすることが好ましい。設計においては、ゲイン交差周波数、ゲイン余裕などの設計パラメータを設定し、補償要素を設計する。設計した補償要素により所望の時間応答ｃ（ｔ）が得られるかを評価し、所望の応答が得られない場合は設計パラメータを変更して補償要素を再設計することになる。所望の応答が得られるまで評価と再設計を行うことになるが、このとき設計した補償要素を制御系に組み込んだ実機を用いたのでは、効率的に設計・評価を行うことができないという問題があった。
【０１０９】
そこで、制御対象の開ループ系周波数応答Ｙ１ｏ（ω）若しくはＹ２ｏ（ω）ならびに設計した補償要素の周波数応答ＹＣ（ω）から補償要素を組み込んだ際の制御系の時間応答ｃ（ｔ）をシミュレーションにより求める装置を提供する。これにより、補償要素を組み込んだ実機を構成しなくても設計の評価が可能になる。
【０１１０】
この制御系のステップ応答のシミュレーションについて、実施例を説明する。まず、補償要素の設計やステップ応答のシミュレーションに使用する周波数応答を測定するため、図６の補償要素３０２として電圧を１／１０に減衰させる回路を使用した。この補償要素はゲイン調整であるが、制御系を安定化できればこのようなゲイン調整で構わない。この補償要素は目的となる所望の制御特性を実現するための補償要素ではないため、測定を行う際の仮に設定された（暫定的な）補償要素ＹＣＯ（ω）である。
【０１１１】
まず、正弦波信号ｘ０（ｔ）による閉ループ系周波数応答Ｙ０ｃ（ω）の測定について説明する。図３のステップＳ２である。図６の時間応答シミュレーション装置１００のｘから測定を行うための正弦波信号ｘ０（ｔ）を出力し、そのときの位置信号３０７を制御量信号ｙ１（ｔ）として入力１（ｙ１）へ入力する。前記の周波数応答の測定方法で説明したように、まずｘ＝０[Ｖ]を制御系の目標値入力３０１へ出力し、位置信号３０７のオフセットＶ１ｏｆｆを測定する。次に、電圧Ｖ０＝１[Ｖ]を出力し、閉ループ系の０[Ｈｚ]のときのゲインＧｄｃ１を求める。次に、測定信号として正弦波信号ｘ０（ｔ）を制御系の目標値入力３０１へ出力し、数式３及び４により閉ループ系周波数応答Ｙ０ｃ（ω）を求める。得られた閉ループ系周波数応答Ｙ０ｃ（ω）を図７に示す。正弦波信号ｘ０（ｔ）は数式１により、振幅Ｖ０はゲインＧｄｃ１を求める際の電圧と同じ１[Ｖ]、周波数ｆｎは１Ｈｚから１００Ｈｚまで１Ｈｚごとに変化させて生成した。図３のステップＳ１である。
【０１１２】
次に、正弦波信号ｘ０（ｔ）による開ループ系周波数応答Ｙ０ｏ（ω）の測定について説明する。図３のステップＳ２である。図６の時間応答シミュレーション装置１００のｘから測定を行うための正弦波信号ｘ０（ｔ）を出力し、そのときの制御系の信号３０８を入力値信号ｙ２（ｔ）として入力２（ｙ２）へ入力する。閉ループ系の測定の場合と同様に、前記の周波数応答の測定方法で説明したように、まずｘ=０[Ｖ]を制御系の目標値入力３０１へ出力し、信号３０８のオフセットＶ２ｏｆｆを測定する。次に、振幅Ｖ０としてｘ=１[Ｖ]を出力し、０[Ｈｚ]のときのゲインＧｄｃ２を求める。次に、測定信号として正弦波信号ｘ０（ｔ）を制御系の目標値入力３０１へ出力し、数式６乃至８により開ループ系周波数応答Ｙ０ｏ（ω）を求める。得られた開ループ系周波数応答Ｙ０ｏ（ω）を図８に示す。正弦波信号の振幅Ｖ０および周波数ｆｎは、上述の閉ループ系周波数応答の測定と同じ値である。
【０１１３】
次に、ステップ信号による周波数応答の測定について説明する。図３のステップＳ４である。図６の時間応答シミュレーション装置１００のｘから測定を行うための目標値信号ｘ１（ｔ）を出力し、そのときの位置信号３０７を制御量信号ｙ１（ｔ）として入力１（ｙ１）へ入力する。前記の周波数応答の測定方法で説明したように、まずｘ=０[Ｖ]を制御系の目標値入力３０１へ出力し、位置信号３０７のオフセットＶｓｏｆｆを測定する。
【０１１４】
次に、周波数応答を測定するためのステップ信号を生成する。図３のステップＳ３である。ステップ信号は数式９により、電圧Ｖｓ＝１［Ｖ］、周期Ｔｓ＝１［ｓ］の矩形波１周期を生成する。上記のように正弦波信号による周波数応答を１Ｈｚから１００Ｈｚまで１Ｈｚごとに測定したため、ステップ信号の周期を１［ｓ］として測定周波数を正弦波信号による測定と一致させる。図９の実線で示す「窓関数あり」は、生成したステップ信号であり、これは、数式１２の窓関数ｗnを乗ずる処理を行ったものである。この処理を行わずに生成した場合は、点線で示す「窓関数なし」のように波形にギブス現象の振動が生じる。このように、窓関数処理を行うことによりギブス現象のないステップ信号を生成することができる。
【０１１５】
時間応答シミュレーション装置１００から生成したステップ信号を制御系の目標値入力３０１へ出力し、数式１６により０[Ｈｚ]のときのゲインＧｄｃｓ、数式１７及び１８により閉ループ系周波数応答Ｙ１ｃ（ω）のゲインｇｓｃ及び位相θｓｃを求める。図１０にステップ信号により測定した閉ループ系周波数応答Ｙ１ｃ（ω）の例を示す。図３のステップＳ４である。
【０１１６】
この閉ループ系周波数応答Ｙ１ｃ（ω）から数式１９によりステップ信号による開ループ系周波数応答Ｙ１ｏ（ω）のゲインｇｓｏ、位相θｓｏを求める。得られた開ループ系周波数応答を図１１に示す。図３のステップＳ４である。
【０１１７】
ここで、補償要素を設計する。図３のステップＳ５である。補償要素には、定常偏差と減衰性を改善する位相遅れ補償、速応性と減衰性を改善する位相進み補償、およびこれらを組み合わせ、定常偏差、速応性、減衰性を改善する位相進み遅れ補償がある。位置制御系では、ステップ応答には理論上、定常偏差は生じない。ここでは、位相進み補償を行い、速応性と減衰性を改善する。補償要素は、正弦波信号ｘ０（ｔ）で測定した開ループ系周波数応答Ｙ０ｏ（ω）（図８）を用いて設計する。図８より、ゲイン交差周波数は１０Ｈｚ、位相余裕は３０°である。そこで、補償要素の設計パラメータとして、制御系の速応性を改善するため、速応性の指標であるゲイン交差周波数を３０Ｈｚに上げる。また、制御系の減衰性を改善するため、位相余裕をサーボ系の最適値とされる４０°〜６０°より、４０°にする。この条件を満たすように位相進み補償要素を設計する。位相進み補償の伝達関数の一般式は数式２６の第１項で表される。ここで、位相の最大値φｍａｘは、ｓｉｎ[φｍａｘ]＝（ａ−１）／（ａ＋１）で表される。また、位相が最大になる周波数ｆｍａｘは数式２７で表される。
【０１１８】
【数２６】
2016194916.tif 000028
【０１１９】
【数２７】
2016194916.tif 000029
【０１２０】
図８の開ループ系周波数応答より３０Ｈｚにおいて位相が−１８０°であることから、位相余裕を４０°にするため、位相進み補償により位相を４０°進める。φmax＝４０°とするとａ＝４．６となる。また、位相を４０°進める周波数が３０Ｈｚであることからｆｍａｘ＝３０ＨｚとするとＴ＝０．００２５となる。さらに、３０Ｈｚにおける開ループ系のゲインが−１７．８ｄＢ、３０Ｈｚにおける位相進み補償によるゲインの上昇が（２０ｌｏｇ４．６）×０．５＝６．６ｄＢであることから−１７．８＋６．６＝−１１．２ｄＢとなり、ゲイン交差周波数を３０Ｈｚにするためには３０Ｈｚのゲインを０ｄＢにする必要があるため、１１．２ｄＢゲインをあげる。よって、２０ｌｏｇＫ＝１１．２より、Ｋ＝３．６３となる。但し、時間応答のシミュレーション結果を実測と比較するため、補償要素を製作する際に実在する抵抗値を用いるとＫ＝３．６８となる。これらから位相進み補償の伝達関数を数式２６の第２項に、その周波数応答ＹＣ（ω）を図１２に示す。
【０１２１】
次に、ステップ信号で測定した周波数応答Ｙ１ｏ（ω）の低周波域と、正弦波信号で測定した周波数応答Ｙ０ｏ（ω）の高周波域を結合し、ステップ応答を求めるためのベースとなる開ループ系結合周波数応答Ｙ２ｏ（ω）を、数式２０を用いて生成する。図３のステップＳ６である。図７の正弦波信号で測定した閉ループ系周波数応答Ｙ０ｃ（ω）から、共振周波数は約１１Ｈｚである。周波数応答を結合する周波数ｆ０は、１１Ｈｚよりも高い周波数に設定し、共振周波数がステップ信号で測定した周波数域に含まれるようにする。ここでは、図７より遮断周波数が約１７Ｈｚであることから、周波数ｆ０を１７Ｈｚに設定し、１７Ｈｚまでをステップ信号で測定した周波数応答により、それを超える周波数については正弦波信号で測定した周波数応答から生成する。生成した周波数応答を図１３に示す。
【０１２２】
次に、補償後の開ループ系周波数応答Ｚ２ｏ（ω）を、数式２１を用いて計算する。図３のステップＳ７である。数式２０により生成した開ループ系結合周波数応答Ｙ２ｏ（ω）（図１３）に数式２６の補償要素の周波数応答ＹＣ（ω）（図１２）を組み込む。数式２１により得られた補償後の開ループ系周波数応答Ｚ２ｏ（ω）の例を図１４に示す。この図より、ゲインが０ｄＢになる周波数が３０Ｈｚであることからゲイン交差周波数は３０Ｈｚであり、０ｄＢのときの位相が−１４０°であることから位相余裕が４０°であることがわかる。補償要素の設計パラメータとして定めたゲイン交差周波数３０Ｈｚ、位相余裕４０°を満たしていることが確認できる。そして、補償後の開ループ系周波数応答Ｚ２ｏ（ω）から数式２２により補償後の閉ループ系周波数応答Ｚ２ｃ（ω）を計算する。図３のステップＳ８である。
【０１２３】
次に、補償後の閉ループ系周波数応答Ｚ２ｃ（ω）から数式２３により補償後のステップ応答ｃ（ｔ）を計算する。図３のステップＳ９である。図１５に得られたステップ応答を破線で示す。これがステップ応答のシミュレーション結果である。ステップ応答の再現性を確認するため補償要素を製作し、制御系のステップ応答を実測した結果を実線で示す。シミュレーション結果は実測とほぼ一致していることが確認できる。
【０１２４】
次に、ステップ応答を計算するためのベースとなる開ループ系周波数応答Ｙ０ｏ（ω）やＹ１ｏ（ω）、或いは、開ループ系結合周波数応答Ｙ２ｏ（ω）を用いることの効果を以下の各実施例でデータにより説明する。
【０１２５】
実施例の図６において、仮に設定した補償要素３０２を前記のように電圧を１／１０に減衰させる回路（以下、ゲイン調整）として、数式２３により、ステップ応答ｃ（ｔ）をシミュレーションした結果を図１６から図２１に示す。図１６は、正弦波信号ｘ０（ｔ）により測定した周波数応答Ｙ０ｏ（ω）からステップ応答を計算した結果である。図１７から図２０は、ステップ信号ｘ１（ｔ）により測定した周波数応答Ｙ１ｏ（ω）と正弦波信号により測定した周波数応答Ｙ０ｏ（ω）を結合してステップ応答を計算した結果である。図２１は、ステップ信号ｘ１（ｔ）により測定した周波数応答Ｙ１ｏ（ω）からステップ応答をシミュレーションした結果である。これより、補償要素３０２をゲイン調整とした場合、図１９および図２０のように結合周波数ｆ０を共振周波数の１１Ｈｚ以上で結合した場合（開ループ系結合周波数応答Ｙ２ｏ（ω）をベースとして時間応答を計算した場合）、および図２１のように周波数応答をステップ信号で測定した場合（開ループ系周波数応答Ｙ１ｏ（ω）をベースとして時間応答を計算した場合）にシミュレーションは実測とほぼ一致した。
【０１２６】
次に、実施例の図６において、新たに設計した補償要素３０２を前記の位相進み補償要素として、数式２３により、ステップ応答ｃ（ｔ）をシミュレーションした結果を図２２から図２６に示す。図２２は、正弦波信号により測定した周波数応答Ｙ０ｏ（ω）からステップ応答を計算した結果である。図２３から図２５は、ステップ信号により測定した周波数応答Ｙ１ｏ（ω）と正弦波信号により測定した周波数応答Ｙ０ｏ（ω）を結合した開ループ系結合周波数応答Ｙ２ｏ（ω）をベースとしてステップ応答を計算した結果である。なお、図２５は図１５と同一である。図２６は、ステップ信号により測定した周波数応答Ｙ１ｏ（ω）からステップ応答をシミュレーションした結果である。これより、新たな補償要素３０２を位相進み補償要素とした場合、図２３から図２５のように周波数応答を結合した場合（開ループ系結合周波数応答Ｙ２ｏ（ω）をベースとして時間応答を計算した場合）、および図２２のように周波数応答を正弦波で測定した場合（開ループ系周波数応答Ｙ０ｏ（ω）をベースとして時間応答を計算した場合）にシミュレーションは実測とほぼ一致した。
【０１２７】
以上より、周波数応答を正弦波信号で測定した場合（開ループ系周波数応答Ｙ０ｏ（ω）をベースとして時間応答ｃ（ｔ）を計算した場合）は、補償前のゲイン調整では一致しない（図１６参照）が、位相進み補償では一致した（図２２参照）。また、周波数応答をステップ信号で測定した場合（開ループ系周波数応答Ｙ１ｏ（ω）をベースとして時間応答ｃ（ｔ）を計算した場合）は、逆に補償前のゲイン調整では一致する（図２１参照）が、位相進み補償では一致しない（図２６参照）。このように相反する結果となるが、いずれの場合でも、制御対象の種類や補償要素の内容によって、高精度に時間応答ｃ（ｔ）を予測することが可能になる場合がある。一方、周波数応答を結合した場合（開ループ系結合周波数応答Ｙ２ｏ（ω）をベースとして時間応答ｃ（ｔ）を計算した場合）は、どちらの補償要素でも実測と一致し、周波数応答を結合することの効果がある。すなわち、開ループ系結合周波数応答Ｙ２ｏ（ω）を用いる方法では、制御対象の種類や補償要素の内容に関する適用範囲が広く、いずれの状況でも正確な時間応答をシミュレーションできる。
【０１２８】
結合周波数ｆ０については、補償前（ゲイン調整）の閉ループ系周波数応答Ｙ０ｃ（ω）、Ｙ１ｃ（ω）の共振周波数よりも高い周波数として遮断周波数を目安に設定し、その周波数の近くで結合周波数を変えてステップ応答を計算し、シミュレーション結果が結合周波数により変化しないことを確認すれば、結合周波数の設定が妥当であるかを判断できる。
【０１２９】
以上説明した実施形態の制御系の時間応答シミュレーション装置においては、設計した補償要素を組み込んだ制御系を構成しなくても、制御系の時間応答をシミュレーションし、実機を動作させることなく補償要素の設計を評価することを可能にするという点で極めて高い効果を奏するものである。
【０１３０】
尚、本発明の制御系の時間応答シミュレーション装置は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。例えば、上記実施形態では、目標値信号ｘ１（ｔ）を与えたときの測定により求めた開ループ系周波数応答Ｙ１ｏ（ω）と、正弦波信号ｘ０（ｔ）を与えたときの測定により求めた開ループ系周波数応答Ｙ０ｏ（ω）とに基づいて、開ループ系結合周波数応答Ｙ２ｏ（ω）を生成し、この開ループ系結合周波数応答Ｙ２ｏ（ω）をベースとして、設計された補償要素の周波数応答ＹＣ（ω）を考慮した補償後の開ループ系周波数応答Ｚ２ｏ（ω）や閉ループ系周波数応答Ｚ２ｃ（ω）を導出し、最終的に上記目標値信号ｘ１（ｔ）の制御系の時間応答ｃ（ｔ）を求めた例を主として示したが、本発明はこのような態様に限定されるものではなく、正弦波信号ｘ０（ｔ）を与えたときの測定により求めた開ループ系周波数応答Ｙ０ｏ（ω）に基づいて、設計された補償要素の周波数応答ＹＣ（ω）を考慮した補償後の開ループ系周波数応答Ｚ０ｏ（ω）や閉ループ系周波数応答Ｚ０ｃ（ω）を導出し、最終的に上記目標値信号ｘ１（ｔ）の制御系の時間応答ｃ（ｔ）を求める場合、或いは、目標値信号ｘ１（ｔ）を与えたときの測定により求めた開ループ系周波数応答Ｙ１ｏ（ω）に基づいて、設計された補償要素の周波数応答ＹＣ（ω）を考慮した補償後の開ループ系周波数応答Ｚ１ｏ（ω）や閉ループ系周波数応答Ｚ１ｃ（ω）を導出し、最終的に上記目標値信号ｘ１（ｔ）の制御系の時間応答ｃ（ｔ）を求める場合をも包含する。
【符号の説明】
【０１３１】
１０  制御部
１１  信号発生部（sin,step,ramp）
１２  ＤＡ変換器
２１  ＡＤ変換器１
２２  ＡＤ変換器２
３１  閉ループ系周波数応答計算部（sin,step,ramp）
３２  開ループ系周波数応答計算部（sin）
３３  開ループ系周波数応答計算部（step,ramp）
４０  補償要素設計
５０  閉ループ系周波数応答計算部（補償後）
６０  時間応答計算部
１００  時間応答シミュレーション装置
２００  測定対象制御系
２０１  測定対象制御系の入力
２０２  補償要素
２０３  ドライブ回路
２０４  アクチュエータ
２０５  センサ
２０６  制御系出力
２０７  ドライブ回路入力信号
３００  測定対象制御系
３０１  測定対象制御系の入力
３０２  補償要素
３０３  ドライブ回路
３０４  ＶＣＭ
３０５  リニアスライダー
３０６  位置センサ
３０７  位置信号
３０８  偏差信号
【図１】
2016194916.tif 000030
【図２】
2016194916.tif 000031
【図３】
2016194916.tif 000032
【図４】
2016194916.tif 000033
【図５】
2016194916.tif 000034
【図６】
2016194916.tif 000035
【図７】
2016194916.tif 000036
【図８】
2016194916.tif 000037
【図９】
2016194916.tif 000038
【図１０】
2016194916.tif 000039
【図１１】
2016194916.tif 000040
【図１２】
2016194916.tif 000041
【図１３】
2016194916.tif 000042
【図１４】
2016194916.tif 000043
【図１５】
2016194916.tif 000044
【図１６】
2016194916.tif 000045
【図１７】
2016194916.tif 000046
【図１８】
2016194916.tif 000047
【図１９】
2016194916.tif 000048
【図２０】
2016194916.tif 000049
【図２１】
2016194916.tif 000050
【図２２】
2016194916.tif 000051
【図２３】
2016194916.tif 000052
【図２４】
2016194916.tif 000053
【図２５】
2016194916.tif 000054
【図２６】
2016194916.tif 000055