※ 引述《EthanShaw (Enigma...)》之銘言:
> 請教各位先進...
> 我知道tf這個指令可以定義transfer function
> 但是好像不能定義帶有time delay的transfer function?
> 如:
> s=tf('s');H=1/(2*s+1)
> 是定義transfer function H 為 1
> H= --------
> 2s+1
> 但是我想要加上有time delay(即有exponential term)的transfer function
> 如: 1 x exp(-s)
> -------------
> 2s+1
> 使用如上的方法行不通耶...
> 我是用: s=tf('s');H=(1*exp(-s))/(2*s+1)
> 好像在tf這個function中exp是沒有辦法被定義的...:~~~
> 該怎麼做呢?
> 多謝回答....:)
如果是用在控制的問題上 可以試試看下列兩種方式
(2s+1)exp^(-2s)
Given a function as G = ------------------------
(3*s^2-15*s+100)
1)
num=[2 1]; den=[3 -15 100];
sys=tf(num,den,'outputdelay',2);
Transfer function:
2 s + 1
exp(-2*s) * ------------------
3 s^2 - 15 s + 100
2) Using the Pade.m
[nump,denp]=Pade(2,2);
sys=tf([num+zeros(size(nump)) nump],[den+zeros(size(denp)) denp]);
--
※ Origin: 楓橋驛站<bbs.cs.nthu.edu.tw> ◆ From: D308-1.gdorm.yzu.edu.tw