已知系统的冲激响应h(t)=u(t)-u(t-2),输入信号x(t)=u(t),是采用复频域的方法求解系统的响应,编写MATLAB程序实现。
时间: 2023-07-28 22:09:47 浏览: 225
根据复频域的方法,系统的响应可以表示为:
y(t) = h(t) * x(t) = \int_{-\infty}^{\infty} h(\tau)x(t-\tau) d\tau = \int_{-\infty}^{\infty} (u(\tau)-u(\tau-2))u(t-\tau) d\tau
对上式进行求解,可得:
当 0 <= t < 1 时, y(t) = t
当 1 <= t < 2 时, y(t) = 2 - t
当 t >= 2 时, y(t) = 0
下面是MATLAB程序的实现:
```
syms t tau;
h = heaviside(tau) - heaviside(tau-2); % 系统的冲激响应
x = heaviside(t); % 输入信号
y = int(h*x, tau, -inf, inf); % 系统的响应
ezplot(y, [0, 3]); % 绘制系统的响应曲线,横坐标范围为[0,3]
```
运行上述程序,即可绘制出系统的响应曲线。
相关问题
教我用matlab解下面的问题:给定LTI系统的微分方程为 y''(t)+5y'(t)+6y(t)=x'(t)+2x(t) , 已知x(t)=(e-t+e-2t)u(t),初始条件为 。(1)求系统响应的完全解;(2)求系统的单位冲激响应,以及频率响应的幅频特性和相频特性;(3)求零状态响应。 代码
首先,我们需要将微分方程转换为传递函数形式。传递函数是系统的输出与输入的比值,可以用 Laplace 变换来求解。将微分方程变换为 Laplace 域:
s^2 Y(s) + 5s Y(s) + 6Y(s) = s X(s) + 2X(s)
其中,s 是 Laplace 变换的复变量,Y(s) 和 X(s) 是 y(t) 和 x(t) 的 Laplace 变换。将 X(s) 代入:
s^2 Y(s) + 5s Y(s) + 6Y(s) = s (e^-t/s + e^-2t/s)/s + 2(e^-t/s + e^-2t/s)/s
化简得到传递函数:
H(s) = Y(s) / X(s) = 1 / (s^2 + 5s + 6) = 1 / [(s+2)(s+3)]
这是一个二阶系统,有两个极点 -2 和 -3。
现在我们可以开始解题了。
(1) 求系统响应的完全解:
根据初值条件,我们可以求出特解:
x(t) = (e^-t + e^-2t)u(t)
x'(t) = (-e^-t - 2e^-2t)u(t) + δ(t)
其中 δ(t) 是单位冲激函数的导数。
将特解代入原微分方程,得到齐次方程的解:
y''(t) + 5y'(t) + 6y(t) = 0
其特征方程为:
s^2 + 5s + 6 = 0
解得两个根为 -2 和 -3,所以齐次解为:
y_h(t) = c_1 e^-2t + c_2 e^-3t
根据初值条件 y(0) = 0, y'(0) = 0,可以解得:
c_1 = -2/3
c_2 = 2/3
所以完全解为:
y(t) = y_h(t) + y_p(t)
= -2/3 e^-2t + 2/3 e^-3t + (e^-t + e^-2t)u(t)
(2) 求系统的单位冲激响应,以及频率响应的幅频特性和相频特性:
系统的单位冲激响应为系统对单位冲激函数的响应。将 X(s) = 1/s 代入传递函数 H(s),得到单位冲激响应:
h(t) = L^-1 [H(s)] = (1/3)e^-2t - (1/3)e^-3t
系统的频率响应是指输出信号的幅度和相位随着输入信号频率变化的规律。将传递函数 H(s) 写成极点-零点形式:
H(s) = K (s-z_1) (s-z_2) / (s-p_1) (s-p_2)
其中,K 是增益,z_1 和 z_2 是零点,p_1 和 p_2 是极点。
由于传递函数的分母是二次多项式,有两个极点 -2 和 -3,所以系统是一个二阶低通滤波器。零点可以通过求导传递函数得到:
H'(s) = K [(s-z_2) + (s-z_1)] / [(s-p_1)(s-p_2)]
令 H'(s) = 0,解得 z_1 + z_2 = p_1 + p_2,即零点在极点的中点处。因此,系统的零点是 -2.5。
系统的增益可以通过令 s = 0 得到:
K = 1 / (2*3) = 1/6
因此,频率响应为:
H(jω) = K (jω-z_1) (jω-z_2) / (jω-p_1) (jω-p_2)
= (1/6) (jω+2.5) / [(jω+2)(jω+3)]
幅频特性为:
|H(jω)| = (1/6) |(jω+2.5) / [(jω+2)(jω+3)]|
= (1/6) |(jω+2.5)| / |(jω+2)(jω+3)|
= (1/6) ω / [(ω^2+2ω+4)(ω^2+3ω+9)]^(1/2)
相频特性为:
∠H(jω) = atan[(ω+2.5)/(-ω^2-5ω-6)]
(3) 求零状态响应:
零状态响应是指在没有输入信号的情况下,系统的输出信号。由于初始条件为 y(0) = 0, y'(0) = 0,所以零状态响应为:
y_zs(t) = 0
完整的MATLAB代码如下:
syms s t;
H = 1 / (s^2 + 5*s + 6); % 传递函数
x = exp(-t)*(heaviside(t) - heaviside(t-2)) % 输入信号
X = laplace(x); % 输入信号的 Laplace 变换
Y = H*X; % 输出信号的 Laplace 变换
y = ilaplace(Y); % 输出信号的时域表达式
h = ilaplace(H); % 单位冲激响应的时域表达式
pretty(y) % 显示完全解
pretty(h) % 显示单位冲激响应
pretty(abs(H)) % 显示幅频特性
pretty(angle(H)) % 显示相频特性
已知一稳定LTI系统的系统函数为:H(s)=(s+4)/(s^2+5s+6)(1)画出表征该系统的方框图(2)求出该系统的单位冲激响应h(t)(3)若输入信号为x(t)=e^(-4t)u(t) 求系统输出(4)若输入信号x(她)
(1)该系统的方框图如下所示:
```
+----->(s+4)----+
| |
x(s)--|---[H(s)]--->y(s)--
| |
+------(s^2+5s+6)-+
```
其中,x(s) 和 y(s) 分别表示输入和输出信号在 Laplace 变换域中的表示,[H(s)] 表示系统的传递函数。
(2)系统的单位冲激响应 h(t) 可以通过对系统传递函数 H(s) 进行部分分式分解,然后反演回时间域得到:
H(s) = (s+4) / (s^2+5s+6) = 1/(s+2) - 1/(s+3)
h(t) = e^(-2t) u(t) - e^(-3t) u(t)
其中,u(t) 表示单位阶跃函数。
(3)当输入信号为 x(t) = e^(-4t) u(t) 时,可以利用卷积定理和单位冲激响应 h(t) 计算系统输出 y(t):
y(t) = x(t) * h(t) = ∫[0,t] x(τ) h(t-τ) dτ
= ∫[0,t] e^(-4τ) [e^(-2(t-τ)) - e^(-3(t-τ))] dτ
= e^(-2t) ∫[0,t] e^(2τ) dτ - e^(-3t) ∫[0,t] e^(3τ) dτ
= (1/2) (1 - e^(-2t)) u(t) - (1/3) (1 - e^(-3t)) u(t)
其中,* 表示卷积运算,τ 表示积分变量。
(4)由于未给定输入信号 x(t) 的表达式,无法直接计算系统的输出 y(t)。如果有输入信号的表达式,可以采用类似于上面的方法,通过卷积计算得到系统的输出。
阅读全文