文档

金宝app仿真软件。MSFcnRunTimeBlock

获取关于Level-2的运行时信息MATLAB功能块

描述

这个类允许一个Level-2 MATLAB®s函数或其他MATLAB程序从Simulink中获取信息金宝app®软件,并向Simulink软件提供关于二级MATLAB S-Functi金宝appon块的信息。金宝appSimulink软件为模型中的每个二级MATLAB S-Function块创建该类的实例。金宝appSimulink软件在更新或模拟模型时,将对象传递给二级MATLAB s函数的回调方法,允许回调方法获取并向Simulink软件提供与块相关的信息。看到编写二级MATLAB s函数获取更多信息。

您还可以在MATLAB程序中使用该类的实例,以在模拟过程中获得关于二级MATLAB S-Function块的信息。看到在模拟中访问块数据获取更多信息。

二级MATLAB s函数模板matlabroot/ /工具/模型/金宝app块msfuntmpl.m演示如何使用以下许多方法。

派生类

没有一个

产权总结

名字

描述

AllowSignalsWithMoreThan2D

使二级MATLAB s函数使用多维信号。

DialogPrmsTunable

指定s函数的哪个对话框参数是可调的。

NextTimeHit

变量采样时间s函数下一个采样命中的时间。

方法总结

名字

描述

AutoRegRuntimePrms

将此块的对话框参数注册为运行时参数。

AutoUpdateRuntimePrms

更新此块的运行时参数。

IsDoingConstantOutput

确定当前仿真阶段是否为定样本时间阶段。

IsMajorTimeStep

确定当前模拟时间步长是否是主要时间步长。

IsSampleHit

确定当前模拟时间是否是由此块处理的任务处于活动状态的时间。

IsSpecialSampleHit

确定当前模拟时间是否是由该块处理的多个任务处于活动状态的时间。

RegBlockMethod

为这个块注册一个回调方法。

RegisterDataTypeFxpBinaryPoint

用二进制点缩放寄存器定点数据类型。

RegisterDataTypeFxpFSlopeFixexpBias

注册定点数据类型,使用分数斜率、固定指数和偏差指定的[Slope Bias]缩放。

RegisterDataTypeFxpSlopeBias

用[Slope Bias]缩放寄存器数据类型。

SetAccelRunOnTLC

指定是否使用此块的TLC文件为使用它的模型生成模拟目标。

SetPreCompInpPortInfoToDynamic

设置要继承的该块输入端口的预编译属性。

SetPreCompOutPortInfoToDynamic

设置要继承的该块输出端口的预编译属性。

SetPreCompPortInfoToDefaults

将此块端口的预编译属性设置为默认值。

SetSimViewingDevice

指定块是否为查看器。

金宝appSupportsMultipleExecInstances

WriteRTWParam

将自定义参数信息写入金宝app仿真软件编码器™文件。

属性

AllowSignalsWithMoreThan2D

描述

允许二级MATLAB s函数使用多维信号。您必须设置AllowSignalsWithMoreThan2D的财产设置方法。

数据类型

布尔

访问

RW

DialogPrmsTunable

描述

指定s函数的对话框参数是否可调。类时,可调参数被注册为运行时参数AutoRegRuntimePrms方法。请注意,SimOnlyTunable参数没有注册为运行时参数。例如,下面的代码行初始化了三个对话框参数,其中第一个是可调的,第二个是不可调的,第三个只有在模拟过程中是可调的。

块。NumDialogPrms = 3;块。dialogprmstable ={'可调','不可调','SimOnlyTunable'};

数据类型

数组

访问

RW

NextTimeHit

描述

变量采样时间s函数下一次采样命中的时间。

数据类型

访问

RW

方法

AutoRegRuntimePrms

目的

将块的可调对话框参数注册为运行时参数。

语法

AutoRegRuntimePrms;

描述

PostPropagationSetup方法将此块的可调对话框参数注册为运行时参数。

AutoUpdateRuntimePrms

目的

更新块的运行时参数。

语法

AutoUpdateRuntimePrms;

描述

的调用期间自动更新运行时参数的值ProcessParameters

请看s函数matlabroot/工具/模型/ s金宝appimdemos / simfeatures /adapt_lms.m在Simuli金宝appnk模型中sldemo_msfcn_lms举个例子。

IsDoingConstantOutput

目的

确定这是否在模拟的常数采样时间阶段。

语法

bVal = IsDoingConstantOutput;

描述

如果这是模拟的常数采样时间阶段,即在模拟开始时,Simulink软件计算在模拟过程中不能改变的块输出值的阶段,则返回true金宝app恒定采样时间).使用此方法输出采用基于端口采样时间的s函数方法,避免不必要地计算具有恒定采样时间的端口的输出,即(正无穷,0)

function输出(块)。如果块。IsDoingConstantOutput ts = block.OutputPort(1).SampleTime;if ts(1) == Inf %%计算端口输出。结束,结束。%%输出结束

看到指定基于端口的采样次数获取更多信息。

IsMajorTimeStep

目的。

判断当前时间步长是大时间步长还是小时间步长。

语法

bVal = IsMajorTimeStep;

描述

如果当前时间步长为主要时间步长,则返回true;如果它是一个小时间步长,则为False。方法中调用此方法输出更新方法。

IsSampleHit

目的

确定当前模拟时间是否是由此块处理的任务处于活动状态的时间。

语法

bVal = IsSampleHit(stIdx);

参数

stIdx

要查询的采样时间的全局索引。

描述

用在输出更新块方法时,MATLAB s函数有多个采样次数,以确定一个采样命中是否已经发生stIdx.采样时间指数stIdx是Simulink模型的全局索引。金宝app例如,考虑一个包含三个采样率为0.1、0.2和0.5的模型,以及一个包含两个采样率为0.2和0.5的MATLAB s函数块。在MATLAB s函数中,block.IsSampleHit (0)对于速率0.1返回true,而不是速率0.2。

此块方法类似于ssIsSampleHit然而,C-MeX s函数ssIsSampleHit只根据s函数中包含的采样时间返回值。例如,如果上面描述的模型包含抽样率为0.2和0.5的C-MeX s函数,ssIsSampleHit(年代,0,tid)返回真正的速率为0.2。

使用基于端口的采样时间以避免对多速率系统使用全局采样时间索引(参见金宝app仿真软件。BlockPortData).

IsSpecialSampleHit

目的

确定当前模拟时间是否是由该块实现的多个任务处于活动状态的时间。

语法

bVal = IsSpecialSampleHit(stIdx1,stIdx1);

参数

stIdx1

第一个要查询的任务的采样时间索引。

stIdx2

要查询的第二个任务的采样时间索引。

描述

用在输出更新块方法,以确保以不同速率运行的多个任务共享的数据的有效性。如果发生了一个示例命中,则返回truestIdx1一个样本也发生在stIdx2在相同的时间步长(类似于ssIsSpecialSampleHitC-Mex - s函数)。

当使用IsSpecialSampleHit宏,较慢的采样时间必须是较快的采样时间的整数倍。

RegBlockMethod

目的

注册一个块回调方法。

语法

RegBlockMethod (methName methHandle);

参数

methName

要注册的方法名称。

methHandle

MATLAB函数句柄的回调方法要注册。

描述

所指定的块回调方法methName而且methHandle.使用此方法设置二级MATLAB s -函数的函数,以指定s -函数实现的块回调方法。

RegisterDataTypeFxpBinaryPoint

目的

用二进制点缩放寄存器定点数据类型。

语法

dtID = RegisterDataTypeFxpBinaryPoint(isSigned, wordLength, fractionalLength, obeyDataTypeOverride);

参数

isSigned

真正的如果数据类型是有符号的。

如果数据类型为unsigned。

数据类型中的总位数,包括任何符号位。

fractionalLength

数据类型中二进制点右侧的位数。

obeyDataTypeOverride

真正的指示数据类型覆盖要遵守子系统的设置。的值数据类型覆盖,结果数据类型可以是ScaledDouble,或由函数的其他参数指定的定点数据类型。

指示数据类型覆盖设置将被忽略。

描述

该方法向Simulink软件注册一个定点数据类型,并返回一个数据类型ID。金宝app数据类型ID可用于指定输入和输出端口、运行时参数和DWork状态的数据类型。它还可以与为该类实例定义的所有标准数据类型访问方法一起使用,例如DatatypeSize

如果您想注册一个只使用二进制点缩放的定点数据类型,请使用此函数。或者,你可以使用其他定点注册函数之一:

如果注册的数据类型不是Simulink内置数据类型之一,则签出定点设计器许可证。金宝app

RegisterDataTypeFxpFSlopeFixexpBias

目的

注册定点数据类型,使用分数斜率、固定指数和偏差指定的[Slope Bias]缩放

语法

dtID = RegisterDataTypeFxpFSlopeFixexpBias(isSigned, wordLength, fractionalSlope, fixedexponent, bias, obeyDataTypeOverride);

参数

isSigned

真正的如果数据类型是有符号的。

如果数据类型为unsigned。

数据类型中的总位数,包括任何符号位。

fractionalSlope

数据类型的分数斜率。

fixedexponent

数据类型斜率的指数。

偏见

数据类型的缩放偏差。

obeyDataTypeOverride

真正的指示数据类型覆盖要遵守子系统的设置。的值数据类型覆盖,结果数据类型可以是真正的双打真正的单身ScaledDouble,或由函数的其他参数指定的定点数据类型。

指示数据类型覆盖设置将被忽略。

描述

该方法向Simulink软件注册一个定点数据类型,并返回一个数据类型ID。金宝app数据类型ID可用于指定输入和输出端口、运行时参数和DWork状态的数据类型。它还可以与为该类实例定义的所有标准数据类型访问方法一起使用,例如DatatypeSize

如果要通过指定字长、分数斜率、固定指数和偏置来注册定点数据类型,请使用此函数。或者,你可以使用其他定点注册函数之一:

如果注册的数据类型不是Simulink内置数据类型之一,则签出定点设计器许可。金宝app

RegisterDataTypeFxpSlopeBias

目的

用[Slope Bias]缩放寄存器数据类型。

语法

dtID = RegisterDataTypeFxpSlopeBias(isSigned, wordLength, totalSlope, bias, obeyDataTypeOverride);

参数

isSigned

真正的如果数据类型是有符号的。

如果数据类型为unsigned。

数据类型中的总位数,包括任何符号位。

totalSlope

数据类型缩放的总斜率。

偏见

数据类型的缩放偏差。

obeyDataTypeOverride

真正的指示数据类型覆盖要遵守子系统的设置。的值数据类型覆盖,结果数据类型可以是真正的双打真正的单身ScaledDouble,或由函数的其他参数指定的定点数据类型。

指示数据类型覆盖设置将被忽略。

描述

该方法向Simulink软件注册一个定点数据类型,并返回一个数据类型ID。金宝app数据类型ID可用于指定输入和输出端口、运行时参数和DWork状态的数据类型。它还可以与为该类实例定义的所有标准数据类型访问方法一起使用,例如DatatypeSize

如果你想注册一个定点数据类型[Slope Bias]缩放,使用这个函数。或者,你可以使用其他定点注册函数之一:

如果注册的数据类型不是Simulink内置数据类型之一,则签出定点设计器许可。金宝app

SetAccelRunOnTLC

目的

指定是否使用block的TLC文件为Simulink软件的Accelerator模式生成代码。金宝app

语法

SetAccelRunOnTLC (bVal);

参数

bVal

可能是“真正的”(使用TLC文件)或“假”(以解释模式运行block)。

描述

指定块是否应该使用它的TLC文件来生成与加速器一起运行的代码。如果这个选项是“假”,块以解释模式运行。请看s函数msfcn_times_two.m在Simuli金宝appnk模型中msfcndemo_timestwo举个例子。

请注意

默认的JIT加速器模式不支持用户编写的TLC S-Functions的内联。金宝app请参阅加速模式如何工作而且控制s函数执行获取更多信息。

SetPreCompInpPortInfoToDynamic

目的

设置要继承的该块输入端口的预编译属性。

语法

SetPreCompInpPortInfoToDynamic;

描述

初始化要继承的该块输入端口的编译信息(维度、数据类型、复杂度和采样模式)。请看s函数matlabroot/工具/模型/ s金宝appimdemos / simfeatures /adapt_lms.m在Simuli金宝appnk模型中sldemo_msfcn_lms举个例子。

SetPreCompOutPortInfoToDynamic

目的

设置要继承的该块输出端口的预编译属性。

语法

SetPreCompOutPortInfoToDynamic;

描述

初始化要继承的块输出端口的编译信息(维度、数据类型、复杂性和采样模式)。请看s函数matlabroot/工具/模型/ s金宝appimdemos / simfeatures /adapt_lms.m在Simuli金宝appnk模型中sldemo_msfcn_lms举个例子。

SetPreCompPortInfoToDefaults

目的

将此块端口的预编译属性设置为默认值。

语法

SetPreCompPortInfoToDefaults;

描述

将块端口的编译信息(维度、数据类型、复杂性和采样模式)初始化为默认值。默认情况下,端口接受数据类型为的实标量采样信号

SetSimViewingDevice

目的

指定此块是否为查看器。

语法

SetSimViewingDevice (bVal);

参数

bVal

可能是“真正的”(是观众)或“假”(不是观众)。

描述

指定该块是否是一个查看器/作用域。如果指定了该标志,该块将只在模拟期间使用,并在生成的代码中自动stub。

金宝appSupportsMultipleExecInstances

目的

指定For Each子系统是否支持其中的s函数。金宝app

语法

金宝appSupportsMultipleExecInstances (bVal);

参数

bVal

可能是“真正的”(支持s函数)或金宝app“假”(不支持s函数)。金宝app

描述

指定s函数是否可以在For Each子系统中操作。

WriteRTWParam

目的

类中写入自定义参数金宝app仿真软件编码器用于代码生成的信息文件。

语法

(pType, pName, pVal)

参数

pType

要写入的参数类型。有效值为“字符串”而且“矩阵”

pName

要写入的参数名称。

pVal

要写入参数的值。

描述

WriteRTW用MATLAB的s函数方法写出自定义参数。这些参数通常用于确定如何在TLC文件中为s函数生成代码。请看s函数matlabroot/工具/模型/ s金宝appimdemos / simfeatures /adapt_lms.m在Simuli金宝appnk模型中sldemo_msfcn_lms举个例子。

R2006a之前介绍