求用MATLAB求解传递函数

DS=4/(s^2+2s+3)(用ZPK命令)Ts=1s,求分别用带零阶保持器法,双线性变换法,零极点匹配法,频率预修正的双线性变换法将DS离散化求出相应的等效数字控制器的脉冲传递函数Dz。
急,高分悬赏,截图上传就好,谢谢大神!!!!
以零极点-增益且Z的负幂次形式输出结果

连续传递函数Ds用tf输入最方便,不知道为什么偏要用zpk。
频率预修正的双线性变换法需要指定截止频率,这里取了个2。

>> Ds=zpk([],[-1+sqrt(2)*i -1-sqrt(2)*i],1);
>> Dz1=zpk(c2d(Ds,1,'zoh'));
>> Dz1.Variable='z^-1'

Zero/pole/gain:
0.22856 z^-1 (1+0.4884z^-1)
-----------------------------
(1 - 0.1147z^-1 + 0.1353z^-2)

Sampling time: 1
Overloaded functions or methods (ones with the same name in other directories)
doc ident/c2d
>> Dz2=zpk(c2d(Ds,1,'tustin'));
>> Dz2.Variable='z^-1'

Zero/pole/gain:
0.090909 (1+z^-1)^2
-----------------------------
(1 - 0.1818z^-1 + 0.2727z^-2)

Sampling time: 1
>> Dz3=zpk(c2d(Ds,1,'matched'));
>> Dz3.Variable='z^-1'

Zero/pole/gain:
0.1701 z^-1 (1+z^-1)
-----------------------------
(1 - 0.1147z^-1 + 0.1353z^-2)

Sampling time: 1

>> Dz4=zpk(c2d(Ds,1,'prewarp',2));
>> Dz4.Variable='z^-1'

Zero/pole/gain:
0.13855 (1+z^-1)^2
-----------------------------
(1 + 0.3743z^-1 + 0.2883z^-2)

Sampling time: 1
温馨提示:答案为网友推荐,仅供参考
相似回答