通信原理实验报告_第1页
通信原理实验报告_第2页
通信原理实验报告_第3页
通信原理实验报告_第4页
通信原理实验报告_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、通信原理实验报告作者:日期:通信原理实验报告实验名称: 实验一数字基带传输系统的MATLAB方真实验二模拟信号幅度调制仿真实验班级:10通信工程三班学号: 2010550920姓 名:彭龙龙指导老师:王仕果9实验一 数字基带传输系统的MATLA防真一、实验目的1、熟悉和掌握常用的用于通信原理时域仿真分析的MATLAB函数;2、掌握连续时间和离散时间信号的 MATLAB产生;3、牢固掌握冲激函数和阶跃函数等函数的概念,掌握卷积表达式及其物理意义,掌握 卷积的计算方法、卷积的基本性质;4、掌握利用MATLAB计算卷积的编程方法, 并利用所编写的MATLAB程序验证卷积的 常用基本性质;5、掌握MA

2、TLAB描述通信系统中不同波形的常用方法及有关函数,并学会利用 MATLAB求解系统功率谱,绘制相应曲线。基本要求:掌握用 MATLAB描述连续时间信号和离散时间信号的方法,能够编写 MATLAB程序,实现各种常用信号的 MATLAB现,并且以图形的方式再现各种信号的波形。 二、实验内容1、编写MATLAB程序产生离散随机信号2、编写MATLAB程序生成连续时间信号3、编写MATLAB程序实现常见特殊信号三、实验原理从通信的角度来看,通信的过程就是消息的交换和传递的过程。而从数学的角度来看,信息从一地传送到另一地的整个过程或者各个环节不外乎是一些码或信号的交换过程。例如信源压缩编码、纠错编码、

3、AMI编码、扰码等属于码层次上的变换,而基带成形、滤波、调制等则是信号层坎上的处理。码的变换是易于用软件来仿真的。要仿真信号的变换,必须解决信号与信号系统在软件中表示的问题。3.1 信号及系统在计算机中的表示3.1.1 时域取样及频域取样一般来说,任意信号 S是定义在时间区间(-8, +8)上的连续函数,但所有计算机 的CPU都只能按指令周期离散运行,同时计算机也不能处理(-8, +OO)这样一个时间段。为此将把s(t)按区间 , 截短为ST(t),再对ST按时间间隔A t均匀取样,得到取样22点数为:T(3-1)Nt -I仿真时用这个样值集合来表示信号s(t)o显然A t反映了仿真系统对信号

4、波形的分辨率,At越小则仿真的精确度越高。据通信原理所学,信号被取样以后,对应的频谱时频率的周期函数,其重复周期是 工。如果信号的最高频率为 fH,那么必须有fH 才能保证不发t2 t生频域混叠失真。设1Bs (3-2)2 t则称Bs为仿真系统的系统带宽。如果在仿真程序中设定的采样间隔是At,那么不能用此仿真程序来研究带宽大于Bs的信号或系统。此外,任意信号 S(t)的频谱S通常来说也是定义在时间区间(-8, +8)上的连续函 数,所以仿真频域特性时,也必须把 S截短并取样。考虑到系统带宽为 Bs,便把频谱的截 短区间设计为-Bs, Bs然后再按间隔A f均匀取样,得到取样点数为:2BsNf

5、s(3-3)f将式(3-2)代入式(3-3)得(3-4)Nf N, ,1, _ .同样,信号在频域被离散后,对应到时域也是一个周期信号,其周期为 O如果时域f1 , ,、一 .-的信号。所以,可以把频f截短时间为T,那么必须TW1/df才能保证不发生频域混叠失真。也就是说,如果仿真程序中设定得频域采样间隔是Af,那么就不能仿真截短时间超过域的取样间隔设计为:(3-5)Nt将式(3-5)代入式(3-1)得(3-6)1这样一来,时域的总取样点数及频域的总取样点数都相等,为N。要提高仿真t f的精度,就必须降低时域取样间隔At及频域取样间隔A f,也就是要加大总取样点数No这说明仿真的精度与仿真系统

6、的运算量直接有关。为了处理上的方便,我们今后规定采样点数N为2的整哥。举例来说,例如设计要求2B一的系统带宽为1MHz ,频域最好分辨率为 10kHz,那么据此可求得 Nf s 200,则取 f2Bs1N= 256。对应的其 他参数 为Bs=1MHz, f 7.8kHz , T 128 s ,NfTt 0.5 s。 N3.1.2频域分析限于篇幅,在此不介绍 MATLAB中关于傅立叶变换的有关函数。为了方便仿真,我们利用MATLAB提供的函数编写了两个函数 12f和f2t。12f的功能是做傅立叶变换,f2t的功 能是做傅立叶反变换,它们的引用格式分别为X=t2f(x)及x=f2t(X),其中x是

7、时域信号x(t)j截短并采样所得白取样值矢量,X是对x(t)的傅立叶变换X(f)截短并采样所得的取样值矢量。这两个函数分别如附录所示。我们关心的另一个指标是信号的功率谱密度,任意信号s(t)的功率谱的定义是一 一 2PS(f) pm目;) ,其中St(f)是s截短后所得信号 所代)的傅立叶变化,|ST(f)2是Sr(t)的能量谱,j-丁上 是sjt)在截短时间T内的功率谱。对于 MATLAB仿真系统, 若x是时域取样值矢量,X是对应的傅立叶变换,那么x的功率谱便为矢量P (X.conj(X)/T。3.2与随机信号产生相关的指令3.2.1 高斯噪声的产生由于函数randn(1,N)产生N个互不相

8、关的、均值为零、方差为1的高斯随机数,所以可 用它来产生高斯白噪声。设仿真系统的取样点数是N,系统带宽为Bs,矢量x n0* Bs* randn(1,N)的总功率为n0* Bs,最高频率分量为 Bs,并且各样点的值互不相关,故它代表双边功率谱密度为(W/Hz)的白噪声。23.2.2 随机码序列的产生语句round(rand(1,M)产生M个取值1、0等概的随机码。函数 round表示四舍五入。函数rand产生均匀分布于区间0, 1的随机数。语句sign(rand(1,M)产生M个取值 1等概的随机码。函数sign(x)对矢量x的元素取正 负号,而高斯数randn取正负数的概率是相等的。3.2.

9、3 产生数字随机信号的一般方法一般来说,随机数字信号可以直接或间接表示成PAM信号(请参阅通信原理教材)oPAM信号是指所有形如 s(t)aig(t iTs)的信号。它可以用如下的等效模型来表示:impU)故对所有不同的数字信号,都可以用相同的方法来产生。1)产生随机序列矢量 aa=round(rand(1,M);为了方便起见,一般规定a的长度M是2的整备。2)产生冲击序列信号imp(t)imp=zeros(1,N);imp(1:L:M)=a/dt;矢量imp代表信号imp(t)。其中,N是imp的矢量长度,M是码元矢量a中的码元数,L是每码元内的采样点数。 现规定M、N都是2的整备,于是L自

10、然也是2的整备。3) 产生PAM数字彳t号ss imp(t) g(t)g(t)代表脉冲波形,例如,升余弦滚降要求的波形有:g(t)sin t/Tscos(a t/Ts)2t/Ts1 (2a t/Ts)设g(t)的傅立叶变换为G(f), s(t)的傅立叶变换为S(f),则有:S(f) 12 f (imp).*G%t2f为傅立叶变换函数s(t)f 2t(S(f)%f2t为傅立叶反变换函数设矢量s代表数字信号s(t),矢量g代表脉冲波形g(t),矢量G代表其频谱G( f)。那么s的产生方法是:s=conv(imp,g);其中,函数conv表示卷积。卷积后 s的长度是length(imp)+lengt

11、h(g)-1 。扣除延迟时间 及拖尾时间后,数字信号为:Ii=find(g=max(g);s=s(1:N+ii(1);也可用频域的方法产生数字信号s(t):s=f2t(t2f(imp).*G);注意,此时imp的点数应与g或G相同。若g的宽度小于imp,则应用零补齐。3.3信号的仿真3.3.1 连续时间信号的仿真sin()、例如,如前所述,MATLAB有很多内部数学函数可以用来产生这样的数字序列,例如 cos()、exp()等函数可以直接产生一个按照正弦、余弦或指数规律变化的数字序列。 运行如下程序%program1_1clear,close all, dt = 0.01;t = -2:dt:

12、2;x = sin(2*pi*t);plot(t,x)title(Sinusoidal signal x(t)% This program is used to generate a sinusoidal signal and draw its plot% Clear all variables% Close all figure windows% Specify the step of time variable% Specify the interval of time% Generate the signal% Open a figure window and draw the plot

13、 of x(t)xlabel(Time t (sec)在通信原理课程中,单位阶跃信号u(t)和单位冲激信号8是二个非常有用的信号。 它们的定义如下:3C画)南=1 * f=-x5=0,r0小。心。“二o. z=0); % y = 1 for t 0, else y = 0请将这二个MATLAB函数分别以delta和u为文件名保存在 work文件夹中,以后,就可 以像教材中的方法使用单位冲激信号8 (t)和单位阶跃信号u(t)。3.3.2离散时间信号的仿真程序Program1_2用来产生离散时间信号 xn=sin(0.2 兀可)% Program1_2% This program is used

14、 to generate a discrete-time sinusoidal signal and draw its plot clear, % Clear all variablesclose all, % Close all figure windowsn = -10:10; % Specify the interval of timex = sin(0.2*pi*n); % Generate the signalstem (n,x) % Open a figure window and draw the plot of xntitle (Sinusoidal signal xn) xl

15、abel (Time index n)请仔细阅读该程序,比较程序Program1_1和Program1_2中的不同之处,以便自己编程时 能够正确使用这种方法方针连续时间信号和离散时间信号。程序Program1_3用来仿真下面形式的离散时间信号:xn=., 0.1, 1.1, - 1.2, 0, 1.3,.T n=0% Program1_3% This program is used to generate a discrete-time sequence% and draw its plotclear, % Clear all variablesclose all, % Close all f

16、igure windowsn = -5:5; % Specify the interval of time, the number of points of n is 11.x = 0, 0, 0, 0, 0.1, 1.1, -1.2, 0, 1.3, 0, 0; % Generate the signal stem(n,x,.) % Open a figure window and draw the plot of xn grid on, title (A discrete-time sequence xn) xlabel (Time index n)由于在程序的stem(n,x,.)语句中

17、加有.选项,因此绘制的图形中每根棒条线的顶端是一 个实心点。如果需要在序列的前后补较多的零的话,可以利用函数zeros(),其语法为zeros(1, N):圆括号中的1和N表示该函数将产生一个一行N列的矩阵,矩阵中的所有元素均为零。利用这个矩阵与序列xn进行组合,从而得到一个长度与n相等的向量。例如,当xn= 0.1, 1.1, -1.2, 0,1.3 时,为了得到程序 Program1_3中的序列, T n=0可以用这个MATLAB语句x = zeros(1,4) x zeros(1,2)来实现。用这种方法编写的程序如下:% Program1_4% This program is used

18、to generate a discrete-time sinusoidal signal % and draw its plotclear, % Clear all variablesclose all, % Close all figure windowsn = -5:5; % Specify the interval of timex = zeros(1,4), 0.1, 1.1, -1.2, 0, 1.3, zeros(1,2); % Generate the sequence stem(n,x,filled,r) % Open a figure window and draw the

19、 plot of xn grid on,四、实验步骤(1)分析程序每条指令的作用,运行该程序,将结果保存,贴在下面的空白处。然后修改程序,将dt改为0.2,并执行修改后的程序,保存图形,看看所得图形的效果怎样。dt=0.01时的信号波形30dt=0.2时的信号波形请问:上述的两幅图形有什么区别,哪一副图形看起来更接近于实际信号波形?为什么会有这种区别?答:前者波形曲线光滑,后者曲折,第一幅图更接近于实际信号波形。(2)修改program1_1,存盘程序名为Q1_2,生成实指数信号x(t尸e-2t。要求在图形中 加上网格线,并使用函数axis()控制图形的时间范围在02秒之间。然后执行该程序,保

20、存所的图形。修改Program1_1后得到的程序Q1_2如下:%program1_1% This program is used to generate a sinusoidal signal and draw its plotclear,% Clear all variablesclose all,% Close all figure windowsdt = 0.01;% Specify the step of time variablet = -2:dt:2;% Specify the interval of timeX=exp(-2*t);% Generate the signalplo

21、t(t,x)% Open a figure window and draw the plot of x(t)axis0,2,0,2 Grid on, title(Sinusoidal signal x(t)彭龙龙 熊奇)xlabel(Time t (sec)图形结果如下:孟令伟MATLAB文件编辑器(3)将前文中所给的单位冲激信号和单位阶跃信号的函数文件在中编写好,并分别以文件名delta和u存入work文件夹中以便于使用。抄写函数文件delta如下:unction y = delta(t) dt = 0.01;y = (u-u(t-dt)/dt;抄写函数文件u如下:f% Unit step

22、functionFunction y = u(t )y = (t=0); % y = 1 for t 0, else y = 0(4)修改程序Program1_4,并以Q1_4为文件名存盘,利用axis()函数,将图形窗口的横 坐标范围改为-2司5,纵坐标范围改为-1.5 x 4.5。修改Program1_4后得到的程序Q1_例下:% Program1_4% This program is used to generate a discrete-time sinusoidal signal% and draw its plotclear, % Clear all variablesclose

23、all, % Close all figure windowsn = -2:5; % Specify the interval of timeaxis-2,5,-1.5,1.5x = zeros(1,4), 0.1, 1.1, -1.2, 0, 1.3, zeros(1,2); % Generate the sequence stem(n,x,filled,r) % Open a figure window and draw the plot of xn grid on, 信号的波形图(5)根据示例程序的编写方法,编写一个 MATLAB序,以Q1_故件名存盘,给给定信号 x(t) = e-0.

24、5t u(t)求信号y(t)=x(1.5t+3),并绘制出x(t)和y(t)的图形。编写的程序Q1_5如下:% Program1_5% This program is used to generate a discrete-time sequence % and draw its plot clear, % Clear all variables close all, % Close all figure windows t=-5:0:2:10%y=exp(-0.5*t)*u(t);y=exp(-0.5*(1.5*t+3) ) *u (1.5*t+3);Plot(t,y); grid on t

25、itle(Sinusoidal signal x(t) penglonglong xiongben)x(t)和y(t)的图形分别为:孟令伟5(6)仔细分析附录中的 PC函码和PCMB码的子函数,分别说明两程序的编程思路。答:求函数 m(t)傅立叶变换的函数 T2F有两个输入参数,两个输出参数。输入参数t表示输入数组的时间变量, st存放输入数组,它的长度由 length(t)决定;输出参数f表示输 出的傅立叶变换对的频率变量, sf用来存放输出数组。求函数m(t)傅立叶反变换的函数 F2T有两个输入参数,两个输出参数。输入参数f表示 输入数组的时间变量,sf存放输入数组,它的长度由 lengt

26、h(t)决定;输出参数t表示输出的 傅立叶变换对的频率变量, st用来存放反变换后的数组。五、实验报告要求1、按要求完整书写你所编写的全部 MATLAB程序2、详细记录实验过程中的有关信号波形图(存于自带的U盘中),图形要有明确的标题。全部的MATLAB图形应该用打印机打印,然后贴在本实验报告中的相应位置,实验报 告必须手写。3、实事求是地回答相关问题,严禁抄袭。本实验完成时间:年 月日附录在进行信号时域和频域特性分析时,经常要求函数的傅立叶变换和傅立叶反变换运算, 为了编程的方便,可将傅立叶变换和反变换分别自定义为两个子函数,在编程时直接调用可提高编程的灵活性和方便程度。下面将这两个常用的子

27、函数定义如下:1. T2F子函数求函数m(t)傅立叶变换的函数 T2F有两个输入参数,两个输出参数。输入参数t表示输 入数组的时间变量,st存放输入数组,它的长度由length(t)决定;输出参数f表示输出的傅立叶变换对的频率变量,sf用来存放输出数组。T2F函数的程序如下:function f,sf=T2F(t,st)% This is a function using the FFT function to calculate a signals Fourier% Transiation% Input is the time and signal vectors, the length o

28、f time must greater% than 2% Output is the frequency and the signal spectrum dt=t(2)-t(1);T=t(end);df=1/T;N=length(st);f=-N/2*df:df:N/2*df-df;sf=fft(st);sf=T/N*fftshift(sf);2. F2T子函数求函数m(t)傅立叶反变换的函数 F2T有两个输入参数,两个输出参数。输入参数f表示 输入数组的时间变量,sf存放输入数组,它的长度由 length(t)决定;输出参数t表示输出的 傅立叶变换对的频率变量,st用来存放反变换后的数组。F

29、2T函数程序如下:function t,st=F2T(f,sf)% This function calculate the time signal using ifft function for the input % signals spectrumdf=f(2)-f(1);Fmx=(f(end)-f(1)+df);dt=1/Fmx;N=length(sf);T=dt*N;%t=-T/2:dt:T/2-dt;t=0:dt:T-dt;sff=fftshift(sf);st=Fmx*ifft(sff);实验二模拟信号幅度调制仿真实验一、实验目的1 .加深对模拟线性调制的原理与实现方法的理解;2

30、.掌握AM DSB SSB功率谱密度函数的特点,并进行对比;3 .掌握MATLAB本指令的使用;4 .掌握MATLAB M文件的调试以及子函数调用的方法。二、实验内容1 .复习AM DSB和SSB调制的相关原理2 .编写MATLAB程序实现AM调制;3 .编写MATLAB程序实现DSB调制;4 .编写MATLAB程序实现SSB调制;三、实验原理调制是一个将信号变换成适于在信道传输的过程。由于信源的特性与信道的特性可能不匹配,直接传输可能严重影响传输质量。模拟调制针对的信源为模拟信号,常用的模拟调制有调幅、调相、调频。本次实验进行的是模拟信号的幅度调制。幅度调制是由调制信号去控制高频载波的幅度,

31、使之随调制信号做线性变化的过程。由于已调信号的幅度随基带信号的规律呈正比地变化,这一特点反映在频谱结构上,表现为已调信号的频谱完全是基带信号频谱在频域内的简单搬移。所以,幅度调制通常又称为线性调制。幅度调制包括 AM DSB和SSB调制。调幅(AM)是标准调幅,也就是常规双边带调制。假设调制信号m的平均值为0,将其外加一个直流偏量 Ao后与载波相乘,即可形成调幅信号。其时域表达式为:Sam (t)=A o+m(t)cos 而抑制载波的双边带调制(DSB)是一种高调制效率的调制方式,其时域表达式为:Sdsb (t)= m(t)cos coct单边带调制(SSB)信号是将双边带信号中的一个边带滤掉

32、而形成的。根据滤波方法的不 同,产生SSB信号的方法有滤波法和相移法两种。下面我们分别介绍这三种调制方法的仿真过程。3.1 AM调制假定基带信号为一个频率为1Hz、功率为1的余弦信源m(t),载波是频率为10Hz,幅值A=2的余弦信号,在用信源对载波进行常规调幅的过程中,我们应该做以下工作: 1.产生给定的基带信号如何产生题目要求的频率为1Hz、功率为1的余弦信号,实验一已经有了详细的介绍,并且做了相关的仿真实验。这个问题并不难解决。唯一要注意的是,题目给定的是基带信号的功率, 而没有直接给出余弦信号的幅值。 因 此在定义基带信号的幅值前,应先根据确知信号的幅值与功率之间关系的定义式,求出题目

33、要求的余弦信号的幅值 Am可知Am为 近。相关的指令为:%信源close all ;clear all ;dt=0.001;fm=1;fc=10;T=5;t=0:dt:T;mt=sqrt(2)*cos(2*pi*fm*t);2 .产生给定的载波信号如何产生题目要求的频率为10Hz,幅值A=2的余弦信号,基于与基带信号产生同样的思路,这个问题很容易解决。相关的定义请参照1自行定义。3 .依据调制原理进行AM制。根据通信原理相关章节的学习,我们知道AM调制后的已调信号可表示为:Sam (t)=A 0+m(t)cos 叔也就是定义一个直流分流Ao与步骤1中产生的基带信号相加后,与步骤2定义的余弦信号

34、相乘。相关的指令如下:%AM modulationA=2;s_am=(A+mt).*cos(2*pi*fc*t);B=2*fm; figure subplot(211); plot(t,s_am); hold on;plot(t,A+mt, r-);title(AM调制信号及其包络);xlabel( t);要注意的是,为了能够用包络检波器还原出基带信号,要求AM调制过程中,不能出现“过调幅”现象,也就是说加入的直流分量Ao的大小必须满足一定的条件。4 .求已调信号的功率谱密度根据确知信号功率谱求解的方法,我们知道确知信号m(t)的功率谱密度可由如下的公式求解:G S(f),而 S(f) s(t

35、)e j2 ftdt也就是说,先求出信号的傅立叶变换,再求出傅立叶变换函数的模的平方,即可得信号的功率谱密度。依据该公式,可求出步骤3得到的已调信号 Sam的功率谱密度。相关的程序如下:subplot(212)f,sf=T2F(t,s_am);f1,sf1=T2F(t,A+mt);psf1=(abs(sf1).A2)/T;psf=(abs(sf).A2)/T;plot(f,psf, r-);hold on;plot(f1,psf1);axis(-2*fc 2*fc 0 max(psf);title(AM 信号功率谱); xlabel(f);在上面的程序段中,psf是调制信号的功率谱密度,而 p

36、sfl表示加上了直流的基带信号 的功率谱密度。以上便是对信号进行AM调制并进行功率谱分析的全过程,若将该过程用程序2表示,以AM.m为文件名保存,则通过改变基带信号和载波的形式,得到不同基带信号对不同形式 的载波(正弦波和非正弦波)进行AM调制的信号,并能分析其频域特性。5 .2 DSB调制假定基带信号仍然是一个频率为1Hz、功率为1的余弦信源m(t),载波是频率为10Hz,幅值A=2的余弦信号,用该基带信号对载波进行DSB制的过程可概括为以下几步:1 .产生给定的基带信号题目要求的频率为1Hz、功率为1的余弦信号的产生方法参见3.1中。同样需要注意的是,题目给定的是基带信号的功率,而没有直接

37、给出余弦信号的幅值。 因此在定义基带信号的幅值前,应先根据确知信号的幅值与功率之间关系的定义式,求出题目要求的余弦信号的幅值Am可知Am为,2。相关的指令为:close all ;clear all ;dt=0.001;fm=1;fc=10;T=5;t=0:dt:T;mt=sqrt(2)*cos(2*pi*fm*t);2 .产生给定的载波信号题目要求的频率为10Hz,幅值A=2的余弦信号的产生方法参见1。3 .依据调制原理进行 DSB调制。根据通信原理相关章节的学习,我们知道DSB调制后的已调信号可表示为:Sdsb (t)= m(t)cos coct也就是将步骤1产生的基带信号与步骤 2定义的

38、余弦信号直接相乘。相关的指令如下:%DSB modulations_dsb=mt.*cos(2*pi*fc*t);B=2*fm;figure(1);subplot(211);plot(t,s_dsb); hold on;plot(t,mt, r-);title(DSB调制信号);xlabel( t);就可得到基带信号的DSB制波形。4 .求已调信号的功率谱密度根据确知信号功率谱求解的方法,我们知道确知信号m(t)的功率谱可由如下的公式求解:G(f) S(f)2,而 S(f) s(t)e j2 ftdt也就是说,先求出信号的傅立叶变换,再求出傅立叶变换函数的模的平方,即可得信号的功率谱密度。依据

39、该公式,可求出步骤3得到的已调信号 SDSB(t)的功率谱密度。相关的程序如下:subplot(313)f,sf=T2F(t,s_dsb);psf=(abs(sf).A2)/T;plot(f,sf);axis(-2*fc 2*fc 0 max(psf);title(DSB信号功率谱);xlabel( f );在上面的程序段中,psf是调制信号的功率谱密度,而 psfl表示基带信号的功率谱密 度。以上便是对信号进行 DSB制并进行功率谱分析的全过程,若将该过程用程序2表示,存档文件名为DSB.m的话,则通过改变基带信号和载波的形式,得到不同基带信号对不同形式的载波(正弦波和非正弦波)进行DSB制

40、的信号,并能分析其频域特性。5 .3 SSB调制假定基带信号仍然是一个频率为1Hz、功率为1的余弦信源m(t),载波是频率为10Hz,幅值A=2的余弦信号,用该基带信号对载波进行SSB调制的过程可概括为以下几步:1 .产生给定的基带信号题目要求的频率为1Hz、功率为1的余弦信号的产生方法参见3.1中。同样需要注意的是,题目给定的是基带信号的功率,而没有直接给出余弦信号的幅值。 因此在定义基带信号的幅值前,应先根据确知信号的幅值与功率之间关系的定义式,求出题目要求的余弦信号的幅值Am可知Am为.2o相关的指令为:%信源close all ;clear all ;dt=0.001;fm=1;fc=

41、10;T=5;t=0:dt:T;mt=sqrt(2)*cos(2*pi*fm*t);2 .产生给定的载波信号题目要求的频率为10Hz,幅值A=2的余弦信号的产生方法参见1。3 .用相移法产生SSB信号用相移法产生 SSB信号,可用以下的表达式表示:小1,1C,、,sssB(t)- m(t)cosct-n?(t)cosct22其中n?(t)表示m(t)的希尔伯特变换式。也就是说将基带信号m(t)本身乘以余弦信号本身,对基带信号进行希尔伯特变换后与正弦信号相乘,最后将两个乘积相加即可。在MATLA叁序设计时,先设计出希尔伯特变换函数,再按以上步骤实施,就得到了SSB调制的程序。参考程序如下:%SS

42、B modulationA=2;s_ssb=real(hilbert(mt).*exp(j*2*pi*fc*t);%s_ssb=mt.*cos(2*pi*fc*t)/2+sqrt(2)*sin(2*pi*fm*t).*sin(2*p i*fc*t)/2;B=fm;figure(1) subplot(211);plot(t,s_ssb); hold on;plot(t,mt, r-);title(SSB调制信号及其包络);xlabel( t);当然若是不熟悉希尔伯特函数hilbert的使用,可直接将基带信号相移/2 ,得到正弦信号,直接带入计算也是可以实现的。相关的程序如上被注释的程序所示:%s

43、_ssb=mt.*cos(2*pi*fc*t)/2+sqrt(2)*sin(2*pi*fm*t).*sin(2*pi*fc *t)/2;4 .用滤波法进行SSB调制。将生成的DSB信号送入理想低通滤波器或者理想带通滤波器,就可得到相应的下边带和上边带SSB信号。设计理想低通或者理想带通滤波器生成的MATLA程序,并利用3.2中得到的DSB制信号,将滤波器的传输函数h(t)与SAM(t)卷积,就得到了用滤波法生成的SSB信号。5 .求已调信号的功率谱密度根据确知信号功率谱求解的方法,我们知道确知信号m(t)的功率谱可由如下的公式求解:G(f)S(f)|2,而 S(f) s(t)e j2 ftdt

44、也就是说,先求出信号的傅立叶变换,再求出傅立叶变换函数的模的平方,即可得信号的功率谱密度。依据该公式,可求出彳#到的已调信号Sssb的功率谱密度。相关的程序如下:subplot(212)f,sf=T2F(t,s_ssb);psf=(abs(sf).A2)/T;plot(f,psf);axis(-2*fc 2*fc 0 max(psf);title(SSB信号功率谱);xlabel( f );以上便是对信号进行SSB调制并进行功率谱分析的全过程,若将该过程用程序3表示,存档名为SSB.m的话,则通过改变基带信号和载波的形式,得到不同基带信号对不同形式的载波(正弦波和非正弦波)进行SSB调制的信号

45、,并能分析其频域特性。四、实验步骤(1)按照3.1所提供的AM调制的思路,运行提供的范例程序,存档为 Q2_1,并将所 得 的 结 果 存 盘, 贴 在 下 面 空 格 处。孟令伟2倡回调制信号及其包络00,511.522.533.544.552-1A同信号功率谱(2)程序1中定义加入的直流分量为 制波形会有什么变化?Ao=1的调制波形AAo=2,请在A0的值分别改为1和10,看得到的调0=10时的调制波形孟令帏调制信号及其包络4 II4111114 IlliIIIIIL口 0,511.522.633,544,55t21AM信号功率谱孟令帏2以2AM调制信号及其笆络删删聊聊”! ”,酬删删2-

46、1A同信号功率谱W060-20-15-10-50510152020100-10-20 00,511.522.533.544.55请问,调制波形为什么会有这种变化,这种变化会造成什么影响?答:Ao=10时的AM调制信号的包络要比 A)=2时的要大。可知频谱完全是基带信号频谱在频域内的简单的线性搬移.只是多了载频分量.Am(t) 。AM信号波形的包络与输入基带信号m(t)成正比,而m尸m0+m(t).其中,m。是直流分量,m(t)表示消息变化的交流分量。(3)按照3.2所提供的DSB制的思路,运行提供的范例程序,存档为Q2_2,并将所得 的 结 果 存 盘, 贴 在 下 面 空 格 处。2口 5

47、B信号功率谙05口0.2 -20-15 -W -505101520f(4)按照3.3所提供的相移法进行 SSB调制的思路,运行提供的范例程序,存档为Q2_3 , 并将所得的结果存盘,贴在下面空格处孟令帏2-4日调制信号及其包络C I, If F1 bh加川阳删IMHIillIlmnHOfflr00,611.522.533.544.55目SB信号功率谱(6)按照实验原理中介绍的功率谱的计算公式,在同一图形的四个子图中,分别画出基带信号、人邮制信号、DSB调制信号和SSB调制信号的功率谱,要求写出响应的程序,画出图形,并在图中标出相应的标题和坐标轴。程序为:close all;clear all;dt=0.001;fm=1;fc=10;T=5;t=0:dt:T;mt=sqrt(2)*cos(2*pi*fm*t);subplot(4,2,1)plot(t,mt)%AM modulationA=2;s_am=(A+mt).*cos(2*pi*fc*t);B=2*fm;figure(1)subplot(423);plot(t,s_am);hold on;plot(t,A+mt,r-);title(AM 调制信号及其包络);xlabel(t);subplot(424)f,sf=T2F(t,s_am);f1,sf1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论