文章目录

  • 一、模拟调制
    • 1 幅度调制
      • 1.1标准调幅
      • 1.2抑制载波双边带调幅
      • 1.3单边带调幅
      • 1.4残留边带调幅
      • 1.5幅度调制的解调
    • 2 角度调制
      • 2.1调频
      • 2.2调相
      • 2.3解调

一、模拟调制

1 幅度调制

1.1标准调幅
1.2抑制载波双边带调幅
1.3单边带调幅
1.4残留边带调幅
1.5幅度调制的解调

2 角度调制

2.1调频
2.2调相
2.3解调

一、幅度调制
由各种信源产生的基带信号并不能在大多数信道中直接传输,而是需要通过调制后在送到信道中。在接收端就必须通过相反的过程,即解调。
调制是使信号m(t)控制载波的某一个(或几个)参数,使这个参数按照信号m(t)的规律变化的过程。载波可以是正弦波或者脉冲序列。
以正弦波信号作为载波的调制叫做连续波(CW)调制。
连续波调制分为线性调制和非线性调制两大类,线性调制是指调制后信号(已调信号)的频谱为调制信号(基带信号)频谱的平移及线性变换,而非线性调制是已调信号与输入信号之间不存在这种对应关系,已调信号频谱中将出现与调制信号无关的分量。
连续波调制可分为调幅调频和调相。
1.1标准调幅(常规双边带调幅)
信源:

载波:

已调信号:

功率谱:调幅波的总功率等于信号的均方值

例子:设信源和载波分别为

求AM调制信号和调制信号功率谱密度。

% AM调制
dt=0.001;%时间采样间隔
fmax=1;  %信源最高频率
fc=10;   %载波频率
T=5;     %信号时长
N=T/dt;  %采样点数
t=[0:N-1]*dt %采样时间
mt=sqrt(2)*cos(2*pi*fmax*t)%信源
%AM_modulation
A=2;
s_am=(A+mt).*cos(2*pi*fc*t);%power spectrum density 功率谱密度
[f,Xf]=FFT_SHIFT(t,s_am); %调制信号频谱,这里调用了编写的FFT_SHIFT()函数
PSD=(abs(Xf).^2)/T %调制信号功率谱密度figure
subplot(211);plot(t,s_am)%AM信号波形
hold on;
plot(t,A+mt,'r--');    %AM包络
title('AM调制信号及其包络')
xlabel('t');
subplot(212);plot(f,PSD)%AM信号功率谱波形
axis([-2*fc 2*fc 0 1.5*max(PSD)]);
title('AM调制信号功率谱')
xlabel('f');

调用的FFT_SHIFT()函数

function[f,sf]=FFT_SHIFT(t,st)
dt=t(2)-t(1);
T=t(end);
df=1/T;
N=length(st);
f=[-N/2:N/2-1]*df;
sf=fft(st);
sf=T/N*fftshift(sf);


1.2抑制载波双边带调幅
在AM信号中,载波分量并不携带信息,信息完全由边带传送,如果将载波抑制,不附加直流分量,就可以直接得到抑制载波双边带信号,简称双边带信号(DSB),其时间波形的表示式为:
抑制载波双边带调幅实质上就是调制信号与载波的相乘运算。
注意:抑制载波双边带调幅信号的时间波形的包络已经不再与调制信号的形状一致,因此不能直接用简单的包络检波来恢复信号。
例子:信源和载波的表达式不变,求DSB—SC调制信号和功率谱密度。

%DSB调制
dt=0.001;%时间采样间隔
fmax=1;  %信源最高频率
fc=10;   %载波频率
T=5;     %信号时长
N=T/dt;  %采样点数
t=[0:N-1]*dt %采样时间
mt=sqrt(2)*cos(2*pi*fmax*t)%信源
%DSB_modulation
s_dsb=mt.*cos(2*pi*fc*t);%power spectrum density 功率谱密度
[f,sf]=FFT_SHIFT(t,s_dsb); %调制信号频谱,这里调用了编写的FFT_SHIFT()函数
PSD=(abs(sf).^2)/T %调制信号功率谱密度%plot DSB and PSD
figure
subplot(211);plot(t,s_dsb)%DSB信号波形
hold on;
plot(t,mt,'r--');    %DSB包络
title('DSB调制信号及其包络')
xlabel('t');
subplot(212);plot(f,PSD)%DSB信号功率谱波形
axis([-2*fc 2*fc 0 1.5*max(PSD)]);
title('DSB调制信号功率谱')
xlabel('f');


1.3单边带调幅
注意:任何物理上可实现信号的频谱都是
的偶函数。
单边带调幅只传送双边带信号的一个边带,因此它比AM、DSB信号带宽较少了一半,提高了信道利用率。
形成单边带信号可以通过滤波法和相移法。
滤波法就是让双边带信号通过一个单边带滤波器,滤除不要的边带。
关于希尔伯特变换的介绍:
https://blog.csdn.net/qq_37431083/article/details/103399465
https://www.cnblogs.com/xingshansi/articles/6498913.html
利用hilbert函数可以计算实序列x[k]的Hilbert变换
y=hilbert(x)
y的实部是原序列x,对于实部是没有影响的,而虚部是x的Hilbert变换的结果,y称为解析信号。
例子:信源和载波的表达式不变,求SSB调制信号和功率谱密度。

%DSB调制
dt=0.001;%时间采样间隔
fmax=1;  %信源最高频率
fc=10;   %载波频率
T=5;     %信号时长
N=T/dt;  %采样点数
t=[0:N-1]*dt %采样时间
mt=sqrt(2)*cos(2*pi*fmax*t)%信源
%SSB_modulation
s_ssb=real(hilbert(mt).*exp(j*2*pi*fc*t));%求的是上边带功率谱
% s_ssb=mt.*cos(2*pi*fc*t)+imag(hilbert(mt)).*sin(2*pi*fc*t);%求得是下边带功率谱
% s_ssb=imag(hilbert(mt).*exp(j*2*pi*fc*t));%求的是上边带功率谱%power spectrum density 功率谱密度
[f,sf]=FFT_SHIFT(t,s_ssb); %调制信号频谱,这里调用了编写的FFT_SHIFT()函数
PSD=(abs(sf).^2)/T %调制信号功率谱密度%plot SSB and PSD
figure
subplot(211);plot(t,s_ssb)%SSB信号波形
hold on;
plot(t,mt,'r--');    %SSB包络
title('SSB调制信号及其包络')
xlabel('t');
subplot(212);plot(f,PSD)%SSB信号功率谱波形
axis([-2*fc 2*fc 0 1.5*max(PSD)]);
title('SSB调制信号功率谱')
xlabel('f');


1.4残留边带调幅
残留边带是介于双边带和单边带之间的一种调制方式,它保留了一个边带和另一个边带的一部分,但是传输频带要增宽了一些,残留边带一般采用滤波法形成。
残留边带的时域表达式为:

残留边带的频谱为:

其中
为残留边带滤波器。这里涉及滤波器的设计,后续学习。
1.5幅度调制的解调
解调分为相干解调和非相干解调。
相干解调(同步解调)是将已调信号乘上一个同频同相的载波。
非相干解调(包络检波)。
二、角度调制
线性调制是通过改变载波的幅度来实现基带调制信号的频谱搬移,非线性调制是通过改变载波的频率或者相位来实现调制信号频谱搬移的,即载波的振幅保持不变,而载波的频率或者相位随基带信号发生变化。
因为频率或者相位的变化都可以看作是载波角度的变化,所以这种调制称为角度调制,角度调制就是频率调制(FM)和相位调制(PM)的统称。
2.3解调
窄带角调波的解调:可以应用相干解调。
宽带角调波的解调:进行非相干解调
调频信号的解调是要产生一个与输入调频波的频率成线性关系的输出电压,完成这个频率与与电压变换关系的器件是频率解调器。
解调器可以为鉴频器(对两种波形都适用)和锁相环(PLL)解调器。
鉴频器的作用是把输入信号的频率变化成输出电压瞬时幅度的变化,也就是说,鉴频器输出电压的瞬时幅度与输入调频波的瞬时频率偏移成正比。
鉴频器的数学模型可以等效为一个微分器和包络检波器组成的,微分器将调频信号变成调频调幅波,再由包络检波器检出幅度变化。
例子:设输入信号为
载波中心频率fc=10Hz,调频器的压控震荡系数为5Hz/v,载波平均功率为1W。
求a.该调频信号的波形;
b调频信号的震荡谱;
c.用鉴频器解调出该信号,并与输出信号相比较。

%FM modulation and demodulation
Kf=5;
fc=10;
T=5;
dt=0.001;
t=0:dt:T;
%信源
fm=1;
A=sqrt(2);
mt=A*cos(2*pi*fm*t);%信源信号
%FM调制
mti=1/2/pi/fm*sin(2*pi*fm*t);%mt的积分函数
% mti=A*1/2/pi/fm*sin(2*pi*fm*t);
% S_FM=A*cos(2*pi*fc*t+Kf*mti);
S_FM=A*cos(2*pi*fc*t+2*pi*Kf*mti);figure
subplot(311);plot(t,S_FM)%FM信号波形
hold on;
plot(t,mt,'r--');    %FM包络
xlabel('t');ylabel('调制信号');
%FM调制
subplot(312);
[f,sf]=FFT_SHIFT(t,S_FM);
plot(f,abs(sf));
axis([-25 25 0 3]);
xlabel('f');ylabel('调制信号幅度谱');
%FM解调
N=length(S_FM);
dS_FM=zeros(1,N);
for k=1:N-1;dS_FM(k)= (S_FM(k+1)-S_FM(k))/dt; %取S_FM信号的微分
end
envlp=A*2*pi*fc+A*2*pi*Kf*mt;%FM波经微分后变成了调幅调频信号,其幅度变化为A[Wc+Kfm*m(t)]
subplot(313);plot(t,dS_FM)%FM信号波形
hold on;
plot(t,envlp,'r--');    %FM包络
xlabel('t');ylabel('调频信号微分后包络');


在FM调频中,如果根据调频信号的公式来看,为什么在求S_FM的Kf前面乘上了2pi,在后面求调幅调频信号的时候也是了2pi,并且在求mt积分的时候没有乘上A呢?

基于MATLAB的模拟信号AM、FM等调制与解调相关推荐

  1. matlab进行fm调制与解调,基于matlab的fm信号调制与解调.doc

    基于matlab的fm信号调制与解调.doc 调制就是将基带信号的频谱搬移到信道通带中或者其中的某个频段上的过程,而解调是将信道中来的频带信号恢复为基带信号的反过程.调制的目的是把要传输的模拟信号或数 ...

  2. 基于MATLAB的多进制数字调制信号的矢量星座图分析

    1 前言 通信即传输信息,进行信息的时空转移.通信系统的作用就是将信息从信源发送到一个或多个目的地.实现通信的方式和手段很多,如手势.语言.旌旗.烽火台和击鼓传令,以及现代社会的电报.电话.广播.电视 ...

  3. 基于matlab的正交幅度调制系统,基于matlab多进制正交幅度调制系统的仿真终稿.doc...

    基于matlab多进制正交幅度调制系统的仿真终稿 通信系统综合设计与实践 题目基于Matlab的多进制正交幅度调制系统的仿真 院(系)名称信院通信系 专业名称通信工程 学生姓名 学生学号 指导教师 2 ...

  4. 【通信原理】实验1 基于Matlab的模拟信号的调制和解调

    基于Matlab的模拟调制系统仿真 目录 基于Matlab的模拟调制系统仿真 一.实验类型 二. 实验目的 三.实验原理 四. 实验内容 一. AM: DSB: SSB: 更多相关文章如下: 一.实验 ...

  5. 数字信号处理基础----FM的调制与解调

    1. FM调制与解调的数学原理 1.1 FM调制中的常用指标   FM是模拟调制中的一种,也就是频率调制.就是把基带信号用载波的频率来承载.直接的表现方式是调角,也是一种非线性调制.   角度调制时, ...

  6. 数字信号处理基础----FM的调制与解调(1)

    1. FM调制与解调的数学原理 1.1 FM调制中的常用指标   FM是模拟调制中的一种,也就是频率调制.就是把基带信号用载波的频率来承载.直接的表现方式是调角,也是一种非线性调制.   角度调制时, ...

  7. 【数字信号调制】基于matlab GUI PCM编码和QAM调制系统【含Matlab源码 2080期】

    ⛄一.PCM编码+QAM调制简介 1 PCM 数字信号是对连续变化的模拟信号进行抽样.量化和编码产生的,称为PCM(Pulse Code Modulation),即脉冲编码调制. 脉冲编码调制就是把一 ...

  8. 【通信原理(含matlab程序)】实验二:FM的调制和解调

  9. MATLAB编程实现2FSK信号的调制与解调(非相干解调)

    2FSK信号的产生 数字频率调制又称频移键控(FSK),二进制频移键控记作2FSK.数字频移键控是用载波的频率来传送数字消息,即用所传送的数字消息控制载波的频率.2FSK信号便是符号"1&q ...

最新文章

  1. 微服务化之前需要先无状态化和容器化
  2. PHP文件头部(header)解释
  3. 解决 Script Error 的另类思路
  4. 新基建时代,腾讯云数据库沿主赛道加速演进
  5. tor the onion router下载_人教版英语知识点练习:七年级下册Unit8要点讲解,重点短语句型,语法聚焦(可下载打印版,附答案)...
  6. 直接选择排序与冒泡排序
  7. noip2006提高组-金明的预算方案解题报告
  8. c语言编译错误c267,为啥编译出现HAHA.C(31): error C267: 'adc0832': requires ANSI-style prototype.......
  9. BZOJ2151 种树
  10. ubuntu部署django详细教程
  11. ORACLE 常用操作命令
  12. Python+Django开发微信公众号后台
  13. Flutter开发:使用SafeArea(安全区域)
  14. python list转josn,以及读写txt、json文件
  15. Qt绘 —— QPixmap 的使用
  16. JAVA语言编程练习--图形界面--简易登录界面
  17. svchost.exe占用cpu100 的解决方法
  18. 使用python脚本批量修改vc工程文件
  19. 使用pytorch可视化中间层的结果
  20. CentOS 之 openssl-devel 安装

热门文章

  1. PTA数据库题目集第一章
  2. android 自动读取短息,Android实现短信验证码自动拦截读取功能
  3. 气化器中BOG和EAG分别是什么意思?
  4. seekg(0,ios::beg)不起作用的原因和解决方法
  5. Echarts折线图的平移假动画
  6. 悟空问答死于知乎十周年
  7. Ironic 裸金属管理服务
  8. 下载SAPUI5 SDK
  9. PspTerminateProcess 结束冰刃进程
  10. 视频去水印工具有什么 哪个去水印软件好用