セットリングタイムとは何か?
動的システムのセットリングタイムは、出力が指定された許容範囲内に達し安定するまでに必要な時間として定義されます。これはTsと表記されます。セットリングタイムには伝播遅延と最終値の領域に到達するまでの時間が含まれます。オーバーロード状態からの回復時間やスルー速度、および許容範囲近くでの安定化時間を含みます。
許容範囲は、出力が安定できる最大の範囲です。一般的には、許容範囲は2%または5%です。
2次系システムのステップ応答におけるセットリングタイムは以下の図に示されています。
セットリングタイムの式
セットリングタイムは自然周波数とシステムの応答に依存します。一般的なセットリングタイムの式は以下の通りです。
2次系システムの単位ステップ応答は以下の通り表現されます。
この式は2つの部分に分けられます。
定常時間の計算には、正弦波成分の振動部分をキャンセルする指数成分のみが必要です。そして、許容誤差分数は指数成分と等しくなります。
定常時間の計算方法
定常時間を計算するには、単位ステップ応答を持つ一次系を考慮します。
単位ステップ応答の場合、
したがって、
次に、A1とA2の値を計算します。
s = 0 と仮定する。
s = -1/T と仮定する。
2%の誤差の場合、1-C(t) = 0.02;
この式は、単位ステップ入力を持つ1次システムの定常時間を与える。
2次システムの場合、以下の式を考慮する必要がある。
この式では、指数項が定常時間を求めるために重要である。
ここで、2%の誤差を考慮します。したがって、1 – C(t) = 0.02;
減衰比(ξ)の値は2次系システムの種類によって異なります。ここでは過減衰2次系システムを考慮します。そして、ξの値は0と1の間です。
したがって、上記の式の分母はほぼ1に等しいです。簡単な計算のために、これを無視することができます。
この式は2%の誤差範囲と過減衰二次システムに対してのみ使用できます。
同様に、5%の誤差範囲の場合;1 – C(t) = 0.05;
二次系の場合、定常時間を見つける前に減衰比を計算する必要があります。
二次系システム |
減衰比 (ξ) |
設定時間 (TS) |
過減衰 |
0<ξ<1 |
|
非減衰 |
ξ = 0 |
|
臨界減衰 |
ξ = 1 |
|
過減衰 |
ξ > 1 |
主要極による |
ルートロクスの定常時間
定常時間はルートロクス法によって計算できます。定常時間は減衰比と自然振動数に依存します。
これらの量はルートロクス法を用いて導き出すことができます。そして、私たちは定常時間を求めることができます。
例を使って理解しましょう。
そしてオーバーシュート = 20%
ルートロクス図から、優性の極を見つけることができます。
これでξとωnの値が得られました。
ルートロケス図はMATLABから導出されます。そのためには「sisotool」を使用します。ここでは、オーバーシュート率が20%に等しいという制約を追加し、優性極を簡単に取得することができます。
以下の図はMATLABからのルートロケス図を示しています。
MATLABを使用して定常時間を見つけることができます。このシステムの単位ステップ応答は以下の図に示されています。
定常時間を短縮する方法
定常時間は目標を達成するのに必要な時間です。そして、任意の制御システムにおいて、定常時間は最小限に保つ必要があります。
定常時間を短縮することは簡単な作業ではありません。私たちは制御器を設計して定常時間を短縮する必要があります。
私たちが知っているように、プロポーショナル(P)、積分(I)、微分(D)の3つの制御器があります。これらの制御器の組み合わせにより、システムの要件を達成することができます。
制御器のゲイン(KP, KI, KD)は、システムの要件に応じて選択されます。
プロポーショナルゲインKPを増加させると、定常時間に小さな変化が生じます。積分ゲインKIを増加させると、定常時間が増加します。また、微分ゲインKDを増加させると、定常時間が減少します。
したがって、微分ゲインを増加させることで設定時間を短縮します。PIDコントローラのゲイン値を選択する際には、上昇時間、オーバーシュート、ステディステートエラーなどの他のパラメータにも影響を与える可能性があります。
MATLABで定常時間を見つける方法
MATLABでは、ステップ関数を使用して定常時間を求めることができます。例を用いて理解しましょう。
まず、式を使って定常時間を計算します。そのためには、この伝達関数を二次系の一般的な伝達関数と比較します。
したがって、
これは、定常時間の計算式を導出する際に仮定を使用したため、近似値です。しかし、MATLABでは正確な定常時間を得ることができます。そのため、両者の値はわずかに異なる場合があります。
次に、MATLABで定常時間を計算するためにstep関数を使用します。
clc; clear all; close all;
num = [0 0 25];
den = [1 6 25];
t = 0:0.005:5;
sys = tf(num,den);
F = step(sys,t);
H = stepinfo(F,t)
step(sys,t);
出力:
H =
RiseTime: 0.3708
SettlingTime: 1.1886
SettlingMin: 0.9071
SettlingMax: 1.0948
Overshoot: 9.4780
Undershoot: 0
Peak: 1.0948
PeakTime: 0.7850
そして、以下に示すように応答のグラフが得られます。
MATLABでは、デフォルトの誤差範囲は2%です。異なる誤差範囲に変更するには、グラフ上で右クリック > プロパティ > オプション > 「___%以内の定常時間を表示」を選択してください。
ループを実行することで、もう一つの定常時間を見つける方法があります。周知のように、2%誤差範囲では、応答は0.98から1.02の間で考慮されます。
clc; clear all; close all;
num = [0 0 25];
den = [1 6 25];
t = 0:0.005:5;
[y,x,t] = step(num,den,t);
S = 1001;
while y(S)>0.98 & y(S)<1.02;
S=S-1;
end
settling_time = (S-1)*0.005
出力:
settling_time = 1.1886
声明:尊重原文,好文章值得分享,如有侵权请联系删除。