模拟信号的调制与解调

几个常用概念

希尔伯特变换与解析信号

首先定义希尔伯特变换,指的是信号通过一个滤波器,这个滤波器的作用是,在正频率上✖️一个-j,负频率✖️一个j
在这里插入图片描述

然后介绍解析信号
在这里插入图片描述

它可以看成是由两部分组成,即原信号和解析信号的组合,可以通过一个特定的滤波器得到。该滤波器的传递函数为:
在这里插入图片描述

因此解析信号只有正频谱分量

带通信号与基带信号

带通信号指的是频谱集中在某个载频fc附近的信号, 一般来说,手机等无线通信的信号带宽远小于载波频率fc,这样的信号也称为窄带信号,频谱如下:
在这里插入图片描述
(插一句,有的人可能会感到好奇,为什么带通信号的频谱通常都是关于Y轴对称的呢,因为我们常用的信号都是实信号,它的频谱具有共轭对称性
即: X ( f ) = X ∗ ( − f ) X(f)=X^*(-f) X(f)=X(f))

如果已经有了这样的一个带通信号,要把它变成解析信号,它的频谱便只在正频率部分保留了,解析信号的频谱如下:
在这里插入图片描述这个频谱虽然好看了一些,但是还可以做进一步处理,讲频谱搬移至基带,即fc移到原点,得到了一个新的频谱Xl(f),这个新的频谱对应一个新的基带信号XL(t),称这个基带信号为x(t)的复包络。
在这里插入图片描述
于是得到了对应关系:带通信号 X ( t ) X(t) X(t)对应复包络 X L t X_Lt XLt,再回顾一下实现过程
在这里插入图片描述

为什么要调制

常见的信号都是基带信号,频率在一个比较低的频段上,为了利于传输,我们一般选择将其搬移到高频段,所以可以认为调制是从基带信号变成带通信号的过程。

在上一节中,我们可以得到从带通信号变成基带信号的过程是先变成解析信号再实现频谱搬移,公式为:
x L ( t ) = ( ( x ( t ) + j ∗ x ∗ ( t ) ) ∗ e − j ∗ 2 π f c t x_L(t)=((x(t)+j*x^*(t))*e^{-j*2\pi fc t} xL(t)=((x(t)+jx(t))ej2πfct

在这一节中,需要把基带信号变成带通信号,因此我们要表示带通信号, 基带信号 x L ( t ) x_L(t) xL(t)一般是复信号,可以表示成 x L ( t ) = x c ( t ) + j ∗ x s ( t ) x_L(t)=x_c(t)+j*x_s(t) xL(t)=xc(t)+jxs(t)。带通信号是将基带信号频谱搬移之后取实部,即有下面三种表示方法:

在这里插入图片描述上述三个关系式的意义是,由基带信号可以推导出带通信号的表达式,即实现了频谱的搬移

几种常用的调制方法

幅度调制

双边带抑制载波调制 DSB-SC

听着很复杂,但它其实是最简单的一种调制方法,若给出输入信号 m ( t ) m(t) m(t),直接与一个余弦信号相乘即得到DSB-SC信号 s ( t ) s(t) s(t)
在这里插入图片描述可以认为m(t)一般为实信号,那么m(t)就对应了上述的 x c ( t ) x_c(t) xc(t),因此可以认为这样相乘得到的DSB-SC信号 s ( t ) s(t) s(t)是一个带通信号,实现了频谱搬移,因此我们的调制是有意义的。
在这里插入图片描述调制之后的频谱如下,与上述得到复包络的过程正好相反。
在这里插入图片描述调制的过程是为了利于传输,最终的接收端当然还是需要分析原始信号,因此我们需要对调制得到的信号进行解调,即再一次从带通信号中得到原始的基带信号。
对于DSB-SC调制,我们采用相干解调器
在这里插入图片描述即解调器所用载波与已调信号的载波同频同相
乘上一个 2 c o s 2 π f c t 2cos2\pi f_c t 2cos2πfct之后,再通过一个低通滤波器LPF,这一解调过程实际是在取出带通信号复包络的实部:
请添加图片描述因此,通过低通滤波器之后,m(t)被恢复出来。

包络调制

上面讲的DSB-SC调制虽然简单,但是在解调时只能选择相干解调。在实际应用中,载波的频率比较容易获得,但是相位是很难准确获得的,因此我们经常使用包络调制(AM)。
AM信号的表达式为:
在这里插入图片描述要注意的是,这里的A并不是任意选取的,而是能够使得 A + m ( t ) A+m(t) A+m(t)大于0,因此A要选的足够大。为什么要这样做呢,主要是利于后面包络检波器的实现。
在这里插入图片描述
由图像可知,调制之后信号的复包络即为 A + m ( t ) A+m(t) A+m(t)(也可以再乘上一个系数)
这样在解调时,就有两种方法。第一种方法是非相干解调,即输入带通信号,可以输出其包络,再经过隔直流操作即可得到原始的m(t)。
在这里插入图片描述第二种方法是相干解调,由于调制过程中插入了载波的频谱,因此可以用窄带滤波器将其滤出,并作为解调时的解调信号,与带通信号相乘,整体思路和DSB-SC的解调很类似。
在这里插入图片描述

单边带调制 SSB

回顾一下上面的DSB信号,我们可以发现它的频谱时关于载波对称的,因此单独上边带或者下边带的频谱信息就足够了,因此也可以采用单边带调制。
直接上理解,获取单边带的手段可以是滤波器,即将DSB信号通过一个滤波器:
在这里插入图片描述像这样就得到了上边带信号(USB),类似的,也可以只保留下边带信号。
但是实际上的操作并不是这样的,多加了一部滤波操作不是更麻烦了么,我们是直接在输入端送入单边带信号的,通过公式推导,可以得出单边带信号的表达式:
在这里插入图片描述其中m(t)是原始的基带信号,通过一个调制系统即可得到上面表达式的带通信号。
在这里插入图片描述对于SSB,解调也是一样的,由上述可知,相干解调的功能是取出复包络的实部,而 s L , S S B ( t ) s_{L,SSB}(t) sL,SSB(t)的复包络是
在这里插入图片描述实部是m(t),因此可以用同样的解调器恢复出m(t)。
在这里插入图片描述

角度调制

看了前面的调制过程,不难总结出在模拟调制中的一般规律,首先要将m(t)的信息包含到复包络中,如DSB-SC调制复包络直接为m(t),AM调制复包络为A+m(t),SSB调制复包络为m(t)+j*m^(t),将复包络形成带通信号即调制完成。
在这里插入图片描述之前讲复包络的时候提到复包络一般都是复数: x L ( t ) = x c ( t ) + j ∗ x s ( t ) x_L(t)=x_c(t)+j*x_s(t) xL(t)=xc(t)+jxs(t) 也可以表示成 x L ( t ) = A c ∗ e j ϕ x_L(t)=A_c*e^{j \phi} xL(t)=Acejϕ,前面的幅度调制都是对 x c ( t ) x_c(t) xc(t)做文章,其实也可以把m(t)包含在复包络的 ϕ \phi ϕ中。
有两种角度调制的方法,分别是线性调相(PM)和线性调频(FM):
PM: ϕ ( t ) = K p ∗ m ( t ) \phi (t)=K_p*m(t) ϕ(t)=Kpm(t) 相位和m(t)成正比
FM: 1 2 π . d d t ϕ ( t ) = K f ∗ m ( t ) \frac{1 }{2\pi}.\frac{d}{dt}\phi(t)=K_f*m(t) 2π1.dtdϕ(t)=Kfm(t) 频率和m(t)成正比
因此同一个信号,可以既看作是PM调制的结果,也可以看作是FM调制的结果,如
在这里插入图片描述
有以下两种理解方式:在这里插入图片描述

在这里插入图片描述分析角度调制信号的频谱时,公式推导比较复杂,在这里我们只需要知道主要能量都集中在一个有效带宽上: B ≈ 2 ( δ f m a x + f m ) B\approx2(\delta f_{max}+f_m) B2(δfmax+fm),其中 δ f m a x \delta f_{max} δfmax是FM信号的最大频偏, f m f_m fm是基带信号的最高频率。

  • 7
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用MATLAB进行信号调制解调的方法: 1. AM调制 假设我们有一个基带信号x,载波频率为fc,调制指数为m,那么AM调制信号y可以表示为: y = (1 + m*x) * cos(2*pi*fc*t) 其中t为时间变量。在MATLAB中,我们可以使用以下代码进行AM调制: ```matlab fc = 1000; % 载波频率 fm = 100; % 基带信号频率 m = 0.5; % 调制指数 t = 0:0.0001:0.1; % 时间变量 x = sin(2*pi*fm*t); % 基带信号 y = (1 + m*x) .* cos(2*pi*fc*t); % AM调制信号 plot(t, y); % 绘制调制信号波形图 ``` 2. 相干解调 假设我们已经接收到了一个AM调制信号y,我们可以使用相干解调的方法将其解调回原始的基带信号x。具体方法是将接收到的信号与一个与发送端相同的本地载波信号cos(2*pi*fc*t)相乘,然后通过一个低通滤波器滤掉高频分量,得到原始的基带信号。在MATLAB中,我们可以使用以下代码进行相干解调: ```matlab fc = 1000; % 载波频率 fm = 100; % 基带信号频率 m = 0.5; % 调制指数 t = 0:0.0001:0.1; % 时间变量 x = sin(2*pi*fm*t); % 基带信号 y = (1 + m*x) .* cos(2*pi*fc*t); % AM调制信号 local_carrier = cos(2*pi*fc*t); % 本地载波信号 z = y .* local_carrier; % 相乘 [b, a] = butter(6, 2*fm/(2*fc)); % 低通滤波器 x_hat = filter(b, a, z); % 滤波 plot(t, x_hat); % 绘制解调后的信号波形图 ``` 3. 非相干解调(包络检波) 非相干解调也称为包络检波,其原理是将接收到的信号的幅度信息提取出来,得到信号的包络。在MATLAB中,我们可以使用以下代码进行非相干解调: ```matlab fc = 1000; % 载波频率 fm = 100; % 基带信号频率 m = 0.5; % 调制指数 t = 0:0.0001:0.1; % 时间变量 x = sin(2*pi*fm*t); % 基带信号 y = (1 + m*x) .* cos(2*pi*fc*t); % AM调制信号 envelope = abs(hilbert(y)); % 包络检波 plot(t, envelope); % 绘制解调后的信号波形图 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值