|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
在使用matlab中的d2c函数时遇到以下问题。代码如下:clear all;8 j1 J' _' z9 j3 G' E/ x
clc;7 Y! p3 u- n5 K+ b/ m' e1 Z7 q
H = tf(2,[1 -0.95],0.1,'InputDelay',25);! Y$ G, r4 P! W' S& ?- H$ ^- Y% q
G=d2c(H); S& h& ]. F% Y* _; j/ e
H9 s7 \% |$ |) t) D) D1 l1 s6 n3 V
G
7 m7 w' q# D5 @9 w, |$ d7 oz=tf('z',0.1);0 H) @- G2 k: n- \% Y9 b
H=2/(z-0.95)*z^(-25);
+ `2 }1 P0 X1 D$ _+ s3 BG=d2c(H);2 S5 @) d: ^$ a6 O, D& m$ n$ e& K
H8 X' L. f% P# J( Q) E
G
8 c" Y' @( y: Q+ b& `. X/ b4 \% Q! G* ^1 W( O+ \$ a
4 ^. x. r8 M2 z/ p9 L* d! t
在我看来,两种表达方式的H本质上是一样的,但是第一个d2c可以得到正确的结果,第二个就报错。报错内容如下:& W/ ?4 t, |7 O% X4 A
0 o3 W! x4 p' C$ b. d错误使用 DynamicSystem/d2c (line 101)' E* h* g3 _$ `& z, h8 o9 [
The "zoh" and "foh" methods cannot be used for discrete models with poles near z=0.( i% B& }/ U$ e
求大佬指教,感谢!
2 T* `0 _1 E% k) W* ]3 Y+ U# h6 j- J5 F4 U, O1 G8 L
! x( A$ i" A- t- e9 l |
|