LinearizationAdvisor
用于故障排除线性化结果的诊断信息
描述
当你线性化Simulink的时候®模型,可以创建一个LinearizationAdvisor
对象,该对象包含关于各个块线性化的诊断信息。通过查看此诊断信息,可以对线性化结果进行故障排除。
要访问诊断信息,请使用getBlockInfo
函数。
创建
有几种方法可以创建LinearizationAdvisor
对象在线性化Simulink模型时。当你线性化一个模型使用:
的
线性化
函数,首先创建一个linearizeOptions
选项集,设置StoreAdvisor
选项真正的
.然后,对模型进行线性化线性化
,返回信息
论点。一个
slLinearizer
接口,首先创建一个linearizeOptions
选项集,设置StoreAdvisor
选项真正的
.然后,创建slLinearizer
接口。当您使用线性化函数从接口获得线性模型时,例如getIOTransfer
,返回信息
论点。一个
slTuner
接口,首先创建一个slTunerOptions
选项集,设置StoreAdvisor
选项真正的
.然后,创建slTuner
接口。当您使用线性化函数从接口获得线性模型时,例如getIOTransfer
,返回信息
论点。
然后可以访问LinearizationAdvisor
对象使用信息。顾问
.如果你在多个工作点线性化模型或使用参数变化,信息。顾问
的数组。LinearizationAdvisor
对象。
属性
模型
- - - - - -仿真软件模型
特征向量
与Simulink模型关联的线性化诊断信息,作为字符向量返回。
模型
是只读属性。
AnalysisPoints
- - - - - -线性分析点
线性化I/O对象|线性化I/O对象的向量
线性分析点,包括输入、输出和开口,作为线性化I/O对象或线性化I/O对象的向量返回。
AnalysisPoints
对应于:
io
的输入参数。线性化
命令。分析了环口和环口
slLinearizer
或slTuner
接口。
有关分析点的更多信息,请参见指定要线性化的模型部分.
AnalysisPoints
是只读属性。
OperatingPoint
- - - - - -操作点
工作点对象
模型被线性化的工作点,指定为工作点对象。
OperatingPoint
是只读属性。
参数
- - - - - -参数样本
[]
(默认)|结构|结构数组
用于线性化的参数样本,指定为以下之一:
[]
—线性化结果无关联参数值。Structure -单个参数的值,指定为具有以下字段的结构:
的名字
-参数名称价值
-参数值
结构数组-多个参数的值。
有关参数变化的更多信息,请参见为批量线性化指定参数样本.
参数
是只读属性。
LinearizationOptions
- - - - - -线性化算法选项
linearizeOptions
选项设置
线性化算法选项,指定为linearizeOptions
对象。
LinearizationOptions
对应于选项
的输入参数线性化
,slLinearizer
,或slTuner
.
LinearizationOptions
是只读属性。
BlockDiagnostics
- - - - - -诊断信息
BlockDiagnostic
对象|向量的BlockDiagnostic
对象
属性所使用的搜索条件相匹配的每个块的诊断信息LinearizationAdvisor
对象,指定为BlockDiagnostic
的对象或向量BlockDiagnostic
对象。
属性可以访问这些块诊断getBlockInfo
命令。若要获取块的列表,请使用getBlockPaths
命令。
BlockDiagnostics
是只读属性。
QueryType
- - - - - -查询类型
特征向量
用于获取线性化诊断的查询类型,指定为以下之一:
“所有块”
当您最初创建LinearizationAdvisor
对象使用线性化函数,例如线性化
或getIOTransfer
.“线性化的建议”
当你创建LinearizationAdvisor
对象使用建议
命令。属性匹配的字符向量
QueryType
属性时,对应的自定义查询对象LinearizationAdvisor
对象使用找到
命令。
QueryType
是只读属性。
描述
- - - - - -查询描述
特征向量
用于获取线性化诊断的查询的说明,指定为以下之一:
“所有线性化块”
当您最初创建LinearizationAdvisor
对象使用线性化函数,例如线性化
或getIOTransfer
.“对线性化有潜在问题的块”
当你创建LinearizationAdvisor
对象使用建议
命令。属性匹配的字符向量
描述
属性时,对应的自定义查询对象LinearizationAdvisor
对象使用找到
命令。
描述
是只读属性。
对象的功能
建议 |
找出线性化有潜在问题的块 |
突出 |
突出线性化路径动态仿真模块模型 |
找到 |
在线性化结果中找到符合特定标准的块 |
getBlockInfo |
获取块线性化的诊断信息 |
getBlockPaths |
中获取块列表LinearizationAdvisor 对象 |
例子
创建LinearizationAdvisor
使用线性化
加载Simulink模型。
mdl =“scdpendulum”;load_system (mdl)
创建线性化选项集,启用StoreAdvisor
选择。
opt =线性化选项(“StoreAdvisor”,真正的);
使用此选项集线性化模型,返回信息
论点。
IO = getlinio(mdl);[linsys,~,info] =线性化(mdl,io,opt);
提取LinearizationAdvisor
对象从信息
.
Advisor = info。顾问
模型:'scdpendulum'操作点:[1x1 opcond.]BlockDiagnostics: [1x11 linear .advisor.]BlockDiagnostic] QueryType: '所有块'
创建LinearizationAdvisor
使用slLinearizer
接口
加载Simulink模型。
mdl =“scdspeed”;load_system (mdl)
创建线性化选项集,启用StoreAdvisor
选择。
opt =线性化选项(“StoreAdvisor”,真正的);
定义输入和输出分析点,并创建一个slLinearizer
使用此选项集的接口。
Io (1) = linio(“scdspeed /油门(度)”, 1“输入”);Io (2) = linio('scdspeed/rad//s to rpm', 1“输出”);SL = slLinearizer(mdl,io,opt);
求从输入到输出的传递函数,返回信息
论点。
[linsys,info] = getIOTransfer(SL,“scdspeed /油门(度)”,'scdspeed/rad//s to rpm');
提取LinearizationAdvisor
对象从信息
.
Advisor = info。顾问
Model: 'scdspeed' OperatingPoint: [1x1 opcond.]BlockDiagnostics: [1x27 linear .advisor.]BlockDiagnostic] QueryType: '所有块'
创建LinearizationAdvisor
使用slTuner
接口
加载Simulink模型。
mdl =“scdspeed”;load_system (mdl)
创建一个slTunerOptions
选项集,启用StoreAdvisor
选择。
opt = slTunerOptions(“StoreAdvisor”,真正的);
定义输入和输出分析点,并创建一个slTuner
使用此选项集的接口。
Io (1) = linio(“scdspeed /油门(度)”, 1“输入”);Io (2) = linio('scdspeed/rad//s to rpm', 1“输出”);ST = slTuner(mdl,io,opt);
控件对控制系统进行调优systune
函数。然后,你可以找到从输入到输出的传递函数,返回信息
论点。
[linsys,info] = getIOTransfer(ST,“scdspeed /油门(度)”,'scdspeed/rad//s to rpm');
提取LinearizationAdvisor
对象从信息
.
Advisor = info。顾问
Model: 'scdspeed' OperatingPoint: [1x1 opcond.]BlockDiagnostics: [1x27 linear .advisor.]BlockDiagnostic] QueryType: '所有块'
找到线性化的潜在问题块
加载Simulink模型。
mdl =“scdpendulum”;load_system (mdl)
线性化模型,得到LinearizationAdvisor
对象。
IO = getlinio(mdl);opt =线性化选项(“StoreAdvisor”,真正的);[linsys,~,info] =线性化(mdl,io,opt);advisor = info.Advisor;
找到线性化的潜在问题块。
Result = advise(advisor)
Model: 'scdpendulum' OperatingPoint: [1x1 opcond.]BlockDiagnostics: [1x3 linear .advisor.]QueryType: '线性化建议'
找到所有的SISO块
加载Simulink模型。
mdl =“scdspeed”;load_system (mdl)
对模型进行线性化,得到LinearizationAdvisor
对象。
opts =线性化选项(“StoreAdvisor”,真正的);Io (1) = linio(“scdspeed /油门(度)”, 1“输入”);Io (2) = linio('scdspeed/rad//s to rpm', 1“输出”);[sys,op,info] =线性化(mdl,io,opts);advisor = info.Advisor;
创建复合查询对象,用于查找具有一个输入和一个输出的所有块。
qSISO = linqueryHasInputs(1) & linqueryHasOutputs(1);
使用复合查询对象查找所有SISO块。
advSISO = find(advisor,qSISO)
advSISO =线性顾问与属性:模型:'scdspeed'操作点:[1x1 opcond。BlockDiagnostics: [1x10 linear .advisor.]BlockDiagnostic] QueryType: '(Has 1 Inputs & Has 1 Outputs)'
获取潜在问题块的诊断
加载Simulink模型。
mdl =“scdpendulum”;load_system (mdl)
对模型进行线性化,得到LinearizationAdvisor
对象。
IO = getlinio(mdl);opt =线性化选项(“StoreAdvisor”,真正的);[linsys,~,info] =线性化(mdl,io,opt);advisor = info.Advisor;
找出线性化有潜在问题的块。
Blocks = advise(advisor);
获取这些块的诊断信息。
digs = getBlockInfo(块)
digs =块的线性化诊断:块信息:-----------索引BlockPath Is On Path有助于线性化scdpendulum/pendulum/Saturation是否完全正确scdpendulum/angle_wrap/三角函数1是否摄动scd摆/摆/三角函数是否扰动
选择功能
应用程序
中的“线性化顾问”,可以交互方式对线性化结果进行故障排除模型线性化电路.有关示例,请参见在模型线性器中排除线性化结果.
版本历史
在R2017b中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。