北工大matlab作业实验报告

合集下载

matlab实验报告

matlab实验报告

Matlab实验报告一、实验名称:matlab实验报告二、实验目的:熟悉并学会掌握matlab的基本操作。

三、实验内容:准确编写第二,三,四章课后习题的matlab程序。

四、实验数据处理第二章MATLAB 基本操作第一题:利用基本矩阵产生3X3和15X8的单位阵、全1阵、全0阵,随机分布矩阵([-1,1]之间)、正态分布随机阵(均值为1,方差为4)。

程序:>> A=eye(3)A = 1 0 00 1 00 0 1>> A=ones(3)A =1 1 11 1 11 1 1>> A=zeros(3)A =0 0 00 0 00 0 0>> A=1-2*rand(3)A =-0.9003 0.0280 0.08710.5377 -0.7826 0.9630-0.2137 -0.5242 -0.6428>> A=2*randn(3)+1A =0.1349 1.5754 3.3783-2.3312 -1.2929 0.92471.2507 3.3818 1.6546>> B=eye(2,3)B =1 0 00 1 0>> B=ones(2,3)B = 1 1 11 1 1>> B=zeros(2,3)B =0 0 00 0 0>> B=1-2*rand(2,3)B = 0.1106 -0.5839 -0.4764-0.2309 -0.8436 0.6475>> B=2*randn(2,3)+1B =1.3493 2.4516 5.36640.6266 -0.1766 0.7272第五题:利用rand函数产生(0,1)间均匀分布的5X5随机矩阵A,然后统计A中大于等于0.6的元素个数。

程序:A=rand(5)A =0.4057 0.0579 0.2028 0.0153 0.41860.9355 0.3529 0.1987 0.7468 0.84620.9169 0.8132 0.6038 0.4451 0.52520.4103 0.0099 0.2722 0.9318 0.20260.8936 0.1389 0.1988 0.4660 0.6721>> n=sum(sum(A>=0.6))n =9第六题:利用rand函数产生均值为0,方差为1的4X4正态分布随机矩阵A,然后统计A 中大于-0.5且小于0.5的元素个数。

(最新版)MATLAB实验报告

(最新版)MATLAB实验报告

(最新版)MATLAB实验报告实验一典型环节的MATLAB仿真一、实验目的1.熟悉MATLAB桌面和命令窗口,初步了解SIMULINK功能模块的使用方法。

2.通过观察典型环节在单位阶跃信号作用下的动态特性,加深对各典型环节响应曲线的理解。

3.定性了解各参数变化对典型环节动态特性的影响。

二、SIMULINK的使用MATLAB中SIMULINK是一个用来对动态系统进行建模、仿真和分析的软件包。

利用SIMULINK功能模块可以快速的建立控制系统的模型,进行仿真和调试。

1.运行MATLAB软件,在命令窗口栏“>>”提示符下键入simulink命令,按Enter 键或在工具栏单击按钮,即可进入如图1-1所示的SIMULINK仿真环境下。

2.选择File菜单下New下的Model命令,新建一个simulink 仿真环境常规模板。

3.在simulink仿真环境下,创建所需要的系统。

以图1-2所示的系统为例,说明基本设计步骤如下:1)进入线性系统模块库,构建传递函数。

点击simulink下的“Continuous”,再将右边窗口中“Transfer Fen”的图标用左键拖至新建的“untitled”窗口。

2)改变模块参数。

在simulink仿真环境“untitled”窗口中双击该图标,即可改变传递函数。

其中方括号内的数字分别为传递函数的分子、分母各次幂由高到低的系数,数字之间用空格隔开;设置完成后,选择OK,即完成该模块的设置。

3)建立其它传递函数模块。

按照上述方法,在不同的simulink 的模块库中,建立系统所需的传递函数模块。

例:比例环节用“Math”右边窗口“Gain”的图标。

4)选取阶跃信号输入函数。

用鼠标点击simulink下的“Source”,将右边窗口中“Step”图标用左键拖至新建的“untitled”窗口,形成一个阶跃函数输入模块。

5)选择输出方式。

用鼠标点击simulink下的“Sinks”,就进入输出方式模块库,通常选用“Scope”的示波器图标,将其用左键拖至新建的“untitled”窗口。

MATLAB实验报告(打印版)

MATLAB实验报告(打印版)

MATLAB实验报告班别:09电气3班姓名:李嘉明学号:200924122301实验一/二 MATLAB的基础操作3.自定义一个变量,然后分别用8种不同的数字显示格式显示查看。

>> a=[1.1,1.2,1.3;1.4,1.5,1.6;1.7,1.8,1.9]a =1.1000 1.2000 1.30001.4000 1.5000 1.60001.7000 1.8000 1.9000>> format long>> aa =1.100000000000000 1.200000000000000 1.3000000000000001.400000000000000 1.500000000000000 1.6000000000000001.700000000000000 1.800000000000000 1.900000000000000>> format short e>> aa =1.1000e+000 1.2000e+000 1.3000e+0001.4000e+000 1.5000e+000 1.6000e+0001.7000e+000 1.8000e+000 1.9000e+000>> format long e>> aa =1.100000000000000e+000 1.200000000000000e+000 1.300000000000000e+0001.400000000000000e+000 1.500000000000000e+000 1.600000000000000e+0001.700000000000000e+000 1.800000000000000e+000 1.900000000000000e+000 >> format hex>> aa =3ff199999999999a 3ff3333333333333 3ff4cccccccccccd3ff6666666666666 3ff8000000000000 3ff999999999999a3ffb333333333333 3ffccccccccccccd 3ffe666666666666>> format +>> aa =+++++++++>> format rat>> aa =11/10 6/5 13/107/5 3/2 8/517/10 9/5 19/10>> format short>> aa =1.1000 1.2000 1.30001.4000 1.5000 1.60001.7000 1.8000 1.90005、己举例比较给矩阵的全行赋值,取出矩阵中某一个或几个元素,然后组成一个新的矩阵。

北工大自控matlab实验报告

北工大自控matlab实验报告

自动控制原理实验报告一、试验设计构造一个二阶闭环系统,使得该系统的%30≥p M对于任意二阶系统,其闭环传递函数为2222)(G nn nc s s s ωξωω++=,其中ξ为二阶系统的阻尼比,n ω为二阶系统的无阻尼振荡频率,该系统的超调量为πξξ21--=e M p 。

若要%30≥p M ,则0.36≤ξ。

取0.3=ξ,又n ω任意,所以取20=n ω,则要求设计的闭环传递函数为40012400)(2++=s s s G c 。

二、实验内容及步骤1.以MATLAB 命令行的方式,进行系统仿真,确定系统时域性能指标 num=[400]; den=[1 12 400]; step(num,den)由图可知,该系统的超调量为%30%37>=p M ,满足要求,上升时间为0985.0=r t ,峰值时间为164.0=p t ,调节时间为0.472=s t 。

2.通过改变系统的开环放大倍数K (分增大和减小两种情况)和系统的阻尼比系数(分增大和减小两种情况),进行系统仿真分析,确定新的性能指标,并与原构造系统的进行比较,根据响应曲线分析并说明出现的现象 (1)增大开环放大倍数num=[500]; den=[1 12 500]; step(num,den)由图可知,该系统的超调量为%30%42>=p M ,上升时间为0858.0=r t ,峰值时间146.0=p t ,调节时间0.48=s t 。

(2)减小开环放大倍数 num=[300]; den=[1 12 300]; step(num,den)由图可知,该系统的超调量为%30%31>=p M ,上升时间为119.0=r t ,峰值时间为0.1921=p t ,调节时间为0.455=s t 。

(3)增大阻尼比 num=[400];den=[1 12.4 400]; step(num,den)由图可知,该系统的超调量为%30%36>=p M ,上升时间为0995.0=r t ,峰值时间为0.163=p t ,调节时间为0.486=s t 。

MATLAB实验报告

MATLAB实验报告

v1.0 可编辑可修改实验一 MATLAB 环境的熟悉与基本运算一、实验目的及要求1.熟悉MATLAB 的开发环境; 2.掌握MATLAB 的一些常用命令;3.掌握矩阵、变量、表达式的输入方法及各种基本运算。

二、实验内容1.熟悉MATLAB 的开发环境: ① MATLAB 的各种窗口:命令窗口、命令历史窗口、工作空间窗口、当前路径窗口。

②路径的设置:建立自己的文件夹,加入到MATLAB 路径中,并保存。

设置当前路径,以方便文件管理。

2.学习使用clc 、clear ,了解其功能和作用。

3.矩阵运算:已知:A=[1 2;3 4]; B=[5 5;7 8]; 求:A*B 、A.*B ,并比较结果。

4.使用冒号选出指定元素:已知:A=[1 2 3;4 5 6;7 8 9]; 求:A 中第3列前2个元素;A 中所有列第2,3行的元素; 5.在MATLAB 的命令窗口计算: 1) )2sin(π2) 5.4)4.05589(÷⨯+ 6.关系及逻辑运算1)已知:a=[5:1:15]; b=[1 2 8 8 7 10 12 11 13 14 15],求: y=a==b ,并分析结果 2)已知:X=[0 1;1 0]; Y=[0 0;1 0],求: x&y+x>y ,并分析结果 7.文件操作1)将0到1000的所有整数,写入到D 盘下的文件 2)读入D 盘下的文件,并赋给变量num8.符号运算1)对表达式f=x 3-1 进行因式分解2)对表达式f=(2x 2*(x+3)-10)*t ,分别将自变量x 和t 的同类项合并 3)求3(1)xdz z +⎰三、实验报告要求完成实验内容的3、4、5、6、7、8,写出相应的程序、结果实验二 MATLAB 语言的程序设计一、实验目的1、熟悉 MATLAB 程序编辑与设计环境2、掌握各种编程语句语法规则及程序设计方法3、函数文件的编写和设计4、了解和熟悉变量传递和赋值二、实验内容1.编写程序,计算1+3+5+7+…+(2n+1)的值(用input 语句输入n 值)。

matlab大作业实验报告

matlab大作业实验报告

matlab大作业学号姓名:年级:专业:1、产生一个10 10的随机矩阵A,要求A中元素均为整数,范围[1,50]。

1)求出A中所有元素之和S,平均值M。

2)找到所有小于平均值,且能被3整除的元素。

3)绘制出A的二维纵向柱状图,横坐标为[8 5 9 1 2 3 4 7 10 13],条形宽度为0.7的“stacked”样式。

代码如下:clc,clear all,close allA=round(rand(10,10)*50);disp(A)S=sum(sum(A));P=mean(mean(A));disp(S)disp(P)disp('所有小于平均数且能被三整除的元素')XPS=H((mod(H,3)==0)&(H<P));disp(XPS')subplot(1,1,1),bar(A,0.7,'stacked'),title('ygh');set(gca,'XTickLabel',{'8','5','9','1','2','3','4','7','10','13'})2、产生一个随机四位密码。

用户用“input”进行输入对比。

猜错提示“WRONG”,正确提示“RIGHT”同时退出程序,最多五次机会。

代码如下:clc,clear all,close alldisp('请输入密码')A=round(8999*rand(1,1))+1000;m=1;while m<=5N=input('请输入一个四位数:');if A==N;disp('RIGHT');breakelsedisp('WRONG');endm=m+1;enddisp('密码是:')disp(A)disp('输入结束')3、按照脚本文件的编程风格,用for和while循环嵌套输出如下的乘法口诀表。

MATLAB实验报告

MATLAB实验报告

MATLAB实验报告MATLAB 实验报告姓名:专业:学号:实验⼀ MATLAB环境的熟悉与基本运算⼀、实验⽬的:1.熟悉MATLAB开发环境2.掌握矩阵、变量、表达式的各种基本运算⼆、实验基本知识:1.熟悉MATLAB环境:MATLAB桌⾯和命令窗⼝、命令历史窗⼝、帮助信息浏览器、⼯作空间浏览器⽂件和搜索路径浏览器。

2.掌握MATLAB常⽤命令3.MATLAB变量与运算符变量命名规则如下:(1)变量名可以由英语字母、数字和下划线组成(2)变量名应以英⽂字母开头(3)长度不⼤于31个(4)区分⼤⼩写MATLAB中设置了⼀些特殊的变量与常量,列于下表。

MATLAB运算符,通过下⾯⼏个表来说明MATLAB的各种常⽤运算符表2 MATLAB算术运算符表3 MATLAB关系运算符表4 MATLAB逻辑运算符表5 MATLAB特殊运算4.MATLAB的⼀维、⼆维数组的寻访表6 ⼦数组访问与赋值常⽤的相关指令格式5.MATLAB的基本运算表7 两种运算指令形式和实质内涵的异同表6.MATLAB的常⽤函数表8 标准数组⽣成函数表9 数组操作函数三、实验内容1、学习安装MATLAB软件。

2、学习使⽤help命令,例如在命令窗⼝输⼊help eye,然后根据帮助说明,学习使⽤指令eye(其它不会⽤的指令,依照此⽅法类推)3、学习使⽤clc、clear,观察command window、command history和workspace 等窗⼝的变化结果。

4、初步程序的编写练习,新建M-file,保存(⾃⼰设定⽂件名,例如exerc1、exerc2、exerc3……),学习使⽤MATLAB的基本运算符、数组寻访指令、标准数组⽣成函数和数组操作函数。

注意:每⼀次M-file的修改后,都要存盘。

四、实验结果练习A:(1)help rand,然后随机⽣成⼀个2×6的数组,观察command window、command history和workspace等窗⼝的变化结果。

北工大matlab作业实验报告

北工大matlab作业实验报告

北工大MATLAB实验报告完成日期:2018.12目录实验一用FFT进行谱分析 (3)一、实验内容 (3)二、实验过程 (3)三、实验代码 (4)四、实验结果及分析 (5)五、实验心得 (5)实验二噪声数据的抑制 (6)一、实验内容 (6)二、实验过程 (7)三、实验结果分析 (14)四、实验心得 (15)参考文献 (15)实验一用FFT进行谱分析一、实验内容FFT的用途之一是找出隐藏或淹没在噪声时域信号中信号的频率成分。

本题要求用FFT 对试验数据进行谱分析,指出数据包含的频率成份。

提示:首先建立试验数据。

过程推荐如下:生成一个包含两个频率成分的试验信号,对这个信号加入随机噪声,形成一个加噪信号y。

(试验数据参数推荐为:数据采样频率为1000Hz,时间区间从t=0到t=0.25,步长0.001秒,噪声的标准偏差为2,两个频率成分的试验信号可取50Hz和120Hz)。

(1)绘制加噪信号y它的波形。

(2)求出含噪声信号y的离散傅立叶变换(取它的FFT),(FFT试验参数推荐为:256点)。

(3)求出信号的功率谱密度(它是不同频率所含能量的度量),并绘制功率谱图,标记出两个频谱峰值对应的频率分量。

二、实验过程1.打开matlab软件,根据实验要求,用已知条件求出重要参数:N=256;n=0:N-1;t=n/fs;2.绘制加入了噪声信号的y图象:y=sin(2*pi*50*t)+sin(2*pi*120*t)+2*randn(size(t));subplot(2,2,1);plot(y);title('y的波形');3.对y求付里叶变换:Y=fft(y,N);4.绘制Y的幅值图象:fudu=abs(Y);f=n*fs/N;subplot(2,2,2)plot(f,fudu);5.抽取256点进行绘图:subplot(2,2,3)plot(f(1:N/2),fudu(1:N/2));6.利用y的自相关函数求出y的功率谱,并绘图:y2=xcorr(y,'unbiased');y2p=fft(y2,N);yk=abs(y2p);subplot(2,2,4)plot(f(1:N/2),yk(1:N/2));title('功率谱')三、实验代码N=256;n=0:N-1;t=n/fs;y=sin(2*pi*50*t)+sin(2*pi*120*t)+2*randn(size(t)); subplot(2,2,1);plot(y);title('y的波形');Y=fft(y,N);fudu=abs(Y);f=n*fs/N;subplot(2,2,2)plot(f,fudu)subplot(2,2,3)plot(f(1:N/2),fudu(1:N/2));y2=xcorr(y,'unbiased');y2p=fft(y2,N);yk=abs(y2p);subplot(2,2,4)plot(f(1:N/2),yk(1:N/2));title('功率谱')四、实验结果及分析结果分析:功率谱的两个峰值对应的频率分别为:f=50Hz和120Hz五、实验心得学习了一个学期的MATLAB,现在终于能够进行一次实践了。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

北工大MATLAB实验报告
完成日期:2018.12
目录
实验一用FFT进行谱分析 (3)
一、实验内容 (3)
二、实验过程 (3)
三、实验代码 (4)
四、实验结果及分析 (5)
五、实验心得 (5)
实验二噪声数据的抑制 (6)
一、实验内容 (6)
二、实验过程 (7)
三、实验结果分析 (14)
四、实验心得 (15)
参考文献 (15)
实验一用FFT进行谱分析
一、实验内容
FFT的用途之一是找出隐藏或淹没在噪声时域信号中信号的频率成分。

本题要求用FFT 对试验数据进行谱分析,指出数据包含的频率成份。

提示:首先建立试验数据。

过程推荐如下:生成一个包含两个频率成分的试验信号,对这个信号加入随机噪声,形成一个加噪信号y。

(试验数据参数推荐为:数据采样频率为1000Hz,时间区间从t=0到t=0.25,步长0.001秒,噪声的标准偏差为2,两个频率成分的试验信号可取50Hz和120Hz)。

(1)绘制加噪信号y它的波形。

(2)求出含噪声信号y的离散傅立叶变换(取它的FFT),(FFT试验参数推荐为:256点)。

(3)求出信号的功率谱密度(它是不同频率所含能量的度量),并绘制功率谱图,标记出两个频谱峰值对应的频率分量。

二、实验过程
1.打开matlab软件,根据实验要求,用已知条件求出重要参数:
N=256;
n=0:N-1;
t=n/fs;
2.绘制加入了噪声信号的y图象:
y=sin(2*pi*50*t)+sin(2*pi*120*t)+2*randn(size(t));
subplot(2,2,1);
plot(y);title('y的波形');
3.对y求付里叶变换:
Y=fft(y,N);
4.绘制Y的幅值图象:
fudu=abs(Y);
f=n*fs/N;
subplot(2,2,2)
plot(f,fudu);
5.抽取256点进行绘图:
subplot(2,2,3)
plot(f(1:N/2),fudu(1:N/2));
6.利用y的自相关函数求出y的功率谱,并绘图:
y2=xcorr(y,'unbiased');
y2p=fft(y2,N);
yk=abs(y2p);
subplot(2,2,4)
plot(f(1:N/2),yk(1:N/2));title('功率谱')
三、实验代码
N=256;
n=0:N-1;
t=n/fs;
y=sin(2*pi*50*t)+sin(2*pi*120*t)+2*randn(size(t)); subplot(2,2,1);
plot(y);title('y的波形');
Y=fft(y,N);
fudu=abs(Y);
f=n*fs/N;
subplot(2,2,2)
plot(f,fudu)
subplot(2,2,3)
plot(f(1:N/2),fudu(1:N/2));
y2=xcorr(y,'unbiased');
y2p=fft(y2,N);
yk=abs(y2p);
subplot(2,2,4)
plot(f(1:N/2),yk(1:N/2));title('功率谱')
四、实验结果及分析
结果分析:功率谱的两个峰值对应的频率分别为:f=50Hz和120Hz
五、实验心得
学习了一个学期的MATLAB,现在终于能够进行一次实践了。

实验过程中,总会出现一些错误。

这些错误经常是因为错误使用标点造成的。

所以,在编程的过程中要十分小心。

虽然这只是一次小实验,但我感觉到了这个软件功能的强大,以后我还会更加深入地学习。

实验二 噪声数据的抑制
一、 实验内容
考虑一组实际数据,它可以用以下公式建模:
11.02cos(284)040()2
0n
n n x n ππ⎧++≤≤⎪
=⎨⎪⎩
其它
可以看出,这是在缓慢变化的指数信号分量(1.02n
)上叠加了一个正弦干扰噪声序列。

试设计一种算法(滤波器),要求在()x n 中能够抑制、甚至消除这个正弦干扰噪声。

提示:可以考虑用L 点移动平均滤波器(MA )对()x n 进行滤波处理,若L=3,并用()x n 作为MA 滤波器的输入信号,则其输出:
[]2
1()()
31
()(1)(2)3
i y n x n i x n x n x n ==-=+-+-∑
是3个最近的输入值的数字平均。

3点MA 的框图模型见图。

图3点MA 滤波器的框图
更长长度的MA 滤波器有可能产生更好的噪声抑制效果,请试验选取7点MA 滤波器,即:
6
1()()7i y n x n i ==-∑
给出试验结果。

二、实验过程
1.打开simulink,并选择所需要的模板,然后开始放置元件
2.首先产生一个指数信号
(1)我一开始用的是rate limiter来产生时钟信号n
(2)后来发现可以用ramp产生时间信号,使图象更加简单
(3)设置参数:
(4)然后进行一次仿真,波形图如下:
产生时钟信号(5)接下来建立指数信号
(6)进行仿真,波形如下:
(7)但我们需要的非零值区间为[0,40],根据上前面的波形图,很明显不是实验所需要的信号,所以,利用两个单位阶跃信号相减建立窗函数:
(8)进行一次仿真,波形如下:
所以,得到了所需要的窗信号(9)将窗信号与指数信号相乘
(10)进行仿真,波形如下
这便是我们所需要的指数信号
(11)类似于上述的方法,建立噪声正弦波信号,并进行仿真,如下
仿真波形:
(12)接着,将这两部分信号叠加,得到输入信号x(n):
仿真波形:
(13)建立七点MA滤波器进行滤波:
仿真波形:
三、实验结果分析
七点MA滤波器对抑制信号有良好效果
四、实验心得
本次实验花相当长的时间,一开始觉得题目挺简单的,但是由于Simulink软件用提不熟练,所以大部分时间用来探索元器件的使用和功能上。

在图书馆翻阅了很多资料,但还是处于一知半解状态。

再从网上查找资料,用了特别多的时间。

不过,最后还是把实验做完了,还是感到很开心的。

参考文献
1.《Matlab软件基础教程》罗杰,陕西师范大学出版总社有限公司
2.《MATLAB 8.X实战指南》赵小川,清华大学出版社
3.《数字信号处理导论》胡广书,清华大学出版社
4.《MATLAB图像处理编程与应用》张涛,机械工业出版社
5.《MATLAB应用与实验教程》贺超英,电子工业出版社。

相关文档
最新文档