主要内容

建模容错燃料控制系统

此示例显示如何将StateFlow®与Simulink®组合以有效地模拟混合系统。万博1manbetx这种类型的建模对于基于离散事件具有许多可能的操作模式的系统特别有用。在Simulink中处理传统信号流,而控制配置的更改在equenflow中实万博1manbetx现。下面描述的模型代表了汽油发动机的燃料控制系统。该系统在检测到各个传感器故障中,并且控制系统被动态重新配置,以便不间断地重新配置。

分析和物理

物理和经验关系形成该模型的节流阀和进气流动动力学的基础。通过将空气质量流量(从进气歧管泵送)除以燃料质量流量(注入阀门)来计算空气燃料比。理想的(即化学计量)混合比率在动力,燃料经济性和排放之间提供了良好的折衷。该系统的目标空燃比为14.6。通常,传感器确定废气中存在的残留氧气量(自我)。这给出了混合比的良好指示,并提供了闭环控制的反馈测量。如果传感器表示高氧气水平,则控制法增加燃料速率。当传感器检测到富含燃料的混合物时,对应于非常低水平的残余氧气,控制器降低燃料速率。

建模

图1显示了Simulink模型的顶层。万博1manbetx要打开模型,单击开放模式.按下模型窗口工具栏中的Play按钮来运行模拟。模型从模型工作区加载必要的数据sldemo_fuelsys_data.m.该模型将相关数据记录到一个名为MATLAB工作空间的数据结构中sldemo_fuelsys_output.并将数据流送到仿真数据检查器。记录的信号用蓝色指示器标记,而流信号用浅蓝色标记(见图1)。

请注意,将初始条件加载到模型工作区中可以使模拟数据与您可能打开的其他开放模型中的数据隔离开来。这也有助于避免MATLAB工作空间的混乱。要查看模型工作区的内容,选择Modeling > model Explorer,并从模型层次列表中单击model workspace。

注意,单元在模型和子系统图标以及信号线上是可见的。单元在端口和总线对象上指定。

图1:燃料控制系统模型的顶层图

Dashboard子系统(如图2所示)允许您在模拟期间与模型交互。故障注入开关可以从正常位置移动到故障位置来模拟传感器故障,而发动机转速选择开关可以切换来改变发动机转速。燃油和空气/燃料比信号通过仪表盘仪表和示波器可视化,在模拟运行期间提供视觉反馈。

图2:仪表盘分系统为燃油控制系统模型

燃油率控制使用来自系统传感器的信号来确定燃油率,从而给出化学计量混合物。在发动机气体动力学模型中,燃油率与实际空气流量相结合,以确定在排气时感知到的混合比例。

您可以通过使用仪表板子系统中的滑块交换机来选择性地禁用四个传感器(油门角度,速度,自我和歧管绝对压力[MAP])来模拟故障。万博1manbetxSimulink通过将滑块切换绑定到常量块的值参数来完成此操作。双击仪表板子系统以打开控制仪表板以更改交换机的位置。同样,您可以通过在仪表板子系统上切换发动机速度开关来诱导高发动机速度的故障状况。重复表块提供节气门角输入并定期重复掩码中指定的数据序列。

如图3所示,fuel_rate_control块使用传感器输入和反馈信号来调整燃油率,以给出一个化学计量比。该模型使用三个子系统来实现这一策略:控制逻辑、气流计算和燃料计算。在正常运行下,该模型估计气流速率,并将估计值乘以所需比率的倒数,得出燃油速率。来自氧气传感器的反馈提供了一个闭环调整的速率估计,以保持理想的混合比例。

图3:燃料速率控制器子系统

控制逻辑

由一组六个并行状态组成的单个状态流程图完整地实现了控制逻辑。图4顶部显示的四个平行状态对应于四个单独的传感器。底部剩余的两个平行状态同时考虑四个传感器的状态,并确定整个系统的工作模式。该模型以0.01秒的常规采样时间间隔同步调用整个状态流图。这允许及时测试转换到正确模式的条件。

开放双击燃油率控制子系统中的控制逻辑状态流程图。

图4:控制逻辑图表

当执行开始时,所有的状态开始在他们正常的模式,但氧气传感器(EGO)除外。的氧气预热状态初始进入,直到预热期结束。当测量值超出额定范围时,系统会检测节流和压力传感器故障。在没有速度信号的歧管真空状态下,表示速度传感器故障。氧传感器也有一个故障条件的标称范围,但是,因为零既是最小信号水平,也是范围的底部,只有当它超过上限时,才能检测到故障。

无论哪个传感器发生故障,模型始终生成所定向的事件广播fail.inc..这样,通用传感器故障逻辑的触发与传感器无关。该模型还使用了相应的传感器恢复事件,fail.dec..的失败状态跟踪失败传感器的数量。每个计数器增量fail.inc.事件,并在每个Fail.DEC事件上递减。模型使用超级状态,,对多个传感器进行组进行组的所有情况。

底部并联状态表示发动机的加油模式。如果单个传感器发生故障,则运行继续,但空气/燃料混合物更加富有,以便以更高的排放成本跑步。如果多个传感器失效,则发动机作为安全措施关闭,因为不能可靠地控制空气/燃料比。

在氧气传感器预热期间,模型将混合物保持在正常水平。如果这不能令人满意,您可以通过将预热状态移动到富铀混合物夸耀。如果在预热期间发生传感器故障,则single_failure.状态在预热时间过了之后进入。否则,正常的状态此时为激活状态。

中创建了一个新的状态,从而在模型中添加了一个超速保护功能Fuel_Disabled夸耀。通过使用历史交汇电源,我们确信当模型退出超速状态时,图表返回适当的状态。随着发动机的安全要求变得更好地指定,我们可以向额外的关机状态添加额外的关机状态Fuel_Disabled夸耀。

传感器校正

当传感器发生故障时,模型计算传感器的估计值。例如,开放压力传感器计算。在传感器正常工作下,模型使用压力传感器的值。否则,模型估计价值。

该模型计算了歧管压力作为发动机转速和节气门位置的函数的估计。为了计算值,模型使用statflow中的Simulink函数。万博1manbetx

气流计算

气流计算块(如图6所示)是中央控制律的位置。此块位于燃油率控制子系统内(打开这个块).该块估计进气流量,以确定燃料率,从而给出适当的空气/燃料比。闭环控制根据剩余氧反馈来调整估计,以精确地保持混合比例。即使传感器故障要求开环操作,最新的闭环调整仍将保留,以最佳满足控制目标。

图6:气流估计及校正

等式1

发动机的进气流量可以表述为发动机转速、歧管压力和一个时变比例因子的乘积。

$ $ q = \压裂{N}{4 \π}V_ {cd} \ν\压裂{P_m} {RT} = C_{泵}(N, P_m) N P_m = \ mbox{进气质量流量}$ $

$$N = \mbox{引擎角速度(Rad/sec)}$$

$$V_{cd} = \mbox{发动机气缸排量}$$

$$ mbox{volume efficiency}

$$ p_m = \ mbox {歧管压力} $$

$R, T = mbox{气体比常数,气体温度}$

Cpump由查找表计算,并乘以速度和压力,形成初始流量估计值。在瞬态期间,节气门开度和由高通滤波器近似的导数,校正充气动态的空气流量。控制算法根据方程式2提供附加校正。

等式2

$e_0 = 0.5 \mbox{for} EGO\le 0.5$

$$e_0 = -0.5 \mbox{for} EGO >0.5 $ $

$ _1 = K_i (N,P_m) e_0 \mbox{for} EGO\le 0.5$$

$$ . text = $$ . text = $$ . text = $$ . text = $$

$$ mbox{for RICH, DISABLE or EGO warmup}

$$ e_0, e_1, e_2 = \mbox{中间错误信号

图7:发动机气体动力学子系统

图8:发动机气体动力学子系统内的混合和燃烧块

非线性氧传感器(EGO sensor block)位于发动机气体动力学子系统(Figure 7)内的混合与燃烧模块(Figure 8)内。EGO sensor被建模为双曲切线函数,当在0.5伏附近时,它提供有意义的信号。因此,通过切换阈值检测反馈回路中的原始误差,如公式2所示。如果空燃比较低(混合气较稀),则原空气估计值太小,需要增加。相反,当氧传感器输出高时,空气估产太大,需要降低。利用积分控制,使校正项达到一个水平,使混合比例中的稳态误差为零。

正常闭环操作模式LOW动态调整积分器,以最小化误差。积分以离散时间执行,每10毫秒更新一次。然而,当在富氧或氧气故障模式下操作开环时,反馈误差被忽略,积分器被保持。这将根据最近的有效反馈进行最佳校正。

燃料计算

fuel_calc子系统(在fuel_rate_控制子系统内,见图9)设置喷油器信号,以匹配给定的气流计算和故障状态。第一个输入是计算的气流估计。这与目标燃油/空气比相乘,以获得指令的燃油率。通常,目标是化学计量的,即等于最佳空燃比14.6。当传感器发生故障时,Stateflow控制逻辑将模式输入设置为2或3(浓或禁用),以便混合物稍微浓或完全关闭。

图9:fuel_calc子系统

fuel_calc子系统(图9)采用可调补偿(图10),以便在不同模式下实现不同的目的。在正常操作中,反馈校正信号的相位超前补偿增加了闭环稳定裕度。在浓模式和EGO传感器故障期间(开环)但是,复合燃油信号经过低通滤波以衰减估计过程中引入的噪声。最终结果是一个代表燃油流量的信号,在实际系统中,该信号将转换为喷油器脉冲时间。

图10:可切换的补偿子系统

结果与结论

仿真结果如图11和图12所示。模拟通过节气门输入运行,在两秒钟内从10到20度斜坡,然后在接下来的两秒内回到10度。该循环连续重复,而发动机以恒定速度保持,以便用户可以在不同的故障条件和故障模式进行实验。单击仪表板子系统中的传感器故障开关以模拟相关传感器的故障。重复此操作以将交换机滑回进行正常操作。

图11:比较不同传感器故障的燃料流量

图11分别比较了无故障条件下(基线)的燃油流量与每个传感器出现单一故障时应用的流量。在每种情况下,注意燃油流量与三角形油门指令之间的非线性关系(如图13所示).在基线情况下,严格调节燃油率,由于EGO传感器输入电路的开关性质,显示出小的波动。在其他四种情况下,系统运行开环。控制策略被证明在单一故障模式下保持正确的燃油曲线是有效的。在每种故障条件下,t燃油率基本上为基线流量的125%,满足80%富油的设计目标。

图12:比较不同传感器故障时的空燃比

图12绘制了每种情况下对应的空气/燃料比率。基线图显示了闭环操作的效果。混合比例的调节非常严格,符合14.6的化学计量目标。图12底部四个地块显示了丰富的混合比例。尽管它们不像在闭环情况中那样受到严格管制,但它们接近空气/燃料的目标(0.8*14.6=11.7)。

图13:油门命令

系统的瞬态行为如图14所示。在节气门角度恒定为12度且系统处于稳态的情况下,节气门故障在t=2时出现,并在t=5时纠正。故障开始时,燃油率立即增加。当富液比通过系统传播时,可在排气管处看到这些影响。当闭环操作恢复时,稳态条件将迅速恢复。

图14:故障检测的瞬态响应

讲话

如果在statflow调试器中启用动画,状态转换将在statflow图中高亮显示(参见图4),因为各种状态都被激活了。激活的顺序用颜色的变化来表示。statflow和Simulink之间的这种紧密耦合的协同促进了完整控制系统的建模和开发。万博1manbetx

相关的话题