当前位置:文档之家› MATLAB设计FPGA实现联合ISE和Modelsim仿真的FIR滤波器设计

MATLAB设计FPGA实现联合ISE和Modelsim仿真的FIR滤波器设计

MATLAB设计FPGA实现联合ISE和Modelsim仿真的FIR滤波器设计
MATLAB设计FPGA实现联合ISE和Modelsim仿真的FIR滤波器设计

图3

用MATLAB回读C盘根目录下的matlab_wave_data.txt文件,验证存入的波形数据是否正确,MATLAB代码如下:

fid = fopen('c:/matlab_wave_data.txt','r');

for i = 1 : 5001;%一共有5001个数据

num(i) = fscanf(fid, '%x', 1);%从fid所指的文件中,以16进制的方式读出一个数据

end

fclose(fid);

figure(2);

plot(num,'b');

legend('MATLAB从txt文件中读出的原始叠加波形数据');

title('直接回读MATLAB产生的两个正弦信号的叠加波形');

显示的波形如图4所示:

图4

对比图4和图2中的叠加波形,可知以上操作的正确性。

1)用MATLAB设计FIR滤波器

输入信号是频率别为0.5MHz和2MHz的正弦信号的叠加,我们的任务是设计一个低通滤波器滤除掉2MHz的干扰信号。因此,我们可以设计一个采样率为25MHz的低通滤波器,其通带带宽为1MHz,阻带宽度为2MHz。通带内纹波抖动为1dB,阻带下降为80dB。

在MATLAB的命令窗口输入:fdatool命令并回车,打开FDATool工具箱,用MATLAB的FDATool工具设计该滤波器,参数设置如图5所示:

设计好参数后,点击DesignFilter,可以在FDATool窗口的左上角看到滤波器的阶数为

63阶,点击File Generate M-file,并将滤波器命名为mylowfilter。

图5 编写如下代码,滤除混叠信号中的高频信号。

Hd = mylowfilter; % 滤波器名称

output = filter(Hd, y1); % 对叠加信号y ,进行滤波处理figure(3);

plot(y2, 'k');

hold on;

plot(output, 'r');

legend('0.5MHz原始信号','滤波后取出的信号');

title('信号通过MTALAB的低通滤波器后的波形');

滤波后的波形如图6所示:

图6

生成.coe文件,用于Xilinx的IPCore设计滤波器,FDATool窗口点击File Export…,保持默认设置,点击Export即可,次数在MATLAB的workspace窗口多出一个Num的1*64的

数组,这就是滤波器的系数,如图7所示:

图7

由于MATLAB生成的滤波器系数全是一些小数,而FPGA只能处理整数,因此我们必须

将这些小数扩大一定的倍数,使它们变成整数。

在MATLAB的命令窗口输入下面的一段代码然后按Enter,即可将上面这些系数变为整

数,注意这里的*32767,表示将系数扩大32767倍,这里的扩大倍数只能选2^N,目的是为

了后面滤波后的波形数据的高位截取(丢掉低位,即除以2^N)。返回ans=0,表示操作正确。

coeff=round(Num/max(abs(Num))*32767);

% abs() 求绝对值,max() 求最大值,round() 四舍五入

fid = fopen('e:/fircoe.txt','wt'); %将滤波器系数写入文件件中

fprintf(fid,'%16.0f\n',coeff);% 将滤波器系数以16位浮点数的格式保存fclose(fid)

程序运行的结果如图8所示:

图8

将文件的格式改为.coe格式,在文件的开口加上:

radix = 10;

coefdata =

图11

图12

FIR的IPCore的列化如下:

FIR16_IP FIR16_IP_ins (

.clk(clk), // input clk

.rfd(rfd), // output rfd 在其上升沿将输入数据加载到滤波器内核中

.rdy(rdy), // output rdy 在其上升沿输出滤波器的计算结果

.din(data_in_reg), // input [15 : 0] din

.dout(dout)); // output [35 : 0] dout 特别注意这个数据位宽

我们主要对其进行简单的控制:在rfd 上升沿将输入数据加载到滤波器内核中,在rdy 上升沿输出滤波器的计算结果。具体的Verilog代码如下:

always @ (posedge clk) begin

if(reset == 1'b0) begin

i <= 1'b0;

m <= 1'b0;

data_in_reg <= 16'h0000;

end

else begin

rfd_1q <= rfd;

rfd_2q <= rfd_1q;

if(rfd_1q & ~rfd) begin // rfd 信号的上升沿将输入数据加载到滤波器内核中data_in_reg <= data_in[i];

i <= i + 1;

m <= ~m;

if(i == 2002)

i <= 0;

end

end

end

always @ (posedge clk) begin

if(reset == 1'b0) begin

Data_out_reg <= 0;

j <= 0;

n <= 0;

end

else begin

rdy_1q <= rdy;

rdy_2q <= rdy_1q;

if(rdy_1q & ~rdy) begin

Data_out_reg <= dout;

j <= j + 1'b1;

n <= ~n;

end

end

end

这里还做了一个附加功能,将FIR滤波器的输入数据存放到一个.txt文件当中,然后用MATLAB去读取这个波形文件数据,看看读出的波形是否和原来的混叠波形一样。具体的Verilog和MATLAB代码如下:

integer wr_file;

initial wr_file = $fopen("c:/FIR_in_data.txt");

always @( m ) begin

if(reset == 1'b1) begin

$fdisplay(wr_file,"%h", data_in_reg);// 33bit数

if(j == 11'd2002) //共写入2001个数据

$stop;

end

end

fid = fopen('c:/FIR_in_data.txt','r');

for j = 1 : 2000;

num1(j) = fscanf(fid, '%x', 1);%这句话的意思是从fid所指的文件以16进制方式读出一个数据。end

fclose(fid);

figure(4);

plot(num1,'r');

legend('Verilog读出的txt文件中的数据');

title('FIR滤波器的输入数据');

MATLAB读出的波形数据如图13所示:

图13

这里我也搞了好久才搞好,这里FIR滤波器的输出数据位宽变成了36bit,而输入数据位宽是16bit,为什么数据会变大几万倍呢?

因为我们在将滤波器的系数由小数变成整数的时候,对这些系数整体扩大了32767倍,再做了一个四舍五入(影响滤波器精度),对滤波器的系数扩大的倍数越大,四舍五入对精度的影响就越小,但是系数乘的倍数越大,FPGA在做乘加运算也就越复杂,也就越耗时,越耗资源,因此我们需要找一个平衡点。

这里为了将信号的幅度变回原始的幅度(尽可能的靠近),我们只能通过将低位截取掉,截取低位相当于对数据做除法(除2),所以前面的滤波器系数的扩大倍数我们一定要用2^N,这样我们在这里还原信号幅度的时候,只需要截位就能达到目的。

比如这里我们对滤波器的系数乘了32767,那我们在做除法还原波形幅度时,只需要除以32767即可(即截掉低16bit)。还有一种操作方式就是我们只保留数据的高16bit(和输入数据的位宽保持一致),这两种方式波形的幅度也就几倍的差距,我还没有完全搞懂这里,究竟怎样才能将波形的幅度完全的还原回去,还是一个值得好好思考的问题?

另一个问题是我的电脑是32bit位宽的,如果我们一次性让MATLAB读取36bit的数据那么数据的高4bit会读不上来,会导致很奇怪的波形,我也遇到了这个问题。如图14所示,

波形明显可以通过一些平移拼合成一个正弦波。通过对波形数据一个个的分析,我找到了这个问题。

图14

图15是波形幅度发生变化的截图:

图15

字滤波器的性能,肯定能够大大的缩短设计周期,提升滤波器性能。

附录:

附录为Verilog源代码和MATLAB源代码,这些源代码是经过调试的,是可以直接使用的。供大家参考。

Verilog源代码:

module FIR_Lowpass(

clk,

reset,

Data_out

);

input clk;

input reset;

output [31 :0] Data_out;

reg [35 :0] Data_out_reg;

reg [10:0] i = 0;

reg [10:0] j = 0;

reg [15 :0] data_in[0:2000]; //定义一个16bit * 2001的数组

reg [15:0] data_in_reg = 0;

initial begin// 读出MATLAB产生的波形数据0.5MHz_sin + 4MHz_sin 信号$readmemh("c:/matlab_wave_data.txt", data_in); //将matlab_wave_data.txt中的数据读入存储器data_in

end

wire rfd;

wire rdy;

wire [35:0] dout;

reg rfd_1q;

reg rfd_2q;

reg rdy_1q;

reg rdy_2q;

reg n = 0;

reg m = 0;

always @ (posedge clk) begin

if(reset == 1'b0) begin

i <= 1'b0;

m <= 1'b0;

data_in_reg <= 16'h0000;

end

else begin

rfd_1q <= rfd;

rfd_2q <= rfd_1q;

if(rfd_1q & ~rfd) begin // rfd 信号的上升沿将输入数据加载到滤波器内核中data_in_reg <= data_in[i];

i <= i + 1;

m <= ~m;

if(i == 2002)

i <= 0;

end

end

end

FIR16_IP FIR16_IP_ins (

.clk(clk), // input clk

.rfd(rfd), // output rfd 在其上升沿将输入数据加载到滤波器内核中

.rdy(rdy), // output rdy 在其上升沿输出滤波器的计算结果

.din(data_in_reg), // input [15 : 0] din

.dout(dout)); // output [35 : 0] dout

always @ (posedge clk) begin

if(reset == 1'b0) begin

Data_out_reg <= 0;

j <= 0;

n <= 0;

end

else begin

rdy_1q <= rdy;

rdy_2q <= rdy_1q;

if(rdy_1q & ~rdy) begin

Data_out_reg <= dout;

j <= j + 1'b1;

n <= ~n;

end

end

end

//刚刚的问题是,matlab读一个数据是32bit的,而FIR的输出是36bit的,因此高4bit根本没有读上来。

// assign Data_out[31:0] = Data_out_reg[35:4];

assign Data_out[31:0] = Data_out_reg[35:4];

//************************************************************

integer wr_file;

initial wr_file = $fopen("c:/FIR_in_data.txt");

always @( m ) begin

if(reset == 1'b1) begin

$fdisplay(wr_file,"%h", data_in_reg);// 33bit数

if(j == 11'd2002) //共写入2001个数据

$stop;

end

end

//************************************************************

integer w_file;

initial w_file = $fopen("c:/FIR_out.txt");

always @( n ) begin

if(reset == 1'b1) begin

$fdisplay(w_file,"%h", Data_out[31:14]);// 33bit数

if(j == 11'd2002) //共写入2001个数据

$stop;

end

end

endmodule

MATLAB源代码

%********************** MATLAB产生信号并保存到.txt文件中******************* clear all;

fs = 25000000; % 25M 采样率

t = 0:1/fs:0.0002;% 共0.0002 * 25000000 = 5000个点

f1 = 500000;

f2 = 2000000;

signal1 = sin(2*pi*f1*t); % 频率为0.5MHz 的正弦信号

signal2 = sin(2*pi*f2*t); % 频率为4.0MHz 的正弦信号

%y1 = signal1 + signal2; % 两个正弦信号叠加

%x = linspace(0, 12.56, 2048); % 在区间[0,6.28] = 2*pi 之间等间隔的取1024个点

%y1 = sin(x); % 计算相应的余弦值

% 由于正、余弦波形的值在[0,1]之间,需要量化成16bit,先将数值放大

%y1 = y1 * 32768; % 32 * 1024 = 32768

%y1 = y1 * 16384; % 32 * 1024 = 32768

%y1 = y1 + 32768;

y2 = fix(16384 + (2^14 - 1) * signal1);

y3 = fix(16384 + (2^14 - 1) * signal2);

y1 = y2 + y3;

% 再将放大的浮点值量化,并写道到存放在C盘的文本中

fid = fopen('c:/matlab_wave_data.txt', 'wt');

%fprintf(fid, '%16.0f\n', y1); % 在写文件时量化为16bit的定点实数【%16.0f,16.0表示16bit 定点数,f表示实数】,范围是:-32768 - 32767

fprintf(fid, '%x\n', y1); % 在写文件时量化为16bit的定点实数【%16.0f,16.0表示16bit定点数,f表示实数】,范围是:-32768 - 32767

fclose(fid);

figure(1);

plot(y2, 'b');

hold on;

plot(y3, 'b');

hold on;

plot(y1, 'r');

legend('0.5MHz正弦','2MHz正弦','两者叠加');

title('MATLAB产生的两个正弦信号的叠加波形');

%********************** MATLAB回读保存到.txt文件中的信号******************* fid = fopen('c:/matlab_wave_data.txt','r');

for i = 1 : 5001;

%num(i) = fscanf(fid, '%f', 1);%从fid所指的文件中,以实数的方式读出一个数据

num(i) = fscanf(fid, '%x', 1);%从fid所指的文件中,以实数的方式读出一个数据

end

fclose(fid);

figure(2);

plot(num,'b');

legend('MATLAB从txt文件中读出的原始叠加波形数据');

title('直接回读MATLAB产生的两个正弦信号的叠加波形');

%***************** MATLAB设计FIR滤波器并对比滤波器前后的波形**************** Hd = mylowfilter; % 滤波器名称

output = filter(Hd, y1); % 对叠加信号y ,进行滤波处理

figure(3);

plot(y2, 'k');

hold on;

plot(output, 'r');

legend('0.5MHz原始信号','滤波后取出的信号');

title('信号通过MTALAB的低通滤波器后的波形');

%*********MATLAB回读FIR滤波器的输入数据***************

fid = fopen('c:/FIR_in_data.txt','r');

for j = 1 : 2000;

num1(j) = fscanf(fid, '%x', 1);%这句话的意思是从fid所指的文件以16进制方式读出一个数据。end

fclose(fid);

figure(4);

plot(num1,'r');

legend('Verilog读出的txt文件中的数据');

title('FIR滤波器的输入数据');

%*********MATLAB回读FIR滤波器滤波后的数据(FIR由Verilog实现)*************** fid = fopen('c:/FIR_out.txt','r');

for i = 1 : 2000;

num(i) = fscanf(fid, '%x', 1);%这句话的意思是从fid所指的文件以16进制方式读出一个数据。end

fclose(fid);

figure(5);

plot(num,'r');

y4 = y2;

hold on;

plot(y4, 'k');

legend('经过FIR_IPCore滤波后的数据','0.5MHz的原始数据放大16384倍');

title('经过FIR滤波器的输出数据');

MATLAB课程设计报告 基于MATLAB GUI 的滤波器设计软件

MATLAB课程设计报告 基于MATLAB GUI的“滤波器设计软件”设计

摘要 面对庞杂繁多的原始信号, 如何提取所需信号、抑制不需要的信号这就需要使用滤波器。滤波器的作用主要是选择所需频带的信号内容而抑制不需要的其他频带的信号内容。数字滤波器因其精度高、可靠性好、灵活性大等优点, 在语音信号处理、信号频谱估计、信号去噪、无线通信中的数字变频以及图像处理等工程实际应用中都很广泛。根据其冲击响应函数的时域特性可将数字滤波器分为IIR(有限长冲击响应)和FIR(无限长冲击响应)。作为强大的计算软件, MATLAB 提供了编写图形用户界面的功能。所谓图形用户界面, 简称为GUI, 是由各种图形对象, 如图形窗口菜单按钮、文本框等构建的用户界面。 MATALB 可以创建图形用户界面GUI ( GraphicalUser Interface) ,它是用户和计算机之间交流的工具。MATLAB 将所有GUl 支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。而且具有强大的绘图功能,可以轻松的获得更高质量的曲线图。 关键词:MATLAB GUI IIR滤波器FIR滤波器

目录 1设计任务 (1) 2 MATLAB GUI的简介 (2) 3 滤波器设计原理 (3) 3.1滤波器概述 (3) 3.2 IIR数字滤波器 (4) 3.2.1 IIR数字滤波器设计原理 (4) 3.2.2 IIR滤波器设计思想 (5) 3.2.3 IIR滤波器设计编程实现 (6) 3.3 FIR数字滤波器 (8) 3.3.1 FIR数字滤波器设计原理 (8) 3.3.2 FIR滤波器设计思想 (9) 4 基于Matlab GUI的数字滤波器设计思路及实现 (12) 4. 1 GUI界面设计概述 (12) 4.2 “滤波器设计软件”设计所实现任务 (14) 4.3 基于Matlab GUI的数字滤波器设计实现 (16) 4.3.1 “滤波器设计软件”GUI界面设计 (16) 4.3.2 “滤波器设计软件”回调函数编写 (17) 4.3.3AutoChoose.m程序的编写 (22) 4.4 运行和结果显示 (28) 5 设计总结和心得 (33) 5.1 设计总结 (33) 5.2 设计心得 (34) Abstract (35) 参考文献 (36) 附录

通信仿真课程设计-matlab-simulink

成都理工大学工程技术学院 《通信仿真课程设计》报告 班级:信息工程1班 姓名:寇路军 学号: 201620101133 指导教师:周玲 成绩: 2019 年 3月 23 日

目录 通信仿真课程设计报告 (2) 一.绪论 (2) 二.课程设计的目的 (2) 三.模拟调制系统的设计 (3) 3.1 二进制相移键控调制基本原理 (3) 3.2 2PSK信号的调制 (3) 3.2.1模拟调制的方法 (3) 3.3 2PSK信号的解调 (4) 3.4 2PSK的“倒∏现象”或“反向工作” (5) 3.5功率谱密度 (5) 四.数字调制技术设计 (7) 4.1 2PSK的仿真 (7) 4.1.1仿真原理图 (7) 4.1.2 仿真数据 (7) 4.1.3 输出结果 (9) 总结 (10) 参考文献 (11)

通信仿真课程设计报告 一.绪论 随着社会的快速发展,通信系统在社会上表现出越来越重要的作用。目前,我们生活中使用的手机,电话,Internet,ATM机等通信设备都离不开通信系统。随着通信系统与我们生活越来越密切,使用越来越广泛,对社会对通信系统的性能也越高。另外,随着人们对通信设备更新换代速度越来越快。不得不缩短通信系统的开发周期以及提高系统性能。针对这两方面的要求,必需要通过强大的计算机辅助分析设计技术和工具才能实现。自从现代以来,计算机科技走上了快速发展道路,实现了可视化的仿真软件。 通信系统仿真,在目前的通信系统工程设计当中。已成为了不可替代的一部分。它表现出很强的灵活性和适应性。为我们更好地研究通信系统性能带来了很大的帮助。本论文主要针对模拟调制系统中的二进制相移键控调制技术进行设计和基于Simulink进行仿真。通过系统仿真验证理论中的结论。本论文设计的目的之一是进一步加强理论知识,熟悉Matlab软件。 Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink 已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。 二.课程设计的目的 1.掌握模拟系统2PSK调制和解调原理及设计方法。 2.熟悉基于Simulink的通信系统仿真。

基于MATLAB—Simulink的2ASK仿真课程设计

目录 第一章课程设计的任务说明 (1) 1.1 课程设计的目的 (1) 1.2 课程设计的要求 (1) 第二章MA TLAB/SIMULINK简介 (2) 第三章通信技术的历史和发展 (3) 3.1通信的概念 (3) 3.2 通信的发展史简介 (4) 3.3通信技术的发展现状和趋势 (4) 第四章2ASK的基本原理和实现 (5) 4.1 2ASK的产生 (5) 4.2 2ASK的功率谱和带宽 (6) 4.3 2ASK信号的解调及抗噪声性能分析 (6) 第五章Smulink的模型建立和仿真 (10) 5.1 建立模型方框图 (10) 5.2参数设置 (11) 5.3仿真波形图 (15) 5.4 不同信噪比下的误码率 (17) 总结 (18) 参考文献 (19)

第一章课程设计的任务说明 1.1 课程设计的目的 (1)通过利用matlab simulink,熟悉matlab simulink仿真工具。 (2)通过课程设计来更好的掌握课本相关知识,熟悉2ASK的调制与解调。 (3)更好的了解通信原理的相关知识,磨练自己分析问题、查阅资料、巩固知识、创新等各方面能力。 1.2 课程设计的要求 (1)掌握课程设计涉汲到的相关知识,相关概念、原理清晰,明了。 (2)仿真图设计合理、能够正确运行。 (3)按照要求撰写课程设计报告。

第二章MATLAB/SIMULINK简介 美国Mathworks公司于1967年推出了矩阵实验室“Matrix Laboratory”(缩写为Matlab)这就是Matlab最早的雏形。开发的最早的目的是帮助学校的老师和学生更好的授课和学习。从Matlab诞生开始,由于其高度的集成性及应用的方便性,在高校中受到了极大的欢迎。由于它使用方便,能非常快的实现科研人员的设想,极大的节约了科研人员的时间,受到了大多数科研人员的支持,经过一代代人的努力,目前已发展到了7.X版本。Matlab是一种解释性执行语言,具有强大的计算、仿真、绘图等功能。由于它使用简单,扩充方便,尤其是世界上有成千上万的不同领域的科研工作者不停的在自己的科研过程中扩充Matlab的功能,使其成为了巨大的知识宝库。可以毫不夸张的说,哪怕是你真正理解了一个工具箱,那么就是理解了一门非常重要的科学知识。科研工作者通常可以通过Matlab来学习某个领域的科学知识,这就是Matlab真正在全世界推广开来的原因。目前的Matlab版本已经可以方便的设计漂亮的界面,它可以像VB等语言一样设计漂亮的用户接口,同时因为有最丰富的函数库(工具箱),所以计算的功能实现也很简单,进一步受到了科研工作者的欢迎。另外,,Matlab和其他高级语言也具有良好的接口,可以方便的实现与其他语言的混合编程,进一步拓宽了Matlab的应用潜力。可以说,Matlab已经也很有必要成为大学生的必修课之一,掌握这门工具对学习各门学科有非常重要的推进作用。 Simulink是MA TLAB中的一种可视化仿真工具,也是目前在动态系统的建模和仿真等方面应用最广泛的工具之一。确切的说,Simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持线性和非线性系统,连续、离散时间模型,或者是两者的混合。系统还可以使多种采样频率的系统,而且系统可以是多进程的。Simulink工作环境进过几年的发展,已经成为学术和工业界用来建模和仿真的主流工具包。在Simulink环境中,它为用户提供了方框图进行建模的图形接口,采用这种结构画模型图就如同用手在纸上画模型一样自如、方便,故用户只需进行简单的点击和拖动就能完成建模,并可直接进行系统的仿真,快速的得到仿真结果。它的主要特点在于:1、建模方便、快捷;2、易于进行模型分析;3、优越的仿真性能。它与传统的仿真软件包微分方程和差分方程建模相比,具有更直观、方便、灵活的优点。Simulink模块库(或函数库)包含有Sinks(输出方式)、Sources(输入源)、Linear(线性环节)、Nonlinear(非线性环节)、Connection(连接与接口)和Extra(其他环节)等具有不同功能或函数运算的Simulink库模块(或库函数),而且每个子模型库中包含有相应的功能模块,用户还可以根据需要定制和创建自己的模块。用Simulink创建的模型可以具有递阶结构,因此用户可以采用从上到下或从下到上的结构创建模型。用户可以从最高级开始观看模型,然后用鼠标双击其中的子系统模块,来查看其下一级的内容,以此类推,从而可以看到整个模型的细节,帮助用户理解模型的结构和各模块之间的相互关系。在定义完一个模型后,用户可以通过Simulink的菜单或MATLAB的命令窗口键入命令来对它进行仿真。菜单方式对于交互工作非常方便,而命令行方式对于运行仿真的批处理非常有用。采用Scope模块和其他的显示模块,可以在仿真进行的同时就可立即观看到仿真结果,若改变模块的参数并再次运行即可观察到相应的结果,这适用于因果关系的问题研究。仿真的结果还可以存放到MATLAB的工作空间里做事后处理。模型分析工具包括线性化和整理工具,MATLAB的所有工具及Simulink本身的应用工具箱都包含这些工具。由于MATLAB和SIMULINK的集成在一起的,因此用户可以在这两种环境下对自己的模型进行仿真、分析和修改模型。但是Simulink不能脱离MA TLAB而独立工作。

Matlab课程设计报告

自控系统仿真软件课程设计报告 MATLAB 设计题目:牛顿摆球 姓名: 学号: 院系: 班级:1203 指导教师: 2014年12月20日

一.课程设计目的 1、熟悉课程设计的基本流程; 2、掌握MATLAB语法结构及调试方法; 3、熟悉MATLAB函数调用,熟练二维画图; 4、掌握MATLAB语言在控制方面的运用; 5、学会用MATLAB进行基本仿真; 6、掌握MATLAB编程技巧,提高编程水平。 二.系统分析 1.题目的描述: (1)牛顿摆球原理描述 五个质量相同的球体由吊绳固定,彼此紧密排列。当摆动最右侧的球并在回摆时碰撞紧密排列的另外四个球,最左边的球将被弹出,并仅有最左边的球被弹出。当然此过程也是可逆的,当摆动最左侧的球撞击其它球时,最右侧的球会被弹出。当最右侧的两个球同时摆动并撞击其他球时,最左侧的两个球会被弹出。同理相反方向同样可行,并适用于更多的球。 为了更接近现实,在这里我将考虑重力及空气阻力的影响,摆球将不会永无止境的运动下去,由于外界因素的影响,摆球运动一段时间后将回归静止状态。(2)通过MATLAB动画程序制作软件,实现下述过程 当运行程序时,把最右边的小球拉到一定的高度放下,让其碰撞其余四个小球,仅让最左边的小球被弹出,当最左边小球回摆碰撞其它球时,最右边小球又被弹出,如此循环。由于是非理想条件下,摆球的摆动幅度会随摆动次数的增加越来越小,直到静止。 时间停顿两秒,把右边两小球一起拉到一定高度放下,让其碰撞其余三个球,同样仅让左边两球被弹出,当球回摆再次碰撞时,最右边两球又被同时弹出,如此循环,因为外界因素的影响,最终五个球都会静止下来。 (3)整个实验看似简单,但要在MATLAB上完成这样一个动画过程,还是需要下点功夫,克服困难的。经过自己的努力,终于实现了整个过程,这也是一种不小的收获。 2.设计要求: (1)能够实现有阻尼摆动,即摆幅随摆动次数增加越来越小,直到静止。(2)能够让摆球弧线摆动。 三.系统设计 1.系统设计过程 (1)通过函数axis建立坐标系 (2)在坐标系范围内通过函数line画各个支架 (3)通过函数title添加标题“动量守恒实验”、函数text添加标注“牛顿摆球” (4)通过函数line画出五个球,并设定其初始位置,颜色,大小,线条的擦拭方式

基于MATLABsimulink的2FSK系统的仿真课程设计报告

课程设计 基于MATLABsimulink的2FSK系统的仿真 电子与信息工程学院 信息与通信工程系

课程设计评分标准

基于MATLAB/simulink的2FSK系统的仿真 一、摘要 本文是基于matlab和simulink环境下对信号的调制与解调过程的仿真,通过仿真,对系统的误码率的分析,以及理论与仿真结果的比较, 二、关键字:

目录 1 背景知识 (1) 1.1通信简介 (1) 1.2仿真系统的简介: (2) 1.32FSK的调制与解调的原理: (3) 1.3.1 2FSK的产生 (4) 1.3.2 2FSK滤波器的解调及抗噪声性能 (6) 1.3.3 由相关调制解调的原理图 (9) 2 仿真系统模型的设计: (9) 2.1仿真框图 (9) 2.2仿真目的和意义: (9) 2.3仿真思路 (10) 2.4M文件和仿真结果 (10) 2.5 SIMULINK仿真模型图: (16) 2.6结果分析: (21) 2.6.1 Matlab仿真结果分析 (21) 2.6.2 (22) 3 心得体会: (22) 4 参考文献 (22)

1 背景知识 1.1 通信简介 通信就是克服距离上的障碍,从一地向另一地传递和交换消息。消息是信息源所产生的,是信息的物理表现,例如,语音、文字、数据、图形和图像等都是消息。消息有模拟消息(如语音、图像等)以及数字消息(如数据、文字等)之分。所有消息必须在转换成电信号(通常简称为信号)后才能在通信系统中传输。所以,信号是传输消息的手段,信号是消息的物质载体。 相应的信号可分为模拟信号和数字信号,模拟信号的自变量可以是连续的或离散的,但幅度是连续的,如电话机、电视摄像机输出的信号就是模拟信号。数字信号的自变量可以是连续的或离散的,但幅度是离散的,如电船传机、计算机等各种数字终端设备输出的信号就是数字信号。 通信的目的是传递消息,但对受信者有用的是消息中包含的有效内容,也即信息。消息是具体的、表面的,而信息是抽象的、本质的,且消息中包含的信息的多少可以用信息量来度量。 通信技术,特别是数字通信技术近年来发展非常迅速,它的应用越来越广泛。通信从本质上来讲就是实现信息传递功能的一门科学技术,它要将大量有用的信息无失真,高效率地进行传输,同时还要在传输过程中将无用信息和有害信息抑制掉。当今的通信不仅要有效地传递信息,而且还有储存、处理、采集及显示等功能,通信已成为信息科学技术的一个重要组成部分。 通信系统就是传递信息所需要的一切技术设备和传输媒质的总和,包括信息源、发送设备、信道、接收设备和信宿(受信者) ,它的一般模型如图1所示。 →→→→ 信息源发送设备信道接收设备受信者 ↑ 噪声源 图1 通信系统一般模型 通信系统可分为数字通信系统和模拟通信系统。数字通信系统是利用数字信号来传递消息的通信系统,其模型如图2所示,

MATLAB程序设计课程设计

Matlab课程设计 题目: 二、利用混合空间法增强锐化图像仿真 将原始图像增强,最终增强为如下类似图像 。 可参考如下过程

源程序: clc clear all %读取图像 J=imread('E:\工作台\MATLAB\2016课程设计\仿真2附件 \Fig0343(a)(skeleton_orig).tif'); %拉普拉斯变换得到M1 [m,n]=size(J); I=im2double(J); h1=[0,-1,0;-1,4,-1;0,-1,0]; M1=imfilter(I,h1); %与原图相加得到M2,锐化原图 M2=M1+I; %sobel算子运算结果得到M3,保留边缘去除噪声 h2=[1,0,-1;2,0,-2;1,0,-1]; h3=[-1,-2,-1;0,0,0;1,2,1]; Sx=imfilter(I,h2); Sy=imfilter(I,h3); for i=1:m for j=1:n M3(i,j)=sqrt((Sx(i,j))^2+(Sy(i,j))^2); end end %作3*3模板的均值平滑 M4=zeros(m,n); for x=2:m-1 for y=2:n-1 for a=-1:1 for b=-1:1 M4(x,y)=(M4(x,y)+M3(x+a,y+b))/9; end end end end for c=1:m for d=1:n M4(c,1)=M3(c,1); M4(1,d)=M3(1,d); end end %作幂次变换,提升亮度2倍,提升对比度 for e=1:m for f=1:n

M5(e,f)=M2(e,f)*M4(e,f); end end M6=I+M5; for g=1:m for h=1:n M7(g,h)=2*(M6(g,h))^1.15; end end subplot(241);imshow(I); subplot(242);imshow(M1); subplot(243);imshow(M2); subplot(244);imshow(M3); subplot(245);imshow(M4); subplot(246);imshow(M5); subplot(247);imshow(M6); subplot(248);imshow(M7); 分析: 1.读取图像 2.利用 Laplacian 变换得到M1,在与原图相处理得到锐化的图像 3.用 Sobel 算子运算,保留边缘去除噪声 4.用3*3的模板均值平滑化图像 5.用幂律定理,提高图像亮度,提高对比度

激光原理与技术课程设计(matlab仿真)

电子科技大学 UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA 激光原理与技术 课程设计 课程教师: 作者姓名: 学号:

题目一: 编程计算图示谐振腔的稳定性与光焦度1/F的关系。可取R1=∞, R2=∞, l1=250mm, l2=200mm。,用matlab程序计算光线在腔内的轨迹,演示腔稳定和不稳定时光线在腔内往返次数增加时光线轨迹。初始光线参数可以任意选择。 利用matlab编程如下: clear,clc L1=250;L2=200; R1=inf;R2=inf; syms d; T=[1,L1;0,1]*[1,0;-d,1]*[1,L2;0,1]*[1,0;-2/R2,1]*[1,L2;0,1]*[1 ,0;-d,1]*[1,L1;0,1]*[1,0;-2/R1,1]; A=T(1,1); B=T(1,2); C=T(2,1); D=T(2,2); h=(A+D)/2; ezplot(h,[0,0.012]) title('谐振腔的稳定性');xlabel('透镜光焦度D(/mm)');ylabel('等效 g1g2') 运行结果:

题目二: 和透镜上的模式半径与光焦度1/F的关系。 计算输出镜M 2 利用matlab编程如下: clear,clc L1=250;L2=200;R1=inf;R2=inf;w1=0.5*10^-3; syms d T1=[1,L2;0,1]*[1,0;-2/R2,1]*[1,L2;0,1]*[1,0;-d,1]*[1,L1;0,1]*[1,0;-2/ R1,1]*[1,L1;0,1]*[1,0;-d,1]; A1=T1(1,1);B1=abs(T1(1,2));C1=T1(2,1);D1=T1(2,2);h1=(A1+D1)/2; W1=((w1*B1/pi)^(1/2))/((1-h1^2)^(1/4)); T2=[1,0;-2/R2,1]*[1,L2;0,1]*[1,0;-d,1]*[1,L1;0,1]*[1,0;-2/R1,1]*[1,L1 ;0,1]*[1,0;-d,1]*[1,L2;0,1]; A2=T2(1,1);B2=abs(T2(1,2));C2=T2(2,1);D2=T2(2,2);h2=(A2+D2)/2; W2=((w1*B2/pi)^(1/2))/((1-h2^2)^(1/4)); figure (1) ezplot(W1,[0,0.012]); title('透镜上的光斑半径');xlabel('透镜光焦度D(/mm)');ylabel('光束半径') figure (2); ezplot(W2,[0,0.012]) title('输出镜上的光斑半径');xlabel('透镜光焦度D(/mm)');ylabel('光束半径') figure (3);

MATLAB仿真课程设计

电气工程工具软件课程设计-MATLAB 学号:3100501044 班级:电气1002 姓名:王辉军 指导老师:乔薇 2014年1月16日

课程设计任务:构建一个含有PID控制器的系统,观察 K(比例系数)、 p K(积分系数)、d K(微分系数)不同值时系统的变化。 i (Continuous模块库中的Zero-Pole模块)输入为阶跃函数 一.建立含有pid子系统的系统模型 (1)选用器件搭建电路 图1-1 图1-2 (2)构建PID控制器 图1-3

(3)上述结构图封装成PID控制器 ①创建子系统。选中上述结构图后再选择模型窗口菜单“Edit/Creat Subsystem” ②封装。选中上述子系统模块,再选择模型窗口菜单“Edit/Mask Subsystem” ③根据需要,在封装编辑器对话框中进行一些封装设置,包括设置封装文本、对话框、图标等。本次试验主要需进行以下几项设置:Icon(图标)项:“Drawing commands”编辑框中输入“disp(‘PID’)”,如下 左图示:Parameters(参数)项:创建Kp,Ki,Kd三个参数,如下右图示 图1-4 图1-5

(4)搭建单一回路系统结构框图如下图 图1-6 所需模块及设置:Sources模块库中Step模块;Sinks模块库中的Scope 模块;Commonly UsedBlocks模块库中的Mux模块;Continuous模块库中的Zero-Pole模块。Step模块和Zero-Pole模块设置如下: 图1-7 图1-8

二.比较以下参数的结果:(把各个仿真波形图截图标注) 图2-1 如上图可更改Kp,Ki,Kd的值以实现以下要求: (1)Kp=8.5,Ki=5.3,Kd=3.4 图2-2 (2)Kp=6.7,Ki=2,Kd=2.5

MATLAB仿真课程设计报告

北华大学 《MATLAB仿真》课程设计 姓名: 班级学号: 实习日期: 辅导教师:

前言 科学技术的发展使的各种系统的建模与仿真变得日益复杂起来。如何快速有效的构建系统并进行系统仿真,已经成为各领域学者急需解决的核心问题。特别是近几十年来随着计算机技术的迅猛发展,数字仿真技术在各个领域都得到了广泛的应用与发展。而MATLAB作为当前国际控制界最流行的面向工程和科学计算的高级语言,能够设计出功能强大、界面优美、稳定可靠的高质量程序,而且编程效率和计算效率极高。MATLAB环境下的Simulink是当前众多仿真软件中功能最强大、最优秀、最容易使用的一个系统建模、仿真和分析的动态仿真环境集成工具箱,并且在各个领域都得到了广泛的应用。 本次课程设计主要是对磁盘驱动读取系统校正部分的设计,运用自动控制理论中的分析方法,利用MATLAB对未校正的系统进行时域和频域的分析,分析各项指标是否符合设计目标,若有不符合的,根据自动控制理论中的校正方法,对系统进行校正,直到校正后系统满足设计目标为止。我组课程设计题目磁盘驱动读取系统的开环传递函数为是设计一个校正装置,使校正后系统的动态过程超调量δ%≤7%,调节时间ts≤1s。 电锅炉的温度控制系统由于存在非线性、滞后性以及时变性等特点,常规的PID控制器很难达到较好的控制效果。考虑到模糊控制能对复杂的非线性、时变系统进行很好的控制, 但无法消除静态误差的特点, 本设计将模糊控制和常规的PI D控制相结合, 提出一种模糊自适应PID控制器的新方法。并对电锅炉温度控制系统进行了抗扰动的仿真试验, 结果表明, 和常规的PI D控制器及模糊PI D复合控制器相比,模糊自适应PI D控制改善了系统的动态性能和鲁棒性, 达到了较好的控制效果。

MATLAB课程设计报告图像处理

一.课程设计相关知识综述...................................................................... 1.1 研究目的及意义 (3) 1.2 数字图像处理研究的内容........................................................... 1.3 MATLAB 软件的介绍.................................................................. 1.3.1 MATLAB 语言的特点......................................................... 1.3.2 MATLAB 图像文件格式.................................................... 1.3.3 MATLAB 图像处理工具箱简介........................................ 1.3.4 MATLAB 中的图像类型.................................................... 1.3.5 MATLAB 的主要应用........................................................ 1.4 函数介绍........................................................................................ 二.课程设计内容和要求........................................................................... 2.1 主要研究内容................................................................................ 2.2 具体要求....................................................................................... 2.3 预期达到的目标........................................................................... 三.设计过程............................................................................................... 3.1 设计方案及步骤............................................................................ 3.2 程序清单及注释........................................................................... 3.3 实验结果........................................................................................ 四.团队情况................................................................................................ 五.总结....................................................................................................... 六.参考文献............................................................................................... 一.课程设计相关知识综述. 1.1研究目的及意义

matlab通信仿真课程设计样本

《matlab通信仿真设计》课程设计指导书 11月

课程设计题目1: 调幅广播系统的仿真设计 模拟幅度调制是无线电最早期的远距离传输技术。在幅度调制中, 以声音信号控制高频率正弦信号的幅度, 并将幅度变化的高频率正弦信号放大后经过天线发射出去, 成为电磁波辐射。 波动的电信号要能够有效地从天线发送出去, 或者有效地从天线将信号接收回来, 需要天线的等效长度至少达到波长的1/4。声音转换为电信号后其波长约在15~1500km之间, 实际中不可能制造出这样长度和范围的天线进行有效信号收发。因此需要将声音这样的低频信号从低频率段搬移到较高频率段上去, 以便经过较短的天线发射出去。 人耳可闻的声音信号经过话筒转化为波动的电信号, 其频率范围为20~20KHz。大量实验发现, 人耳对语音的频率敏感区域约为300~3400Hz, 为了节约频率带宽资源, 国际标准中将电话通信的传输频带规定为300~3400Hz。调幅广播除了传输声音以外, 还要播送音乐节目, 这就需要更宽的频带。一般而言, 调幅广播的传输频率范围约为100~6000Hz。 任务一: 调幅广播系统的仿真。 采用接收滤波器Analog Filter Design模块, 在同一示波器上观察调幅信号在未加入噪声和加入噪声后经过滤波器后的波形。采用另外两个相同的接收滤波器模块, 分别对纯信号和纯噪声滤波, 利用统计模块计算输出信号功率和噪声功率, 继而计算输出信噪比, 用Disply显示结果。 实例1: 对中波调幅广播传输系统进行仿真, 模型参数指标如下。

1.基带信号: 音频, 最大幅度为1。基带测试信号频率在100~6000Hz 内可调。 2.载波: 给定幅度的正弦波, 为简单起见, 初相位设为0, 频率为550~1605Hz 内可调。 3.接收机选频放大滤波器带宽为12KHz, 中心频率为1000kHz 。 4.在信道中加入噪声。当调制度为0.3时, 设计接收机选频滤波器输出信噪比为20dB, 要求计算信道中应该加入噪声的方差, 并能够测量接收机选频滤波器实际输出信噪比。 仿真参数设计: 系统工作最高频率为调幅载波频率1605KHz, 设计仿真采样率为最高工作频率的10倍, 因此取仿真步长为 8max 1 6.2310(1-1)10step t s f -==? 相应的仿真带宽为仿真采样率的一半, 即 18025.7(1-2)2step W KHz t == 设基带测试正弦信号为m(t)=Acos2πFt, 载波为c(t)=cos2πf c t, 则调制度为m a 的调制输出信号s(t)为 ()(1cos 2)cos 2(1-3)a c s t m Ft f t ππ=+ 容易求出, s(t)的平均功率为 21(1-4)24a m P =+ 设信道无衰减, 其中加入的白噪声功率谱密度为N 0/2, 那么仿真带宽(-W, W)内噪声样值的方差为 2002(1-5)2N W N W σ=?=

MATLAB课程设计

二阶弹簧—阻尼系统的PID 控制器设计及其参数整定 班级:电控(中荷),学号:200710234***,姓名:包艳 1 前 言 PID 控制器结构简单,其概念容易理解,算法易于实现,且具有一定的鲁棒 性,因此,在过程控制领域中仍被广泛使用,除非在特殊情况下证明它不能满足既定的性能要求。对于单输入单输出的系统,尤其是阶跃响应单调变化的低阶对象,已有大量的PID 整定方法及其比较研究。当对象的阶跃响应具有欠阻尼特性时,如果仍近似为惯性对象,被忽略的振荡特性有可能引起控制品质的恶化。现有的一些针对二阶欠阻尼对象的PID 整定方法,例如极点配置方法,幅值相位裕量方法等,尽管在各自的假设前提下取得了较好的控制效果,但并非适用于所有的二阶欠阻尼对象,其性能鲁棒性问题也有待讨论。 本文通过使用MATLAB 对二阶弹簧—阻尼系统的控制器(分别使用P 、PI 、PID 控制器)设计及其参数整定,定量分析比例系数、积分时间与微分时间对系统性能的影响。同时,掌握MATLAB 语言的基本知识进行控制系统仿真和辅助设计,学会运用SIMULINK 对系统进行仿真,掌握PID 控制器参数的设计。 2 研究的原理 积分(I )控制具有积分控制规律的控制称为积分控制,即I 控制,I 控制的传递函数为: s s K G i C = )(。其中, Ki 称为积分系数。控制器的输出信号为:

U(t)= ?t I t e K )( dt。或者说,积分控制器输出信号u(t) 的变化速率与输入信号e(t) 成正比,即: )( )( t e dt t du K I = 。 对于一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个系统是有稳态误差的或简称有差系统.为了消除稳态误差,在控制器必须引入”积分项”.积分项对误差取决于时间的积分,随着时间的增加,积分项会增大使稳态误差进一步减小,直到等于零. 通常,采用积分控制器的主要目的就是使用系统无稳态误差,由于积分引入了相位滞后,使系统稳定性变差,增加积分器控制对系统而言是加入了极点,对系统的响应而言是可消除稳态误差,但这对瞬时响应会造成不良影响,甚至造成不稳定,因此,积分控制一般不单独使用,通常结合比例控制器构成比例积分(PI)控制器.

MATLAB课程设计实验体会

课程设计实验体会 学生姓名:李祥胜 学生学号:20120704 专业班级:光信息科学与技术 指导老师:miss Chen 学院:信息工程学院 题目: MATLAB学期实验总结

MATLAB概念及介绍 MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB集成环境主要包括五个部分:MATLAB语言、MATLAB工作环境、句柄图形、MATLAB数学函数库和数学建模、小波分析、MATLAB API(App lication Program Interface)。MATLAB语言是以数组为基本数据单位,包括控制流程语句、函数、数据结构、输人输出及面向对象等特点的高级语言。利用SIMULINK对系统进行仿真与分析,在进入虚拟实验环境后,不需要书写代码,只需使用鼠标拖动库中的功能模块并将它们连接起来,再按照实验要求修改各元器件的参数。通过虚拟实验环境建立实验仿真电路模型,可使一些枯燥的电路变得有趣味,复杂的波形变得形象生动,使得各种复杂的能量转换过程比较直观地呈现。 1.1、MATLAB语言特点及优势 1.1.1、语言特点 MATLAB被称为第四代计算机语言,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB的最突出的特点就是简洁。MATLAB用更直观的、符合人们思维习惯的代码,代替了C和FORTRAN语言的冗长代码。MATLAB 给用户带来的是最直观、最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点。 (1)语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用其丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。 (2)运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短,具体运算符见附表。 (3)MATLAB既具有结构化的控制语句(如for循环、while循环、break语句和if语句),又有面向对象编程的特性。 (4)语法限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用。 (5)程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。

课程设计分析方案——matlab瑞利衰落信道仿真

目录 摘要 (1) 1、设计原理 (2) 1.1设计目的 (2) 1.2仿真原理 (2) 1.2.1瑞利分布简介 (2) 1.2.2多径衰落信道基本模型 (2) 1.2.3产生服从瑞利分布的路径衰落 r(t> (3) 1.2.4产生多径延时 (4) 1.3仿真框架 (4) 2、设计任务 (4) 2.1设计任务要求 (4) 2.2 MATLAB 仿真程序要求 (4) 3、DSB调制解调分析的MATLAB实现 (5) 3.1 DSB调制解调的MATLAB实现 (5) 3.2瑞利衰落信道的MATLAB实现 (6) 4、模拟仿真及结果分析 (7) 4.1模拟仿真 (7) 4.1.1多普勒滤波器的频响 (7)

4.1.2多普勒滤波器的统计特性 (7) 4.1.3信道的时域输入/输出波形 (8) 4.2仿真结果分析 (8) 4.2.1时域输入/输出波形分 析 (8) 4.2.2频域波形分 析 (8) 4.2.3多普勒滤波器的统计特性分 析 (9) 5、小结与体会 (9) 6、参考文献 (9) MATLAB 通信仿真设计 摘要主要运用MATLAB进行编程,实现采用对输入信号进行抑制载波的双边带调幅;而后将调幅波输入信道,研究多径信道的特性对通信质量的影响;最后将信道内输出的条幅波进行同步解调,解调出与输入信号波形相类似的波形,

观测两者差别。同时输出多普勒滤波器的统计特性图及信号时域和频域的输入、输出波形。 关键字:双边带调幅瑞利衰落相干解调MATLAB 1、设计原理 1.1设计目的 由于多径和移动台运动等影响因素,使得移动信道对传输信号在时间、频率和角度上造成了色散,如时间色散、频率色散、角度色散等等,因此多径信道的特性对通信质量有着至关重要的影响,而多径信道的包络统计特性成为我们研究的焦点。根据不同无线环境,接收信号包络一般服从几种典型分布,如

MATLAB课程设计报告(绝对完整)

课程设计任务书 学生姓名:董航专业班级:电信1006班 指导教师:阙大顺,李景松工作单位:信息工程学院 课程设计名称:Matlab应用课程设计 课程设计题目:Matlab运算与应用设计5 初始条件: 1.Matlab6.5以上版本软件; 2.课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应 用”、线性代数及相关书籍等; 3.先修课程:高等数学、线性代数、电路、Matlab应用实践及信号处理类相关课程等。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1.课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成; 2.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析, 针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。具体设计要求包括: ①初步了解Matlab、熟悉Matlab界面、进行简单操作; ②MA TLAB的数值计算:创建矩阵矩阵运算、多项式运算、线性方程组、数值统计; ③基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形 标注、简单颜色设定等; ④使用文本编辑器编辑m文件,函数调用; ⑤能进行简单的信号处理Matlab编程; ⑥按要求参加课程设计实验演示和答辩等。 3.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: ①目录; ②与设计题目相关的理论分析、归纳和总结; ③与设计内容相关的原理分析、建模、推导、可行性分析; ④程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; ⑤课程设计的心得体会(至少500字); ⑥参考文献(不少于5篇); ⑦其它必要内容等。 时间安排:1.5周(分散进行) 参考文献: [1](美)穆尔,高会生,刘童娜,李聪聪.MA TLAB实用教程(第二版) . 电子工业出版社,2010. [2]王正林,刘明.精通MA TLAB(升级版) .电子工业出版社,2011. [3]陈杰. MA TLAB宝典(第3版) . 电子工业出版社,2011. [4]刘保柱,苏彦华,张宏林. MA TLAB 7.0从入门到精通(修订版) . 人民邮电出版社,2010. 指导教师签名:年月日 系主任(或责任教师)签名:年月日

Matlab与通信仿真课程设计报告材料

《MATLAB与通信仿真》课程设计指导老师: 水英、汪泓 班级:07通信(1)班 学号:E07680104 :林哲妮

目录 目的和要求 (1) 实验环境 (1) 具体容及要求 (1) 实验容 题目一 (4) 题目容 流程图 程序代码 仿真框图 各个参数设置 结果运行 结果分析 题目二 (8) 题目容 流程图 程序代码 仿真框图 各个参数设置 结果运行 结果分析 题目三 (17) 题目容 流程图 程序代码 仿真框图 各个参数设置 结果运行 结果分析 题目四 (33) 题目容 流程图 程序代码 仿真框图 各个参数设置 结果运行 结果分析 心得与体会 (52)

目的和要求 通过课程设计,巩固本学期相关课程MATLAB与通信仿真所学知识的理解,增强动手能力和通信系统仿真的技能。在强调基本原理的同时,更突出设计过程的锻炼。强化学生的实践创新能力和独立进行科研工作的能力。 要求学生在熟练掌握MATLAB和simulink仿真使用的基础上,学会通信仿真系统的基本设计与调试。并结合通信原理的知识,对通信仿真系统进行性能分析。 实验环境 PC机、Matlab/Simulink 具体容及要求 基于MATLAB编程语言和SIMULINK通信模块库,研究如下问题: (1)研究BFSK在加性高斯白噪声信道下(无突发干扰)的误码率性能与信噪比之间的关系; (2)研究BFSK在加性高斯白噪声信道下(有突发干扰)的误码率性能与信噪比之间的关系; 分析突发干扰的持续时间对误码率性能的影响。 (3)研究BFSK+信道编码(取BCH码和汉明码)在加性高斯白噪声信道下(无突发干扰) 的误码率性能与信噪比之间的关系;分析不同码率对误码率性能的影响。比较不同信道编码方式的编码增益性能。 (4)研究BFSK+信道编码(取BCH码和汉明码)在加性高斯白噪声信道下(有突发干扰) 的误码率性能与信噪比之间的关系;分析突发干扰的持续时间对误码率性能的影响。分析不同码率对误码率性能的影响。比较不同信道编码方式的编码增益性能。

相关主题
文本预览
相关文档 最新文档