matlab综合实验报告

时间:2024.3.31

重庆交通大学信息科学与工程学院

综合性设计性实验报告

专 业  班 级:  2010级通信工程1班      

学       号 :      10950118           

         

姓        名:      柴  彦  冲         

实验所属课程:         MATLAB          

实验室(中心):信息科学与工程学院软件中心

指 导 教 师 :          谭   晋          

实验完成时间:   2012   11  7 

 

、设计题目

    峰均功率比设计

二、实验内容及要求

    生成四个长度为64的序列,分别为s1,s2,s3,s4,对每个序列乘上[1,-1,j,-j]中的任意一个因子后求和.求所有可能的和序列中峰均功率比最低的序列及相应的因子.

三、实验过程(详细设计)

实验程序如下

s1=rand(1,64);

s2=rand(1,64);

s3=rand(1,64);

s4=rand(1,64);

A=[1 -1 j -j];

Z=perms(A);

for a=1:24                         

   s11=s1*Z(a,1);

   s21=s2*Z(a,2);

   s31=s3*Z(a,3);

   s41=s4*Z(a,4);

   S=s11+s21+s31+s41;

   for b=1:64

   sum(a,b)=S(b);

   end

 S=0;

end

for a=1:24

   for b=1:64

   sum1(a,b)=abs(sum(a,b))^2;  

   end

end

for a=1:24

   sum2(a)=max(sum1(a,:))/mean(sum1(a,:));

end

   [mx,I]=min(sum2);

   sum(I,:)

   Z(I,:)

四、测试结果及设计分析

1、测试结果:

ans =

  Columns 1 through 5

  -0.2166 - 0.4896i   0.4626 - 0.5439i  -0.8300 + 0.1403i  -0.3752 - 0.6629i  -0.1520 + 0.6798i

  Columns 6 through 10

  -0.8347 + 0.0124i  -0.0985 + 0.8787i   0.0378 + 0.4764i  -0.0768 + 0.3023i  -0.2015 + 0.5511i

  Columns 11 through 15

  -0.6022 - 0.0780i  -0.6365 - 0.3490i  -0.7473 - 0.1631i   0.3167 - 0.0080i  -0.2522 - 0.1146i

  Columns 16 through 20

   0.4486 - 0.8725i   0.5835 - 0.0139i   0.3628 + 0.2208i  -0.1429 - 0.6396i  -0.0500 + 0.4281i

  Columns 21 through 25

  -0.0658 - 0.1896i  -0.0046 - 0.3547i   0.7054 - 0.6522i   0.8190 + 0.4203i  -0.5804 + 0.2819i

  Columns 26 through 30

  -0.3521 - 0.2030i  -0.3646 + 0.1709i  -0.0564 - 0.4160i  -0.1658 + 0.3978i  -0.6094 + 0.5863i

  Columns 31 through 35

   0.0689 - 0.0242i  -0.9068 - 0.0780i   0.1052 + 0.5528i  -0.7234 - 0.4550i  -0.4461 - 0.1087i

  Columns 36 through 40

  -0.3690 - 0.2298i   0.0460 + 0.2071i  -0.4274 - 0.2878i   0.1299 - 0.4939i   0.5008 - 0.3410i

  Columns 41 through 45

   0.2397 - 0.2417i  -0.8374 - 0.6908i   0.2858 + 0.4549i   0.0892 + 0.1771i   0.2458 - 0.2375i

  Columns 46 through 50

   0.2730 - 0.1169i   0.5388 + 0.1858i  -0.1530 - 0.0954i   0.0941 + 0.1737i  -0.2274 - 0.0978i

  Columns 51 through 55

  -0.5270 - 0.5904i  -0.6989 - 0.3291i   0.0484 - 0.4709i  -0.6810 - 0.3504i  -0.4735 - 0.3031i

  Columns 56 through 60

  -0.2485 + 0.0063i  -0.4612 + 0.2537i   0.0681 - 0.1261i   0.0082 - 0.7095i   0.7213 - 0.1721i

  Columns 61 through 64

  -0.3037 + 0.5776i   0.3698 - 0.1375i  -0.4970 - 0.3295i   0.2366 - 0.0077i

ans =

        0 - 1.0000i  -1.0000             1.0000                0 + 1.0000i

2、设计分析

    通过对本次实验结果进行分析,该程序较好的完成了实验的各项要求,达到了预期效果。

五、实验心得体会(含思考题)

    起初刚看到题目的时候,对题目中的峰均功率比存在诸多的不解,后经老师和同学多次解释才明白题目的含义和要求,确定自己的思路。思路确定之后便是一步步去实现。在实现过程中遇到的第一个问题就是如何对序列进行全排列。起初写了一个全排列函数,但运行结果不太理想,总是报错。后经查阅相关资料,发现perms函数可以实现该功能,但最初使用该函数的时候发现若直接输入四个元素,该函数会把空格和负号也当做一个元素进行排列,经探索才发现可以先将四个元素组成先存入一个序列再对序列进行全排列。第二个遇到的问题就是如何通过最小峰均功率比找出相应因子,经认真思考,决定将全排列之后的各个因子存入一个矩阵,求和之后的结果也存入一个矩阵,这样存入因子的矩阵中每行的因子就对应和矩阵中该因子所生成的和序列。找出最小的峰均功率比之后只要通过其所在行数就可以找到对应的因子。这才解决了问题,完成了实验。

六、思路及体会

1、设计实验流程图如下:

2、体会

     通过本次设计实验我感到只有在正确理解题意后才能明确实验目的,设计相应的算法来实现程序该有的功能,通过坚持不断克服困难,才能最终在学业上更上一层楼。

一、设计题目

BPSK调制设计

二、实验内容及要求

用一个双极性基带数据信号对载波进行角度调制产生BPSK信号s(t)=10cos[Wct+Dpm(t)]。式中m(t)=+1为n位01随机序列(n为学号后3位)Tb=0.0025秒,Wc=1000π

     要求:画出调制指数为下述值时对应的BPSK信号波形及其FFT频谱

h=0.2, 0.5, 1.0  

三、实验过程(详细设计)

实验程序如下:

clear all;

close all;

 clc;

Wc=1000*pi;

Tb=0.0025;

N=16;

carrierFrequency=Wc/(2*pi);

M=fix(Tb*carrierFrequency)+1

h=[0.2,0.5,1.0];

Dp=h*pi/2;

bitstream=fix(rand(1,118)>0.5);

figure 

t=1/(N*10):1/(N*10):118;

x=ceil(t);

c=bitstream(ceil(t));

plot(t,c)

title('signal');

xlabel('t');

ylabel('原始信号');

L=length(bitstream);

for j=1:3

    dataStream=[];

    carrier_0=[];

    carrier_1=[];

    t=(2*pi/N:2*pi/N:2*pi)/Wc;

    for i=1:M

        carrier_0=[carrier_0,10*cos(Wc*t-Dp(j))];

        carrier_1=[carrier_1,10*cos(Wc*t+Dp(j))];

    end

    for i=1:length(bitstream)

        if(bitstream(i)==0)

            dataStream=[dataStream,carrier_0];

        else

            dataStream=[dataStream,carrier_1];

        end

    end

    figure 

    subplot(3,1,1);

    t=1/(N*10):1/(N*10):10;

    x=ceil(t);

    c=bitstream(ceil(t));

    plot(t,c)

    title('signal');

    xlabel('t');

    ylabel('数据流');

    subplot(3,1,2); 

    plot(dataStream(1:320));

    axis([0 320 -10 10]);

    str=['h=',num2str(h(j))];

    title(str);

    xlabel('t');

    ylabel('BPSK信号');

    modu=fftshift(fft(dataStream));

    t=0.025;

    df=1/t;

    sff=-fix(length(modu))/2*df:df:(fix(length(modu))-1)/2*df;

    subplot(3,1,3)

    plot(sff,abs(modu));

    title('频谱图如下')

end

四、测试结果及设计分析

1、生成的n位01信号

原始信号.jpg

2、h=0.2时对信号前10个比特进行BPSK调制

h0.2.jpg

3、h=0.5时对信号前10个比特进行BPSK调制

h0.5.jpg

3、h=1.0时对信号前10个比特进行BPSK调制

h1.jpg

2、设计分析

     为较好的观察和判断实验结果是否正确,本次只对信号的前10个比特进行了BPSK调制。使产生的结果图形更加直观。通过结果图分析,本次实验程序实现了对信号的BPSK调制的功能。

五、实验心得体会(含思考题)

本次实验题目中出现了一些陌生词汇,如:双极性。所以我是在经过上网查询和反复斟酌之后才明白实验的相关要求。刚开始的时候以老师给的ASK调制程序为参考,再结合BPSK调制与ASK调制的不同点进行相关修改,因为对调制与解调的方法理解的不是很透彻,所以结果总是出错,后来经过认真思考和研究,才不断的加以改进,改正自身错误,完成了实验相关操作。其实各种调制的程序算法有很多相同的地方,我们只要认真理解,并结合各种调制方法的特点加以改进,就能达到我们的目的。

思考题:

解调方法只能使用相干解调。框图如下:

              a              c             d              e

                                                                 输出

                      

   b                    定时脉冲

最后可能会出现180度的相位模糊。因为BPSK是绝对相移键控,接收端的载波信号可能与载波不同步,经过低通滤波器后在进行抽样判决后的结果也许就会与原来的序列刚好相反,是原来的反码,这就是所谓的相位模糊。

六、思路及体会

思路:

1、    随机生成118位的01序列作为原始信号。

2、    画出原始信号图形。

3、    根据调制指数求出Dp。

4、    把已知的载波频率Wc=1000π, Dp的值,以及信息位m(t)带入公式里面去。

5、    对原始信号的前10个比特进行BPSK调制。

6、    画出波形图,以及调用系统函数fft来画出波形FFT的频谱。

体会:

     通过这次实验,我掌握了BPSK的原理,这次实验相对来说是一个比较综合的实验,需要我们具有一系列的编程基础,还需要对信号的调制方式有一定的了解,对于h这个指灵敏系数,需要我们静下心来慢慢分析,才会发现它在BPSK调制中所起到的作用。在实践中,我们才会对matlab,对专业知识有更深入的了解,才能提高自己的专业技能水平。


第二篇:Matlab综合实验报告


Matlab综合实验报告

图形可以帮助我们直观感受科学计算结果的全局意义和很多内在本质,可以帮助我们更深刻的了解我们所学的知识,例如我们可以用图形来了解信号的性质和特点,可以用波形来表示信号,光波,声波。Matlab具有非常强大的图形功能,既可以绘制二维图形,又可以绘制三维图形,还可以标注,视点,颜色,光照等操作对图形进行修饰。所以我以“图形绘制”这一专题进行研究实验。

一,   实验目的。

1,          掌握绘制二维和三维图形的方法。

2,          掌握图形控制函数的使用方法。

3,          了解图像处理的基本方法和动画制作的基本原理。

4,          运用matlab进行信号方面的图形处理。

二,   实验环境。

   Windows xp   matlab7.0

三,   实验内容。

1.运用plot函数绘制二维图像:绘制直角坐标系下的二维曲线可以利用plot函数,基本的调用格式是 plot(x,y)  其中,x和y为大小相同的向量,分别用于存储x坐标和y坐标数据。

例如 y=A*exp(a*x)  

程序如下:A=1;

a= -0.4;

                 x=0:0.001:10;

                 y=A*exp(a*x);

                 plot(x,y)

结果如右图:

2在同一坐标内,分别用不同线型和颜色绘制曲线y1=0.2e-0.5xcos(4πx) y2=2e-0.5xcos(πx),标记两曲线交叉点。

程序如下:

x=linspace(0,2*pi,1000);

y1=0.2*exp(-0.5*x).*cos(4*pi*x);

y2=2*exp(-0.5*x).*cos(pi*x);

k=find(abs(y1-y2)<1e-2);       

 x1=x(k);                  

y3=0.2*exp(-0.5*x1).*cos(4*pi*x1);  

plot(x,y1,x,y2,‘r:',x1,y3,'bp');

运行结果:

注意:                          

 线型选项

                 颜色选项

                          标记符号选项

3图形标注和坐标控制:

标注:title(图形名称);xlabel(x轴说明);ylabel(y轴说明);

text(x,y,图形说明);legend(图形1,图形2,······)。

坐标控制:axis autu(使用默认设置);axis equal (纵,横坐标轴采用等长刻度)axis square(产生正方形坐标系);axis on/off(显示/取消坐标轴)。

例子:三阶butterworth模拟低通滤波器的频率响应为

H(jw)=1/{[(jw)^3]+2*[(jw)^2]+2*(jw)+1}

试画出系统的幅度响应|H(jw)|和相位响应f(w).

程序如下:                运行结果:

w=linspace(0,2*pi,200);

b=[1];

a=[1 2 2 1];

H=freqs(b,a,w);

subplot(2,1,1);   

plot(w,abs(H));

set(gca,'xtick',[0 1 2 3 4 5]);

set(gca,'ytick',[0 0.4 0.707 1]);

grid;

xlabel('\omega'); 

ylabel('|H(j\omega)|')

subplot(2,1,2);  

plot(w,angle(h));

plot(w,angle(H)); 

set(gca,'xtick',[0 1 2 3 4 5]);

grid;

xlabel('\omega');

ylabel('\phi('\omega')

4.在图形窗口中,以子图形式同时绘制多根曲线。

程序如下:

subplot(2,2,1);

 t= -3*pi:pi/100:3*pi;

 xt=sinc(t/pi);

 plot(t,xt);

 subplot(2,2,2);

 t=0:0.001:4;

 T=1;

 xt=rectpuls( t- 2*T,T);

 plot(x,xt); axis([0,4,-0.5,1.5])

subplot(2,2,3);

 t= -4:0.001;4;

 xt=tripuls(t,4,0.5);

 plot(t,xt);

subplot(2,2,4);

 t=0:0.0001:5;

 A=1;

T=1;

  w0=2*pi/T;

  ft=A*square(w0*t,20);

  plot(t,xt);

  axis([0,5,-1,5,1.5])

5分别以条形图、阶梯图、杆图和填充图形式绘制曲线y=2sin(x)。

程序如下:

x=0:pi/10:2*pi;

y=2*sin(x);

subplot(2,2,1);

bar(x,y,‘g’);               

title('bar(x,y,''g'')');

axis([0,7,-2,2]);     

subplot(2,2,2);

stairs(x,y,‘b’);             

title('stairs(x,y,''b'')');

axis([0,7,-2,2]);

subplot(2,2,3);

stem(x,y,‘k’);               

title('stem(x,y,''k'')');

axis([0,7,-2,2]);

subplot(2,2,4);

fill(x,y,‘y’);                   

title('fill(x,y,''y'')');

axis([0,7,-2,2]);

6,绘制三维曲线,

   {x=sint+tcost y=cost-tsint z=t}(0<=t<=10π)

程序如下

t=0:pi/10:10*pi;

x=sin(t)+t.*cos(t);

y=cos(t)-t.*sin(t);

z=t;

plot3(x,y,z);

axis([-30 30 -30 30 0 35])

title=(‘Line in 3-D Space’);

xlabel(‘x’);

ylabel(‘y’);

zlabel(‘z’);

grid on;

7并生成其图形轨迹

程序如下:

t=0:pi/250:10*pi;

x=sin(t)+t.*cos(t);

y=cos(t)-t.*sin(t);

comet3(x,y,t);

8绘制了一个peaks函数曲面并且将它绕z轴旋转。

程序如下

[X,Y,Z]=peaks(30);

surf(X,Y,Z)

axis([-3,3,-3,3,-10,10])

axis off;

shading interp;

colormap(hot);

m=moviein(20);

 for i=1:20

view(-37.5+24*(i-1),30) m(:,i)=getframe;

 end

movie(m,2);                

9绘制不同视角图形

p=peaks;

 subplot(2,2,1);

mesh(peaks,p);

view(-37.5,30);

 title('azimuth=-37.5,elevation=30');

subplot(2,2,2);

mesh(peaks,p);

view(-17,60);

title('azimuth=-17,elevation=60');

subplot(2,2,3);

mesh(peaks,p);

view(-90,0);

title('azimuth=-90,elevation=0');

subplot(2,2,4);

mesh(peaks,p);

view(-7,-10);

title('azimuth=-7,elevation=10');

 

更多相关推荐:
matlab实验报告

MATLAB教程及实训班级学号姓名实验报告实验1熟悉matlab的开发环境及矩阵操作一实验的教学目标通过本次实验使学生熟悉MATLAB70的开发环境熟悉MATLAB工作界面的多个常用窗口包括命令窗口历史命令窗口...

matlab基本操作实验报告

实验一matlab基本操作一实验目的熟悉matlab的安装与启动熟悉matlab用户界面熟悉matlab功能建模元素熟悉matlab优化建模过程二实验设备与仪器1微机2matlab仿真软件三实验步骤1了解mat...

matlab实验报告

课程设计说明书(论文)题目带限数字基带传输系统的仿真课程名称Matlab通信仿真设计专业通信工程班级1203学生姓名徐xx学号2012xxxx20329指导教师文xx设计起止时间:20xx年12月18日至20x…

matlab音乐处理合成实验报告

MATLAB高级编程与工程应用语音合成综合实验姓名班级学号日期121简单的合成音乐1请根据东方红片断的简谱和十二平均律计算出该片断中各个乐音的频率在MATLAB中生成幅度为1抽样频率为8kHz的正弦信号表示这些...

东南大学几何与代数matlab实验报告

数学实验报告学号姓名吴雪松得分实验1求解线性方程组实验内容用MATLAB求解如下线性方程组Axb其中5100A00006510000006510000006510000006510000006510000006...

matlab实验报告

数学实验报告班级学号姓名实验序号1日期年月日实验名称特殊函数与图形问题背景描述绘图是数学中的一种重要手段借助图形可以使抽象的对象得到明白直观的体现如函数的性质等同时借助直观的图形使初学者更容易接受新知识激发学习...

Matlab实验报告一

数学与信息科学系实验报告实验名称程序设计所属课程数学软件与实验实验类型综合型实验专业信息与计算科学班级20xx级1班学号姓名指导教师1234567

matlab实验报告

重庆交通大学学生实验报告实验课程名称专业综合实验开课实验室交通运输工程实验教学中心学院交通运输年级二年级专业班交通运输1班学生姓名学号63120xx20开课时间20xx至20xx学年第2学期

matlab实验报告

南京工程学院课程设计说明书论文题目课程名称院系部中心专业班级学生姓名学号设计地点指导教师设计起止时间20xx年12月8日至20xx年12月12日一课程设计目的和要求1综合运用信号与线性系统通信原理以及matla...

matlab实验报告

MATLAB实践课程设计学生姓名学号专业班级通信工程指导教师郑晓明二一二年四月二十二日目录1设计目的32题目分析33总体设计34具体设计35小结和心得106参考书目111设计目的MATLAB语言是集数值计算图形...

matlab实验报告

实验报告专业信息与计算科学班级10级1班指导老师汪太月姓名江凯学号20xx41210109实验室K7405实验名称MATLAB系统认识时间20xx年2月24日

Matlab实验报告三(画二维图形与三维曲面)

数学与信息科学系实验报告实验名称所属课程数学软件与实验实验类型综合型实验专业信息与计算科学班级学号姓名指导教师1234567

matlab实验报告(13篇)