信号与系统MATLAB仿真 | 您所在的位置:网站首页 › matlab求系统的频响特性 › 信号与系统MATLAB仿真 |
1. 知识回顾
(1)经典时域分析方法 线性时不变(LTI)系统是最常见最有用的一类系统,描述这类系统的输入-输出特性的是常系数线性微分方程。 \[\begin{array}{l}{y^{(n)}}(t) + {a_{n - 1}}{y^{(n - 1)}}(t) + \cdot \cdot \cdot + {a_1}{y^{(1)}}(t) + {a_0}y(t) = \\{b_m}{f^{(m)}}(t) + {b_{m - 1}}{f^{(m - 1)}}(t) + \cdot \cdot \cdot + {b_1}{f^{(1)}}(t) + {b_0}f(t)\end{array}\] 齐次解:${y^{(n)}}(t) + {a_{n - 1}}{y^{(n - 1)}}(t) + \cdot \cdot \cdot + {a_1}{y^{(1)}}(t) + {a_0}y(t) = 0$ 特征方程:\[{\lambda ^n} + {a_{n - 1}}{\lambda ^{n - 1}} + \cdot \cdot \cdot + {a_1}\lambda + {a_0} = 0\] 均为单根:\[{y_h}(t) = \sum\limits_{i = 1}^n {{C_i}{e^{{\lambda _i}t}}} \] 有重根($r$重根):\[{y_h}(t) = \sum\limits_{i = 1}^r {{C_i}{t^{i - 1}}{e^{{\lambda _1}t}}} \] 共轭复根(${\lambda _{1,2}} = \alpha \pm j\beta $):\[{e^{\alpha t}}({C_1}\cos \beta t + {C_2}\sin \beta t)\] $r$重复根:\[{e^{\alpha t}}(\sum\limits_{i = 1}^r {{C_{1i}}{t^{i - 1}}} \cos \beta t + \sum\limits_{i = 1}^r {{C_{2i}}{t^{i - 1}}} \sin \beta t)\]特解: $f(t) = {t^m}$ 所有的特征根均不等于0:\[{y_p}(t) = {P_m}{t^m} + {P_{m - 1}}{t^{m - 1}} + \cdot \cdot \cdot + {P_1}t + {P_0}\] 有$r$重等于0的特征根:\[{y_p}(t) = {t^r}[{P_m}{t^m} + {P_{m - 1}}{t^{m - 1}} + \cdot \cdot \cdot + {P_1}t + {P_0}]\] $f(t) = {e^{\alpha t}}$: $\alpha $不是特征根:\[{y_p}(t) = P{e^{\alpha t}}\] $\alpha $是特征单根:\[{y_p}(t) = {P_1}t{e^{\alpha t}} + {P_0}{e^{\alpha t}}\] $\alpha $是$r$重特征根:\[{y_p}(t) = ({P_r}{t^r} + {P_{r - 1}}{t^{r - 1}} + \cdot \cdot \cdot + {P_1}t + {P_0}){e^{\alpha t}}\] $f(t) = \cos \beta t$或$\sin \beta t$: 所有特征根均不等于$ \pm j\beta $:\[{y_p}(t) = {P_1}\cos \beta t + {P_2}\sin \beta t\] $ \pm j\beta $是特征单根:\[{y_p}(t) = t[{P_1}\cos \beta t + {P_2}\sin \beta t]\]全解:\[y(t) = {y_h}(t) + {y_p}(t)\] (2)零输入响应与零状态响应 \[y(t) = {y_{zi}}(t) + {y_{zs}}(t)\] (3)冲激响应和阶跃响应 \[\left\{ \begin{array}{l}\delta (t) = \frac{{{\rm{d}}\varepsilon (t)}}{{{\rm{d}}t}}\\\varepsilon (t) = \int_{ - \infty }^t {\delta (\tau ){\rm{d}}\tau } \end{array} \right.\] \[\left\{ \begin{array}{l}h(t) = \frac{{{\rm{d}}g(t)}}{{{\rm{d}}t}}\\g(t) = \int_{ - \infty }^t {h(\tau ){\rm{d}}\tau } \end{array} \right.\] (4)卷积积分 \[y(t) = {f_1}(t) * {f_2}(t) = \int_{ - \infty }^{ + \infty } {{f_1}(\tau ){f_2}(t - } \tau ){\rm{d}}\tau \] 系统的零状态响应:\[{y_{zs}}(t) = f(t) * h(t)\] 卷积积分的性质: 交换律 分配率 结合律任意函数与单位冲激函数卷积的结果仍是函数本身:\[f(t) * \delta (t) = f(t)\] 2. 利用MATLAB求LTI连续系统的响应LTI连续系统以常微分方程描述,如果系统的输入信号及初始状态已知,便可以求出系统的响应。在MATLAB中,控制系统工具箱提供了函数lsim(),能对微分方程描述的LTI连续系统的响应进行仿真。该函数能够绘制连续系统在指定的任意时间范围内时域波形图,还能求出连续系统在指定的任意时间范围内响应的数值解。 lsim(b,a,x,t);a和b是描述系统的微分方程系数决定的表示该系统的两个行向量,x和t是表示输入信号的行向量(t表示输入信号的时间范围,x则表示在t定义的时间点上的输入取样值)。 $\frac{{{{\rm{d}}^2}}}{{{\rm{d}}{t^2}}}y\left( t \right) + 2\frac{{\rm{d}}}{{{\rm{d}}t}}y\left( t \right) + y\left( t \right) = \frac{{\rm{d}}}{{{\rm{d}}t}}f\left( t \right) + 2f\left( t \right)$ $f\left( t \right) = 5{e^{ - 2t}}\varepsilon \left( t \right)$ 求零状态响应 a=[1,2,1]; b=[1,2]; p=0.01; t=0:p:5; f=5*exp(-2*t); lsim(b,a,f,t); ylabel('y(t)');$2\frac{{{{\rm{d}}^2}}}{{{\rm{d}}{t^2}}}y\left( t \right) + \frac{{\rm{d}}}{{{\rm{d}}t}}y\left( t \right) + 8y\left( t \right) = f\left( t \right)$ 求冲激响应和阶跃响应 b=1; a=[2,1,8]; subplot(1,2,1);impulse(b,a); subplot(1,2,2);step(b,a);conv()函数本来是用来做多项式乘法的。 w = conv(u,v) w = conv(u,v,shape)$({x^2} + 1)(2x + 7) = 2{x^3} + 7{x^2} + 2x + 7$ shape: 'full':完整的卷积(默认); 'same':与u相同大小的卷积的中心部分; 'valid':只有那些计算卷积时没有在边缘填充0的部分。 |
CopyRight 2018-2019 实验室设备网 版权所有 |