主要内容

发动机转速模型的线性化

此示例显示如何线性化发动机速度模型。

工作点的生成

打开模型。

SCDSPEED

该示例生成输出发动机速度的线性模型,以及在输入的火花前进和节流阀之间。Findop命令将在2000,3000和4000 RPM的稳态条件下计算操作点。

使用该命令创建一个工作点规范对象

opspec = operspec (“scdspeed”
型号scdspeed的工作点规范。(时变组件评估在时间t = 0) : ---------- ( 1) scdspeed /油门&歧管/进气歧管/ p0 = 0.543条规范:dx = 0,初始猜测:0.543 (2)scdspeed /车辆动力学/ w = T / / J w0 = 209 rad / / s规范:dx = 0,初步猜测:209输入 : ---------- ( 1) scdspeed /节流扰动初始猜测:0输出:没有一个  ----------

接下来,指定所需的操作条件。将车辆动力学的第一个输出端口设置为2000、3000和4000 rpm。使用命令ADDOUTPUTSPEC来实现这一点。

opspec = addoutputspec (opspec,“scdspeed / rad / / s rpm”1);

设置第一个操作规范

opspec.Output.Known = 1;opspec.Outputs.y = 2000;

搜索满足此规范的工作点

op (1) = findop (“scdspeed”, opspec);
工作点搜索报告:---------------------------------型号scdspeed的工作点搜索报告。(t=0时评估的时变分量)成功满足工作点规范。州 : ---------- ( 1。)scdspeed /油门&歧管/进气歧管/ p0 x = 0.543条:0.544 dx: 2.66 e-13 (0) (2) scdspeed /车辆动力学/ w = T / / J w0 = 209 rad / / s x: 209 dx: -8.48 e-12(0)输入 : ---------- ( 1) scdspeed /油门扰动u: 0.00382(负无穷到正无穷)输出 : ---------- ( 1) scdspeed / rad / / s rpm y: 2 e + 03 (2 e + 03)

现在,在每分钟3000和4000的转速下搜索剩余的操作点

opspec.Outputs.y = 3000;op (2) = findop (“scdspeed”, opspec);opspec.Outputs.y = 4000;op (3) = findop (“scdspeed”, opspec);
工作点搜索报告:---------------------------------型号scdspeed的工作点搜索报告。(t=0时评估的时变分量)成功满足工作点规范。州:---------(1.)SCDSPEED /油门和歧管/进气歧管/ P0 = 0.543 BAR X:0.49 DX:-5.14E-15(0)(2.)SCDSPEED /车辆动态/w = T//J w0 = 209 rad//s x: 314 dx: 4.57e-13 (0) Inputs: ---------- (1.) scdspeed/Throttle perturbation u: 2.94 [-Inf Inf] Outputs: ---------- (1.) scdspeed/rad//s to rpm y: 3e+03 (3e+03) Operating point search report: --------------------------------- Operating point search report for the Model scdspeed. (Time-Varying Components Evaluated at time t=0) Operating point specifications were successfully met. States: ---------- (1.) scdspeed/Throttle & Manifold/Intake Manifold/p0 = 0.543 bar x: 0.473 dx: 1.13e-11 (0) (2.) scdspeed/Vehicle Dynamics/w = T//J w0 = 209 rad//s x: 419 dx: -1.49e-10 (0) Inputs: ---------- (1.) scdspeed/Throttle perturbation u: 5.83 [-Inf Inf] Outputs: ---------- (1.) scdspeed/rad//s to rpm y: 4e+03 (4e+03)

模型线性化

工作点现在可以进行线性化了。首先使用命令指定输入和输出点:

io (1) = linio ('SCDSPEED /油门(度)', 1“输入”);io (2) = linio (scdspeed /点火提前的, 1“输入”);io (3) = linio (“scdspeed / rad / / s rpm”, 1“输出”);

将模型线性化,并绘制出每种条件下的波德幅度响应。

sys =线性化(“scdspeed”op, io);bodemag(系统)

关闭模式。

bdclose (“scdspeed”