振幅调制和解调的原理及MATLAB编程实现

更新时间:2023-06-10 11:08:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

jjj

振幅调制和解调的原理及MATLAB编程实现

一、振幅调制和解调的原理:

通常调制要传送的信号波形是比较复杂的,但无论多么复杂的信号都可用傅氏级数分解为若干正弦信号之和。为了分析方便起见,我们一般把调制信号看成一简谐信号。

v v(a) 调制信过调制波形图(b) 由非正弦波调制所得到的调幅波形 已调波形

二、振幅调制:

正交振幅调制是用两个独立的基带信号对两个相互正交的同频载波进行抑制载波的双边带调制,利用这种已调信号在同一带宽内频谱正交的性质来实现两路并行的数字信息传输。

正交振幅调制信号的一般表示式: 

S

MQAM

(t)

A

n

n

g(t nTS)cos(wct n)

式中,An是基带信号幅度,g(t-nTs)是宽度为Ts的单个基带信号波形。 上式还可以变换为正交表示形式:

S

MQAM

(t)

A

n

n

n

g(t nTS)cos(wct n)

S

MQAM

(t) [ Ang(t nTS)cos n]coswct [ Ang(t nTS)sin n]sinwct

n

令 Xn=An cosφn

Yn=Ansinφn 则

S(t) [ Xng(t nTS)cos n]coswct [ Yng(t nTS)sin n]sinwctMQAM nn

X(t)coswct y(t)sinwct

jjj

假设一调制信号ft=Am.cos(2πfm.t+Qm),载波信号为ct=Ac.cos(2πfc.t+Qc),则振幅调制(已调波信号为SAM=(AC+ft) .cos(2πfc.t+Qc)

二、振幅解调

相干解调法如图

将已调波SAM信号与解调载波相乘即spt=SAM.*cos(2*pi*fcP*t+QcP)得到含有二次高频和调制信号成分的spt波形和频谱。

低通滤波器LPF本实验采用简单的一次降频电路如图

程序为ftp=int((spt.*exp(t/(R*C))),0,t) , FTP=exp(-t/(R*C)).*ftp,FTP=exp(-t/(R*C)).*ftp

, int代表积分运算。积分电阻电容的选择应根据调制信号的最高截止频率fm进行选择,公式为

syms设定的变量叫做符号变量,语句如syms FTP ft SAM spt t ftp R C Am fm Qm Ac fc Qc fcP Qcp。可以进行符号运算,这是matlab不同于其他语言的最大特点,对ftp=int((spt.*exp(t/(R*C))),0,t) , FTP=exp(-t/(R*C)).*ftp,FTP=exp(-t/(R*C)).*ftp,语句经运算后得到很复杂的运算结果如FTP=(。。。。。。。。。。。。。)中的内容,人工运算是无法得到的。

jjj

正交振幅调制解调仿真电路图

正交幅度调制(QAM)调制信号为:

u(t) mI(t)cos(2

fct c) mQ(t)sin(2 fc c)

c其中mI(t)为同相信号,mQ(t)为正交信号,fc是载波频率(单位赫兹Hz), 是初始相位。正交幅度调制过程如图所示。对应的解调过程如图

正交幅度调制框图 正交幅度调制的解调框图

三、matlab编程实现:

几个特殊语句的含义:

input语句表示输入参数值,单引号 内是提示信息。 Title( *** )语句中的***表示plot的标题

fft(y,N)语句表示对y函数进行N范围的傅利叶频谱分析 abs(y)是取幅值运算,length(y)是计算出y函数输出值得总长度

jjj

基带函数 带通函数 函数功能

amod amodce 模拟调制

ademod ademod 模拟调制 dmod ddemod 数字调制 ddemod ddemod 数字调制 modmap modmap 数字映射 demodmap demodmap 数字逆映射

其中可选用的模拟调制/解调方式为' DSB-SC AM' ,' DSB-TC AM ','SSB AM','QAM','FM'和'PM';可选的数字调制/解调,数字映射/逆映射的方式为'ASK' ,'QASK',

'QASK/CIRCLE','QASK/ARB','FSK','PSK'和'sample'。sample函数可以改变输入数据的抽样速率,是一种支持调制技术的应用。

注意:语句的后面如果不加“;”分号则运行时在输出命令窗口将显示运行结果,否则不显示运行结果。

将如下语句输入计算机,可以分部输入,先输入1。 调制部分,运行正常后,再输入2。解调部分。最后输入3。滤波部分,注:滤波公式比较长,应采用FTP输出结果复制、粘贴过来的方法,并将公式中的*cos和*sin替换为.*cos和.*sin方可执行。调试过程中采用不同的参数值加以验证,如下

当输入第一组数据后得到的输出波形如图

jjj

写出结论: 程序如下:

Am=input('输入调制信号幅度Am') fm=input('输入调制信号频率fm') Qm=input('输入调制信号相位Qm') Ac=input('输入载波信号幅度Ac') fc=input('输入载波信号频率fc') Qc=input('输入载波信号相位Qc')

fcP=input('输入解调同步载波信号幅度fcP') QcP=input('输入解调同步载波信号频率QcP') am=Am f=fm ac=Ac fo=fc clf N=1000 Fs=100000

jjj

n=0:N-1; t=n/Fs

ft=Am*cos(2*pi*fm*t+Qm);%调制信号 subplot(421) plot(t,ft) title('调制信号') y1=fft(ft,N)%傅利叶变换 mag1=abs(y1)%取复变函数幅值

f1=(0:length(y1)-1)*Fs/length(y1);%确定频率范围 subplot(423)%子窗口位置

plot(f1(1:N/2/10),mag1(1:N/2/10))%图形输出 title('调制信号频谱')%标题

SAM=(Ac+ft).*cos(2*pi*fc*t+Qc);%已调波信号AM subplot(422) plot(t,SAM)

title('已调波信号AM') y2=fft(SAM,N); mag2=abs(y2);

f2=(0:length(y2)-1)*Fs/length(y2); subplot(424)

plot(f2(1:N/2/5),mag2(1:N/2/5))

title('已调波信号AM频谱') %以上为调制部分 spt=SAM.*cos(2*pi*fcP*t+QcP)%相干解调 subplot(425)

plot(t,spt) title('相干解调波形') y3=fft(spt,N); mag3=abs(y3);

f3=(0:length(y3)-1)*Fs/length(y3); subplot(426)

plot(f3(1:N/2/5),mag3(1:N/2/5))

jjj

title('相干解调AM频谱')%以上为相干解调部分

syms FTP ft SAM spt t ftp R C Am fm Qm Ac fc Qc fcP Qcp ft=Am*cos(2*pi*fm*t) SAM=(Ac+ft).*cos(2*pi*fc*t) spt=SAM.*cos(2*pi*fc*t) ftp=int((spt.*exp(t/(R*C))),0,t) FTP=exp(-t/(R*C)).*ftp R=input('输入R') C=input('输入C') Am=am fm=f Ac=ac fc=fo

N=1000; %设显示范围 Fs=100000; %设采样频率 n=0:N-1;

t=n/Fs; %时间间隔

FTP=1/4*exp(-t/R/C).*(-256*Ac*pi^6*R^6*C^6*fm^6-8192*Ac*pi^6*fc^6*R^6*C^6-32768*Ac*pi^8*fc^6*R^8*C^8*fm^2-160*Ac*pi^2*fc^2*R^2*C^2-384*Ac*pi^4*fc^2*R^4*C^4*fm^2+512*Ac*pi^6*fc^2*R^6*C^6*fm^4-2048*Ac*pi^8*fc^2*R^8*C^8*fm^6-4096*Ac*pi^6*fc^4*R^6*C^6*fm^2-2048*Ac*pi^4*fc^4*R^4*C^4-4*Am-4*Ac+16384*Ac*pi^8*fc^4*R^8*C^8*fm^4-4096*Ac*exp(t/R/C)*pi^7*fc^3*R^7*C^7.*sin(4*pi*fc*t)*fm^4-64*Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)*pi^4*R^4*C^4*fm^3*fc-192*Ac*pi^4*R^4*C^4*fm^4-8192*Am*exp(t/R/C)*pi^7*fm^3*R^7*C^7.*sin(2*pi*fm*t)*fc^4+1536*Ac*exp(t/R/C)*pi^4*fc^4*R^4*C^4-48*Ac*pi^2*R^2*C^2*fm^2-64*Am*pi^4*R^4*C^4*fm^4-128*Am*exp(t/R/C)*pi^3*R^3*C^3.*sin(2*pi*(fm-2*fc)*t)*fc^3-256*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm-2*fc)*t)*fc^3*fm^2+64*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm-2*fc)*t)*fc*fm^4+1024*Am*exp(t/R/C)*pi^7*R^7*C^7.*sin(2*pi*(fm-2*fc)*t)*fc^3*fm^4-4096*Am*exp(t/R/C)*pi^7*R^7*C^7.*sin(2*pi*(fm-2*fc)*t)*fc^5*fm^2-1024*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm-2*fc)*t)*fc^5+8*Am*exp(t/R/C).*cos(2*pi*(fm-2*fc)*t)*pi^2*R^2*C^2*fm^2+32*Am*exp(t/R/C).*cos(2*pi*(fm-2*fc)*t)*pi^2*fc^2*R^2*C^2+192*Am*exp(t/R/C).*cos(2*pi*(fm-2*fc)*t)*pi^4*fc^2*R^4*C^4*fm^2+16*Am*exp(t/R/C).*cos(2*pi*(fm-2*fc)*t)*pi^4*R^4*C^4*fm^4+256*Am*exp(t/R/C).*cos(2*pi*(fm-2*fc)*t)*pi^6*fc^2*R^6*C^6*fm^4+1024*Am*exp(t/R/C).*cos(2*pi*(fm-2*fc)*t)*pi^6*fc^4*R^6*C^6*fm^2+96*Ac*exp(t/R/C)*pi^2*fc^2*R^2*C^2+24*Ac*exp(t/R/C)*pi^2*R^2*C^2*fm^2-16*Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)*pi^2*R^2*C^2*fm*fc+16*Am*exp(t/R/C)*pi^3*R^3*C^3.*sin(2*pi*(fm+2*fc)*t)*fm^3+128*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(f

jjj

m+2*fc)*t)*fm^3*fc^2+32*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm+2*fc)*t)*fm^5+512*Am*exp(t/R/C)*pi^7*R^7*C^7.*sin(2*pi*(fm+2*fc)*t)*fm^5*fc^2-2048*Am*exp(t/R/C)*pi^7*R^7*C^7.*sin(2*pi*(fm+2*fc)*t)*fm^3*fc^4+16*Am*exp(t/R/C)*pi^3*R^3*C^3.*sin(2*pi*(fm-2*fc)*t)*fm^3+128*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm-2*fc)*t)*fm^3*fc^2+32*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm-2*fc)*t)*fm^5+512*Am*exp(t/R/C)*pi^7*R^7*C^7.*sin(2*pi*(fm-2*fc)*t)*fm^5*fc^2-2048*Am*exp(t/R/C)*pi^7*R^7*C^7.*sin(2*pi*(fm-2*fc)*t)*fm^3*fc^4-512*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm-2*fc)*t)*fm*fc^4+2*Ac*exp(t/R/C).*cos(4*pi*fc*t)+Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)+Am*exp(t/R/C).*cos(2*pi*(fm-2*fc)*t)+2*Ac*exp(t/R/C)+384*Ac*exp(t/R/C)*pi^4*fc^2*R^4*C^4*fm^2+512*Ac*exp(t/R/C)*pi^6*fc^2*R^6*C^6*fm^4+2048*Ac*exp(t/R/C)*pi^6*fc^4*R^6*C^6*fm^2-16384*Ac*exp(t/R/C)*pi^8*fc^4*R^8*C^8*fm^4+2048*Ac*exp(t/R/C)*pi^8*fc^2*R^8*C^8*fm^6+96*Ac*exp(t/R/C)*pi^4*R^4*C^4*fm^4+2*Am*exp(t/R/C)*pi*R*C.*sin(2*pi*(fm-2*fc)*t)*fm-4*Am*exp(t/R/C)*pi*R*C.*sin(2*pi*(fm-2*fc)*t)*fc+256*Am*exp(t/R/C).*cos(2*pi*(fm-2*fc)*t)*pi^4*fc^4*R^4*C^4-512*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm+2*fc)*t)*fm*fc^4+128*Am*exp(t/R/C)*pi^3*R^3*C^3.*sin(2*pi*(fm+2*fc)*t)*fc^3+256*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm+2*fc)*t)*fc^3*fm^2-64*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm+2*fc)*t)*fc*fm^4-1024*Am*exp(t/R/C)*pi^7*R^7*C^7.*sin(2*pi*(fm+2*fc)*t)*fc^3*fm^4+4096*Am*exp(t/R/C)*pi^7*R^7*C^7.*sin(2*pi*(fm+2*fc)*t)*fc^5*fm^2+1024*Am*exp(t/R/C)*pi^5*R^5*C^5.*sin(2*pi*(fm+2*fc)*t)*fc^5+8*Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)*pi^2*R^2*C^2*fm^2+32*Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)*pi^2*fc^2*R^2*C^2+192*Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)*pi^4*fc^2*R^4*C^4*fm^2+16*Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)*pi^4*R^4*C^4*fm^4+256*Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)*pi^6*fc^2*R^6*C^6*fm^4+1024*Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)*pi^6*fc^4*R^6*C^6*fm^2+256*Am*exp(t/R/C).*cos(2*pi*(fm+2*fc)*t)*pi^4*fc^4*R^4*C^4+3072*Am*exp(t/R/C)*pi^5*fm*R^5*C^5.*sin(2*pi*fm*t)*fc^4+16384*Am*exp(t/R/C)*pi^7*fm*R^7*C^7.*sin(2*pi*fm*t)*fc^6+16*Am*exp(t/R/C).*cos(2*pi*fm*t)*pi^2*R^2*C^2*fm^2+96*Am*exp(t/R/C).*cos(2*pi*fm*t)*pi^2*fc^2*R^2*C^2+32*Am*exp(t/R/C).*cos(2*pi*fm*t)*pi^4*R^4*C^4*fm^4+512*Am*exp(t/R/C).*cos(2*pi*fm*t)*pi^6*fc^2*R^6*C^6*fm^4-4096*Am*exp(t/R/C).*cos(2*pi*fm*t)*pi^6*fc^4*R^6*C^6*fm^2+1536*Am*exp(t/R/C).*cos(2*pi*fm*t)*pi^4*fc^4*R^4*C^4+8192*Am*exp(t/R/C).*cos(2*pi*fm*t)*pi^6*fc^6*R^6*C^6+32*Am*exp(t/R/C)*pi^3*fm^3*R^3*C^3.*sin(2*pi*fm*t)+192*Am*exp(t/R/C)*pi^3*fm*R^3*C^3.*sin(2*pi*fm*t)*fc^2+64*Am*exp(t/R/C)*pi^5*fm^5*R^5*C^5.*sin(2*pi*fm*t)+1024*Am*exp(t/R/C)*pi^7*fm^5*R^7*C^7.*sin(2*pi*fm*t)*fc^2+16*Am*exp(t/R/C).*cos(2*pi*(fm-2*fc)*t)*pi^2*R^2*C^2*fm*fc+4*Am*exp(t/R/C)*pi*fm*R*C.*sin(2*pi*fm*t)+2*Am*exp(t/R/C)*pi*R*C.*sin(2*pi*(fm+2*fc)*t)*fm+4*Am*exp(t/R/C)*pi*R*C.*sin(2*pi*(fm+2*fc)*t)*fc+2*Am*exp(t/R/C).*cos(2*pi*fm*t)+32768*Ac*exp(t/R/C)*pi^8*fc^6*R^8*C^8*fm^2+8192*Ac*exp(t/R/C)*pi^6*fc^6*R^6*C^6+128*Ac*exp(t/R/C)*pi^6*R^6*C^6*fm^6+96*Ac*exp(t/R/C).*cos(4*pi*fc*t)*pi^4*R^4*C^4*fm^4-1024*Ac*exp(t/R/C).*cos(4*pi*fc*t)*pi^6*fc^2*R^6*C^6*fm^4+2048*Ac*exp(t/R/C).*cos(4*pi*fc*t)*pi^6*fc^4*R^6*C^6*fm^2+512*Ac*exp(t/R/C).*cos(4*pi*fc*t)*pi^4*fc^4*R^4*C^4+128*Ac*exp(t/R/C).*cos(4*pi*fc*t)*pi^6*R^6*C^6*fm^6+8*Ac*exp(t/R/C*R^2*C^2*fm*fc+16*pi^2*fc^2*R^2*C^2)/(1+4*pi^2*R^2*C^2*fm^2+16*pi^2*R^2*C^2*fm*fc+16*pi^2*fc^2*R^2*C^2)/(1+4*pi^2*R^2*C^2*fm^2)

subplot(427) plot(t,FTP)

jjj

title('恢复调制信号波形') y4=fft(FTP,N); mag4=abs(y4);

f2=(0:length(y4)-1)*Fs/length(y4); subplot(428)

plot(f2(1:N/2/10),mag4(1:N/2/10)) title('恢复调制信号波形频谱')

参考文献

[1] 张圣勤.MATLAB7.0实用教材.北京:机械工业出版社,2006 [2] 桑林,郝建军,刘丹谱.数字通信.北京邮电大学出版社,2002 [3] 樊昌信,曹丽娜.通信原理.北京国防工业出版社,2008

[4] 邓华. Matlab通信仿真及应用实例详解. 北京:人民邮电出版社,2003

本文来源:https://www.bwwdw.com/article/bm51.html

Top