Matlab与Simulink系统仿真学习心得 马楠

时间:2024.4.29

Matlab与Simulink系统仿真学习心得

班级:07610 学号:072019 姓名:马楠

第一部分:Matlab学习心得以及实践

Matlab是迄今为止我所见到过的功能最为强大实用范围宽广的软件。的确Matlab适用于教学,航天,网络仿真等等。而且提供了很多功能强大的工具箱,并且最为突出的是它自带的很全面细致的帮助文档,无论你是初学者还是老手都会惊叹于此,你也不必去花很多时间去熟悉那些繁杂的命令,并且很容易通过这些帮助文档得到关于这些函数最精准的用法。 Matlab是一个建立在矩阵操作上的软件,我想要想真正懂得并理解Matlab与一般的语言比如C或者java的区别,那么你就应该真正理解矩阵的思想。而且要熟悉Matlab对矩阵存储的方式(在下文中我会详细解释与之相关的内容),这样对提高你的代码执行效率与易懂性都有很大的帮助。

但是Matlab究竟应该怎么定位呢?一个编程软件,一个数学工具,一个工具箱,一个开发引擎,一个仿真工具,一个虚拟现实软件…… 的确要精准的说出Matlab的作用很难,或许去定义这个东西到底是用来干什么的并不重要,It is just a tool。

关于Matlab的学习方法,我想与别的语言有很大不同,对于汇编或者C,我们应当很注重底层的一些操作,比如栈或者队列存储数据的方式,int或者double类型转换的时候产生的数据丢失,或者指针方面很头疼的一些东西,但是对于Matlab你根本不必去注重这些东西,也不必去清除的记得那个函数的具体调用方式,那个函数的内容与结构等等。你需要的只是相当用一个笔记本写下你一步一步实现目标的步骤而已。一种草稿纸式的语言。你所学的东西很大部分都是为你要做的目标来服务的,也许这就是当初面向对象式语言产生的原因,但是Matlab就是这种语言的一个代表。

好了,就说到这里了,接下来是我自己学习中对Matlab的一些应用中所遇到的问题以及思考方式和解决办法。

1 离散信号卷积:

N1=input('N1=');%输入N1

N2=input('N2=');%输入N2

k1=0:(N1-1);%定义序列f1的对应序号向量

k2=0:(N2-1);% 序列f2的对应序号向量

f1=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的卷积和f

k0=k1(1)+k2(1); %计算序列f非零样值的起点位置 k3=length(f1)+length(f2)-2; %计算卷积和f的非零样值的宽度

k=k0:k0+k3 %确定卷积和f非零样值的序号向量 subplot(2,2,1)

stem(k1,f1)

title('f1(k)')

xlabel('k')

ylabel('f1(k)')

subplot(2,2,2) %在子图1绘序列f1(k)时域波形图

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(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.942

Matlab与Simulink系统仿真学习心得马楠

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.491 0.341 0.158 0.001]

p1=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=polyval(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 on

3:三维立体图形灯光效果

[x,y]=meshgrid(-8:0.5:8);

R=sqrt(x.^2+y.^2)+eps;

z=sin(R)./R;

Matlab与Simulink系统仿真学习心得马楠

阶跃信号的积分 仿真图仿真结果: 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.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')

figure

surf(X,Y,Z)

x

Matlab与Simulink系统仿真学习心得马楠

第二部分:Simulink学习心得以及实践

Simulink是Matlab最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真

Matlab与Simulink系统仿真学习心得马楠

和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。

最开始的仿真是没有图形化输入的,所谓模型化图形输入是指SIMULINK提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以.mdl文件进行存取),进而进行仿真与分析。

现在来想其实要用Simulink去仿真一个系统不是很麻烦,只是实现一些拖拽或者参数设置什么的,但是要真正的去设计完善一个系统的确需要很多知识以及精力。我们必须了解这个系统的每一个步骤以及需要什么样的组件与之匹配。而且在仿真出现错误之后去分析也是很麻烦的一件事情,我们必须有对系统详细的分析和充分了解以及对Simulink每个组件充分的了解才能真正找到错误所在并且修正。所以学好计算机仿真重在理论知识。

接下来是一些自己做的Simulink仿真。

1:阶跃信号的积分

仿真图

仿真结果:

Matlab与Simulink系统仿真学习心得马楠

Matlab与Simulink系统仿真学习心得马楠

2 房屋产热的一个实例

该问题是模拟一个户外条件下一所房屋能够产生的热量的例子

这是仿真结果图

Matlab与Simulink系统仿真学习心得马楠

Matlab与Simulink系统仿真学习心得马楠


第二篇:基于MATLAB/Simulink的变频调速系统建模与仿真


基于MATLABSimulink的变频调速系统建模与仿真

基于MATLABSimulink的变频调速系统建模与仿真

基于MATLABSimulink的变频调速系统建模与仿真

基于MATLABSimulink的变频调速系统建模与仿真

基于MATLABSimulink的变频调速系统建模与仿真

更多相关推荐:
matlab心得体会

MATLAB学习心得体会Matlab,提起它,不管我们上课是否认真听讲了,我们都应该对它不再陌生,我们不可否认它的强大之处,正如一节课时老师给我们说的“Matlab可以做很多事情”。通过近一段的学习,使我更加确…

对matlab的学习心得

Matlab的学习心得通过初步对matlab的学习我觉得收获很大我了解到matlab是一个功能很大的数学实验软件即一个很好的计算机数学软件平台我在学习matlab主要是围绕实验初步学习了一些简单的矩阵运算以及简...

matlab学习心得体会

Matlab学习心得班级机械124姓名万明男学号20xx093386电话139xxxxxxxxmatlab学习心得体会MATLAB中有丰富的图形处理能力提供了绘制各种图形图像数据的函数他提供了一组绘制二维和三维...

matlab实验心得总结

通过《matlab仿真》实验使我学习掌握了许多知识。首先是对matlab有了一个全新的认识,其次是对matlab的更多操作和命令的使用有了更高的掌握,最重要的事对matlab的处理能力有了一个更高的飞跃尤其是对…

matlab学习心得体会

最近在学习matlab一直不入其法门从网上看到了一些大虾的经验心得感触颇深转贴过来希望给初学者有一定的指引一写给学习matlab的新手们作者eight八来源振动论坛本人接触matlab已经有5年多的时间了一直想...

matlab学习心得

关于学习MATLAB一点心得摘要MATLAB作为当前国际控制界最流行的面向工程与科学计算的高级语言、它可轻易的再现C或FORTANT语言几乎全部的功能,并设计出功能强大、界面优美、稳定可靠的高质量程序来,而且编…

Matlab心得体会

Matlab心得体会10金融3吕淼20xx241125在为学习这门课前就听说了他的强大,因为现在的经济模型都是需要这些分析软件的,也曾听说金融的未来方向是需要数学等等作为依托的。曾经旁听过学校数学建模的课程,当…

学习Matlab的总结与感想

海南大学本科生20xx20xx学年度第2学期课程考查论文学院中心所信息科学技术学院专业电子信息工程研究方向班级学生姓名学生证号课程名称Matlab应用基础论文题目学习Matlab的总结与感想任课老师以上由学生填...

学习matlab的一点心得体会

学习matlab的一点心得体会1前言2matlab的一些特点3学习matlab心得体会4matlab的一些资源1前言我接触Matlab的时间比较长了最开始是在大学里面的数学实验课上了解了一些学了些基础的命令后来...

matlab神经网络学习总结

1通过神经网络滤波和信号处理传统的sigmoid函数具有全局逼近能力而径向基rbf函数则具有更好的局部逼近能力采用完全正交的rbf径向基函数作为激励函数具有更大的优越性这就是小波神经网络对细节逼近能力更强BP网...

matlab数学实验体会

Matlab学习心得数学实验周我们学习了Matlab软件这是一个十分实用和重要的软件初次结识MATLAB感觉这是一个很好的软件语言简便实用性强作为一个新手想要学习好这门语言可以说还是比较难的在我接触这门语言的这...

matlab课程学习总结

目录VCampMatlab混合编程的快速实现2摘要2关键词2简介2实例分析31编写Matlab函数32Matlab65编译器设置33建立C控制台工程54启用MatlabAddin工具条65VC60环境及工程设置...

matlab学习心得(33篇)