基于MATLAB的模拟信号频率调制(FM)与解调资料
基于matlab的-AM-FM调制与解调报告

基于matlab的-AM-FM调制与解调报告AM调制与解调100%% AMµ÷ÖÆfigure('Name','Ðźŵ÷ÖÆ¹ý³ÌÖв¨Ðμ°ÆäƵÆ×','NumberTitle','off')a0=1;f0=2000;fc=20000;fs=1000000;t=[1:0.000001:4];am1=0*cos(2*pi*f0*t); %µ÷ÖÆÐźÅam=a0+am1;t1=cos(2*pi*fc*t); %ÔØ²¨s_am=am.*t1;AM1=fft(am1); T1=fft(t1); S_AM=fft(s_am);f=(0:3000000)*fs/3000001-fs/2;subplot(3,2,1); plot(t(1:1000),am1(1:1000)); title('ÐÅÏ¢ÐźŲ¨ÐÎ');subplot(3,2,2); plot(f,fftshift(abs(AM1))); title('ÐÅÏ¢ÐÅºÅÆµÆ×');subplot(3,2,3); plot(t(1:1000),t1(1:1000)); title('ÔØ²¨ÐźÅ');subplot(3,2,4); plot(f,fftshift(abs(T1))); title('ÔØ²¨ÐÅºÅÆµÆ×');subplot(3,2,5); plot(t(1:1000),s_am(1:1000)); title('Òѵ÷ÐźÅ');subplot(3,2,6); plot(f,fftshift(abs(S_AM))); title('Òѵ÷ÐÅºÅÆµÆ×');%²úÉúÔëÉùfigure('Name','Ìí¼ÓÔëÉù¼°´øÍ¨Â˲¨¹ý³Ì²¨Ðμ°ÆäƵÆ×','NumberTitle','off ');snr=5;y=awgn(s_am,snr);fcuts=[16000 17500 22500 24000];mags=[0 1 0];devs=[0.05 0.01 0.05];[n,Wn,beta,ftype]=kaiserord(fcuts,mags,devs,fs);hh=fir1(n,Wn,ftype,kaiser(n+1,beta),'noscale');[H,f]=freqz(hh,1,1024,fs);st_p=fftfilt(hh,y);Q=fft(st_p);Y=fft(y);f=(0:3000000)*fs/3000001-fs/2;subplot(2,2,1);plot(t(1500001:1501000),y(1500001:1501000));title('Ìí¼ÓÔëÉùºóÐźŲ¨ÐÎ');subplot(2,2,2);plot(f,fftshift(abs(Y)));title('Ìí¼ÓÔëÉùºóÐÅºÅÆµÆ×');subplot(2,2,3);plot(t(1500001:1501000),st_p(1500001:1501000));title('´øÍ¨Â˲¨ºóÐźŲ¨ÐÎ');subplot(2,2,4); plot(f,fftshift(abs(Q)));title('´øÍ¨Â˲¨ºóÐÅºÅÆµÆ×');%½âµ÷figure('Name','Ïà¸É½âµ÷ËùµÃ²¨Ðμ°ÆäƵÆ×','NumberTitle','off');ss_am=st_p.*t1;SS_AM=fft(ss_am)f=(0:3000000)*fs/3000001-fs/2;subplot(2,1,1);plot(t(1500001:1503000),ss_am(1500001:1503000));title( 'Ïà³ËÐźÅ');subplot(2,1,2); plot(f,fftshift(abs(SS_AM)));title('Ïà³ËÐÅºÅÆµÆ×');fcuts1=[2500,30000];mags1=[1 0];devs1=[0.01 0.05];[n,Wn,beta,ftype]=kaiserord(fcuts1,mags1,devs1,fs);hh1=fir1(n,Wn,ftype,kaiser(n+1,beta),'noscale');[H,f]=freqz(hh1,1,1024,fs);m0=fftfilt(hh1,ss_am);M0=fft(m0);f=(0:3000000)*fs/3000001-fs/2;figuresubplot(2,1,1);plot(t(1500001:1501000),m0(1500001:1501000));title('½âµ÷ÐźÅ');subplot(2,1,2); plot(f,fftshift(abs(M0)));title('½âµ÷ÐÅºÅÆµÆ×');11.0005 1.001-101信息信号波形-505x 1050126信息信号频谱11.0005 1.001-101载波信号-505x 1050126载波信号频谱11.00051.001-202已调信号-55x 105012x 106已调信号频谱2.52.50052.501-4-2024添加噪声后信号波形-505x 105051015x 105添加噪声后信号频谱2.52.50052.501-2024带通滤波后信号波形-55x 10500.511.526带通滤波后信号频谱50%% AMµ÷ÖÆ2.5 2.5005 2.501 2.5015 2.502 2.5025 2.503 2.5035-1012相乘信号-5-4-3-2-1012345x 1050510155相乘信号频谱2.52.50012.50022.50032.50042.50052.50062.50072.50082.5009 2.501-0.500.51解调信号-5-4-3-2-1012345x 1050510155解调信号频谱figure('Name','Ðźŵ÷ÖÆ¹ý³ÌÖв¨Ðμ°ÆäƵÆ×','NumberTitle','off')a0=2;f0=2000;fc=20000;fs=1000000;t=[1:0.000001:4];am1=0*cos(2*pi*f0*t); %µ÷ÖÆÐźÅam=a0+am1;t1=cos(2*pi*fc*t); %ÔØ²¨s_am=am.*t1;AM1=fft(am1); T1=fft(t1); S_AM=fft(s_am);f=(0:3000000)*fs/3000001-fs/2;subplot(3,2,1); plot(t(1:1000),am1(1:1000)); title('ÐÅÏ¢ÐźŲ¨ÐÎ');subplot(3,2,2); plot(f,fftshift(abs(AM1))); title('ÐÅÏ¢ÐÅºÅÆµÆ×');subplot(3,2,3); plot(t(1:1000),t1(1:1000)); title('ÔØ²¨ÐźÅ');subplot(3,2,4); plot(f,fftshift(abs(T1))); title('ÔØ²¨ÐÅºÅÆµÆ×');subplot(3,2,5); plot(t(1:1000),s_am(1:1000)); title('Òѵ÷ÐźÅ');subplot(3,2,6); plot(f,fftshift(abs(S_AM))); title('Òѵ÷ÐÅºÅÆµÆ×');%²úÉúÔëÉùfigure('Name','Ìí¼ÓÔëÉù¼°´øÍ¨Â˲¨¹ý³Ì²¨Ðμ°ÆäƵÆ×','NumberTitle','off ');snr=5;y=awgn(s_am,snr);fcuts=[16000 17500 22500 24000];mags=[0 1 0];devs=[0.05 0.01 0.05];[n,Wn,beta,ftype]=kaiserord(fcuts,mags,devs,fs);hh=fir1(n,Wn,ftype,kaiser(n+1,beta),'noscale');[H,f]=freqz(hh,1,1024,fs);st_p=fftfilt(hh,y);Q=fft(st_p);Y=fft(y);f=(0:3000000)*fs/3000001-fs/2;subplot(2,2,1);plot(t(1500001:1501000),y(1500001:1501000));title('Ìí¼ÓÔëÉùºóÐźŲ¨ÐÎ');subplot(2,2,2);plot(f,fftshift(abs(Y)));title('Ìí¼ÓÔëÉùºóÐÅºÅÆµÆ×');subplot(2,2,3);plot(t(1500001:1501000),st_p(1500001:1501000));title('´øÍ¨Â˲¨ºóÐźŲ¨ÐÎ');subplot(2,2,4); plot(f,fftshift(abs(Q)));title('´øÍ¨Â˲¨ºóÐÅºÅÆµÆ×');%½âµ÷figure('Name','Ïà¸É½âµ÷ËùµÃ²¨Ðμ°ÆäƵÆ×','NumberTitle','off');ss_am=st_p.*t1;SS_AM=fft(ss_am)f=(0:3000000)*fs/3000001-fs/2;subplot(2,1,1);plot(t(1500001:1503000),ss_am(1500001:1503000));title( 'Ïà³ËÐźÅ');subplot(2,1,2); plot(f,fftshift(abs(SS_AM)));title('Ïà³ËÐÅºÅÆµÆ×'); fcuts1=[2500,30000];mags1=[1 0];devs1=[0.01 0.05];[n,Wn,beta,ftype]=kaiserord(fcuts1,mags1,devs1,fs);hh1=fir1(n,Wn,ftype,kaiser(n+1,beta),'noscale');[H,f]=freqz(hh1,1,1024,fs);m0=fftfilt(hh1,ss_am);M0=fft(m0);f=(0:3000000)*fs/3000001-fs/2;figuresubplot(2,1,1);plot(t(1500001:1501000),m0(1500001:1501000));title('½âµ÷ÐźÅ');subplot(2,1,2); plot(f,fftshift(abs(M0)));title('½âµ÷ÐÅºÅÆµÆ×');11.0005 1.001-101信息信号波形-505x 1050126信息信号频谱11.0005 1.001-101载波信号-505x 1050126载波信号频谱11.00051.001-505已调信号-55x 105024x 106已调信号频谱2.52.50052.501-505添加噪声后信号波形-505x 1050123x 106添加噪声后信号频谱2.52.50052.501-4-2024带通滤波后信号波形-55x 105012346带通滤波后信号频谱0%% AMµ÷ÖÆ2.5 2.5005 2.501 2.5015 2.502 2.5025 2.503 2.5035-10123相乘信号-5-4-3-2-1012345x 10501236相乘信号频谱2.52.50012.50022.50032.50042.50052.50062.50072.50082.5009 2.50100.511.5解调信号-5-4-3-2-1012345x 10501236解调信号频谱figure('Name','Ðźŵ÷ÖÆ¹ý³ÌÖв¨Ðμ°ÆäƵÆ×','NumberTitle','off')a0=10^100;f0=2000;fc=20000;fs=1000000;t=[1:0.000001:4];am1=0*cos(2*pi*f0*t); %µ÷ÖÆÐźÅam=a0+am1;t1=cos(2*pi*fc*t); %ÔØ²¨s_am=am.*t1;AM1=fft(am1); T1=fft(t1); S_AM=fft(s_am);f=(0:3000000)*fs/3000001-fs/2;subplot(3,2,1); plot(t(1:1000),am1(1:1000)); title('ÐÅÏ¢ÐźŲ¨ÐÎ');subplot(3,2,2); plot(f,fftshift(abs(AM1))); title('ÐÅÏ¢ÐÅºÅÆµÆ×');subplot(3,2,3); plot(t(1:1000),t1(1:1000)); title('ÔØ²¨ÐźÅ');subplot(3,2,4); plot(f,fftshift(abs(T1))); title('ÔØ²¨ÐÅºÅÆµÆ×');subplot(3,2,5); plot(t(1:1000),s_am(1:1000)); title('Òѵ÷ÐźÅ');subplot(3,2,6); plot(f,fftshift(abs(S_AM))); title('Òѵ÷ÐÅºÅÆµÆ×');%²úÉúÔëÉùfigure('Name','Ìí¼ÓÔëÉù¼°´øÍ¨Â˲¨¹ý³Ì²¨Ðμ°ÆäƵÆ×','NumberTitle','off ');snr=5;y=awgn(s_am,snr);fcuts=[16000 17500 22500 24000];mags=[0 1 0];devs=[0.05 0.01 0.05];[n,Wn,beta,ftype]=kaiserord(fcuts,mags,devs,fs);hh=fir1(n,Wn,ftype,kaiser(n+1,beta),'noscale');[H,f]=freqz(hh,1,1024,fs);st_p=fftfilt(hh,y);Q=fft(st_p);Y=fft(y);f=(0:3000000)*fs/3000001-fs/2;subplot(2,2,1);plot(t(1500001:1501000),y(1500001:1501000));title('Ìí¼ÓÔëÉùºóÐźŲ¨ÐÎ');subplot(2,2,2);plot(f,fftshift(abs(Y)));title('Ìí¼ÓÔëÉùºóÐÅºÅÆµÆ×');subplot(2,2,3);plot(t(1500001:1501000),st_p(1500001:1501000));title('´øÍ¨Â˲¨ºóÐźŲ¨ÐÎ');subplot(2,2,4); plot(f,fftshift(abs(Q)));title('´øÍ¨Â˲¨ºóÐÅºÅÆµÆ×');%½âµ÷figure('Name','Ïà¸É½âµ÷ËùµÃ²¨Ðμ°ÆäƵÆ×','NumberTitle','off');ss_am=st_p.*t1;SS_AM=fft(ss_am)f=(0:3000000)*fs/3000001-fs/2;subplot(2,1,1);plot(t(1500001:1503000),ss_am(1500001:1503000));title( 'Ïà³ËÐźÅ');subplot(2,1,2); plot(f,fftshift(abs(SS_AM)));title('Ïà³ËÐÅºÅÆµÆ×'); fcuts1=[2500,30000];mags1=[1 0];devs1=[0.01 0.05];[n,Wn,beta,ftype]=kaiserord(fcuts1,mags1,devs1,fs);hh1=fir1(n,Wn,ftype,kaiser(n+1,beta),'noscale');[H,f]=freqz(hh1,1,1024,fs);m0=fftfilt(hh1,ss_am);M0=fft(m0);f=(0:3000000)*fs/3000001-fs/2;figuresubplot(2,1,1);plot(t(1500001:1501000),m0(1500001:1501000));title('½âµ÷ÐźÅ');subplot(2,1,2); plot(f,fftshift(abs(M0)));title('½âµ÷ÐÅºÅÆµÆ×');11.0005 1.001-101信息信号波形-505x 1050126信息信号频谱1 1.0005 1.001-101载波信号-505x 1050126载波信号频谱11.00051.001-101x 10100已调信号-55x 105012x 10106已调信号频谱2.52.5005 2.501-1-0.500.51x 10100添加噪声后信号波形-505x 105051015x 10105添加噪声后信号频谱2.52.5005 2.501-2-1012100带通滤波后信号波形-55x 10501106带通滤波后信号频谱FM 调制与解调%%FMfigure('Name','FMµ÷ÖÆ²¨ÐÎÓëÆµÆ×')2.5 2.5005 2.501 2.5015 2.502 2.5025 2.503 2.5035-50510x 1099相乘信号-5-4-3-2-1012345x 105051015105相乘信号频谱2.52.50012.50022.50032.50042.50052.50062.50072.50082.5009 2.5013.93.913.923.93x 1099解调信号-1-0.500.51x 105123105解调信号频谱f0=2000; fc=20000; fs=1000000; Am=1; kf=0.5; Tc=8; Ta=0.001; dt=0.000001;t=[0:1/fs:3];f=(0:length(t)-1)*fs/(length(t))-fs/2;fm0=cos(2*pi*f0*t);mt=fm0;%»ý·ÖÆ÷Éè¼Æw1=0;w2=0;for m=1:length(t)w1=mt(m)+w2;w2=mt(m)+w1;fi(m)=w1/(2*fs);endfi=fi*2*pi/max(abs(fi));I=cos(kf*fi);Q=sin(kf*fi);y1=Am*cos(2*pi*fc*t).*I-Am*sin(2*pi*fc*t).*Q;subplot(2,1,1);plot(t,y1);title('²¨ÐÎ')axis([1e-3 4e-3 -2 2]);Y1=fft(y1);subplot(2,1,2);plot(f,fftshift(abs(Y1))/1e6); title('ƵÆ×') %%ÔØ²¨ÆµÆ×axis([-4e4 4e4 0 1]);figure('Name','FMµ÷ÖÆºó¼ÓÔëÉù²¨ÐÎÓë½âµ÷ºó²¨ÐÎÒÔ¼°Â˳ýÖ±Á÷·ÖÁ¿ºóµÄ²¨ÐÎ')y1o=awgn(y1,40);subplot(3,1,1);plot(t,y1o); title('¼ÓÔëÉùºó²¨ÐÎ') %%¼ÓÔëÉùºóµÄÐźÅaxis([1e-3 4e-3 -2 2]);%%´øÍ¨Â˲¨KSband=2*(3+1)*f0;fcutsb=[fc-KSband-2000 fc-KSband fc+KSbandfc+KSband+2000]; %%½ÓÊÕ»úǰ¶Ë´øÍ¨Â˲¨magsb=[0 1 0];devsb=[0.05 0.01 0.05];[nb,Wnb,betab,ftypeb]=kaiserord(fcutsb,magsb,devsb,fs);hhb=fir1(nb,Wnb,ftypeb,kaiser(nb+1,betab),'noscale'); %´øÍ¨Â˲¨Æ÷£»st_pb=fftfilt(hhb,y1o);subplot(3,1,2);st_pb=st_pb/1e6;plot(t,st_pb); title('´øÍ¨Â˲¨Æ÷ºóµÄ²¨ÐÎ')axis([1e-3 4e-3 -2e-6 2e-6]);%΢·ÖÆ÷Éè¼Æfor i=1:length(t)-1 %½ÓÊÕÐźÅͨ¹ý΢·ÖÆ÷´¦Àídiff_st_pb(i)=(st_pb(i+1)-st_pb(i))/dt;endsfm=abs(hilbert(diff_st_pb));subplot(3,1,2);plot(t,[sfm*20 0]);axis([1e-3 4e-3 0 4]);%%¸ôÖ±% KSbandh=2*(3+1)*f0;fcutsh=[0.01 3000];magsh=[0 1];devsh=[0.01 0.05];[nh,Wnh,betah,ftypeh]=kaiserord(fcutsh,magsh,devsh,fs);hhh=fir1(nh,Wnh,ftypeh,kaiser(nh+1,betah),'noscale');sfm_out=fftfilt(hhh,sfm*20);subplot(3,1,3);plot(t,[sfm_out 0]);title('¸ôÖ±ºóµÄ²¨ÐÎ')axis([1e-3 4e-3 -2 2]);11.522.533.54x 10-3-2-1012波形-4-3-2-101234x 10400.51频谱11.522.533.54x 10-3-202加噪声后波形11.522.53 3.54x 10-302411.522.533.54x 10-3-202隔直后的波形。
基于MATLAB的频率调制与解调.doc

郑州轻工业学院课程设计说明书题目:利用MATLAB实现信号的频率调制与解调姓名:宋蒙院(系):电气信息工程学院专业班级:电子信息工程专业学号:541101030233指导教师:赵红梅成绩:时间:2014年 6 月9 日至2014年 6 月13 日郑州轻工业学院 课 程 设 计 任 务 书题目 利用MATLAB 实现信号的频率调制与解调专业、班级 电子信息工程11级 2班 学号 33 姓名 宋蒙 主要内容、基本要求、主要参考资料等:主要内容:利用MATLAB 对信号 ()()⎪⎩⎪⎨⎧≤=其他 ,0t ,10002t t Sa t m进行频率调制,载波信号频率为1000Hz ,频偏常数s t K f 2.0,500==。
首先在MATLAB 中显示调制信号的波形和频谱,已调信号的波形和频谱,比较信号调制前后的变化。
然后对已调信号解调,并比较解调后的信号与原信号的区别。
基本要求:1、掌握利用MATLAB 实现信号频率调制与解调的方法。
2、学习MATLAB 中信号表示的基本方法及绘图函数的调用,实现对常用连续时间信号的可视化表示。
3、加深理解调制信号的变化;验证信号调制的基本概念、基本理论,掌握信号与系统的分析方法。
主要参考资料:1、王秉钧等. 通信原理[M].北京:清华大学出版社,2006.112、陈怀琛.数字信号处理教程----MATLAB 释义与实现[M].北京:电子工业出版社,2004.完 成 期 限: 2014.6.9—2014.6.13 指导教师签名: 课程负责人签名:2014年 6月 13日利用MATLAB实现信号的频率调制与解调电子信息工程 11级 2班指导老师:赵红梅摘要:FM属于角度调制,角度调制与线性调制不同,已调信号频谱不再是原调制信号频谱的线性搬移,而是频谱的非线性变换,会产生与频谱搬移不同的新的频率成分,故又称为非线性调制。
FM调制又称为频率调制,与幅度调制相比,角度调制的最突出的优势在于其较高的抗噪声性能,但获得这种优势的代价是角度调制占用比幅度调制信号更宽的带宽。
matlab FM调制与解调

matlab FM调制与解调matlabfm调制与解调电子与通信工程学院通信系统仿真实验报告2022~2022学年第一学期调频(fm)系统调制解调仿真专业:通信工程类:学号:姓名:讲师姓名:年月日调频(FM)系统的调制解调仿真一、实验原理;[调制]调制在通信系统中具有十分重要的作用。
一方面,通过调制可以把基带的频谱搬移到所希望的位置上去,从而将调制信号转换成适合于信道传输或者便于信道多路复用的已调信号。
另一方面,通过调制可以提高信号通过信道传输的抗干扰能力,同时,它还和传输效率有关。
不同的调制方式产生的已调信号的宽带不同,因此调制影响传输带宽的利用率。
在本仿真过程中我们选用调频调制的方法进行调制。
[解调]调制信号的解调分为相干解调和非相干解调两种。
相干解调级同步解调。
仅适用于窄带调频信号,且需同步信号,故范围受限。
而非相干解调不需要同步信号,且对于nbfm信号和wbfm信号均适用。
因此是fm系统的主要解调方式。
但在本仿真过程中是对窄带信号进行调制与解调,选择用同步的解调方法进行解调。
二、仿真模型图;【调制】系统模型与调幅调制基本相同,但调幅模型中的DSBAM调制器通带模块需要更换为相应的FM调制器通带模块。
计算消息信号功率的方法也不同,其他设置(包括模拟参数)保持不变。
FM调制信号功率和信息信号功率由显示器和显示器2显示。
根据fm调制的原理,使用sinewave产生调制信号,用频率250,频偏50hz,在fmmodulatord进行调制,设置载波参数,在smulink文件中调用相关模块,连线后对信号进行调制产生fm调制信号。
【解调】调频解调器通带用于解调调制信号。
根据解调原理,在smulink中调用相应的模块,连接各个模块,设置各个模块的参数,并显示仿真波形。
三、结果分析;【fm调制】实验效果截图原始信号波形已调信号。
基于MATLAB的模拟信号频率调制与解调分析

基于MATLAB的模拟信号频率调制与解调分析信号频率调制(FM)是一种将信息信号调制到载频波形上以便在传输过程中保持信号质量的技术。
本文将基于MATLAB对信号频率调制与解调进行分析与模拟。
首先,我们需要生成一个调制信号。
以正弦信号为例,通过改变该信号的频率来模拟调制信号。
我们可以使用MATLAB的信号处理工具箱中的`fmmod(`函数来实现这一点。
以下是一个示例代码:```matlabt = 0:1/fs:1; % 时间向量fc = 2000; % 载频频率fm = 100; % 调制信号频率m = sin(2*pi*fm*t); % 调制信号modulatedSignal = fmmod(m, fc, fs); % 使用fmmod进行调频调制subplot(2,1,1);plot(t, m);title('调制信号');xlabel('时间');ylabel('振幅');subplot(2,1,2);title('调制后信号');xlabel('时间');ylabel('振幅');```上述代码中,我们定义了采样频率、时间向量、载频频率和调制信号频率,并生成了调制信号。
然后,我们使用`fmmod(`函数将调制信号调制到载频波形上。
最后,我们用两个子图分别显示调制信号和调制后信号。
接下来,我们将对调制后的信号进行解调以还原原始信号。
我们可以使用MATLAB的信号处理工具箱中的`fmdemod(`函数。
以下是一个示例代码:```matlabdemodulatedSignal = fmdemod(modulatedSignal, fc, fs); % 使用fmdemod进行解调subplot(2,1,1);plot(t, modulatedSignal);title('调制后信号');xlabel('时间');ylabel('振幅');subplot(2,1,2);title('解调后信号');xlabel('时间');ylabel('振幅');```上述代码中,我们使用`fmdemod(`函数对调制后的信号进行解调。
MATLAB中的信号调制与解调技巧

MATLAB中的信号调制与解调技巧随着科技的不断发展,无线通信越来越成为人们生活中不可或缺的一部分。
在无线通信系统中,信号调制与解调技巧起到至关重要的作用。
而MATLAB作为一种强大的工具,能够帮助工程师们在信号调制与解调方面进行深入研究和实践。
一、信号调制的基本原理与方法信号调制是将原始信号(baseband signal)通过改变某些参数来转换为调制信号(modulated signal)。
常见的信号调制方法包括幅度调制(AM)、频率调制(FM)和相位调制(PM)。
1.1 幅度调制幅度调制是一种通过改变信号的振幅来调制信号的方法。
MATLAB提供了丰富的函数和工具箱,可以方便地进行幅度调制的模拟和分析。
例如,我们可以使用MATLAB中的ammod函数来模拟幅度调制过程。
首先,我们需要准备一个原始信号,可以是一个正弦波或任何其他波形。
然后,通过设置调制指数(modulation index)来改变振幅。
最后,使用ammod函数对原始信号进行调制,生成调制后的信号。
1.2 频率调制频率调制是一种通过改变信号的频率来实现调制的方法。
以调幅电台为例,电台信号的频率会随着音频信号的变化而改变。
在MATLAB中,我们可以利用fmmod函数来模拟频率调制过程。
类似于幅度调制,我们需要先准备一个原始信号。
然后,通过设置调制指数和载波频率来改变频率。
最后,使用fmmod函数对原始信号进行调制,生成调制后的信号。
1.3 相位调制相位调制是一种通过改变信号的相位来实现调制的方法。
在数字通信系统中,相位调制常用于传输和提取数字信息。
MATLAB中的pmmod函数可以方便地实现相位调制。
与前两种调制方法类似,我们需要先准备一个原始信号。
然后,设置调制指数和载波频率来改变相位。
最后,使用pmmod函数对原始信号进行调制,生成调制后的信号。
二、信号解调的基本原理与方法信号解调是将调制信号恢复为原始信号的过程。
解调方法通常与调制方法相对应,常见的解调方法包括幅度解调(AM)、频率解调(FM)和相位解调(PM)。
基于Matlab的模拟调制与解调实验报告

基于Matlab的模拟调制与解调(开放实验)一、实验目的(一)了解AM、DSB和SSB 三种模拟调制与解调的基本原理(二)掌握使用Matlab进行AM调制解调的方法1、学会运用MATLAB对基带信号进行AM调制2、学会运用MATLAB对AM调制信号进行相干解调3、学会运用MATLAB对AM调制信号进行非相干解调(包络检波)(三)掌握使用Matlab进行DSB调制解调的方法1、学会运用MATLAB对基带信号进行DSB调制2、学会运用MATLAB对DSB调制信号进行相干解调(四)掌握使用Matlab进行SSB调制解调的方法1、学会运用MATLAB对基带信号进行上边带和下边带调制2、学会运用MATLAB对SSB调制信号进行相干解调二、实验环境MatlabR2020a三、实验原理(一)滤波法幅度调制(线性调制)(二)常规调幅(AM)1、AM表达式2、AM波形和频谱3、调幅系数m(三)抑制载波双边带调制(DSB-SC)1、DSB表达式2、DSB波形和频谱(四)单边带调制(SSB)(五)相关解调与包络检波四、实验过程(一)熟悉相关内容原理 (二)完成作业已知基带信号()()()sin 10sin 30m t t t ππ=+,载波为()()cos 2000c t t π= 1、对该基带信号进行AM 调制解调(1)写出AM 信号表达式,编写Matlab 代码实现对基带进行进行AM 调制,并分别作出3种调幅系数(1,1,1m m m >=<)下的AM 信号的时域波形和幅度频谱图。
代码 基带信号fs = 10000; % 采样频率 Ts = 1/fs; % 采样时间间隔t = 0:Ts:1-Ts; % 时间向量m = sin(10*pi*t) + sin(30*pi*t); % 基带信号载波信号fc = 1000; % 载波频率c = cos(2*pi*fc*t); % 载波信号AM调制Ka = [1, 0.5, 2]; % 调制系数m_AM = zeros(length(Ka), length(t)); % 存储AM调制信号相干解调信号r = zeros(length(Ka), length(t));绘制AM调制信号的时域波形和幅度频谱图figure;for i = 1:length(Ka)m_AM(i, :) = (1 + Ka(i)*m).*c; % AM调制信号subplot(3, 2, i);plot(t, m_AM(i, :));title(['AM调制信号(Ka = ' num2str(Ka(i)) ')']);xlabel('时间');ylabel('幅度');ylim([-2, 2]);subplot(3, 2, i+3);f = (-fs/2):fs/length(m_AM(i, :)):(fs/2)-fs/length(m_AM(i, :));M_AM = fftshift(abs(fft(m_AM(i, :))));plot(f, M_AM);title(['AM调制信号的幅度频谱图(Ka = ' num2str(Ka(i)) ')']);xlabel('频率');ylabel('幅度');r(i, :) = m_AM(i, :) .* c; % 相干解调信号end绘制相干解调信号的时域波形和幅度频谱图figure;for i = 1:length(Ka)subplot(length(Ka), 1, i);plot(t, r(i, :));title(['相干解调信号(Ka = ' num2str(Ka(i)) ')']);xlabel('时间');ylabel('幅度');end图像(2)编写Matlab代码实现对AM调制信号的相干解调,并作出图形。
基于MATLAB的信号的调制与解调

第一章 调制解调的基本原理第一节 调制的基本原理“调制”就是使信号f(t)控制载波的某一个或某些参数(如振幅、频率、相位等),是这些参数按照信号f(t)的规律变化的过程。
载波可以是正弦波或脉冲序列。
以正弦型信号作载波的调制叫做连续波调制。
调制后的载波就载有调制信号所包含的信息,称为已调波。
对于连续波调制,已调信号可以表示为())(cos )()t (t ot t A ϑωϕ+=它有振幅频率和相位三个参数构成。
改变三个参数中的任何一个都可以携带同样的信息。
因此连续波的调制可分为调幅、调相、和调频。
调制在通信过程中起着极其重要的作用:无线电通信是通过空间辐射方式传输信号的,调制过程可以将信号的频谱搬移到容易以电磁波形势辐射的较高范围;此外,调制过程可以将不同的信号通过频谱搬移托付至不同频率的载波上,实现多路复用,不至于互相干扰。
按照被调制信号参数的不同,调制的方式也不同。
如果被控制的参数是高频振荡的幅度,则称这种调制方式为幅度调制,简称调幅;如果被控制的参数是高频振荡的频率或相位,则称这种调制方式为频率调制或相位调制,简称调频或调相(调频与调相又统称调角)。
振幅调制是一种实用很广的连续波调制方式。
幅度调制的特点是载波的频率始终保持不变,它的振幅却是变化的。
其幅度变化曲线与要传递的低频信号是相似的。
它的振幅变化曲线称之为包络线,代表了要传递的信息。
第二节解调的基本原理解调是调制的逆过程,它的作用是从已调波信号中取出原来的调制信号。
调制过程是一个频谱搬移的过程,它将低频信号的频谱搬移到载频位置。
如果要接收端回复信号,就要从已调信号的频谱中,将位于载频的信号频谱再搬回来。
解调分为相干解调和非相干解调。
相干解调是指为了不失真地恢复信号,要求本地载波和接收信号的载波必须保持同频同相。
非相干解调主要指利用包络检波器电路来解调的。
包络检波电路实际上是一个输出端并接一个电容的整流电路。
二极管的单向导电性和电容器的充放电特性和低通滤波器滤去高频分量,得到与包络线形状相同的音频信号,见图1.2.3 。
使用Matlab进行信号调制和解调技术

使用Matlab进行信号调制和解调技术信号调制和解调是通信系统中非常重要的环节,它们能够将原始信号转换为适合传输的调制信号,并在接收端将其恢复为原始信号。
Matlab是一种功能强大的工具,提供了丰富的信号处理函数和算法,可以方便地进行信号调制和解调的研究与实现。
本文将介绍如何使用Matlab进行信号调制和解调技术,并通过实例展示其在通信系统中的应用和效果。
一、调制技术概述调制技术是将需要传输的信息信号转换为载波信号的过程。
常见的调制技术包括幅度调制(AM)、频率调制(FM)和相位调制(PM)。
调制的目的是将低频信号转换为高频信号,使得信号能够在较长距离传输,并能够通过信道传输到接收端。
在Matlab中,可以使用内置函数如ammod、fmmod和pmmod来实现不同的调制技术。
以幅度调制为例,可以使用ammod函数来实现。
下面给出一个简单的幅度调制实例。
```matlabfs = 1000; % 采样频率t = 0:1/fs:1-1/fs; % 时间序列fc = 100; % 载波频率Ac = 1; % 载波幅度ym = sin(2*pi*10*t); % 原始信号ym_mod = ammod(ym, fc, fs, Ac); % 幅度调制```上述代码中,首先定义了采样频率fs、时间序列t、载波频率fc和载波幅度Ac。
然后,生成了一个原始信号ym,其中使用了sin函数生成了一个频率为10Hz的正弦波。
最后使用ammod函数对原始信号进行幅度调制,得到了调制后的信号ym_mod。
二、解调技术概述解调技术是将调制后的信号恢复为原始信号的过程。
解调技术主要包括幅度解调(AM)、频率解调(FM)和相位解调(PM)。
解调的目的是从调制信号中提取出原始信号,以实现信息的传输。
在Matlab中,可以使用内置函数如amdemod、fmdemod和pmdemod来实现不同的解调技术。
以幅度解调为例,可以使用amdemod函数来实现。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计任务书学生姓名:杨刚专业班级:电信1302指导教师:工作单位:武汉理工大学题目:信号分析处理课程设计-基于MATLAB的模拟信号频率调制(FM)与解调分析初始条件:1.Matlab6.5以上版本软件;2.先修课程:通信原理等;要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、利用MATLAB中的simulink工具箱中的模块进行模拟频率(FM)调制与解调,观察波形变化2、画出程序设计框图,编写程序代码,上机运行调试程序,记录实验结果(含计算结果和图表等),并对实验结果进行分析和总结;3、课程设计说明书按学校统一规范来撰写,具体包括:⑴目录;⑵理论分析;⑶程序设计;⑷程序运行结果及图表分析和总结;⑸课程设计的心得体会(至少800字,必须手写。
);⑹参考文献(不少于5篇)。
时间安排:周一、周二查阅资料,了解设计内容;周三、周四程序设计,上机调试程序;周五、整理实验结果,撰写课程设计说明书。
指导教师签名: 2013 年 7月 2 日系主任(或责任教师)签名: 2013年 7月 2日目录1 Simulink简介 (1)1.1 Matlab简介························································错误!未定义书签。
1.2 Simulink介绍 ·····················································错误!未定义书签。
2 原理分析 ·······························································错误!未定义书签。
2.1通信系统 ···························································错误!未定义书签。
2.1.1通信系统的一般模型 ·····································错误!未定义书签。
2.1.2 模拟通信系统 (3)2.2 FM调制与解调原理·············································错误!未定义书签。
3 基于Matlab方案设计 (6)3.1 Matlab代码 (6)3.2 Matlab仿真 (8)4 基于Simulink方案设计 (12)4.1 使用Simulink建模和仿真的过程 (12)4.1.1 Simulink模块库简介 (12)4.1.2 调制解调模块库简介 (13)4.2 FM调制与解调电路及仿真 (14)4.3 仿真结果分析 (17)5 心得体会 ·······························································错误!未定义书签。
6 参考文献 (20)本科生课程设计评定表1 Simulink简介Simulink是Mathworks公司推出的基于Matlab平台的著名仿真环境Simulink作为一种专业和功能强大且操作简单的仿真工具,目前已被越来越多的工程技术人员所青睐,它搭建积木式的建模仿真方式既简单又直观,而且已经在各个领域得到了广泛的应用。
本课题主要是以simulink为基础平台,对FM信号的调制与解调进行分析。
1.1 Matlab简介Matlab是Matrix Laboratory的缩写,意为矩阵实验室。
它具有强大的矩阵处理功能和绘图功能,进还能进行文字处理,绘图,建模仿真等功能。
Matlab是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括Matlab和Simulink两大部分。
Matlab已经发展成为多学科、多种工作平台的功能强大的大型软件。
Matlab的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用Matlab来解算问题要比用C,FORTRAN 等语言完成相同的事情简捷得多,并且Matlab也吸收了像Maple等软件的优点,使Matlab 成为一个强大的数学软件。
在新的版本中也加入了对C,FORTRAN,C++,JA V A的支持。
可以直接调用,用户也可以将自己编写的实用程序导入到Matlab函数库中方便自己以后调用,此外许多的Matlab爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。
Matlab的帮助功能很强大,自带有详细的帮助手册,基于HTML的完整的帮助功能,也可以用help命令来得到帮助信息。
程序语法与C语言类似,设计自由度大,方便我们编程。
Matlab有高级的程序环境,但程序环境很简单易用。
Matlab源程序具有很大的开放性。
Matlab有强大的的图形绘制功能。
Matlab还拥有功能强大的各种工具箱。
这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高,精,尖的研究,能极大地促进我们的学习研究工作。
1.2 Simulink介绍Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。
在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。
Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。
同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。
Simulink框图提供了交互性很强的仿真环境,既可以通过下拉菜单执行仿真,也可以通过命令行进行仿真。
菜单方式对于交互工作非常方便,而命令行方式对于运行一大类仿真如蒙特卡罗仿真非常有用。
Simulink的开放式结构允许用户扩展仿真环境的功能:采用Matlab、FORTRAN和C代码生成自定义模块库,并拥有自己的图标和界面。
因此用户可以将使用FORTRAN或C编写的代码链接进来,或者购买使用第三方开发提供的模块库进行更高级的系统设计、仿真与分析。