使用初始化,初始化、复位和终止功能
一些街区维护状态信息,他们使用在一个模拟世界中。例如,单位延迟块使用的当前状态块的输出信号值计算下一个仿真时间步。
子系统块有默认初始化和终止程序。你可以添加自定义程序默认的例程使用初始化函数,重新启动功能,终止函数块来改变或读取块状态。您还可以实现自定义的例程使用重置功能块。这些功能模块包含:
一个事件监听器块执行例程当收到一个初始化相结合,重新启动,或终止函数调用事件,或自定义程序当收到一个重置函数调用的事件。
一个国家的作家块初始化或一组或一块状态国家的读者块读取状态。
定义自定义程序,编辑的内容块。例如:
设置国家所有者块参数的国家的作家或国家的读者块。
添加额外的国家的作家或国家的读者块。
添加参数的作家块设置块参数的值。看到初始化和设置参数值。
添加数据存储写块写或数据存储读取读取数据块的数据存储。看到通过创建数据存储模型全局数据。
添加模块和信号线路提供的值国家的作家,参数的作家,数据存储写块写,或者保存读取的值国家的读者或数据存储读取块。
创建模型组件状态
您可以定义使用仿真软件模型算法金宝app®块。在这个例子中,一个离散时间积分器块定义了算法集成一个输入信号。
打开一个新的仿真软件模金宝app型。保存这个模型的名称
Model01
。添加一个离散时间积分器块。验证默认参数值
1.0
为获得的价值,0
为初始条件,汽车
为初始条件设置,1
为样品时间。连接一个常数块的输入离散时间积分器块模型的输入信号。连接一个范围块的输出信号。
打开配置参数对话框。设置仿真参数解算器类型来
固定步
,解算器来汽车
,固定的大小来1
。打开范围块,然后运行模拟。输出信号增加
1
在每个时间步。
初始化块状态
模型算法包含一些州可以初始化。例如,使用一个算法读取传感器的值,您可以执行计算传感器设置初始状态。
在模拟的开始,初始化块使用的状态国家的作家块。控制在初始化时,使用一个初始化函数块,包括国家的作家块。
添加一个初始化函数块。
默认情况下,初始化函数块包含一个事件监听器块的事件类型参数设置为
初始化
。还包括一个国家的作家块,常数块作为一个占位符的初始状态值的来源。模型初始条件。在这个例子中,设置恒定值参数的常数块
4
。连接国家与国家的作家所有者。作家对话框打开状态。扩大国家所有者选择器树,选择
离散时间积分器
,然后单击应用。的国家的作家块显示名称的所有者的块。国家所有者块显示一个标签说明的链接国家的作家块。如果您点击上面的标签标签,打开导航的链接列表国家的作家块。
运行仿真来确认您的模型模拟没有错误。
的初始化函数在模拟的开始块执行。的输出信号开始和初始值
4
然后增加1
直到最后的模拟。
重置块状态
在仿真中,你可以重置一块使用的状态国家的作家块。控制调整发生时,使用重置功能块。
请注意
您可以使用一个重新启动功能块或重置功能块重置一块的状态。这两个重新启动功能块和重置功能块可以写阻止国家或执行任何操作时指定配置块。块是一个之间的区别重新启动功能第一次隐式重置模型中的所有块的状态回到他们的初始条件,然后进行其他操作,包括编写阻止州,你指定配置块。相比之下,重置功能块,只执行指定的操作,当你配置块。在这个例子中,由于模型不包含其他国家除了块离散时间积分器块,重新启动功能块可以用的重置功能块无差异的结果。
添加一个重置功能块。
打开重置功能块。
模型重置条件。在这个例子中,设置恒定值参数的常数块
2
。连接状态的作家与国家的主人。打开国家的作家块对话框。扩大国家所有者选择器树,选择
离散时间积分器
,然后单击应用。事件的名称重置功能块,
重置
,显示物体的表面上。如果您点击上面的标签,打开导航的链接列表国家的作家块位于初始化函数块和重置功能块。
请注意
如果重置功能块所取代重新启动功能块,然后重新启动功能块将第一组的状态离散时间积分器0块回到它的初始条件,中指定离散时间积分器块对话框。的重新启动功能块将使用国家的作家块设置的状态离散时间积分器块,这将覆盖的隐式仅为0。这一系列的行为有相同的效果重置功能块,它集的状态离散时间积分器块2。
如果一个重新启动功能块都没有使用国家的作家块,然后将设置的状态离散时间积分器块的初始条件0。如果一个重置功能块都没有使用国家的作家块,这将不会影响任何其他块的状态。
运行仿真来确认您的模型模拟没有错误。
的重置功能在模拟块不执行。块需要一个函数调用事件信号。
创建一个函数调用事件信号重置功能块,看创建测试利用生成函数调用。
读取和保存块状态
的模拟,你可以读一个街区的状态,保存状态。
添加一个终止函数块。
默认情况下,终止函数块包含一个事件监听器块的参数事件类型设置为
终止
。还包括一个国家的读者块,《终结者》块保存状态值的占位符。连接国家与国家的读者所有者。打开国家的读者块对话框。从国家所有者选择器树,选择
离散时间积分器
,然后单击应用。运行仿真来确认您的模型模拟没有错误。的终止函数块执行的仿真。
删除您所添加的模块进行测试。取代常数块一个轮廓尺寸块和范围块一个外港块。
准备模型组件进行测试
进行以下更改,避免模拟错误当组件模型放在一个导出功能模型进行仿真测试。
打开块参数对话框离散时间积分器块。集积分器的方法来
积累:向前欧拉
。打开模型配置参数对话框。确认解决类型被设置为
固定步
和解算器被设置为汽车
。改变固定的大小从1
来汽车
。这种变化避免了模拟误差引起的有多个样例次函数调用子系统。
创建一个导出功能模型
将模型组件初始化测试工具进行测试,重置和终止功能要求模型遵循导出功能规则。看到导出功能模型概述和创建测试利用生成函数调用。
创建一个导出功能模型,把模型组件中函数调用子系统块使用模型块。从模型的输入和输出端口连接到子系统的输入和输出端口。
创建一个仿真软件模金宝app型。保存这个模型的名称
Model02
。打开配置参数对话框。设置仿真参数的解算器类型来
固定步
。确认解算器被设置为汽车
和固定的大小被设置为汽车
。添加一个函数调用子系统块。通过双击打开子系统。
添加一个模型块子系统和设置模型名称来
Model01
。添加轮廓尺寸和外港块。导航到模型的顶层。
添加一个轮廓尺寸块。这一块是执行子系统的控制信号。改变块的名字
运行
并将其连接到函数()
端口。打开轮廓尺寸和块对话框信号的属性选项卡中,选择输出函数调用复选框。
添加第二个轮廓尺寸块和重命名
信号
。将它连接到三机一体
港口的子系统。这一块的信号集成算法。添加一个外港块,重命名它
信号
,然后将它连接到着干活
港口的子系统。这一块集成信号。指定模型的导出功能模型通过将属性检查器和设置的执行域模型
导出功能
。看到指定一个导出功能模型。打开配置参数对话框。在模型参考窗格中,设置总数量的实例允许每一个顶级模特来
一个
。更新你的模型和按确认没有错误ctrl - d。
下一步是创建一个测试工具。看到创建测试利用生成函数调用。
另请参阅
初始化函数|重置功能|终止函数|事件监听器|国家的读者|国家的作家|参数的作家
相关的话题
- 创建测试利用生成函数调用
- 启动、重启和关机功能接口(金宝app仿真软件编码器)