|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
在使用matlab中的d2c函数时遇到以下问题。代码如下:clear all;
* s3 v* h4 F/ _7 xclc;
+ v( q8 |- P# u/ {) L+ ]H = tf(2,[1 -0.95],0.1,'InputDelay',25);( D% G$ C8 k& X4 c
G=d2c(H);0 L9 ^* [) w" d2 j
H9 ~1 X/ s3 h+ H* O& ]5 n4 H
G
/ p/ p6 q P5 K7 Gz=tf('z',0.1);
4 d4 s& c1 |9 N+ n; z5 i/ _H=2/(z-0.95)*z^(-25);: h: N/ F9 O0 }0 w0 w- v4 P
G=d2c(H);
. G# Z/ ^$ l7 D8 Q) L; n" M9 sH
9 }/ K( u$ `8 m: l- jG
; o& _4 }; Q: L, u5 R/ [4 X; |, K2 ~% P o b) ~6 ~' l
; Z+ m5 s+ U" u. r4 Z: D
在我看来,两种表达方式的H本质上是一样的,但是第一个d2c可以得到正确的结果,第二个就报错。报错内容如下: R7 I& [3 i( [- a# P# A7 Y2 q
! ~% S/ h3 \" [. W( Q
错误使用 DynamicSystem/d2c (line 101)
% u8 n% t- }/ P+ sThe "zoh" and "foh" methods cannot be used for discrete models with poles near z=0.
9 u+ L1 d% J$ e2 t& x) y! p' \ 求大佬指教,感谢!
6 d* c1 @. B/ U2 I
5 v8 l. Z2 V3 i3 O. k U0 a
1 m3 X9 R* |1 O1 ]; y" d6 R5 E |
|