建模与仿真教案课件_第1页
建模与仿真教案课件_第2页
建模与仿真教案课件_第3页
建模与仿真教案课件_第4页
建模与仿真教案课件_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1会计学建模与仿真1会计学建模与仿真

(1)直接使用MATLAB工作空间中的变量设置模块参数。

(2)使用变量构成的表达式设置模块参数。例如,如果a是定义在MATLAB中的变量,则表达式a、a^2+5、exp(–a)等均可以作为系统模块的参数,如图3.30所示。(1)直接使用MATLAB工作空间中的变量图3.30使用MATLAB工作空间变量设置模块参数图3.30使用MATLAB工作空间变量设置模块参数将信号输出到MATLAB工作空间中

使用示波器模块Scope的输出信号,可以使用户对输出的信号进行简单的定性分析。

使用Sinks模块库中的ToWorkspace模块,可以轻易地将信号输出到MATLAB工作空间中。信号输出的名称在ToWorkspace模块的对话框中设置,此对话框还可以设置输出数据的点数、输出的间隔,以及输出数据的类型等。其中输出类型有三种形式:数组、结构以及带有时间变量的结构。仿真结束或暂停时信号被输出到工作空间中,如图3.31所示。将信号输出到MATLAB工作空间中图3.31系统模型中信号输出图3.31系统模型中信号输出使用工作空间变量作为系统输入信号

Simulink与MATLAB的数据交互是相互的,除了可以将信号输出到MATLAB工作空间中之外,用户还可以使用MATLAB工作空间中的变量作为系统模型的输入信号。使用Sources模块库中的FromWorkspace模块可以将MATLAB工作空间中的变量作为系统模型的输入信号。此变量的格式如下所示:使用工作空间变量作为系统输入信号例如,在MATLAB命令窗口中键入如下的语句并运行。>>t=0:0.1:10;>>x=sin(t);>>input=[t',x'];例如,在MATLAB命令窗口中键入如下的语句并运行。图3.32MATLAB工作空间变量作为系统输入信号图3.32MATLAB工作空间变量作为系统输入信号

运行此系统进行仿真,系统输入信号input的作用相当于Sources模块中的SineWave模块,其结果如图3.33所示(Scope1显示结果)。

图3.33使用input信号作为输入的仿真结果运行此系统进行仿真,系统输入信号input

向量与矩阵

在前面的系统模型中,Simulink所使用的增益参数均是标量。其实,Simulink也能够传递和使用向量信号和矩阵信号。例如,向量增益可以作用在一个标量信号上,产生一个向量输出。在缺省情况下,模块对向量中的逐个元素进行操作,就像MATLAB中的数组运算一样,如图3.34所示。向量与矩阵图3.34向量增益示意图图3.34向量增益示意图

Simulink最重要的特性就是支持矩阵形式的信号和运算,它可以区分行和列向量并传递矩阵。通过对模块做适当的配置,可以使模块能够接受矩阵作为模块参数。在上面的例子中,如果Constant模块的参数为一矩阵,并且Gain增益模块被配置成按矩阵乘的定义从左边乘上输入向量,则Display块能够感知到输入信号的尺寸,即1×2行向量,并对边框做适当调整,如图3.35所示。Simulink最重要的特性就是支持矩阵形图3.35矩阵输入与向量增益示意图图3.35矩阵输入与向量增益示意图与Function模块

除了使用上述的方式进行Simulink与MATLAB之间的数据交互,用户还可以使用FunctionsandTables模块库中的Function模块(简称为Fcn模块)或FunctionsandTables模块库中的MATLABFunction模块(简称为MATLABFcn模块)进行彼此间的数据交互。与Function模块

Fcn模块一般用来实现简单的函数关系,在Fcn模块中:

(1)输入总是表示成u,u可以是一个向量。

(2)Fcn模块参数是函数表达式,例如2*u+1。

MATLABFcn一般用来调用MATLAB函数来实现一定的功能,在MATLABFcn模块中:

(1)所要调用的函数只能有一个输出(可以是一个向量)。

(2)单输入函数只需使用函数名,多输入函数输入需要引用相应的元素,如mean、sqrt、myfunc(u(1),u(2))。使用Fcn模块与MATLABFcn模块进行Simulink与MATLAB之间的数据交互如图3.36所示。Fcn模块一般用来实现简单的函数关系,在Fcn模块中:图3.36使用Fcn与MATLABFcn模块进行数据交互图3.36使用Fcn与MATLABFcn模块进行数据交3.5使用Simulink进行简单的仿真

【例3.1】信号平方运算。系统的功能是对输入的信号进行平方运算。现要求建立系统的Simulink模型并进行简单的仿真分析。具体要求如下:

(1)系统输入信号源:幅值为2的正弦波

(2)使用Scope显示原始信号和结果信号

(3)生成系统运算部分的子系统

(4)添加信号标签3.5使用Simulink进行简单的仿真

解:首先选择系统所需的如下模块(组件):

(1)Sources库中的SineWave块

(2)Math库中的Product块(或Userdefinedfunctions库中的Fcn模块)

(3)SignalsandSystems库中的Mux块

(4)Sinks库中的Scope块

解:首先选择系统所需的如下模块(组件):然后进行如下的操作:

(1)连接系统模块

(2)设置参数

(3)生成子系统

(4)添加标签

(6)保存模型

(6)运行、调试然后进行如下的操作:图3.37平方运算系统模型图3.37平方运算系统模型

最后,进行模块参数设置并使用默认的仿真参数进行仿真。在本例中,只需要对系统输入信号源SineWave模块进行参数设置即可(双击SineWave模块),设置正弦信号的幅值为2,如图3.38所示。系统仿真结果如图3.39所示。最后,进行模块参数设置并使用默认的仿真参数图3.38SineWave模块参数设置图3.38SineWave模块参数设置图3.39系统仿真结果图3.39系统仿真结果3.6Simulink的调试技术

图形调试器启动

Simulink的图形调试器具有优秀的用户界面,使用菜单Tools下的Simulinkdebugger命令或是使用调试器按钮启动调试器,如图3.40所示。图3.40Simulink调试器窗口

3.6Simulink的调试技术图形调试器启调试器的操作设置与功能启动Simulink调试器,设置合适的调试断点之后,便可以对系统模型中指定的模块或信号进行调试了。在设置断点进行调试之前,首先对Simulink图形调试器中的操作设置与功能做一个简单的介绍。

1.

Simulink调试器工具栏

Simulink调试器工具栏命令功能介绍如图3.41所示。调试器的操作设置与功能图3.41Simulink调试器工具栏命令介绍

图3.41Simulink调试器工具栏命令介绍2.断点显示及断点条件设置

Simulink提供了友好的调试界面,用户可以在断点显示框中了解到当前断点的信息,如断点位置、断点模块的输入输出等,如图3.42所示。

图3.42断点显示框

2.断点显示及断点条件设置图3.42

一般说来,用户可以在调试之前在指定的模块之前设置断点。但是多数情况下,用户需要在一定的条件下设置系统断点以进行调试。Simulink调试器提供了五种断点条件设置,如图3.43所示。

图3.43断点条件设置

一般说来,用户可以在调试之前在指定的模块之前

3.

调试器输出窗口在对指定的系统模型进行调试时,调试结果均在Simulink的输出窗口显示。图3.44所示为Simulink的调试器输出窗口:

图3.44调试器输出窗口

3.

调试器输出窗口

下面对其进行简单的介绍:(1)Outputs:输出调试结果,如调试时刻、调试的模块以及模块输入输出等。(2)ExecutionOrder:输出调试顺序,即调试过程中各模块的执行顺序。(3)Status:输出调试状态,如当前仿真时间、缺省调试命令(执行至下一模块或是执行至下一时间步)、调试断点设置以及断点数等状态信息。下面对其进行简单的介绍:

本章对Simulink的模型构建作了一个比较全面的介绍,对于不同领域的工程技术人员,都可以利用本章介绍的基本知识对大部分的系统进行建模与简单分析。至此,用户应该能够熟练快速地建立自己的系统模型。Simulink的功能非常强大,它可以大大提高系统设计、仿真与分析的效率。本章是Simulink最基础的知识。后面的章节将详细介绍使用Simulink进行系统仿真的高级技术,以及Simulink系统仿真的原理。本章对Simulink的模型构建作了一个使用工作空间变量作为系统输入信号

Simulink与MATLAB的数据交互是相互的,除了可以将信号输出到MATLAB工作空间中之外,用户还可以使用MATLAB工作空间中的变量作为系统模型的输入信号。使用Sources模块库中的FromWorkspace模块可以将MATLAB工作空间中的变量作为系统模型的输入信号。此变量的格式如下所示:使用工作空间变量作为系统输入信号例如,在MATLAB命令窗口中键入如下的语句并运行。>>t=0:0.1:10;>>x=sin(t);>>input=[t',x'];例如,在MATLAB命令窗口中键入如下的语句并运行。图3.36使用Fcn与MATLABFcn模块进行数据交互图3.36使用Fcn与MATLABFcn模块进行数据交图3.36使用Fcn与MATLABFcn模块进行数据交互图3.36使用Fcn与MATLABFcn模块进行数据交

解:首先选择系统所需的如下模块(组件):

(1)Sources库中的SineWave块

(2)Math库中的Product块(或Userdefinedfunctions库中的Fcn模块)

(3)SignalsandSystems库中的Mux块

(4)Sinks库中的Scope块

解:首先选择系统所需的如下模块(组件):37会计学建模与仿真1会计学建模与仿真

(1)直接使用MATLAB工作空间中的变量设置模块参数。

(2)使用变量构成的表达式设置模块参数。例如,如果a是定义在MATLAB中的变量,则表达式a、a^2+5、exp(–a)等均可以作为系统模块的参数,如图3.30所示。(1)直接使用MATLAB工作空间中的变量图3.30使用MATLAB工作空间变量设置模块参数图3.30使用MATLAB工作空间变量设置模块参数将信号输出到MATLAB工作空间中

使用示波器模块Scope的输出信号,可以使用户对输出的信号进行简单的定性分析。

使用Sinks模块库中的ToWorkspace模块,可以轻易地将信号输出到MATLAB工作空间中。信号输出的名称在ToWorkspace模块的对话框中设置,此对话框还可以设置输出数据的点数、输出的间隔,以及输出数据的类型等。其中输出类型有三种形式:数组、结构以及带有时间变量的结构。仿真结束或暂停时信号被输出到工作空间中,如图3.31所示。将信号输出到MATLAB工作空间中图3.31系统模型中信号输出图3.31系统模型中信号输出使用工作空间变量作为系统输入信号

Simulink与MATLAB的数据交互是相互的,除了可以将信号输出到MATLAB工作空间中之外,用户还可以使用MATLAB工作空间中的变量作为系统模型的输入信号。使用Sources模块库中的FromWorkspace模块可以将MATLAB工作空间中的变量作为系统模型的输入信号。此变量的格式如下所示:使用工作空间变量作为系统输入信号例如,在MATLAB命令窗口中键入如下的语句并运行。>>t=0:0.1:10;>>x=sin(t);>>input=[t',x'];例如,在MATLAB命令窗口中键入如下的语句并运行。图3.32MATLAB工作空间变量作为系统输入信号图3.32MATLAB工作空间变量作为系统输入信号

运行此系统进行仿真,系统输入信号input的作用相当于Sources模块中的SineWave模块,其结果如图3.33所示(Scope1显示结果)。

图3.33使用input信号作为输入的仿真结果运行此系统进行仿真,系统输入信号input

向量与矩阵

在前面的系统模型中,Simulink所使用的增益参数均是标量。其实,Simulink也能够传递和使用向量信号和矩阵信号。例如,向量增益可以作用在一个标量信号上,产生一个向量输出。在缺省情况下,模块对向量中的逐个元素进行操作,就像MATLAB中的数组运算一样,如图3.34所示。向量与矩阵图3.34向量增益示意图图3.34向量增益示意图

Simulink最重要的特性就是支持矩阵形式的信号和运算,它可以区分行和列向量并传递矩阵。通过对模块做适当的配置,可以使模块能够接受矩阵作为模块参数。在上面的例子中,如果Constant模块的参数为一矩阵,并且Gain增益模块被配置成按矩阵乘的定义从左边乘上输入向量,则Display块能够感知到输入信号的尺寸,即1×2行向量,并对边框做适当调整,如图3.35所示。Simulink最重要的特性就是支持矩阵形图3.35矩阵输入与向量增益示意图图3.35矩阵输入与向量增益示意图与Function模块

除了使用上述的方式进行Simulink与MATLAB之间的数据交互,用户还可以使用FunctionsandTables模块库中的Function模块(简称为Fcn模块)或FunctionsandTables模块库中的MATLABFunction模块(简称为MATLABFcn模块)进行彼此间的数据交互。与Function模块

Fcn模块一般用来实现简单的函数关系,在Fcn模块中:

(1)输入总是表示成u,u可以是一个向量。

(2)Fcn模块参数是函数表达式,例如2*u+1。

MATLABFcn一般用来调用MATLAB函数来实现一定的功能,在MATLABFcn模块中:

(1)所要调用的函数只能有一个输出(可以是一个向量)。

(2)单输入函数只需使用函数名,多输入函数输入需要引用相应的元素,如mean、sqrt、myfunc(u(1),u(2))。使用Fcn模块与MATLABFcn模块进行Simulink与MATLAB之间的数据交互如图3.36所示。Fcn模块一般用来实现简单的函数关系,在Fcn模块中:图3.36使用Fcn与MATLABFcn模块进行数据交互图3.36使用Fcn与MATLABFcn模块进行数据交3.5使用Simulink进行简单的仿真

【例3.1】信号平方运算。系统的功能是对输入的信号进行平方运算。现要求建立系统的Simulink模型并进行简单的仿真分析。具体要求如下:

(1)系统输入信号源:幅值为2的正弦波

(2)使用Scope显示原始信号和结果信号

(3)生成系统运算部分的子系统

(4)添加信号标签3.5使用Simulink进行简单的仿真

解:首先选择系统所需的如下模块(组件):

(1)Sources库中的SineWave块

(2)Math库中的Product块(或Userdefinedfunctions库中的Fcn模块)

(3)SignalsandSystems库中的Mux块

(4)Sinks库中的Scope块

解:首先选择系统所需的如下模块(组件):然后进行如下的操作:

(1)连接系统模块

(2)设置参数

(3)生成子系统

(4)添加标签

(6)保存模型

(6)运行、调试然后进行如下的操作:图3.37平方运算系统模型图3.37平方运算系统模型

最后,进行模块参数设置并使用默认的仿真参数进行仿真。在本例中,只需要对系统输入信号源SineWave模块进行参数设置即可(双击SineWave模块),设置正弦信号的幅值为2,如图3.38所示。系统仿真结果如图3.39所示。最后,进行模块参数设置并使用默认的仿真参数图3.38SineWave模块参数设置图3.38SineWave模块参数设置图3.39系统仿真结果图3.39系统仿真结果3.6Simulink的调试技术

图形调试器启动

Simulink的图形调试器具有优秀的用户界面,使用菜单Tools下的Simulinkdebugger命令或是使用调试器按钮启动调试器,如图3.40所示。图3.40Simulink调试器窗口

3.6Simulink的调试技术图形调试器启调试器的操作设置与功能启动Simulink调试器,设置合适的调试断点之后,便可以对系统模型中指定的模块或信号进行调试了。在设置断点进行调试之前,首先对Simulink图形调试器中的操作设置与功能做一个简单的介绍。

1.

Simulink调试器工具栏

Simulink调试器工具栏命令功能介绍如图3.41所示。调试器的操作设置与功能图3.41Simulink调试器工具栏命令介绍

图3.41Simulink调试器工具栏命令介绍2.断点显示及断点条件设置

Simulink提供了友好的调试界面,用户可以在断点显示框中了解到当前断点的信息,如断点位置、断点模块的输入输出等,如图3.42所示。

图3.42断点显示框

2.断点显示及断点条件设置图3.42

一般说来,用户可以在调试之前在指定的模块之前设置断点。但是多数情况下,用户需要在一定的条件下设置系统断点以进行调试。Simulink调试器提供了五种断点条件设置,如图3.43所示。

图3.43断点条件设置

一般说来,用户可以在调试之前在指定的模块之前

3.

调试器输出窗口在对指定的系统模型进行调试时,调试结果均在Simulink的输出窗口显示。图3.44所示为Simulink的调试器输出窗口:

图3.44调试器输出窗口

3.

调试器输出窗口

下面对其进行简单的介绍:(1)Outputs:输出调试结果,如调试时刻、调试的模块以及模块输入输出等。(2)ExecutionOrder:输出调试顺序,即调试过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论