《MATLAB》课程设计报告
设计课题: MATLAB综合实验
学生姓名:
学生学号:
专业班级:
指导教师:
一、课程设计的目的及其意义
了解matlab的窗口工具栏的使用以及作用、让matlab成为我们的日常好帮手,并为将来使用matlab进行信号处理领域的各种分析和实际应用打下基础。
二、课程设计原理
matlab软件包有五大功能:数值计算功能、符号运算功能、数据化可视功能、数据图形文字统一处理功能和建模仿真可视化功能。matlab在信号与系统中的主要功能是数值计算与仿真分析,主要包括函数波形绘制、函数运算、冲击响应与阶跃响应仿真分析、信号的时域分析、信号的频谱分析、信号的S域分析和零极点图绘制等内容。
三、课程设计要求
使用帮助功能,绘制出sinc和三角波的波形。
四、课程设计过程
1、函数代码
Sinc波的函数代码及图像
t=-pi:0.001:pi; x=sinc(t);
plot(t,x);
xlabel('t'),ylabel('sinc(t);');
三角波的函数代码及图像
t=-2*pi:0.001:2*pi;
y=sawtooth(t);
plot(t,y);
xlabel('t'),ylabel(' y=sawtooth(t);');
五、课程设计体会
刚开始拿到这个课程设计、并不知道该干些什么东西,不过还是决定先打开matlab软件看看,一下想到弄两个波形出来,看看会是怎么样的效果。于是把两个程序输入,并得到了波形
其实对于matlab的学习已经有一段时间了,可是发现自己对这个软件的认识还只是皮毛上的东西。matlab是一个基于矩阵运算的软件,这是我们大家都知道的事情了,但是,在真正运用这个软件的时候(就是在编程的时候),很多人特别是我这样的初学者,很多时候往往没有注意到这个问题,所以就会有for循环(包括while循环)嵌套了十几层,这种做法浪费了大量资源,而且没有发挥matlab的长处,还浪费了大家宝贵的时间,就只见左下角一直busy。
但matlab的优点很多。Matlab的界面非常的有好,易于操作 ,虽然matlab一打开总看到命令行窗口,其实matlab有很多的GUI工
具箱,可以很方便实现很多功能,对于一些不喜欢写代码的人来说,使用起来非常方便。举些例子曲线拟合工具箱cftool,曲面拟合工具箱sftool ,遗传算法工具箱gatool…等等
再者。Matlab的绘图功能,matlab可以非常方便的绘制二维,三维,四维,矢量图形。能让使用软件的减少很大的工作量。
既然有一个这么实用的软件在我们面前,我们就应该抓紧时间去学习它、必然会得到不小的帮助,希望matlab能成为未来学习之路的强力助手。
第二篇:基于matlab的2PSK系统的课程设计报告
通信原理
课程设计报告
姓 名:吴彭
学 号:08042235
专 业:通信工程
院 系:信息工程学院
同组人:蔡臻,何国峰,王列
一、题目名称 2PSK系统的设计
二、题目意义
运用MATLAB编程实现2PSK调制解调过程,并且输出其调制及解调过程中的波形,讨论其调制和解调效果。
三、设计原理
数字信号的传输方式分为基带传输和带通传输,在实际应用中,大多数信道具有带通特性而不能直接传输基带信号。为了使数字信号在带通信道中传输,必须使用数字基带信号对载波进行调制,以使信号与信道的特性相匹配。这种用数字基带信号控制载波,把数字基带信号变换为数字带通信号的过程称为数字调制。
数字调制技术的两种方法:①利用模拟调制的方法去实现数字式调制,即把数字调制看成是模拟调制的一个特例,把数字基带信号当做模拟信号的特殊情况处理;②利用数字信号的离散取值特点通过开关键控载波,从而实现数字调制。这种方法通常称为键控法,比如对载波的相位进行键控,便可获得相移键控(PSK)基本的调制方式。
图1 相应的信号波形的示例
1 0 1
调制原理
数字调相:如果两个频率相同的载波同时开始振荡,这两个频率同时达到正最大值,同时达到零值,同时达到负最大值,它们应处于"同相"状态;如果其中一个开始得迟了一点,就可能不相同了。如果一个达到正最大值时,另一个达到负最大值,则称为"反相"。一般把信号振荡一次(一周)作为360度。如果一个波比另一个波相差半个周期,我们说两个波的相位差180度,也就是反相。当传输数字信号时,"1"码控制发0度相位,"0"码控制发180度相位。载波的初始相位就有了移动,也就带上了信息。
相移键控是利用载波的相位变化来传递数字信息,而振幅和频率保持不变。在2PSK中,通常用初始相位0和π分别表示二进制“1”和“0”。因此,2PSK信号的时域表达式为
(t)=Acost+)
其中,表示第n个符号的绝对相位:
=
因此,上式可以改写为
图2 2PSK信号波形
解调原理
2PSK信号的解调方法是相干解调法。由于PSK信号本身就是利用相位传递信息的,所以在接收端必须利用信号的相位信息来解调信号。下图2-3中给出了一种2PSK信号相干接收设备的原理框图。图中经过带通滤波的信号在相乘器中与本地载波相乘,然后用低通滤波器滤除高频分量,在进行抽样判决。判决器是按极性来判决的。即正抽样值判为1,负抽样值判为0.
2PSK信号相干解调各点时间波形如图 3 所示. 当恢复的相干载波产生180°倒相时,解调出的数字基带信号将与发送的数字基带信号正好是相反,解调器输出数字基带信号全部出错.
图 32PSK信号相干解调各点时间波形
这种现象通常称为"倒π"现象.由于在2PSK信号的载波恢复过程中存在着180°的相位模糊,所以2PSK信号的相干解调存在随机的"倒π"现象,从而使得2PSK方式在实际中很少采用.
四、源程序及相应实验结果
clear all;
close all;
clc;
max=10
g=zeros(1,max);
g=randint(1,max);%长度为max的随机二进制序列
cp=[];mod1=[];f=2*2*pi;t=0:2*pi/199:2*pi;
for n=1:length(g);
if g(n)==0;
A=zeros(1,200);%每个值200个点
else g(n)==1;
A=ones(1,200);
end
cp=[cp A]; %s(t),码元宽度200
c=cos(f*t);%载波信号
mod1=[mod1 c];%与s(t)等长的载波信号,变为矩阵形式
end
figure(1);subplot(4,2,1);plot(cp);grid on;
axis([0 200*length(g) -2 2]);title('二进制信号序列');
cm=[];mod=[];
for n=1:length(g);
if g(n)==0;
B=ones(1,200);%每个值200个点
c=cos(f*t); %载波信号
else g(n)==1;
B=ones(1,200);
c=cos(f*t+pi); %载波信号
end
cm=[cm B]; %s(t),码元宽度200
mod=[mod c]; %与s(t)等长的载波信号
end
tiaoz=cm.*mod;%e(t)调制
figure(1);subplot(4,2,2);plot(tiaoz);grid on;
axis([0 200*length(g) -2 2]);title('2PSK调制信号');
figure(2);subplot(4,2,1);plot(abs(fft(cp)));
axis([0 200*length(g) 0 400]);title('原始信号频谱');
figure(2);subplot(4,2,2);plot(abs(fft(tiaoz)));
axis([0 200*length(g) 0 400]);title('2PSK信号频谱');
%带有高斯白噪声的信道
tz=awgn(tiaoz,10);%信号tiaoz中加入白噪声,信噪比为10
figure(1);subplot(4,2,3);plot(tz);grid on
axis([0 200*length(g) -2 2]);title('通过高斯白噪声信道后的信号');
figure(2);subplot(4,2,3);plot(abs(fft(tz)));
axis([0 200*length(g) 0 400]);title('加入白噪声的2PSK信号频谱');
jiet=2*mod1.*tz;%同步解调
figure(1);subplot(4,2,4);plot(jiet);grid on
axis([0 200*length(g) -2 2]);title('相乘后信号波形')
figure(2);subplot(4,2,4);plot(abs(fft(jiet)));
axis([0 200*length(g) 0 400]);title('相乘后信号频谱');
%低通滤波器
fp=500;fs=700;rp=3;rs=20;fn=11025;
ws=fs/(fn/2); wp=fp/(fn/2);%计算归一化角频率
[n,wn]=buttord(wp,ws,rp,rs);%计算阶数和截止频率
[b,a]=butter(n,wn);%计算H(z)
figure(4);freqz(b,a,1000,11025);subplot(2,1,1);
axis([0 4000 -100 3 ])
title('LPF幅频相频图');
jt=filter(b,a,jiet);
figure(1);subplot(4,2,5);plot(jt);grid on
axis([0 200*length(g) -2 2]);title('经低通滤波器后信号波形')
figure(2);subplot(4,2,5);plot(abs(fft(jt)));
axis([0 200*length(g) 0 400]);title('经低通滤波器后信号频谱');
%抽样判决
for m=1:200*length(g);
if jt(m)<0;
jt(m)=1;
else jt(m)>=0;
jt(m)=0;
end
end
figure(1);subplot(4,2,6);plot(jt);grid on
axis([0 200*length(g) -2 2]);title('经抽样判决后信号s^(t)波形')
figure(2);subplot(4,2,6);plot(abs(fft(jt)));
axis([0 200*length(g) 0 400]);title('经抽样判决后信号频谱');