このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
tf2ss
伝達関数フィルター パラメーターの状態空間形式への変換
説明
例
伝達関数の状態空間型への変換
次の伝達関数で記述されるシステムがあるとします。
tf2ss
を使用して、これを状態空間に変換します。
b = [0 2 3; 1 2 1]; a = [1 0.4 1]; [A,B,C,D] = tf2ss(b,a)
A = 2×2
-0.4000 -1.0000
1.0000 0
B = 2×1
1
0
C = 2×2
2.0000 3.0000
1.6000 0
D = 2×1
0
1
ばね質量系
単位弾性定数のバネで壁につながれた単位質量 で構成される 1 次元の離散時間振動システムについて考えます。センサーによりこの質量の加速度 を Hz でサンプリングします。
50 個の時間サンプルを生成します。サンプリング間隔は と定義します。
Fs = 5; dt = 1/Fs; N = 50; t = dt*(0:N-1); u = [1 zeros(1,N-1)];
このシステムの伝達関数の解析式は次のようになります。
.
系に正の方向の単位インパルスを与えます。伝達関数を使用してシステムの時間発展を計算します。応答をプロットします。
bf = [1 -(1+cos(dt)) cos(dt)]; af = [1 -2*cos(dt) 1]; yf = filter(bf,af,u); stem(t,yf,'o') xlabel('t')
このシステムの状態空間表現を求めます。すべてゼロの初期状態からの時間発展を計算します。それを伝達関数予測と比較します。
[A,B,C,D] = tf2ss(bf,af); x = [0;0]; for k = 1:N y(k) = C*x + D*u(k); x = A*x + B*u(k); end hold on stem(t,y,'*') hold off legend('tf','ss')
入力引数
b
— 伝達関数の分子係数
ベクトル | 行列
伝達関数の分子係数。ベクトルまたは行列として指定します。b
が行列の場合、b
の各行はシステムの出力に対応します。
離散時間システムの場合、
b
には、z の降べきの順で係数が含まれます。連続時間システムの場合、
b
には、s の降べきの順で係数が含まれます。
離散時間システムでは、b
の列数と a
の長さは等しくなければなりません。数が異なる場合は、ゼロをパディングすることで等しくします。これを実行するには、関数 eqtflength
を使用します。
a
— 伝達関数の分母係数
ベクトル
伝達関数分の分母係数。ベクトルとして指定します。
離散時間システムの場合、
a
には、z の降べきの順で係数が含まれます。連続時間システムの場合、
a
には、s の降べきの順で係数が含まれます。
出力引数
A
— 状態行列
行列
状態行列。行列として返される。システムが n 個の状態変数により記述される場合、A
は n 行 n 列になります。
データ型: single
| double
B
— 状態空間への入力行列
行列
状態への入力行列。行列として返される。システムが n 個の状態変数により記述される場合、B
は n 行 1 列になります。
データ型: single
| double
C
— 状態空間からの出力行列
行列
出力への状態行列。行列として返される。システムに q 個の出力があり、n 個の状態変数により記述される場合、C
は q 行 n 列になります。
データ型: single
| double
D
— 直達行列
行列
行列として返される直達行列。システムに q 個の出力がある場合、D
は q 行 1 列になります。
データ型: single
| double
詳細
伝達関数
tf2ss
では、伝達関数型で与えられたシステムのパラメーターが等価な状態空間表現に変換されます。
離散時間システムの場合、状態空間の行列は状態ベクトル x、入力 u および出力 y を以下の式により表します。
伝達関数は、システムのインパルス応答の Z 変換です。状態空間行列に対しては、以下のように表すことができます。
連続時間システムの場合、状態空間の行列は状態ベクトル x、入力 u および出力 y を以下の式により表します。
伝達関数は、システムのインパルス応答のラプラス変換です。状態空間行列に対しては、以下のように表すことができます。
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)