用MATLAB中的留数求解RLC串联振荡电路的冲激响应与阶跃响应
时间: 2023-11-17 11:07:34 浏览: 112
假设RLC电路如下图所示:
![RLC电路](https://i.imgur.com/1RBUdY7.png)
根据基尔霍夫电压定律和欧姆定律,可以得到如下微分方程:
$$L\frac{d^2}{dt^2}i(t)+R\frac{d}{dt}i(t)+\frac{1}{C}i(t)=v(t)$$
其中 $i(t)$ 表示电路中电流的变化, $v(t)$ 表示电路中电压的变化。如果将上述微分方程应用拉普拉斯变换,可以得到:
$$Ls^2I(s)+RsI(s)+\frac{1}{C}I(s)=V(s)$$
其中 $I(s)$ 表示电路中电流的拉普拉斯变换, $V(s)$ 表示电路中电压的拉普拉斯变换。解出 $I(s)$ 可以得到电路的传递函数:
$$H(s)=\frac{I(s)}{V(s)}=\frac{1}{LCs^2+RCs+1}$$
根据留数定理,可以得到 $h(t)$ 的表达式:
$$h(t)=\frac{1}{2\pi j}\oint_{C} H(s) e^{st} ds$$
其中 $C$ 表示积分路径, $j$ 表示虚数单位。在实际计算中,可以选择将积分路径选为右半平面的虚轴,即 $s=\sigma+j\omega$,其中 $\sigma>0$。这样,积分路径可以表示为 $s=\sigma+j\omega_0 e^{j\theta}$,其中 $\omega_0$ 表示电路的共振频率, $\theta$ 表示相角。
对于冲激响应,可以令 $v(t)=\delta(t)$,得到拉普拉斯变换为 $V(s)=1$。代入传递函数中,可以得到:
$$H(s)=\frac{1}{LCs^2+RCs+1}$$
根据留数定理,可以得到冲激响应的表达式:
$$h(t)=\frac{1}{2\pi j}\oint_{C} H(s) e^{st} ds = \frac{1}{\sqrt{1-\frac{\omega_0^2}{\sigma^2}}}e^{-\sigma t}\sin(\omega_0 t+\theta)u(t)$$
其中 $u(t)$ 表示单位阶跃函数。
对于阶跃响应,可以令 $v(t)=u(t)$,得到拉普拉斯变换为 $V(s)=\frac{1}{s}$。代入传递函数中,可以得到:
$$H(s)=\frac{1}{s(LCs^2+RCs+1)}$$
根据留数定理,可以得到阶跃响应的表达式:
$$h(t)=\frac{1}{2\pi j}\oint_{C} H(s) e^{st} ds = \frac{1}{L}\left(1-e^{-\frac{R}{2L}t}\cos(\omega_d t)-\frac{R}{2L}\sin(\omega_d t)\right)u(t)$$
其中 $\omega_d=\sqrt{\omega_0^2-\frac{R^2}{4L^2}}$ 表示电路的阻尼角频率。
阅读全文