主要内容

使用不同的速率转换方法线性化模型

此示例演示了如何在对多速率Simulink®模型进行线性化时指定速率转换方法。金宝app速率转换方法的选择会影响得到的线性化模型。这个例子说明了如何使用两种不同的速率转换方法提取一个离散线性时不变(LTI)模型。

scdmrate金宝appSimulink模型包含五个具有不同采样时间的块。该模型中所有线性系统均为零极增益格式。

  • sysC-连续线性时不变(LTI)系统

  • 积分器-连续时间积分器

  • sysTs1-采样时间为0.01秒的离散时间LTI系统

  • sysTs2-采样时间为0.025秒的离散时间LTI系统

  • 零级举行-在0.01秒对传入信号进行采样的阻塞

打开Simulin金宝appk模型。

mdl =“scdmrate”;open_system (mdl)

的输出之间对模型进行线性化sysTs1块和输出的零级举行块。要计算开环响应,需要在的输出处添加一个开环零级举行块。

Io (1) = linio(“scdmrate / sysTs1”, 1“输入”);Io (2) = linio(“scdmrate /零持有”, 1“openoutput”);

利用这些线性化点,线性化有效地导致模型的线性化scdmrate_ol

open_system (“scdmrate_ol”

当线性化一个包含连续和离散信号的模型时,软件首先使用速率转换方法将连续信号转换为离散信号。要指定速率转换方法,请创建linearizeOptions对象,并设置RateConversionMethod财产。默认的利率转换方法是零阶持有(“zoh”).

opt = linearizeOptions;opt.RateConversionMethod
Ans = 'zoh'

使用默认的零阶保持方法将模型线性化。因为线性化包括零级举行块,线性化的采样时间为0.01秒。

Syszoh =线性化(mdl,io,opt);

将速率转换方法改为Tustin(双线性转换)方法,并利用该方法对模型进行线性化。所得模型的采样时间也是0.01秒。

opt.RateConversionMethod =“tustin”;Systust =线性化(mdl,io,opt);

您还可以通过指定样本时间为来创建一个连续时间的线性化模型0linearizeOptions对象。速率转换方法首先创建一个离散时间线性化模型,然后将离散时间模型转换为连续时间模型。

opt.SampleTime = 0;Sysc =线性化(mdl,io,opt);

三种线性化的波德图显示了两种速率转换方法的效果。在这个例子中,Tustin速率转换方法给出了连续时间系统相位响应的最精确表示,零阶保持器给出了与量级响应的最佳匹配。

P = bodeoptions(“cstprefs”);p.YLimMode = {“手动”};p.YLim = {[-100 0];[-180 -30]};p.Grid =“上”;bodeplot (sysc, syszoh systust p);传奇(“sysc”“syszoh”“systust”“位置”“西南”);

关闭模型。

bdclose (“scdmrate”) bdclose (“scdmrate_ol”

另请参阅

|

相关的话题