主要内容

数据存储存储器

定义数据存储

  • 图书馆:
  • 金宝app模拟链路/信号路由

  • 数据存储存储器块

描述

这个数据存储存储器块定义并初始化命名的共享数据存储区,该存储区是可由数据存储读取数据存储写入指定相同数据存储名称的块。

地址数据存储存储器定义数据存储的块确定数据存储读取数据存储写入块可以访问数据存储:

  • 如果数据存储存储器块在顶层系统,数据存储读取数据存储写入模型中任何位置的块都可以访问数据存储。

  • 如果数据存储存储器街区在一个街区里子系统,数据存储读取数据存储写入模型层次结构中同一子系统或其下任何子系统中的块都可以访问数据存储。

数据存储读取数据存储写入块不能访问数据存储存储器块,该块位于包含模型块或参照模型中的。

不包括数据存储存储器为每个子系统设置块。

要从数据存储中获得正确的结果,需要确保数据存储的读取和写入按预期顺序进行。有关详细信息,请参阅:

你可以用金宝app模拟信号对象之外的对象,或代替,数据存储存储器块来定义数据存储。中定义的数据存储基础带有信号对象的工作空间是一个全球的数据存储。每个模型都可以访问全局数据存储,包括所有引用的模型。请参阅数据存储了解更多信息。

您可以选择一个数据存储读取,数据存储写入数据存储存储器块以高亮显示与其相关的块。要在打开的图表或新选项卡中显示相关块,请暂停选择后显示的省略号。然后,选择相关区块相关块按钮从操作栏。当多个块对应于所选块时,将打开一个相关块列表。您可以通过在文本框中输入搜索词来过滤相关块列表。从列表中选择相关块后,窗口焦点将转到显示相关块的“打开的图”或“新建”选项卡。

参数

全部展开

主要的

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

程序化使用

块参数:数据存储名称
类型:字符向量
价值观:“A”|。。。
违约:“A”

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

局限性

你不能使用全部重命名要重命名数据存储,请执行以下操作:

  • 使用金宝app模拟信号对象来控制为数据存储生成的代码

  • 使用金宝app模拟信号对象而不是数据存储存储器块来定义数据存储

您必须重命名相应的金宝app模拟信号对象。有关示例,请参阅重命名由信号对象定义的数据存储

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

信号的属性

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

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

如果你设定尺寸参数的值,而不是-1,初始值维度必须与指定的维度匹配,除非初始值是标量或矩阵®结构如果指定标量,则数据存储的每个元素都将标量用作初始值。使用此技术可以对每个元素应用相同的初始值(指定的标量),而无需手动将初始值的维度与数据存储的维度匹配。

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

程序化使用

块参数:初始值
类型:字符向量
价值观:标量|向量|矩阵| N-D数组
违约:'0'

指定块应输出的最小值。默认值为[](未指定)。此数字必须是有限实双标量值。

笔记

如果将总线对象指定为此块的数据类型,请不要为该块上的总线数据设置最小值。Simulink将忽略此设置。相反,请为指定为数据类型的总线对象的总线元素设置最小值。有关总线元素的最小属性的信息,请参阅金宝app金宝app模拟总线元件

金宝app®使用最小值执行以下操作:

程序化使用

块参数:奥特明
类型:字符向量
价值观:标量
违约:“[]”

指定块应输出的最大值。默认值为[](未指定)。此数字必须是有限实双标量值。

笔记

如果指定总线对象作为此块的数据类型,请不要设置块上总线数据的最大值。Simulink忽略此设置。相反,设置指定为数据类型的总线对象的总线元素的最大值。有关总线元素的最大属性的信息,请参见金宝app金宝app模拟总线元件

金宝appSimulink使用最大值执行以下操作:

程序化使用

块参数:奥特马克斯
类型:字符向量
价值观:标量
违约:“[]”

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

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

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

  • 数据类型对象的名称(例如金宝appSimulink.NumericType对象)。

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

单击显示数据类型助手按钮显示数据类型助手,这有助于设置数据类型属性。有关详细信息,请参阅使用数据类型助手指定数据类型

程序化使用

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

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

程序化使用

块参数:磅秤
类型:特征向量
价值观:“关”|“开”
违约:“关闭”

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

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

程序化使用

块参数:尺寸
类型:特征向量
价值观:标量向量矩阵
违约:'-1'

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

默认情况下,MATLAB将矢量数据表示为矩阵,矩阵有两个维度。例如,MATLAB表示向量[1 2 3]作为一个1乘3的矩阵。

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

有关详细信息,请参阅确定源块的输出尺寸

程序化使用

块参数:矢量参数1d
类型:字符向量
价值观:“关”|“开”
违约:“开”

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

程序化使用

块参数:信号类型
类型:特征向量
价值观:“自动”|“真实”|“复杂”
违约:“自动”

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

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

有关示例,请参见在可重用算法实例之间共享数据存储。有关详细信息,请参阅在引用的模型实例之间共享数据

程序化使用

块参数:ShareAcrossModelInstances
类型:特征向量
价值观:“关”|“开”
违约:“关闭”

指定Simulink软件在金宝app编译模型时在模型和基本工作空间中搜索金宝app模拟信号具有相同名称的对象,如中所述符号分辨率.如果S金宝appimulink没有找到这样的对象,编译将停止并出现错误。否则,Simulink金宝app将比较信号对象的属性与数据存储内存块的相应属性。如果块和对象属性不一致,Simulink将停止模型编译并显示错误。金宝app

程序化使用

块参数:StateMustResolveToSignalObject
类型:特征向量
价值观:“关”|“开”
违约:“关闭”

诊断学

如果模型试图从数据存储中读取数据,但在此时间步中尚未写入数据,请选择要采取的诊断操作。另请参阅先读后写检测中的诊断数据存储存储器块模型配置参数>诊断学>数据有效性窗格。

  • 没有一个-没有反应。

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

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

程序化使用

块参数:ReadBeforeWriteMsg
类型:特征向量
价值观:“无”|“警告”|“错误”
违约:“警告”

如果先前在当前时间步中从数据存储器读取数据后,模型试图将数据写入数据存储器,则选择要采取的诊断操作。另见读后检测写中的诊断数据存储存储器块模型配置参数>诊断学>数据有效性窗格。

  • 没有一个-没有反应。

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

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

程序化使用

块参数:WriteAfterReadMsg
类型:特征向量
价值观:“无”|“警告”|“错误”
违约:“警告”

如果模型在当前时间步长内连续两次尝试将数据写入数据存储,请选择要采取的诊断操作。另请参阅检测一次又一次写入中的诊断数据存储存储器块模型配置参数>诊断学>数据有效性窗格。

  • 没有一个-没有反应。

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

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

程序化使用

块参数:WriteAfterWriteMsg
类型:特征向量
价值观:“无”|“警告”|“错误”
违约:“警告”

登录中

选择此选项可在仿真期间将此信号的值保存到MATLAB工作区。看见信号测井详情请参阅。

程序化使用

块参数:数据采集
类型:特征向量
价值观:“关”|“开”
违约:“关闭”

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

金宝app默认情况下,Simulink使用信号名称作为其日志记录名称。要指定自定义日志记录名称,请选择自定义从列表框中选择,然后在相邻的编辑字段中输入自定义名称。

程序化使用

块参数:DataLoggingNameMode
类型:特征向量
价值观:“信号名”|“自定义”
违约:''

笔记

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

块参数:DataLoggingName
类型:特征向量
价值观:特征向量
违约:''

除了最后一个,其余的都扔掉N数据点,在哪里N是您在相邻的编辑字段中输入的数字。有关详细信息,请参阅日志数据存储

程序化使用

块参数:数据记录MaxPoints
类型:特征向量
价值观:非零整数
违约:'5000'

记录每N第个数据点,在哪里N是您在相邻编辑字段中输入的数字。例如,假设您的模型使用步长为的固定步长解算器0.1s如果选择此选项并接受默认抽取值(2.),S金宝appimulink有时会记录此信号的数据点0,0.2,0.4等等有关详细信息,请参阅日志数据存储

程序化使用

块参数:数据记录限制数据点
类型:特征向量
价值观:非零的整数
违约:'2'

块特征

数据类型

布尔值|公共汽车|双重的|枚举|定点|一半|整数|仅有一个的|一串

直接馈通

多维信号

可变大小信号

过零检测

扩展能力

C/C++代码生成
使用Simulink®编码器生成C和C++代码™.金宝app

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

在R2006a之前引入