主要内容

数据存储内存

定义数据存储

  • 库:
  • 万博1manbetxSimulink /信号路由

  • 内存块

描述

数据存储内存块定义并初始化命名共享数据存储,该存储是可用的内存区域数据存储读取数据存储写指定相同数据存储名称的块。

位置数据存储内存块,它定义了数据存储数据存储读取数据存储写块可以访问数据存储:

  • 如果数据存储内存块在顶级系统数据存储读取数据存储写模型中的任何块都可以访问数据存储。

  • 如果数据存储内存块位于子系统数据存储读取数据存储写同一子系统中的块或模型层次结构中它之下的任何子系统中的块都可以访问数据存储。

数据存储读取数据存储写块不能访问数据存储内存块,该块位于包含模型块或在引用的模型中。

不包括数据存储内存For Each子系统。

从数据存储中获取正确的结果,需要确保数据存储按预期顺序进行读写操作。更多细节,请参阅:

您可以使用万博1manbetx仿真软件。信号除了,或代替,数据存储内存块定义数据存储。中定义的数据存储基地带有信号对象的工作区是全球数据存储。每个模型都可以访问全局数据存储,包括所有引用的模型。看到数据存储为更多的信息。

您可以选择数据存储读取数据存储写,或数据存储内存块以突出显示与它相关的块。若要在打开的关系图或新选项卡中显示相关块,请在选择后出现的省略号上暂停。然后,选择相关的模块相关模块按钮从操作栏。当多个块对应于选定的块时,将打开相关块的列表。您可以通过在文本框中输入搜索词来过滤相关块的列表。从列表中选择相关块后,窗口焦点将转到显示相关块的打开关系图或新选项卡。

参数

全部展开

主要

为用此块定义的数据存储指定名称。数据存储读取数据存储写具有相同名称的块可以从该块初始化的数据存储读取和写入。名称可以表示数据存储内存块或符号对象,定义为数据存储。

编程使用

块参数DataStoreName
类型:特征向量
' A ' |…
默认的“一个”

在任何地方重命名这个数据存储数据存储读取数据存储写块在模型中使用它。

限制

你不能使用重命名所有在以下情况下重命名数据存储:

  • 使用一个万博1manbetx仿真软件。信号对象,以控制为数据存储生成的代码

  • 使用一个万博1manbetx仿真软件。信号对象而不是数据存储内存块定义数据存储

您必须改为重命名相应的万博1manbetx仿真软件。信号对象从模型资源管理器。例如,请参见重命名信号对象定义的数据存储

列出所有的数据存储读取数据存储写与当前块具有相同的数据存储名称的块,并且在当前系统中或在模型层次结构中低于当前系统的任何子系统中。单击块路径将显示并突出显示模型中的块。

信号的属性

指定数据存储的初始值或值。的最低参数指定该参数的最小值,而最大参数指定最大值。

如果指定非标量值并设置-1(默认值),数据存储与数组具有相同的维数。(通过使用)写入数据存储的数据数据存储写块)必须有这些尺寸。

如果你设置参数转换为非-1,初始值维数必须与指定的维数匹配,除非初始值是标量或MATLAB®结构。如果指定标量,则数据存储的每个元素都使用该标量作为初始值。使用此技术可将相同的初始值(指定的标量)应用于每个元素,而无需手动将初始值的维度与数据存储的维度进行匹配。

要使用此块初始化非虚拟总线信号,请将初始值指定为MATLAB结构并设置模型配置参数未指定初始化检测简化.有关使用结构初始化非虚拟总线信号的详细信息,请参见指定总线元素的初始条件

编程使用

块参数InitialValue
类型:特征向量
:标量|向量|矩阵| N-D数组
默认的' 0 '

指定块应该输出的最小值。默认值为[](不明)。这个数必须是一个有限实双标量值。

请注意

如果指定总线对象作为此块的数据类型,则不要在该块上设置总线数据的最小值。万博1manbetxSimulink忽略此设置。相反,设置指定为数据类型的总线对象的总线元素的最小值。有关总线元素的最小属性的信息,请参见万博1manbetx仿真软件。BusElement

万博1manbetx®使用最小值执行:

编程使用

块参数OutMin
类型:特征向量
:标量
默认的“[]”

指定块应该输出的最大值。默认值为[](不明)。这个数必须是一个有限实双标量值。

请注意

如果指定总线对象作为此块的数据类型,则不要在该块上设置总线数据的最大值。万博1manbetxSimulink忽略此设置。相反,设置指定为数据类型的总线对象的总线元素的最大值。有关总线元素的Maximum属性的信息,请参见万博1manbetx仿真软件。BusElement

万博1manbetxSimulink使用最大值来执行:

编程使用

块参数OutMax
类型:特征向量
:标量
默认的“[]”

指定输出数据类型。你可以设置为:

  • 继承数据类型的规则(例如,继承:汽车).

  • 内置数据类型的名称(例如,).

  • 数据类型对象的名称(例如万博1manbetx仿真软件。NumericType对象)。

  • 计算结果为数据类型的表达式(例如,fixdt (1 16 0)).不要在表达式中指定总线对象作为数据类型;使用总线:<对象名称>指定总线数据类型。

单击显示数据类型助手按钮来显示数据类型的助理,它可以帮助您设置数据类型属性。有关更多信息,请参见使用数据类型助手指定数据类型

编程使用

块参数:OutDataTypeStr
类型:特征向量
价值观:继承:auto' | 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'boolean' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | 'string' | 'Enum: '
默认值:“继承:汽车”

选择此参数可防止定点工具覆盖输出在块上指定的数据类型。有关更多信息,请参见使用锁定输出数据类型设置(定点设计师)

编程使用

块参数:LockScale
类型:特征向量
价值观:”从“|”“
默认值:“关闭”

数据存储的尺寸。默认值,-1,可以使用。设置数据存储的维度初始值参数。但是,在这种情况下,不能使用初始值的标量展开。您必须使用具有所需维数的数组来指定初始值。

如果你使用的值不是-1,指定与的尺寸相同的尺寸初始值参数,除非您将初始值指定为标量(用于标量展开)或MATLAB结构。如果数据存储表示总线数组,并且使用MATLAB结构作为初始值,则可以指定维数以使用此结构初始化总线数组。

编程使用

块参数:
类型:特征向量
价值观:标量|向量|矩阵
默认值:' 1 '

指定数据存储将向量初值解释为一维。

默认情况下,MATLAB将向量数据表示为二维矩阵。例如,用MATLAB表示向量(1 2 3)作为一个1 × 3矩阵。

选择此参数时,数据存储仅使用一维而不是二维来表示向量数据。例如,如果您指定的初始值为(1 2 3),数据存储存储一个包含三个元素的一维向量。

有关更多信息,请参见确定源块的输出尺寸

编程使用

块参数VectorParams1D
类型:特征向量
”从“|”“
默认的“上”

指定数据存储中值的数值类型(实数或复数)。

编程使用

块参数:SignalType
类型:特征向量
价值观:'auto' | 'real' | 'complex'
默认值:“汽车”

在单个模型引用层次结构中,当您使用多个模型块引用包含数据存储内存块,默认情况下,引用模型的每个实例(每个模型块)从数据存储的单独副本读取和写入。当您选择跨模型实例共享,所有实例都从相同的数据存储读取和写入,而不是与单独的副本进行交互。

当您设置模型配置参数时代码接口包装可重用的功能要从模型生成可重入代码(万博1manbetx仿真软件编码器™)的数据存储跨模型实例共享Selected作为一个全局符号出现在代码中,生成的入口点函数可以直接访问它。例如,一个全局符号是一个全局变量或全局结构变量的一个字段。因此,您的代码对入口点函数(模型的每个实例)的每次调用都共享数据。

例如,请参见在可重用算法实例之间共享数据存储.有关更多信息,请参见在引用的模型实例之间共享数据

编程使用

块参数:ShareAcrossModelInstances
类型:特征向量
价值观:”从“|”“
默认值:“关闭”

指定Simulink软件在万博1manbetx编译模型时,搜索模型和基本工作空间万博1manbetx仿真软件。信号具有相同名称的对象,如符号解析.如果S万博1manbetximulink没有找到这样的对象,编译将停止并出现错误。否则,Simulink万博1manbetx将比较信号对象的属性与数据存储内存块的相应属性。如果块和对象属性不一致,Simulink将停止模型编译并显示错误。万博1manbetx

编程使用

块参数:StateMustResolveToSignalObject
类型:特征向量
价值观:”从“|”“
默认值:“关闭”

诊断

如果模型试图从在此时间步骤中未写入数据的数据存储中读取数据,请选择要采取的诊断操作。看到也写前检测读诊断的内存块部分的模型配置参数>诊断>数据的有效性窗格。

  • 没有一个-不产生响应。

  • 警告-显示警告并继续模拟。

  • 错误—终止模拟并显示错误。

编程使用

块参数:ReadBeforeWriteMsg
类型:特征向量
价值观:'无' | 'warning' | 'error'
默认值:“警告”

如果模型在先前在当前时间步从数据存储中读取数据之后试图将数据写入数据存储,请选择要采取的诊断操作。看到也读后检测写诊断的内存块部分的模型配置参数>诊断>数据的有效性窗格。

  • 没有一个-不产生响应。

  • 警告-显示警告并继续模拟。

  • 错误—终止模拟并显示错误。

编程使用

块参数:WriteAfterReadMsg
类型:特征向量
价值观:'无' | 'warning' | 'error'
默认值:“警告”

如果模型在当前时间步连续两次尝试将数据写入数据存储,请选择要采取的诊断操作。看到也写后检测写诊断的内存块部分的模型配置参数>诊断>数据的有效性窗格。

  • 没有一个-不产生响应。

  • 警告-显示警告并继续模拟。

  • 错误—终止模拟并显示错误。

编程使用

块参数:WriteAfterWriteMsg
类型:特征向量
价值观:'无' | 'warning' | 'error'
默认值:“警告”

日志记录

选择此选项可在仿真期间将该信号的值保存到MATLAB工作空间。看到信号记录获取详细信息。

编程使用

块参数:数据采集
类型:特征向量
价值观:”从“|”“
默认值:“关闭”

使用这对控件(由列表框和编辑字段组成)指定与记录的信号数据相关联的名称。

万博1manbetx在默认情况下,Simulink使用信号名称作为它的日志名称。要指定自定义日志记录名称,请选择自定义,并在相邻的编辑字段中输入自定义名称。

编程使用

块参数:DataLoggingNameMode
类型:特征向量
价值观:“SignalName”|“定制”
默认值:''

请注意

如果你设置DataLoggingNameMode自定义,必须使用。指定与记录信号数据关联的名称DataLoggingName参数。

块参数:DataLoggingName
类型:特征向量
价值观:特征向量
默认值:''

扔掉所有的,只剩下最后一个N数据点,N是您在相邻的编辑字段中输入的数字。有关更多信息,请参见日志数据存储

编程使用

块参数:DataLoggingMaxPoints
类型:特征向量
价值观:非零的整数
默认值:“5000”

记录每一个N数据点,其中N是您在相邻的编辑字段中输入的数字。例如,假设您的模型使用步长为的固定步长求解器0.1s。如果选择此选项并接受默认抽取值(2), 万博1manbetxSimulink有时会记录这个信号的数据点0.00.20.4,等等。有关更多信息,请参见日志数据存储

编程使用

块参数:DataLoggingLimitDataPoints
类型:特征向量
价值观:非零的整数
默认值:' 2 '

块特征

数据类型

布尔|公共汽车||枚举|不动点|一半|整数||字符串

直接引线

是的

多维信号

是的

适应信号

没有

讨论二阶导数过零检测

没有

扩展功能

C / c++代码生成
使用Simulink®Coder™生成C和c++代码。万博1manbetx

定点转换
使用fixed-point Designer™设计和模拟定点系统。

之前介绍过的R2006a