主要内容

blockdiagnostic.

单个块线性化的诊断信息

描述

当你线性化Simulink时金宝app®模型,您可以创建LinearizationAdvisor包含的对象blockdiagnostic.对象。每一个blockdiagnostic.对象包含关于相应的Simulink块的线性化的诊断信息。金宝app通过检查来解决块线性化来解决blockdiagnostic.对象属性。

创建

访问a中的块诊断信息LinearizationAdvisor对象,使用getblockinfo.函数。使用此功能,您可以获得单个blockdiagnostic.对象或多个blockdiagnostic.对象。例如,参见:

属性

全部展开

指示块是否位于线性化路径上的标志,指定为以下之一:

  • “是的”- 块是线性化路径

  • “不”- 块不是线性化路径

线性化路径连接线性化输入和线性化输出。要查看Simulink模型中的线性化路径,请使用金宝app强调函数。

标志指示块是否对模型线性化进行数字地影响,指定为以下之一:

  • “是的”-块对线性化结果有贡献

  • “不”- Block不影响线性化结果

如果一个块不在线性化路径上;也就是说,如果isonpath.“不”,然后ContributesToLinearization“不”

关于块线性化的诊断消息,指定为字符向量的单元数组。这些消息指出可能影响块线性化的问题。

如果HasDiagnostics“不”,然后诊断信息为空单元格数组。

在Simulink模型中的块金宝app路径,指定为字符向量。

标志,指示块是否具有关于其线性化的诊断消息,指定为以下之一:

  • “是的”—块包含诊断消息

  • “不”—块没有诊断消息

如果HasDiagnostics“是的”,然后诊断信息是包含消息的字符向量的单元格数组。

块线性化,指定为状态空间模型。

线性化方法,指定为以下之一:

  • '精确的'- 使用定义的精确线性化块线性化

  • “微扰”-块线性化使用数值摄动

  • “块替换”- 使用指定的自定义线性化块线性化

  • 'simscape network'- Simscape™网络使用Simscape引擎中定义的精确线性化。一个LinearizationAdvisor对象不提供有关Simscape网络的组件级别基础的诊断信息。相反,它将诊断信息组在一起,用于连接到单个的多个SIMSCAPE组件求解器配置块。

  • “不支持”金宝app-块在其当前配置不支持线性化。金宝app例如,一个离散传递Fcn具有外部复位的块不支持线性化。金宝app

    在这里,block线性化是零。有关更多故障处理信息,请查看诊断信息财产。

块线性化的操作点,指定为aBlockOperatingPoint目的。

用法

您可以通过检查单个块线性化的诊断来解决Simulink模型的线性化。金宝app为此,检查属性blockdiagnostic.返回的对象getblockinfo..有关更多信息,请参见在命令行中排除线性化结果故障

例子

全部收缩

加载Sim金宝appulink模型。

mdl =“scdpendulum”;load_system (mdl)

线性化模型并获得LinearizationAdvisor目的。

io = getLinio(MDL);选择=线性化('StoreArevisor',真正的);[linsys, ~,信息]=线性化(mdl, io、选择);顾问= info.Advisor;

找到潜在的线性化问题的块。

块=建议(顾问);

获取这些块的诊断信息。

诊断接头= getBlockInfo(块)
Diags =块的线性化诊断:块信息:------------索引块路径在路径上有助于线性化线性化方法1. scdpendulum / pendulum /饱和度是没有精确的2. scdpendulum / discum_wrap /三角函数1是否扰动3. scdpendulum / pendulum /三角函数是没有扰动

加载Sim金宝appulink模型。

mdl =“scdpendulum”;load_system (mdl)

线性化模型并获得LinearizationAdvisor目的。

io = getLinio(MDL);选择=线性化('StoreArevisor',真正的);[linsys, ~,信息]=线性化(mdl, io、选择);顾问= info.Advisor;

获取饱和块的诊断信息。

satDiag = getBlockInfo(顾问,'scdpendulum / pendulum /饱和度'
satDiag = linear Diagnostics for scdpendulum/pendulum/Saturation with properties: IsOnPath: 'Yes' contributestolineearization: 'No' LinearizationMethod: 'Exact' Linearization: [1x1 ss] OperatingPoint: [1x1 linearize.advisor.BlockOperatingPoint]

您还可以一次获取多个块的诊断信息。为模型中的sin块获取诊断信息。

sinblocks = {“scdpendulum /摆/三角函数”“scdpendulum / angle_wrap /三角Function1”};Sindiag = GetBlockinfo(顾问,Sinblocks)
sindiag =块的线性化诊断:块信息:------------索引块路径在路径上有助于线性化线性化方法1. scdpendulum / discle_wrap /三角函数1是没有扰动2. scdpendulum / pendulum /三角函数功能是否没有扰动

兼容性考虑因素

全部展开

R2018a中行为改变

介绍了R2017b