快速链接:
二次抑制载波振幅调制接收系统
-
已知:
输入信号:
f ( t ) = s i n ( t ) π t = Sa(t) π , − ∞ < t < ∞ f(t) = \displaystyle \frac{sin(t)}{\pi t} = \frac{\text{Sa(t)}}{\pi} , \; -\infty < t < \infty f(t)=πtsin(t)=πSa(t),−∞<t<∞
调制信号:
s ( t ) = c o s ( 500 t ) , − ∞ < t < ∞ s(t) = cos(500t) , \; -\infty <t<\infty s(t)=cos(500t),−∞<t<∞ -
问: 输出信号 y ( t ) = ? y(t) = ? y(t)=?
-
下式说明:
- Sa ( t ) / π \text{Sa}(t)/\pi Sa(t)/π 为非周期, 使用 傅里叶变换分析法
- 步骤 (详见):
- 从图中已知系统函数 H ( j ω ) = g 2 H(j\omega)= g_2 H(jω)=g2 门宽为 2 2 2 ;
- 求输入信号 f ( t ) f(t) f(t) 的傅里叶变换 F ( j ω ) F(j\omega) F(jω) ;
- 求调制信号的傅里叶变换 S ( j ω ) S(j\omega) S(jω) ;
- 求零状态响应 y ( t ) y(t) y(t) 的傅里叶变换 Y ( j ω ) = F b ( j ω ) ⋅ H ( j ω ) Y(j\omega)=F_b(j\omega)\cdot H(j\omega) Y(jω)=Fb(jω)⋅H(jω) ;
- 求 Y ( j ω ) Y (j\omega) Y(jω) 的傅里叶逆变换 y ( t ) = F − 1 [ F b ( j ω ) H ( j ω ) ] y(t)=\mathfrak{F} ^{-1}\big[F_b(j\omega)H(j\omega)\big] y(t)=F−1[Fb(jω)H(jω)] 。
- 其中
δ
\delta
δ 卷积特性
δ
(
k
−
k
1
)
⋆
δ
(
k
+
k
2
)
=
δ
(
k
−
k
1
+
k
2
)
\delta(k-k_1) \star \delta(k+k_2) = \delta(k-k_1+k_2)
δ(k−k1)⋆δ(k+k2)=δ(k−k1+k2)
- g ( ω ) g(\omega) g(ω) 门函数特性 为 0 , ω > 1 or ω < − 1 0,\; \omega>1 \; \text{or}\; \omega<-1 0,ω>1orω<−1
-
可知
H ( j ω ) = g 2 ( ω ) H(j\omega) = g_2(\omega) H(jω)=g2(ω)
f ( t ) = Sa(t) π ⟷ g 2 ( ω ) = F ( j ω ) s ( t ) = c o s ( 500 t ) ⟷ π [ δ ( ω + 500 ) + δ ( ω − 500 ) ] = S ( j ω ) \begin{aligned}f(t)= \frac{\text{Sa(t)}}{\pi} &\longleftrightarrow g_2(\omega)=F(j\omega) \\ s(t) = cos(500t) &\longleftrightarrow \pi \big[\delta(\omega+500)+\delta(\omega-500)\big]=S(j\omega)\end{aligned} f(t)=πSa(t)s(t)=cos(500t)⟷g2(ω)=F(jω)⟷π[δ(ω+500)+δ(ω−500)]=S(jω)y ( t ) = f ( t ) × s ( t ) × s ( t ) ⋆ h ( t ) Y ( j ω ) = 1 4 π 2 F ( j ω ) ⋆ S ( j ω ) ⋆ S ( j ω ) ⋅ H ( j ω ) = 1 4 π 2 g 2 ( ω ) ⋆ π [ δ ( ω + 500 ) + δ ( ω − 500 ) ] ⋆ π [ δ ( ω + 500 ) + δ ( ω − 500 ) ] ⋅ H ( j ω ) = 1 4 π 2 g 2 ( ω ) ⋆ π 2 [ δ ( ω + 1000 ) + 2 δ + δ ( ω − 1000 ) ] ⋅ H ( j ω ) = 1 4 g 2 ( ω ) ⋆ [ δ ( ω + 1000 ) + 2 δ + δ ( ω − 1000 ) ] ⋅ g 2 ( ω ) = 1 2 g 2 ( ω ) y ( t ) = S a ( t ) 2 π = 1 2 f ( t ) \begin{aligned}y(t) & = f(t){\color{blue} \times} s(t){\color{blue} \times} s(t) \star h(t)\\ Y(j\omega) & = {\color{blue}\frac{1}{4 \pi^2}} F(j\omega) {\color{blue}\star} S(j\omega) {\color{blue}\star} S(j\omega) \cdot H(j\omega) \\ &= \frac{1}{4 \pi^2} g_2(\omega) {\color{blue}\star} \pi \big[\delta(\omega+500)+\delta(\omega-500)\big] {\color{blue}\star} \pi \big[\delta(\omega+500)+\delta(\omega-500)\big] \cdot H(j\omega) \\ &= \frac{1}{4 {\color{green}\pi^2}} g_2(\omega) {\color{blue}\star} {\color{green}\pi^2} \big[\delta(\omega+1000)+2\delta+\delta(\omega-1000)\big] \cdot H(j\omega) \\ &= \frac{1}{4} g_2(\omega) {\color{blue}\star} \big[\delta(\omega+1000)+2\delta+\delta(\omega-1000)\big] \cdot g_2(\omega) \\ &= \frac{1}{2}g_2(\omega)\\ y(t) & = \frac{Sa(t)}{2\pi} = \frac{1}{2}f(t) \end{aligned} 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)
# 导入 需要的 library 库
import numpy as np # 科学计算
import matplotlib.pyplot as plt # 画图工具
import scipy.signal as sg # 导入 scipy 的 signal 库 重命名为 sg
# 用 Python 表示
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 ω ) = g 2 ( ω ) ⟷ sin ( t ) t π = Sa ( t ) π = h ( t ) H(j\omega)=g_2(\omega) \longleftrightarrow \frac{\sin(t)}{t\pi} = \frac{\text{Sa}(t)}{\pi} = 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 ( 10 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)$')