使用slLinearizer接口改变工作点并获得多个传递函数
方法的使用slLinearizer
接口批量线性化Simulink®模型。您可以在多个工作点线性化模型,并从模型中获得多个开环和闭环传递函数。
方法可以执行相同的分析线性化
命令。然而,当你想要获得多个开环和闭环传递函数时,特别是对于重复编译成本很高的模型,slLinearizer
可以更有效率。
为模型创建slLinearizer接口
打开模型。
mdl =“watertank”;open_system (mdl)
使用slLinearizer
命令创建接口。
sllin = sllinear (mdl)
slLinearizer“水箱”的线性化界面:没有分析点。使用addPoint命令添加新的点。没有永久职位。使用addOpening命令添加新的永久开口。参数:[]OperatingPoints:[](将使用模型初始条件)BlockSubstitutions:[]选项:[1x1线性化。LinearizeOptions]
命令窗口显示有关slLinearizer
接口。在此接口中OperatingPoints
属性显示未指定操作点。
为线性化指定多个工作点
您可以使用修剪过的工作点、模型初始条件或模拟快照时间线性化模型。对于本例,使用从不同水位参考高度获得的修剪点。
Opspec = operspec(mdl);opspec.States(2)。已知= 1;opts = findopOptions(“DisplayReport”,“关闭”);H = [10 15 20];为ct = 1:numel(h) opspec.States(2)。X = h(ct);Href = h(ct);Ops (ct) = findop(mdl,opspec,opts);结束sllin。OperatingPoints = ops;
在这里,h
指定不同的水位。运维
是一个1 x 3的工作点对象数组。每一项运维
为模型在相应水位处的工作点。配置OperatingPoints
的属性sllin
与运维
.现在,当你从sllin
使用getIOTransfer
,getLoopTransfer
,getSensitivity
,getCompSensitivity
函数,软件为每个指定的工作点返回线性化。
每个修剪点仅对相应的参考高度有效,该参考高度由Href
参数。所以,配置sllin
要相应地改变此参数。
参数。Name =“Href”;参数。Value = h;sllin。参数=参数;
植物转移函数分析
在watertank
模型中,水箱系统块代表工厂。为得到植物传递函数,将水箱系统块的输入输出信号作为分析点sllin
.
addPoint (sllin, {“watertank / PID控制器”,“watertank /水箱系统”}) sllin
slLinearizer“水箱”线性化接口:2分析点:--------------------------点1:-块:水箱/PID控制器-端口:1点2:-块:水箱/水箱系统-端口:1无永久开口。使用addOpening命令添加新的永久开口。参数:[1x1 struct], 1个参数,样本网格大小为1x3“Href”,在10到20之间变化。操作点:[1x3 opcond。OperatingPoint] BlockSubstitutions:[]选项:[1x1线性化。LinearizeOptions]
第一个分析点源于PID控制器块的输出口,是水箱系统块的输入。第二个分析点是水箱系统块的输出。
获得从水箱系统块的输入到块的输出的植物传递函数。要消除反馈循环的影响,请将块输出指定为临时循环开口。
G = getIOTransfer(sllin,“PID”,“坦克”,“坦克”);
在对getIOTransfer
,“PID”
,是块名的一部分“watertank / PID控制器”
,将第一个分析点作为传递函数输入。同样的,“坦克”
,是块名的一部分“watertank /水箱系统”
,为第二个分析点。这个分析点被指定为传递函数输出(第三个输入参数)和临时循环打开(第四个输入参数)。
输出,G
,是连续时间状态空间模型的1 × 3数组。
的阶跃响应G
.
stepplot (G);
植物模型在不同工作点的阶跃响应有显著差异。
分析闭环传递函数
闭环传递函数等于从起始于期望水位块的参考输入到植物输出的传递函数。
添加参考输入信号作为的分析点sllin
.
addPoint (sllin“水箱/理想水位”);
得到闭环传递函数。
T = getIOTransfer(sllin,“想要的”,“坦克”);
输出,T
,是连续时间状态空间模型的1 × 3数组。
的阶跃响应T
.
stepplot (T);
尽管在三个修剪后的工作点上,装置传递函数的阶跃响应变化显著,但控制器使闭环响应在所有三个工作点上更加接近。
分析植物产量的敏感性
S = getSensitivity(sllin,“坦克”);
该软件注入一个干扰信号,并在工厂输出测量输出。年代
是连续时间状态空间模型的1 x 3数组。
的阶跃响应年代
.
stepplot(年代);
图表明,两种模型都能在40秒内抑制植物输出的阶跃扰动。
另请参阅
slLinearizer
|addPoint
|addOpening
|getIOTransfer
|getLoopTransfer
|getSensitivity
|getCompSensitivity
|线性化