快速链接:
二次抑制载波振幅调制接收系统
-
已知:
输入信号:
f(t)=sin(t)πt=Sa(t)π,−∞<t<∞f(t)=πtsin(t)=πSa(t),−∞<t<∞
调制信号:
s(t)=cos(500t),−∞<t<∞s(t)=cos(500t),−∞<t<∞
-
问: 输出信号 y(t)=?y(t)=?
-
下式说明:
- Sa(t)/πSa(t)/π 为非周期, 使用 傅里叶变换分析法
- 步骤 (详见):
- 从图中已知系统函数 H(jω)=g2H(jω)=g2 门宽为 22 ;
- 求输入信号 f(t)f(t) 的傅里叶变换 F(jω)F(jω) ;
- 求调制信号的傅里叶变换 S(jω)S(jω) ;
- 求零状态响应 y(t)y(t) 的傅里叶变换 Y(jω)=Fb(jω)⋅H(jω)Y(jω)=Fb(jω)⋅H(jω) ;
- 求 Y(jω)Y(jω) 的傅里叶逆变换 y(t)=F−1[Fb(jω)H(jω)]y(t)=F−1[Fb(jω)H(jω)] 。
- 其中 δδ 卷积特性 δ(k−k1)⋆δ(k+k2)=δ(k−k1+k2)δ(k−k1)⋆δ(k+k2)=δ(k−k1+k2)
- g(ω)g(ω) 门函数特性 为 0,ω>1orω<−10,ω>1orω<−1
-
可知
H(jω)=g2(ω)H(jω)=g2(ω)
f(t)=Sa(t)πs(t)=cos(500t)⟷g2(ω)=F(jω)⟷π[δ(ω+500)+δ(ω−500)]=S(jω)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)=14π2F(jω)⋆S(jω)⋆S(jω)⋅H(jω)=14π2g2(ω)⋆π[δ(ω+500)+δ(ω−500)]⋆π[δ(ω+500)+δ(ω−500)]⋅H(jω)=14π2g2(ω)⋆π2[δ(ω+1000)+2δ+δ(ω−1000)]⋅H(jω)=14g2(ω)⋆[δ(ω+1000)+2δ+δ(ω−1000)]⋅g2(ω)=12g2(ω)=Sa(t)2π=12f(t)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(ω)⟷sin(t)tπ=Sa(t)π=h(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)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)$')