主要内容

在仿真快照处对气动系统进行线性化

此示例说明如何在基于时间的工作点快照处对 Simulink® 模型进行线性化。此示例采用的模型用于描述压缩空气填充气缸的动态特性。

气动系统模型

打开 Simulink 模型。

mdl = "scdpneumaticlin";
open_system(mdl)

仿真模型。

[t,x,y] = sim(mdl);

在此示例中,供气压力处于闭合状态,系统初始压力为 0.2 MPa。供气压力为 0.7 MPa。在仿真中,伺服阀开度为 0.5e-4 米。仿真期间,压力从初始压力 0.2 MPa 开始增加,并最终稳定在供气压力值。

plot(t,y)

创建仿真快照

计算从 0 到 60 秒、以 10 秒为间隔的多个仿真时间的工作点。findop 函数对模型进行仿真,在每个仿真时间创建模型条件的快照,并为每个快照计算工作点。

op = findop(mdl,[0 10 20 30 40 50 60]);

查看第二个快照时间的工作点。

op(2)
ans = 


 Operating point for the Model scdpneumaticlin.
 (Time-Varying Components Evaluated at time t=10.7245)

States: 
----------
     x     
___________
           
(1.) scdpneumaticlin/Cylinder Pressure Model/dPc//dt
312046.3941
(2.) scdpneumaticlin/Pipe Model/dPp//dt
312509.866 

Inputs: None 
----------

模型线性化

要对模型进行线性化,请首先指定线性化输入和输出点。对于此示例,从伺服阀开度 x 到输出压力对模型进行线性化。

io(1) = linio("scdpneumaticlin/x",1,"input");
io(2) = linio("scdpneumaticlin/Cylinder Pressure Model",1,"output");

针对所有计算得到的快照对模型进行线性化。sys 是一个状态空间模型数组。

sys = linearize(mdl,op,io);

为了观察这些线性化结果的变化情况,绘制生成的线性系统的频率响应。

bodeplot(sys)

另请参阅

| | |

主题