快速链接:
二次抑制载波振幅调制接收系统
-
已知:
输入信号:
f(t)=πtsin(t)=πSa(t),−∞<t<∞
调制信号:
s(t)=cos(500t),−∞<t<∞
-
问: 输出信号
y(t)=?
-
下式说明:
-
Sa(t)/π 为非周期, 使用 傅里叶变换分析法
- 步骤 (详见):
- 从图中已知系统函数
H(jω)=g2 门宽为
2 ;
- 求输入信号
f(t) 的傅里叶变换
F(jω) ;
- 求调制信号的傅里叶变换
S(jω) ;
- 求零状态响应
y(t) 的傅里叶变换
Y(jω)=Fb(jω)⋅H(jω) ;
- 求
Y(jω) 的傅里叶逆变换
y(t)=F−1[Fb(jω)H(jω)] 。
- 其中
δ 卷积特性
δ(k−k1)⋆δ(k+k2)=δ(k−k1+k2)
-
g(ω) 门函数特性 为
0,ω>1orω<−1
-
可知
H(jω)=g2(ω)
f(t)=πSa(t)s(t)=cos(500t)⟷g2(ω)=F(jω)⟷π[δ(ω+500)+δ(ω−500)]=S(jω)
y(t)Y(jω)y(t)=f(t)×s(t)×s(t)⋆h(t)=4π21F(jω)⋆S(jω)⋆S(jω)⋅H(jω)=4π21g2(ω)⋆π[δ(ω+500)+δ(ω−500)]⋆π[δ(ω+500)+δ(ω−500)]⋅H(jω)=4π21g2(ω)⋆π2[δ(ω+1000)+2δ+δ(ω−1000)]⋅H(jω)=41g2(ω)⋆[δ(ω+1000)+2δ+δ(ω−1000)]⋅g2(ω)=21g2(ω)=2πSa(t)=21f(t)
import numpy as np
import matplotlib.pyplot as plt
import scipy.signal as sg
t = np.linspace(-4*np.pi,4*np.pi,1601)
def draw_graph(t,f,title):
plt.plot(t,f,'-')
plt.xticks(t[::200],[fr'${int(i/np.pi)}\pi$'for i in t[::200]])
plt.title(title)
plt.grid(True)
plt.show()
ft = np.sin(t)/(np.pi*t)
draw_graph(t,ft,r'$f(t)$')
st = np.cos(500*t)
fat = ft*st
draw_graph(t,fat,r'$f_a(t)$')
fbt = fat*st
draw_graph(t,fbt,r'$f_b(t)$')
H(jω)=g2(ω)⟷tπsin(t)=πSa(t)=h(t)
ht = np.sin(t)/(t*np.pi)
yt = sg.convolve(fbt,ht)*(np.pi/200)
draw_graph(t,yt[800:2401],r'$y(t)$')
- 为更清楚展示原理, 取
s(t)=cos(10t)
st = np.cos(10*t)
fat2 = ft*st
draw_graph(t,fat2,r'$f_a(t),\; s(t) =\cos(10t)$')
fbt2 = fat2*st
draw_graph(t,fbt2,r'$f_b(t),\; s(t) =\cos(10t)$')
yt2 = sg.convolve(fbt2,ht)*(np.pi/200)
draw_graph(t,yt2[800:2401],r'$y(t),\; s(t) =\cos(10t)$')