Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能

马肤

温馨提示:这篇文章已超过399天没有更新,请注意相关的内容是否还可用!

摘要:本文介绍了使用触发子系统对建模引擎时间进行建模的方法。通过触发子系统,可以实时监测和记录引擎的运行状态,包括性能、响应时间等关键指标。这种方法的实施有助于优化引擎性能,提高响应速度,从而提升整体系统的工作效率。通过这种方式,开发人员可以更好地理解和管理引擎的运行时间,以满足不断变化的用户需求和应用场景。

This example shows how to model a four-cylinder spark ignition internal combustion engine from the throttle to the crankshaft output. We used well-defined physical principles supplemented, where appropriate, with empirical relationships that describe the system's dynamic behavior without introducing unnecessary complexity.

本示例展示了如何从节气门到曲轴输出对四缸火花点火式内燃发动机进行建模。我们使用了定义明确的物理原理,并在适当的情况下补充了描述系统动态行为的经验关系,而不引入不必要的复杂性。

Analysis and Physics

分析与物理

This example describes the concepts and details surrounding the creation of engine models with emphasis on important Simulink® modeling techniques. The basic model uses the enhanced capabilities of Simulink to capture time-based events with high fidelity. Within this simulation, a triggered subsystem models the transfer of the air-fuel mixture from the intake manifold to the cylinders via discrete valve events. This takes place concurrently with the continuous-time processes of intake flow, torque generation and acceleration. A second modeladds an additional triggered subsystem that provides closed-loop engine speed control via a throttle actuator. These models can be used as standalone engine simulations. Or, they can be used within a larger system model, such as an integrated vehicle and powertrain simulation, in the development of a traction control system.

本示例介绍了发动机模型创建的概念和细节,重点介绍了重要的Simulink®建模技术。基本模型使用Simulink增强的功能来高保真地捕捉基于时间的事件。在该模拟中,触发子系统通过离散的气门事件对空气-燃料混合物从进气歧管到气缸的传输进行建模。这与进气流量、扭矩产生和加速的连续时间过程同时发生。第二个模型增加了一个额外的触发子系统,通过节气门执行器提供闭环发动机转速控制。这些模型可以用作独立的发动机模拟。或者,它们可以在更大的系统模型中使用,例如集成的车辆和动力系统仿真,用于开发牵引力控制系统。

This model is based on published results by Crossley and Cook (1991). It describes the simulation of a four-cylinder spark ignition internal combustion engine. The Crossley and Cook work also shows how a simulation based on this model was validated against dynamometer test data. The ensuing sections (listed below) analyze the key elements of the engine model that were identified by Crossley and Cook:

该模型基于Crossley和Cook(1991)发表的结果。介绍了四缸火花点火式内燃机的仿真。Crossley和Cook的工作还展示了基于该模型的模拟是如何根据测功机测试数据进行验证的。以下各节(如下所列)分析了Crossley和Cook确定的发动机模型的关键要素:

  1. Throttle

  2. Intake manifold

  3. Mass flow rate

  4. Compression stroke

  5. Torque generation and acceleration

节气门

进气歧管

质量流量

压缩冲程

扭矩产生和加速

  • Note: Additional components can be added to the model to provide greater accuracy in simulation and to more closely replicate the behavior of the system.

    Throttle

    The first element of the model is the throttle body. The control input is the angle of the throttle plate. The rate at which the model introduces air into the intake manifold can be expressed as the product of two functions:

    1. an empirical function of the throttle plate angle only

    2. a function of the atmospheric and manifold pressures

    In cases of lower manifold pressure (greater vacuum), the flow rate through the throttle body is sonic and is only a function of the throttle angle. This model accounts for this low pressure behavior with a switching condition in the compressibility equations shown in Equation 1.

    Equation 1

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第1张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第2张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第3张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第4张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第5张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第6张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第7张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第8张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第9张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第10张

    Intake Manifold

    The simulation models the intake manifold as a differential equation for the manifold pressure. The difference in the incoming and outgoing mass flow rates represents the net rate of change of air mass with respect to time. This quantity, according to the ideal gas law, is proportional to the time derivative of the manifold pressure (see Equation 2). Note that, unlike the model of Crossley and Cook (see also references 3 through 5), this model doesn't incorporate exhaust gas recirculation (EGR), although this can easily be added.

    Equation 2

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第11张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第12张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第13张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第14张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第15张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第16张

    Intake Mass Flow Rate

    The mass flow rate of air that the model pumps into the cylinders from the manifold is described in Equation 3 by an empirically derived equation. This mass rate is a function of the manifold pressure and the engine speed.

    Equation 3

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第17张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第18张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第9张

    To determine the total air charge pumped into the cylinders, the simulation integrates the mass flow rate from the intake manifold and samples it at the end of each intake stroke event. This determines the total air mass that is present in each cylinder after the intake stroke and before compression.

    Compression Stroke

    In an inline four-cylinder four-stroke engine, 180 degrees of crankshaft revolution separate the ignition of each successive cylinder. This results in each cylinder firing on every other crank revolution. In this model, the intake, compression, combustion, and exhaust strokes occur simultaneously (at any given time, one cylinder is in each phase). To account for compression, the combustion of each intake charge is delayed by 180 degrees of crank rotation from the end of the intake stroke.

    Torque Generation and Acceleration

    The final element of the simulation describes the torque developed by the engine. An empirical relationship dependent upon the mass of the air charge, the air/fuel mixture ratio, the spark advance, and the engine speed is used for the torque computation (see Equation 4).

    Equation 4

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第20张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第21张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第22张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第23张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第24张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第25张

    Calculate the engine angular acceleration using Equation 5

    Equation 5

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第26张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第27张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第28张

    Open-Loop Model

    We incorporated the model elements described above into an engine model using Simulink. The following sections describe the decisions we made for this implementation and the key Simulink elements used. This section shows how to implement a complex nonlinear engine model easily and quickly in Simulink environment. We developed this model in conjunction with Ken Butts, Ford Motor Company® (2).

    Figure 1 shows the top level of the model. Note that, in general, the major blocks correspond to the high-level list of functions given in the model description in the preceding summary. Taking advantage of Simulink's hierarchical modeling capabilities, most of the blocks in Figure 1 are made up of smaller blocks. The following paragraphs describe these smaller blocks.

    Running the Simulation

    Press the "Play" button on the model toolbar to run the simulation.

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第29张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第30张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第31张

    Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第32张

    Figure 1: The top level of the engine model and simulation results

    • Note: The model logs relevant data to MATLAB workspace in a structure called sldemo_engine_output. Logged signals have a blue indicator. Read more about Signal Logging in Simulink documentation.

      Throttle/Manifold

      In the model, double click on the 'Throttle & Intake Manifold' subsystem to open it. It contains two other subsystems - the 'Throttle' and the 'Intake Manifold' subsystems. Open the 'Throttle' and 'Intake Manifold' to see their components.

      Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第33张

      Figure 2: The 'Throttle' and 'Intake Manifold' subsystems

      Simulink models for the throttle and intake manifold subsystems are shown in Figure 2. The throttle valve behaves in a nonlinear manner and is modeled as a subsystem with three inputs. Simulink implements the individual equations, given in Equation 1, as function blocks. These provide a convenient way to describe a nonlinear equation of several variables. A 'Switch' block determines whether the flow is sonic by comparing the pressure ratio to its switch threshold, which is set at one half (Equation 1). In the sonic regime, the flow rate is a function of the throttle position only. The direction of flow is from the higher to lower pressure, as determined by the Sign block. With this in mind, the 'Min' block ensures that the pressure ratio is always unity or less.

      The differential equation from Equation 2 models the intake manifold pressure. A Simulink function block computes the mass flow rate into the cylinder, a function of manifold pressure and engine speed (see Equation 3).

      Intake and Compression

      An integrator accumulates the cylinder mass air flow in the 'Intake' block (located inside the 'Throttle & Manifold' subsystem). The 'Valve Timing' block issues pulses that correspond to specific rotational positions in order to manage the intake and compression timing. Valve events occur each cam rotation, or every 180 degrees of crankshaft rotation. Each event triggers a single execution of the 'Compression' subsystem. The output of the trigger block within the 'Compression' subsystem then feeds back to reset the Intake integrator. In this way, although both triggers conceptually occur at the same instant in time, the integrator output is processed by the 'Compression' block immediately prior to being reset. Functionally, the 'Compression' subsystem uses a 'Unit Delay' block to insert 180 degrees (one event period) of delay between the intake and combustion of each air charge.

      Consider a complete four-stroke cycle for one cylinder. During the intake stroke, the 'Intake' block integrates the mass flow rate from the manifold. After 180 degrees of crank rotation, the intake valve closes and the 'Unit Delay' block in the 'Compression' subsystem samples the integrator state. This value, the accumulated mass charge, is available at the output of the 'Compression' subsystem 180 degrees later for use in combustion. During the combustion stroke, the crank accelerates due to the generated torque. The final 180 degrees, the exhaust stroke, ends with a reset of the Intake integrator, prepared for the next complete 720 degrees cycle of this particular cylinder.

      For four cylinders, we could use four 'Intake' blocks, four 'Compression' subsystems, etc., but each would be idle 75% of the time. We've made the implementation more efficient by performing the tasks of all four cylinders with one set of blocks. This is possible because, at the level of detail we've modeled, each function applies to only one cylinder at a time.

      Combustion

      Engine torque is a function of four variables. The model uses a 'Mux' block to combine these variables into a vector that provides input to the 'Torque Gen' block. A function block computes the engine torque (described empirically in Equation 4). The torque which loads the engine, computed by step functions in the Drag Torque block, is subtracted in the Engine Dynamics subsystem. The difference divided by the inertia yields the acceleration, which is integrated to arrive at the engine crankshaft speed.

      Plotting Simulation Results

      We used the following default inputs for the simulation:

      Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第34张

      Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第35张

      Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第36张

      Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第37张

      Try adjusting the throttle to compensate for the load torque. Figure 3 shows the simulated engine speed, the throttle commands which drive the simulation, and the load torque which disturbs it.

      Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第38张

      Figure 3a: Open-loop simulation inputs

      Modeling Engine Timing Using Triggered Subsystems,基于触发子系统模拟引擎时间性能 第39张

      Figure 3b: Open-loops simulation results

      Closing Model

      Close the model. Clear generated data.

      Conclusions

      The ability to model nonlinear, complex systems, such as the engine model described here, is one of Simulink's key features. The power of the simulation is evident in the presentation of the models above. Simulink retains model fidelity, including precisely timed cylinder intake events, which is critical in creating a model of this type. The basic engine model shows the flexibility of Simulink.

      References

      [1] P.R. Crossley and J.A. Cook, IEEE® International Conference 'Control 91', Conference Publication 332, vol. 2, pp. 921-925, 25-28 March, 1991, Edinburgh, U.K.

      [2] The Simulink Model. Developed by Ken Butts, Ford Motor Company. Modified by Paul Barnard, Ted Liefeld and Stan Quinn, MathWorks®, 1994-7.

      [3] J. J. Moskwa and J. K. Hedrick, "Automotive Engine Modeling for Real Time Control Application," Proc.1987 ACC, pp. 341-346.

      [4] B. K. Powell and J. A. Cook, "Nonlinear Low Frequency Phenomenological Engine Modeling and Analysis," Proc. 1987 ACC, pp. 332-340.

      [5] R. W. Weeks and J. J. Moskwa, "Automotive Engine Modeling for Real-Time Control Using Matlab/Simulink," 1995 SAE Intl. Cong. paper 950417.


0
收藏0
文章版权声明:除非注明,否则均为VPS857原创文章,转载或复制请以超链接形式并注明出处。

相关阅读

  • 【研发日记】Matlab/Simulink自动生成代码(二)——五种选择结构实现方法,Matlab/Simulink自动生成代码的五种选择结构实现方法(二),Matlab/Simulink自动生成代码的五种选择结构实现方法详解(二)
  • 超级好用的C++实用库之跨平台实用方法,跨平台实用方法的C++实用库超好用指南,C++跨平台实用库使用指南,超好用实用方法集合,C++跨平台实用库超好用指南,方法与技巧集合
  • 【动态规划】斐波那契数列模型(C++),斐波那契数列模型(C++实现与动态规划解析),斐波那契数列模型解析与C++实现(动态规划)
  • 【C++】,string类底层的模拟实现,C++中string类的模拟底层实现探究
  • uniapp 小程序实现微信授权登录(前端和后端),Uniapp小程序实现微信授权登录全流程(前端后端全攻略),Uniapp小程序微信授权登录全流程攻略,前端后端全指南
  • Vue脚手架的安装(保姆级教程),Vue脚手架保姆级安装教程,Vue脚手架保姆级安装指南,Vue脚手架保姆级安装指南,从零开始教你如何安装Vue脚手架
  • 如何在树莓派 Raspberry Pi中本地部署一个web站点并实现无公网IP远程访问,树莓派上本地部署Web站点及无公网IP远程访问指南,树莓派部署Web站点及无公网IP远程访问指南,本地部署与远程访问实践,树莓派部署Web站点及无公网IP远程访问实践指南,树莓派部署Web站点及无公网IP远程访问实践指南,本地部署与远程访问详解,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南。
  • vue2技术栈实现AI问答机器人功能(流式与非流式两种接口方法),Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法探究,Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法详解
  • 发表评论

    快捷回复:表情:
    评论列表 (暂无评论,0人围观)

    还没有评论,来说两句吧...

    目录[+]

    取消
    微信二维码
    微信二维码
    支付宝二维码