matlab仿真项⽬⼼得,Matlab与Simulink系统仿真学习⼼得《Matlab与Simulink系统仿真学习⼼得》由会员分享,可在线阅读,更多相关《Matlab与Simulink系统仿真学习⼼得(8页珍藏版)》请在⼈⼈⽂库⽹上搜索。
1、Matlab与Simulink系统仿真学习⼼得班级:07610 学号: 姓名:马楠第⼀部分:Matlab学习⼼得以及实践Matlab是迄今为⽌我所见到过的功能最为强⼤实⽤范围宽⼴的软件。的确Matlab适⽤于教学,航天,⽹络仿真等等。⽽且提供了很多功能强⼤的⼯具箱,并且最为突出的是它⾃带的很全⾯细致的帮助⽂档,⽆论你是初学者还是⽼⼿都会惊叹于此,你也不必去花很多时间去熟悉那些繁杂的命令,并且很容易通过这些帮助⽂档得到关于这些函数最精准的⽤法。Matlab是⼀个建⽴在矩阵操作上的软件,我想要想真正懂得并理解Matlab与⼀般的语⾔⽐如C或者java的区别,那么你就应该真正理解矩阵的思想。⽽且要熟。
2、悉Matlab对矩阵存储的⽅式(在下⽂中我会详细解释与之相关的内容),这样对提⾼你的代码执⾏效率与易懂性都有很⼤的帮助。但是Matlab究竟应该怎么定位呢?⼀个编程软件,⼀个数学⼯具,⼀个⼯具箱,⼀个开发引擎,⼀个仿真⼯具,⼀个虚拟现实软件 的确要精准的说出Matlab的作⽤很难,或许去定义这个东西到底是⽤来⼲什么的并不重要,It is just a tool。关于Matlab的学习⽅法,我想与别的语⾔有很⼤不同,对于汇编或者C,我们应当很注重底层的⼀些操作,⽐如栈或者队列存储数据的⽅式,int或者double类型转换的时候产⽣的数据丢失,或者指针⽅⾯很头疼的⼀些东西,但是对于Matlab你根。
3、本不必去注重这些东西,也不必去清除的记得那个函数的具体调⽤⽅式,那个函数的内容与结构等等。你需要的只是相当⽤⼀个笔记本写下你⼀步⼀步实现⽬标的步骤⽽已。⼀种草稿纸式的语⾔。你所学的东西很⼤部分都是为你要做的⽬标来服务的,也许这就是当初⾯向对象式语⾔产⽣的原因,但是Matlab就是这种语⾔的⼀个代表。好了,就说到这⾥了,接下来是我⾃⼰学习中对Matlab的⼀些应⽤中所遇到的问题以及思考⽅式和解决办法。1 离散信号卷积:N1=input(N1=);%输⼊N1N2=input(N2=);%输⼊N2k1=0:(N1-1);%定义序列f1的对应序号向量k2=0:(N2-1);% 序列f2的对应序号向量f。
4、1=ones(1,N1);%f1为阶跃序列f2=0.5*k2;%f2为斜坡序列f,k=dconv(f1,f2,k1,k2)%求离散卷积其中dconv函数的代码为:
function f,k=dconv(f1,f2,k1,k2) %The function of compute f=f1*f2% f: 卷积和序列f(k)对应的⾮零样值向量% k: 序列f(k)的对应序号向量% f1: 序列f1(k)⾮零样值向量% f2: 序列f2(k)的⾮零样值向量% k1: 序列f1(k)的对应序号向量% k2: 序列f2(k)的对应序号向量f=conv(f1,f2) %计算序列f1与f2的卷积和fk0=k1(。
5、1)+k2(1);%计算序列f⾮零样值的起点位置k3=length(f1)+length(f2)-2;%计算卷积和f的⾮零样值的宽度k=k0:k0+k3 %确定卷积和f⾮零样值的序号向量subplot(2,2,1)stem(k1,f1)%在⼦图1绘序列f1(k)时域波形图
title(f1(k)xlabel(k)ylabel(f1(k)subplot(2,2,2)stem(k2,f2)%在图2绘序列f2(k)时波形图
title(f2(k)xlabel(k)ylabel(f2(k)subplot(2,2,3)stem(k,f);%在⼦图3绘序列f(k)的波形图title(f(k)f1(k)与f2(。
6、k)的卷积和f(k)xlabel(k)ylabel(f(k)h=get(gca,position);h(3)=2.5*h(3);set(gca,position,h)%将第三个⼦图的横坐标范围扩为原来的2.5倍2 ⼀次物理实验中的数据处理,关于⾮线性电阻。x=12.042 11.844 11.644 11.444 11.244 11.043 10.843 10.645
10.447 10.240 10.054 9.843 9.640 9.447 8.950 8.448 7.946 7.441 6.940 6.444 5.942 5.446 4.946 4.445 3.944
3.447 2.9。
7、42 2.442 2.246 2.045 1.846 1.643 1.464 1.252 1.038 0.849 0.642 0.448 0.208 0 ;y=0.601 0.915 1.349 1.742
2.152 2.572 2.994
3.414 3.840
4.285 4.678 4.612 4.526 4.447 4.246 4.043 3.846 3.635 3.433 3.232 3.028 2.827
2.625 2.442 2.220 2.018 1.814 1.614 1.535 1.455 1.376 1.235 1.101 0.950 0.791 0.642 0.49。
8、1 0.341 0.158 0.001p1=polyfit(x(1:11),y(1:11),1); p2=polyfit(x(11:31),y(11:31),1); p3=polyfit(x(31:end),y(31:end),1);
Y1=vpa(poly2sym(p1,x),6) Y2=vpa(poly2sym(p2,x),6) Y3=vpa(poly2sym(p3,x),6) x1=min(x(1:11):0.1:max(x(1:11);
x2=min(x(11:31):0.1:max(x(11:31); x3=min(x(31:end):0.1:max(x(31:end); y1=po。
matlab学好了有什么用
9、lyval(p1,x1); y2=polyval(p2,x2); y3=polyval(p3,x3); plot(x,y,o,x1,y1,x2,y2,x3,y3) ;xlabel(电压值U/v);ylabel(电流值
I/mA);title(⾮线性电阻伏安特性曲线);grid on3:三维⽴体图形灯光效果x,y=meshgrid(-
8:0.5:8);R=sqrt(x.2+y.2)+eps;z=sin(R)./R;surf(x,y,z,FaceColor,interp,EdgeColor,none,FaceLighting,phong);axis
tight;daspect(5 5 1);caml。
10、ight leftview(-50,30)4:地形模拟:A=0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 20
0.2 0.2 0.2 0.2 0.2 0.2 0.4 0.4 0.3 0.2 0.3 0.2 0.1 0.2 0.2 0.4 0.3 0.2 0.2 0.2 0.2 19 0.3 0.2 0.2 0.2 0.2 0.4 0.3 0.3 0.3 0.3 0.4 0.2 0.2 0.2
0.2 0.4 0.4 0.4 0.3 0.2 0.2 18 0.2 0.3 0.3 0.2 0.3 1 0.4 0.5 0.3 0.3 。
11、0.3 0.3 0.2 0.2 0.2 0.6 0.5 0.4 0.4 0.2 0.2 17 0.2 0.2 0.4 0.2 1 1.1 0.9 0.4 0.3 0.3 0.5 0.3 0.2 0.2 0.2 0.7 0.3 0.6 0.6 0.3 0.4 16 0.2 0.2 0.9 0.7 1 1 1 0.7 0.5 0.3 0.2 0.2 0.2 0.6 0.2 0.8 0.7 0.9 0.5 0.5 0.4 15 0.2 0.3 1 1 1 1.2 1 1.1 0.8 0.3 0.2 0.2 0.2 0.5 0.3 0.6 0.6 0.8 0.7 0.6 0.5 14 0.2 0.4 。
12、1 1 1.1 1.1 1.1 1.1 0.6 0.3 0.4 0.4 0.2 0.7 0.5 0.9 0.7 0.4 0.9 0.8 0.3 13 0.2 0.2 0.9 1.1 1.2 1.2 1.1 1.1 0.6 0.3 0.5 0.3 0.2 0.4 0.3 0.7 1 0.7 1.2 0.8 0.4 12 0.2 0.3 0.4 0.9 1.1 1 1.1 1.1 0.7 0.4 0.4 0.4 0.3 0.5 0.5 0.8 1.1 0.8 1.1 0.9 0.3 11 0.3 0.3 0.5 1.2 1.2 1.1 1 1.2 0.9 0.5 0.6 0.4 0.6 0.6 0。
13、.3 0.6 1.2 0.8 1 0.8 0.5 10 0.3 0.5 0.9 1.1 1.1 1 1.2 1 0.8 0.7 0.5 0.6 0.4 0.5 0.4 1 1.3 0.9 0.9 1 0.8 9 0.3 0.5 0.6
1.1 1.2 1 1 1.1 0.9 0.4 0.4 0.5 0.5 0.8 0.6 0.9 1 0.5 0.8 0.8 0.9 8 0.4 0.5 0.4 1 1.1 1.2 1 0.9 0.7 0.5 0.6 0.3 0.6 0.4 0.6 1 1 0.6 0.9 1 0.7 7 0.3 0.5 0.8 1.1 1.1 1 0.8 0.7 0.7 0.4 。
14、0.5 0.4 0.4 0.5 0.4 1.1 1.3 0.7 1 0.7 0.6 6 0.3 0.5 0.9 1.1 1 0.7 0.7 0.4 0.6 0.4 0.4 0.3 0.5 0.5 0.3
0.9 1.2 0.8 1 0.8 0.4 5 0.2 0.3 0.6 0.9 0.8 0.8 0.6 0.3 0.4 0.5 0.4 0.5 0.4 0.2 0.5 0.5 1.3 0.6 1 0.9 0.3 4 0.2 0.3 0.3 0.7 0.6 0.6 0.4 0.2 0.3 0.5 0.8 0.8 0.3 0.2 0.2 0.8 1.3 0.9 0.8 0.8 0.4 3 0.2 。
15、0.3 0.3 0.6 0.3 0.4 0.3 0.2 0.2 0.3 0.6 0.4 0.3 0.2 0.4 0.3 0.8 0.6 0.7 0.4 0.4 2 0.2 0.3 0.4 0.4 0.2 0.2 0.2 0.3 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.5 0.7 0.4 0.4 0.3 0.3 1 0.2 0.2 0.3 0.2 0.2 0.3 0.2 0.2 0.2 0.2 0.2 0.1 0.2 0.4 0.3 0.6 0.5 0.3 0.3 0.3 0.2 0 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.。
16、2 0.2 0.2 0.4 0.7 0.4 0.2 0.4 0.5 0.3;z=A(2:end,2:end)x,y=meshgrid(0:20,20:-
1:0);surf(x,y,z)xlabel(x)X,Y=meshgrid(0:0.3:20,20:-0.3:0);Z=interp2(x,y,z,X,Y,spline)figuresurf(X,Y,Z) 第⼆部分:Simulink学习⼼得以及实践Simulink是Matlab最重要的组件之⼀,它提供⼀个动态系统建模、仿真和综合分析的集成环境。在该环境中,⽆需⼤量书写程序,⽽只需要通过简单直观的⿏标操作,就可构造出复杂的系统。Simulink具。
17、有适应⾯⼴、结构和流程清晰及仿真精细、贴近实际、效率⾼、灵活等优点,并基于以上优点Simulink已被⼴泛应⽤于控制理论和数字信号处理的复杂仿真和设计。同时有⼤量的第三⽅软件和硬件可应⽤于或被要求应⽤于Simulink。最开始的仿真是没有图形化输⼊的,所谓模型化图形输⼊是指SIMULINK提供了⼀些按功能分类的基本的系统模块,⽤户只需要知道这些模块的输⼊输出及模块的功能,⽽不必考察模块内部是如何实现的,通过对这些基本模块的调⽤,再将它们连接起来就可以构
成所需要的系统模型(以.mdl⽂件进⾏存取),进⽽进⾏仿真与分析。现在来想其实要⽤Simulink去仿真⼀个系统不是很⿇烦,只是实现⼀些拖拽或者参数设置什么的,但是要真正的去设计完善⼀个系统的确需要很多知识以及精⼒。我们必须了解这个系统的每⼀个步骤以及需要什么样的组件与之匹配。⽽且在仿真出现错误之后去分析也是很⿇烦的⼀件事情,我们必须有对系统详细的分析和充分了解以及对Simulink每个组件充分的了解才能真正到错误所在并且修正。所以学好计算机仿真重在理论知识。接下来是⼀些⾃⼰做的Simulink仿真。1:阶跃信号的积分仿真图仿真结果:2 房屋产热的⼀个实例该问题是模拟⼀个户外条件下⼀所房屋能够产⽣的热量的例⼦这是仿真结果图。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。