AM &DSB信号解调的MATLAB实现

一、实验目的

掌握AM&DSB解调器电路原理;

掌握AM&DSB解调仿真原理。

了解MATLAB软件,学习应用MATLAB软件的仿真技术。它主要侧重于某些理论知识的灵活运用,以及一些关键命令的掌握,理解,分析等。

二、实验仪器

计算机、MATLAB软件

三、实验原理

(1)在接收端从AM已调信号中恢复出原始信号S(t)的过程称之为解调。对AM常用的解调方式有:非相干解调(检波)与相干解调(同步解调)。

AM的非相干解调是将AM信号通过一检波二极管,再经过一低通滤波器即可获取原始的模拟信号s(t)。AM的非相干解调不需要本地载波,此方法常用于民用通信设备中,可大大降低接收机的成本,提高整机通信的可靠性。

AM的同步解调是将接收的AM信号与本地相干载波(同步载波)相乘,经低通滤波器获得原始的模拟信号S(t)。同步解调需要在接收端产生与发送端频率相同的本地载波,该方法可提高解调器的性能(即提高接收机的灵敏度),但这也将使接收机复杂化。

“AM”调制信号产生模块电路如图1所示,解调模块电路如图2所示。

(2) DSB信号的解调

DSB信号解调电路由相乘器和低通滤波器组成。如图3所示。

图3 振幅解调电路的组成框图

在电路中,将u(t)先与一个等幅余弦电压uo(t)相乘,要求这个电压与输入载波信号同频同相,即uc(t)=UcMcoswct,称为同步信号,相乘结果是u(t)频谱被搬移到ωc的两边,一边搬到2ωc上,构成载波角频率为2ωc的双边带调制信号,它是无用的寄生分量;另一边搬到零频率上,这样,u(t)的一边带就必将被搬到负频率轴上,负频率是不存在的,实际上,这些负频率分量应叠加到相应的正频率分量上,构成实际的频谱,因此它比搬移到2ωc上的任一边带频谱在数值上加倍。而后用低通滤波器滤除无用的寄生分量,取出所需的解调电压。

必须指出,同步信号uc(t)必须与输入信号保持严格同步(同频、同相)是实现上述电路模型的关键,故将这种检波电路称为同步检波电路。否则检波性能就会下降。

四、实验内容

在MATLAB中实现下面例题的调制程序,:

信源:m(t)=sqrt(2)cos(2pit);

载波:s(t)=A.cos(20pit)

求当AM:A=2;DSB:A=1;调制信号的相干解调后的信号波形

1、求出AM/DSB/SSB/VSB调制信号的相干解调后的信号波形。

然后对处理好的实验结果进行分析。

实验目的:运用MATLAB软件编写相应的程序,求出AM/DSB/SSB/VSB调制信号的相干解调后的信号波形。实验程序:

dt=0.01; %时间采样间隔

fmax=1; %信源最高频率

B=2*fmax;

fc=10; %载波中心频率

T=5; %信号时长

N=floor(T/dt);

t=[0:N-1]*dt;

mt=sqrt(2)*cos(2*pi*fmax*t);

%AM modulation

A=2;

am=(A+mt).*cos(2*fc*pi*t);

amd=am.*cos(2*fc*pi*t);

amd=amd-mean(amd);

[f,AMf]=FFT_SHIFT(t,amd);

B=2*fmax;

[t,am_t]=RECT_LPF(f,AMf,B);

%DSB modulation

dsb=mt.*cos(20*pi*t);

dsbd=dsb.*cos(20*pi*t);

dsbd=dsbd-mean(dsbd);

[f,DSBf]=FFT_SHIFT(t,dsbd);

[t,dsb_t]=RECT_LPF(f,DSBf,B);

%SSB modulation

ssb=real(hilbert(mt).*exp(1i*2*pi*fc*t));

ssbd=ssb.*cos(2*fc*pi*t);

ssbd=ssbd-mean(ssbd);

B=2*fmax;

[f,SSBf]=FFT_SHIFT(t,ssbd);

[t,ssb_t]=RECT_LPF(f,SSBf,B);

%VSB modulation

vsb=mt.*cos(2*pi*fc*t);

[f,vsbf]=FFT_SHIFT(t,vsb);

[t,vsb]=vsbmd(f,vsbf,0.2*fmax,1.2*fmax,fc);

vsbd=vsb.*cos(2*pi*fc*t);

vsbd=vsbd-mean(vsbd);

[f,VSBf]=FFT_SHIFT(t,vsbd);

[t,vsb_t]=RECT_LPF(f,VSBf,2*fmax);

信号输出

%plot m(t),am(t),dsb(t),ssb(t),vsb(t)

subplot(5,1,1);

plot(t,mt);

title('相干解调后的信号与输入信号的比较');

ylabel('m(t)');

xlabel('t');

subplot(5,1,2);

plot(t,am_t);

ylabel('am(t)');

xlabel('t');

subplot(5,1,3);

plot(t,dsb_t);

ylabel('dsb(t)');

xlabel('t');

subplot(5,1,4);

plot(t,ssb_t);

ylabel('ssb(t)');

xlabel('t');

subplot(5,1,5);

plot(t,vsb_t);

ylabel('vsb(t)');

xlabel('t');

% RECT_LPF函数

function[t,st]=RECT_LPF(f,Sf,B)

df=f(2)-f(1);

fN=length(f);

RectH=zeros(1,fN);

BN=floor(B/df);

BN_SHIFT=[-BN:BN-1]+floor(fN/2);

RectH(BN_SHIFT)=1;

Yf=RectH.*Sf;

[t,st]=IFFT_SHIFT(f,Yf);

% IFFT_SHIFT函数

function [t,st]=IFFT_SHIFT(f,Sf)

df=f(2)-f(1);

fmax=(f(end)-f(1)+df);

dt=1/fmax;

N=length(f);

t=[0:N-1]*dt;

Sf=fftshift(Sf);

st=fmax*ifft(Sf);

st=real(st);

% vsbmd函数

function [t,st]=vsbmd(f,sf,B1,B2,fc)%低通滤波器

df=f(2)-f(1);

T=1/df;

hf=zeros(1,length(f));

bf1=[floor((fc-B1)/df):floor((fc+B1)/df)];

bf2=[floor((fc+B1)/df):floor((fc+B2)/df)];

f1=bf1+floor(length(f)/2);

f2=bf2+floor(length(f)/2);

stepf=1/length(f1);

hf(f1)=0:stepf:1-stepf;

hf(f2)=1;

f3=-bf1+floor(length(f)/2);

f4=-bf2+floor(length(f)/2);

hf(f3)=0:stepf:(1-stepf);

hf(f4)=1;

yf=hf.*sf;

[t,st]=IFFT_SHIFT(f,yf);

st=real(st);

实验结果分析

为了无失真地恢复原基带信号,接受端必须提供一个与接受的已调载波同步的本地载波,它与接受的调制信号相乘后,经低通滤波器去除低频分量,即可得到原始的基带调制信号。

相干解调的特点是无门限效应,使用AM、DSB、SSB、VSB。而只要求载波同步。

三、实验设备

1、计算机

2、软件MATLAB

四、写写你对本次实验的心得体会及意见(字数不少于400)

解调是在接收端将已调波信号从高频段变换到低频段, 恢复原调制信号。调制与解调是通信原理方向最主要的模块之一,先是通过在课堂上对理论知识的学习,反复研究,了解了调制与解调系统的基本方式以及其原理。再将理论在实验中得到验证和应用,是我们学习当中的一个问题。

从这次实验中,见识到了MATLAB软件处理的强大之处。我们不仅加深理解和巩固了理论课上所学习的有关模拟调制技术和相干解调的基本概念、基本理论和基本方法、而且锻炼了分析和解决问题的能力。同时对MATLAB的一些基本操作和应用有了更深入的了解。如:基本信号波形的输出,RECT_LPF、IFFT_SHIFT、vsbmd函数的使用等。

但对MATLAB软件的一些函数处理还不熟悉,还是会出现函数没有定义的编译错误。后续需要我们自己学习和思考,尽快熟悉对matlab软件的使用。

这次实验较比上星期速度快了很多,但还是会出现因为粗心代码写错等马虎的毛病,过程中会通过微信和同学交流,互相学习。后期我会强对MATLAB软件的学习和研究,认真做好接下来的每一次实验。

标签:解调,SHIFT,AM,fc,MATLAB,信号,DSB

来源: https://blog.csdn.net/weixin_47980825/article/details/106237706

MATLAB用相干解调DSB信号,AM DSB信号解调的MATLAB实现相关推荐

  1. matlab相干解调,心电信号的调制与解调(AM调制、相干解调)

    陈超 11108125 一. 系统构思: 1).通信原理课程介绍了模拟信号的调制与解调.调制可以实现将低频信号频谱搬移到载频位置,解调相当于 调制的反过程. 2).调制和解调的应用举例:3.4kHZ的 ...

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

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

  3. 2FSK频谱matlab,2FSK信号的频谱分析及解调的实现.doc

    <数字信号处理> 课程设计报告 题 目:2FSK信号的频谱分析及解调的实现 专 业: 信息与计算科学 学 号: 组 长: 指导教师: 成 绩: 2010年1月8日 2FSK信号的频谱分析及 ...

  4. 《通信原理》课程设计-基于matlab的am信号的调制与解调,AM调制解调与解调器抗干扰性能研究系统...

    <AM调制解调与解调器抗干扰性能研究系统>由会员分享,可在线阅读,更多相关<AM调制解调与解调器抗干扰性能研究系统(10页珍藏版)>请在人人文库网上搜索. 1.哈尔滨商业大学课 ...

  5. matlab产生ofdm信号,Matlab 完成简单的OFDM 信号的产生与解调程序.pdf

    Matlab 完成简单的OFDM 信号的产生与解调程序实验研究 OFDM(Orthogonal Frequency Division Multiplexing)即正交频分复用技 术,实际上OFDM是M ...

  6. matlab调频解调,(很实用,很好)用MATLAB实现信号的调制与解调调频调相等

    <(很实用,很好)用MATLAB实现信号的调制与解调调频调相等>由会员分享,可在线阅读,更多相关<(很实用,很好)用MATLAB实现信号的调制与解调调频调相等(7页珍藏版)>请 ...

  7. 《通信原理》AM/DSBSC/SSB信号的调制与解调仿真

    一.实验内容 利用matlab实现以下内容: 1.信号的调幅.根据随机产生的整数和已知条件来计算: (1)AM.DSBSC.SSB信号的消息信号和已调信号的频谱: (2)AM.DSBSC.SSB信号的 ...

  8. 基于MATLAB的模拟信号AM、FM等调制与解调

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

  9. matlab simlink fm调制,基于MATLABSIMULINK的FM调制解调

    基于MATLABSIMULINK的FM调制解调 1 FM调制与解调原理 1.1模拟通信系统的简介 通信的目的是传输信息.通信系统的作用就是将信息从信息源发送到一个或多个目的地.通信系统对信号进行两种基 ...

最新文章

  1. 简单快速安装Apache+PHP+MySql服务环境(三)—— 下载安装phpmyadmin
  2. .bat文件该图标_电脑桌面图标变成白色方块图标怎么办?
  3. PageAdmin建站系统模板制作教程1:Razor简介
  4. vue项目实现文字转换成语音播放功能
  5. 数据分析常用图表常用场景
  6. 【rac asm扩容】在vmware workstation中配置集群(rac)的共享存储(磁盘)方法(流程)
  7. python爬虫--爬取某网站电影下载地址
  8. python查询mysql decimal报错_【2020Python修炼记】MySQL之 表相关操作
  9. CSDN创作中心Markdown编辑器基本使用方法
  10. Flyme-Substratum主题
  11. 电商用户标签体系建设基础步骤
  12. 移动多媒体知识点期末总结
  13. 「WAVE SUMMIT 2022深度学习开发者峰会」火热来袭
  14. 统计学习方法 HMM
  15. 稳定可靠的Windows Server 2008 R2服务器操作系统
  16. chromedriver selenium驱动包下载
  17. 判断字段是否存在,判断主键是否存在,判断某个字段是否具有not null约束
  18. 【文件保护器 V5.5】方便简单好用的加密软件
  19. 语音怎么转换成文字?这几个实用方法分享给你
  20. 浅议开发者面临的信息偏差影响因素

热门文章

  1. UI Automator
  2. 微信扫一扫中的js安全接口域名的配置
  3. 输出乱码疑难杂症总结及解决方案
  4. utc时间转换为时分秒_详解JavaScript UTC时间转换方法
  5. 给定平面上的n个点,求最多有多少个点共线
  6. java jpress,使用JPress快速搭建系统
  7. Java解决:有一对兔子,从出生后第三个月起每个月都生一对兔子,小兔子长到第三个月的时候又生了了一对兔子。假设兔子都没有死亡,求第二年的总对数 。
  8. pytorch版Class-Balanced Loss训练模型
  9. 动态规划——邮局、区间、坐标
  10. QA团队和测试团队的关系