Controller for internal combustion engine

文档序号:1966806 发布日期:2021-12-14 浏览:15次 中文

阅读说明:本技术 内燃发动机的控制器 (Controller for internal combustion engine ) 是由 G·威廉斯 P·拉德洛 于 2020-04-24 设计创作,主要内容包括:提供了一种用于控制内燃发动机的内燃发动机控制器。所述内燃发动机控制器包括存储器和处理器。所述存储器被配置成存储多个控制脉谱图,每个控制脉谱图限定致动器设定点的超曲面,用于基于到所述内燃发动机控制器的多个输入变量来控制内燃发动机的致动器。所述处理器包括发动机设定点模块和脉谱图更新模块。所述脉谱图更新模块被配置成优化所述控制脉谱图在由所述多个输入变量限定的位置处的超曲面中的一个或多个超曲面。所述脉谱图更新模块包括优化器模块,所述优化器模块被配置成搜索优化的致动器设定点组,其中所述脉谱图更新模块基于所述优化的致动器设定点组来更新由所述多个输入变量限定的位置处的所述一个或多个超曲面。还提供了一种控制内燃发动机的方法。(An internal combustion engine controller for controlling an internal combustion engine is provided. The internal combustion engine controller includes a memory and a processor. The memory is configured to store a plurality of control maps, each control map defining a hypersurface of an actuator set point for controlling an actuator of an internal combustion engine based on a plurality of input variables to the internal combustion engine controller. The processor includes an engine set point module and a map update module. The map update module is configured to optimize one or more of the hypersurfaces of the control map at locations defined by the plurality of input variables. The map update module includes an optimizer module configured to search for an optimized set of actuator setpoints, wherein the map update module updates the one or more hypersurfaces at locations defined by the plurality of input variables based on the optimized set of actuator setpoints. A method of controlling an internal combustion engine is also provided.)

1. An internal combustion engine controller comprising:

a memory configured to store a plurality of control maps, each control map defining a hypersurface of an actuator set point for controlling an actuator of the internal combustion engine based on a plurality of input variables to the internal combustion engine controller; and

a processor, the processor comprising:

an engine set point module configured to output an actuator set point to each actuator based on a position on a hypersurface of a respective control map defined by the plurality of input variables; and

a map update module configured to optimize one or more of the hypersurfaces of the control map at the locations defined by the plurality of input variables, the map update module comprising:

an optimizer module configured to search for an optimized set of actuator setpoints by:

(i) executing a stratified sample of an initial actuator setpoint search space of the control map to select a first set of candidate actuator setpoint sets, and evaluating the first set of candidate actuator setpoint sets according to a performance model of the internal combustion engine to calculate a cost associated with each of the first set of candidate actuator setpoint sets,

(ii) determining a search line in the initial actuator setpoint search space that spans a first cost minimum based on the costs associated with the first set of candidate actuator setpoint sets;

(iii) performing a line search along the search line to calculate an optimized set of actuator set points associated with the first cost minimum;

wherein the map update module updates the one or more hypersurfaces at the positions defined by the plurality of input variables based on the optimized set of actuator setpoints.

2. The internal combustion engine controller of claim 1, wherein the optimizer module is further configured to search for an optimized set of actuator setpoints by:

(iv) executing a tiered sample of a constrained actuator setpoint search space to select a second set of candidate actuator setpoint sets, wherein the constrained actuator setpoint search space is constrained based on the optimized actuator setpoint set, and evaluating the second set of candidate actuator setpoint sets according to a performance model of the internal combustion engine to calculate a cost associated with each of the second set of candidate actuator setpoint sets,

(v) determining another search line in the constrained actuator setpoint search space that spans a second cost minimum based on the costs associated with the second set of candidate actuator setpoint sets;

(vi) performing a line search along the other search line to calculate a set of actuator set points associated with the second cost minimum;

(vii) updating the optimized set of actuator set points based on the set of actuator set points associated with the second cost minimum if a cost reduction is achieved.

3. The internal combustion engine controller of claim 2, wherein the optimizer module is configured to repeat the steps (iv), (v), (vi) and (vii) at least once.

4. The internal combustion engine controller of claim 3, wherein the optimizer module is configured to repeat the steps (iv), (v), (vi) and (vii) until:

the cost reduction achieved when updating the optimized set of actuator setpoints falls below a convergence limit; and/or

The time taken to perform the search exceeds a time limit.

5. An internal combustion engine controller according to any preceding claim, wherein one set of candidate actuator setpoints corresponds to the position on each hypersurface defined by the plurality of input variables.

6. The internal combustion engine controller of claim 5, wherein the map update module is configured to optimize the hypersurface of the control map by:

determining a cost difference between the cost associated with the optimized set of actuator setpoints and a cost associated with the candidate set of actuator setpoints corresponding to the position on each hypersurface of the control map defined by the plurality of input variables;

wherein the hypersurface of the control map is not updated if the cost difference is less than an update threshold.

7. An internal combustion engine controller according to any preceding claim, wherein the search line in the initial actuator setpoint search space and/or the further search line in the constrained actuator setpoint search space is calculated based on the two candidate sets of actuator setpoints having the lowest cost.

8. An internal combustion engine controller according to any preceding claim, wherein the hierarchical sample of the initial actuator setpoint search space and/or the hierarchical sample of the constrained actuator setpoint search space is a latin hypercube sample of the respective actuator setpoint search space.

9. The internal combustion engine controller according to any preceding claim, wherein the initial actuator setpoint search space is defined by an upper actuator constraint and a lower actuator constraint of each of the control maps.

10. A method of controlling an internal combustion engine, comprising:

providing a plurality of control maps, each control map defining a hypersurface of actuator set points for controlling actuators of the internal combustion engine based on a plurality of input variables to the internal combustion engine controller;

outputting an actuator set point to each actuator based on a position on the hypersurface of a respective control map defined by the plurality of input variables; and

optimizing one or more hypersurfaces in the control map at the locations defined by the plurality of input variables by:

searching for an optimized set of actuator set points comprising:

(i) executing a stratified sample of an initial actuator setpoint search space of the control map to select a first set of candidate actuator setpoint sets, and evaluating the first set of candidate actuator setpoint sets according to a performance model of the internal combustion engine to calculate a cost associated with each of the first set of candidate actuator setpoint sets,

(ii) determining a search line in the initial actuator setpoint search space that spans a first cost minimum based on the costs associated with the first set of candidate actuator setpoint sets;

(iii) performing a line search along the search line to calculate an optimized set of actuator set points associated with the first cost minimum; and

updating the one or more hypersurfaces at the positions defined by the plurality of input variables based on the optimized set of actuator setpoints.

11. The method of claim 10, wherein searching for an optimized set of actuator setpoints further comprises:

(iv) executing a tiered sample of a constrained actuator setpoint search space to select a second set of candidate actuator setpoint sets, wherein the constrained actuator setpoint search space is constrained based on the optimized actuator setpoint set, and evaluating the second set of candidate actuator setpoint sets according to a performance model of the internal combustion engine to calculate a cost associated with each of the second set of candidate actuator setpoint sets,

(v) determining another search line in the constrained actuator setpoint search space that spans a second cost minimum based on the costs associated with the second set of candidate actuator setpoint sets;

(vi) performing a line search along the other search line to calculate a set of actuator set points associated with the second cost minimum;

(vii) updating the optimized set of actuator set points based on the set of actuator set points associated with the second cost minimum if a cost reduction is achieved.

12. A method according to claim 11, wherein said steps (iv), (v), (vi) and (vii) are repeated at least once.

13. The method of claim 12, wherein the steps (iv), (v), (vi) and (vii) are repeated until:

the cost reduction achieved when updating the optimized set of actuator setpoints falls below a convergence limit; and/or

The time taken to perform the search exceeds a time limit.

14. The method of any of claims 10 to 13, wherein one set of candidate actuator setpoints corresponds to the position on each hypersurface defined by the plurality of input variables.

15. The method of claim 14, wherein optimizing the hypersurface of the control map comprises:

determining a cost difference between the cost associated with the optimized set of actuator setpoints and a cost associated with the candidate set of actuator setpoints corresponding to the position on each hypersurface of the control map defined by the plurality of input variables;

wherein the hypersurface of the control map is not updated if the cost difference is less than an update threshold.

16. The method according to any one of claims 10 to 14, wherein the search line in the initial actuator setpoint search space and/or the further search line in the constrained actuator setpoint search space is calculated based on the two candidate sets of actuator setpoints having the lowest costs.

17. The method of any preceding claim, wherein the hierarchical sample of the initial actuator setpoint search space and/or the hierarchical sample of the constrained actuator setpoint search space is a latin hypercube sample of the respective actuator setpoint search space.

18. The method of any preceding claim, wherein the initial actuator setpoint search space is defined by an upper actuator constraint and a lower actuator constraint of each of the control maps.

Technical Field

The present disclosure relates to control of an internal combustion engine. More specifically, the present disclosure relates to systems and methods for controlling actuators of an internal combustion engine.

Background

Internal combustion engines typically include one or more systems for managing emissions output from the exhaust of the internal combustion engine. For example, internal combustion engines typically include an aftertreatment system for treating exhaust gas produced by the internal combustion engine.

A typical aftertreatment system may include a number of sensors and (control) actuators. Additional sensors and actuators may be provided in the internal combustion engine for monitoring the exhaust gas, performance and/or efficiency of the internal combustion engine. Thus, an internal combustion engine may include a number of independently controllable variables and calibration values. Therefore, the design of engine control systems for internal combustion engines is a multidimensional control problem.

Engine control systems require that set points be provided to the actuators of an internal combustion engine in response to real-time changes in the operating conditions of the internal combustion engine. The need for a high efficiency internal combustion engine that meets emission regulations further limits the design of controllable systems. A further limitation on control system design is that the amount of computing power available to the engine control system may be limited.

Conventionally, control of internal combustion engines and aftertreatment systems is managed by an on-board processor (engine control module). Due to the complexity of internal combustion engines and aftertreatment systems, the engine controls implemented typically utilize open-loop control systems based on a series of "control maps" (maps) that include pre-calibrated, time-invariant engine set points for the internal combustion engine and aftertreatment system. Typically, the engine set points controlled include fuel mass, start of injection (SOI), Exhaust Gas Recirculation (EGR), and Intake Manifold Absolute Pressure (IMAP).

Some simple control maps include a plurality of look-up tables in which a plurality of time-invariant engine set points associated with different engine operating conditions are stored. The engine control module may only read engine set points from the control map associated with the desired engine operation. Some engine control maps may also provide an estimate of one variable as a function of a limited number of other variables. Since memory and map complexity grow exponentially with the addition of additional variables, the engine set point map can only be based on a limited number of input variables. In some cases, system memory may be corrupted, but at the expense of interpolation errors.

One approach for reducing the impact on the performance of an open-loop control scheme is to provide different control maps for different operating conditions. For example, different control maps may be provided for idle operation and wide-open throttle operation or start-up. Providing many different control maps for each internal combustion engine makes calibration of each internal combustion engine expensive and time consuming. Further, these pre-calibrated maps are each time-invariant look-up tables. Therefore, these time-invariant control maps cannot account for inter-component variations in engine components, or unmeasured effects such as humidity. The time-invariant control map is also not adaptable to changes in engine component performance over time.

An alternative approach is to implement real-time, on-board, model-based control of the engine instead of pre-calibrated control maps. Thus, the engine model directly controls one or more set points of the internal combustion engine. Model-based engine control may include dynamic engine models to predict engine performance, emissions, and operating conditions. The predicted engine performance may be fed back into the model to further optimize the engine set point. Thus, model-based control methods effectively incorporate a negative feedback form into the engine control system in order to improve performance and emissions.

Model-based control is difficult to implement because the engine set-point must be calculated in real time. Therefore, model-based engine controllers that include predictive elements ideally also perform their predictions in real time. Thus, many model-based control schemes require significant computational resources to optimize the model output within a suitable time scale for controlling the internal combustion engine.

Disclosure of Invention

According to a first aspect of the present disclosure, an internal combustion engine controller is provided. The internal combustion engine controller includes a memory and a processor. The memory is configured to store a plurality of control maps, each control map defining a hypersurface of an actuator set point for controlling an actuator of the internal combustion engine based on a plurality of input variables to the internal combustion engine controller. The processor includes an engine set point module and a map update module. The engine set point module is configured to output an actuator set point to each actuator based on a position on a hypersurface of a respective control map defined by a plurality of input variables. The map update module is configured to optimize one or more of the hypersurfaces of the control map at locations defined by the plurality of input variables. The map update module includes an optimizer module. The optimizer module is configured to search for an optimized set of actuator setpoints by:

(i) executing a hierarchical sample of an initial actuator setpoint search space of a control map to select a first set of candidate actuator setpoint sets, and evaluating the first set of candidate actuator setpoint sets according to a performance model of the internal combustion engine to calculate a cost associated with each of the first set of candidate actuator setpoint sets,

(ii) determining a search line in the initial actuator setpoint search space that spans a first cost minimum based on a cost associated with the first set of candidate actuator setpoint sets;

(iii) performing a line search along the search line to calculate an optimized set of actuator set points associated with a first cost minimum;

wherein the map update module updates the one or more hypersurfaces at the positions defined by the plurality of input variables based on the optimized set of actuator setpoints.

Thus, the internal combustion engine controller includes two processing modules: an engine set point module and a map update module. The engine setpoint module is configured to control a plurality of actuators of the internal combustion engine. For example, the engine set point module may control one or more of SOI, EGR, fuel mass, and Intake Manifold Absolute Pressure Request (IMAPR) of the internal combustion engine. The engine set point module controls these actuators based on input to the internal combustion engine performance, such as user demand for torque, engine speed, etc., or certain sensor data from the internal combustion engine (e.g., current IMAP). Control of each actuator is determined based on the control map of each actuator. Each control map defines a hypersurface for controlling an actuator of the internal combustion engine based on a plurality of input variables to the internal combustion engine controller. Thus, the engine set point module is effectively an open loop control module that controls the actuators using actuator set points stored in a control map.

The map update module operates efficiently independent of the open loop control of the engine set point module. The map update module is configured to optimize control of the internal combustion engine by updating a hypersurface of the control map at a location defined by the input variables. Optimizing a hypersurface is a multidimensional optimization problem since there are multiple actuators to control. The internal combustion engine controller according to the first aspect provides a map update module that aims to solve the multidimensional optimization problem in real time in a computationally efficient manner. Thus, the map update module is designed with the computational resources available to the on-board engine control module of the internal combustion engine under consideration.

To optimize the hypersurface, a performance model of the internal combustion engine is used to evaluate the performance of the internal combustion engine against the set of candidate actuator set points and determine a cost. The determined cost may reflect one or more performance characteristics of the internal combustion engine defined by the performance model. The performance model may take into account other input parameters available to the internal combustion engine controller, such as input variables of control maps, other sensor data, and/or aftertreatment information. Thus, the performance model of an internal combustion engine may be highly non-linear. Due to the multi-dimensional nature of the actuator setpoint search space, the performance model output may define a plurality of local minima in addition to the global minimum. The optimizer module of the first aspect is configured to search for an optimized set of actuator set points corresponding to a global minimum. By starting the search process from a hierarchical sample of the actuator setpoint search space, the optimizer module aims to reduce or eliminate the likelihood of the search reaching a local minimum.

Thus, the optimizer module is arranged to calculate an optimized set point on the internal combustion engine controller. Thus, the optimizer module calculates an optimized actuator set point during operation of the internal combustion engine. The search method of the optimizer module is accordingly adapted to use the (limited) available processing power of the internal combustion engine controller to output the optimization set point in real time. That is, the search method of the optimizer module is adapted to run in real-time, rather than a search method that can be performed offline without limiting the available computing power.

By providing a plurality of updatable control maps, a control map-based controller may be provided that may be optimized to a range of different operating points using a limited number of control maps. Thus, the number of control maps that need to be calibrated for an internal combustion engine may be reduced, as the updatable maps of the present disclosure may provide control that covers a range of different operating points for which individual control maps may have been calibrated in the past. Thus, the complexity of initial calibration and setup of the internal combustion engine may be reduced.

Furthermore, time-invariant control maps known in the art are typically calibrated with a relatively large safety margin in order to accommodate any variation of the internal combustion engine over time. In contrast, the map update module according to the first aspect may update the actuator set point of the control map in response to real-time performance of the internal combustion engine. Therefore, the control map of the first aspect may be configured to operate the internal combustion engine under more optimal performance conditions.

The initial actuator set point search space of the control map may be a multi-dimensional search space defined by possible ranges of actuator set points for each control map. For example, the internal combustion engine controller may include three control maps for controlling the actuators X, Y and Z of the internal combustion engine. Thus, the initial actuator setpoint search space is defined by the range of setpoint values for each of X, Y and Z of the control map, i.e., the three-dimensional search space for the three actuators.

According to a first aspect, a map update module updates one or more hypersurfaces at positions defined by a plurality of input variables based on the optimized set of actuator setpoints. It will be appreciated that the step of updating the hypersurface may be based on an optimized set of actuator set points. Thus, in some examples, the current position on one or more of the hypersurfaces may be more preferred than the position defined by the optimized set of actuator setpoints. Thus, in some examples, the step of updating may include the map update module selecting one or more hypersurfaces that do not change the control map.

In some embodiments, the initial actuator setpoint search space may be defined by one or more of an upper actuator constraint and a lower actuator constraint. The upper and lower actuator constraints may be selected to ensure that the actuators of the internal combustion engine operate within certain physical limits.

In some embodiments, one candidate set of actuator setpoints may correspond to a position on each hypersurface defined by a plurality of input variables. Therefore, the internal combustion engine controller of the first aspect can always evaluate the current operating point (i.e., the current actuator set point) of the internal combustion engine in the stratified sample of the initial actuator set point search space. Thus, where the current operating point of the internal combustion engine already corresponds to the global cost minimum, the optimizer module may return the current actuator set point (as determined by the position on each hypersurface defined by the plurality of input variables) as the optimized set of actuator set points.

In some embodiments, a search line in the actuator setpoint search space may be calculated based on the two candidate sets of actuator setpoints having the lowest cost. Thus, the optimizer module may determine the search line (i.e., the search direction, or the search vector within the initial actuator setpoint search space) in a computationally efficient manner.

The map update module may be further configured to determine a cost difference between a cost associated with the optimized set of actuator setpoints and a cost associated with a candidate set of actuator setpoints corresponding to a location on each hypersurface of the control map defined by the plurality of input variables. And if the cost difference is smaller than the updating threshold value, not updating the hypersurface of the control map. Therefore, the internal combustion engine controller may choose not to update the control map when only a minimal performance improvement is obtained. For example, in steady state operation, frequent minor updates to the actuator set point (thereby causing wear in the actuator) may not be desirable for relatively minor performance benefits.

In some embodiments, the optimizer module may be further configured to search for an optimized set of actuator setpoints by:

(iv) executing a tiered sample of a constrained actuator setpoint search space to select a second set of candidate actuator setpoint sets, wherein the constrained actuator setpoint search space is constrained based on an optimized actuator setpoint set, and evaluating the second set of candidate actuator setpoint sets according to a performance model of the internal combustion engine to calculate a cost associated with each of the second set of candidate actuator setpoint sets,

(v) determining another search line in the constrained actuator setpoint search space that spans a second cost minimum based on a cost associated with a second set of candidate actuator setpoint sets;

(vi) performing a line search along the other search line to calculate a set of actuator set points associated with the second cost minimum;

(vii) if a cost reduction is achieved, the optimized set of actuator set points is updated based on the set of actuator set points associated with the second cost minimum.

Thus, the map update module of the first aspect may iterate over the set of calculated optimized actuator set points. By iterating the calculations, the optimizer module can identify a set of actuator set points that are closer to the global cost minimum. In the event that the previously calculated set of optimized actuator setpoints falls within the local cost minimum, the iterative search strategy allows the optimizer module to search (via a hierarchical sample) around the set of optimized actuator setpoints so that a global minimum can still be found.

The constrained actuator setpoint search space is an actuator setpoint search space that is similar to the initial actuator setpoint search space. In effect, the constrained actuator setpoint search space is a subset of the initial actuator setpoint search space. That is, the range of each actuator set point to be searched may be constrained relative to the initial set point search space. The constrained actuator setpoint search space may be constrained based on a previously calculated set of optimized actuator setpoints (e.g., a first set of optimized actuator setpoints). The constrained actuator setpoint search space may be constrained by updating an upper actuator constraint and a lower actuator constraint (e.g., an initial actuator setpoint search space, or a previously constrained actuator setpoint search space) for each actuator defining the actuator setpoint search space for performing the hierarchical sample. In some embodiments, the available search range for each actuator may be reduced by at least: 30%, 40%, 50%, 60% or 70%. In some embodiments, the upper and lower actuator constraints for each actuator may be selected such that the previously calculated optimized set of actuator setpoints is located towards the center of the constrained actuator setpoint search space (i.e., as centered as possible).

By calculating the set of actuator setpoints associated with the second cost minimum, the optimizer module allows for the possibility that the first cost minimum is not a global minimum of the performance model. Thus, the internal combustion engine controller according to the first aspect allows iteration of the calculated optimized actuator set point.

In some embodiments, the optimizer module is configured to repeat steps (iv), (v), (vi) and (vii) a plurality of times. Thus, the optimizer module may perform multiple iterations of the calculation of the optimized set of setpoints. Repeating these steps may increase the certainty that the optimized set of actuator set points is located in the global cost minimum.

In some embodiments, the optimizer module may repeat steps (iv), (v), (vi), and (vii) until: the cost reduction achieved when updating the optimized set of actuator set points falls below a convergence limit and/or the time it takes to perform the search exceeds a time limit. Thus, the optimizer module may take into account the demand for computational resources and the possibility/relative benefit of obtaining further improvements to the calculated optimized set of actuator setpoints, if further iterations are performed.

In some embodiments, the hierarchical sample of the actuator setpoint search space is a Latin Hypercube sample of the initial actuator setpoint search space or the constrained actuator setpoint search space. By using a latin hypercube sample, the selected set of candidate actuator setpoints can be evenly distributed over the search space. By distributing the candidate sets of actuator setpoints across the search space, the optimizer module aims to select at least one candidate set of actuator setpoints within the global cost minimum in order to provide a robust algorithm for searching the optimized set of actuator setpoints.

According to a second aspect of the present disclosure, a method of controlling an internal combustion engine may be provided. The method includes providing a plurality of control maps, each control map defining a hypersurface of actuator set points, controlling actuators of the internal combustion engine based on a plurality of input variables to an internal combustion engine controller, outputting the actuator set points to each actuator based on a position on the hypersurface of a respective control map defined by the plurality of input variables, and optimizing one or more of the hypersurfaces of the control maps at the positions defined by the plurality of input variables. One or more of the hypersurfaces of the optimization control map comprise: the method further includes searching for an optimized set of actuator setpoints, and updating one or more of the hypersurfaces at a position defined by the plurality of input variables based on the optimized set of actuator setpoints. Searching for an optimized set of actuator set points comprises:

(i) executing a hierarchical sample of an initial actuator setpoint search space of a control map to select a first set of candidate actuator setpoint sets, and evaluating the first set of candidate actuator setpoint sets according to a performance model of the internal combustion engine to calculate a cost associated with each of the first set of candidate actuator setpoint sets,

(ii) determining a search line in the initial actuator setpoint search space that spans a first cost minimum based on a cost associated with the first set of candidate actuator setpoint sets; and

(iii) a line search is performed along the search line to calculate an optimized set of actuator set points associated with a first cost minimum.

Thus, the method of the second aspect may be carried out by an internal combustion engine controller according to the first aspect. It will therefore be appreciated that the advantages described in relation to the first aspect may be applied to the method of the second aspect. Furthermore, the optional features described in relation to the first aspect may equally be applied to the second aspect of the disclosure.

Drawings

The invention will now be described with reference to the following non-limiting figures. Further advantages of the present disclosure will become apparent by reference to the detailed description considered in conjunction with the following drawings, in which:

FIG. 1 shows a block diagram of an internal combustion engine controller connected to an internal combustion engine according to an embodiment of the present disclosure;

figure 2a shows an example of a look-up table control map according to an embodiment of the present disclosure;

FIG. 2b is a graphical representation of a hypersurface defined by the example lookup table control map of FIG. 2 a.

Figure 3 shows a block diagram of a portion of an internal combustion engine controller according to an embodiment of the present disclosure;

FIG. 4 shows a graphical representation of a portion of an initial actuator setpoint search space and a performance model, according to an embodiment of the present disclosure;

FIG. 5 shows a contour diagram of the performance model of FIG. 4, including points representing a set of candidate actuator set points selected according to a stratified sample;

6a, 6b and 6c show graphical representations of suitable functions of the performance objective function, the emission function and the engine constraint function, respectively;

FIG. 7 shows a graphical representation of a cost function along the search lines shown in FIGS. 4 and 5;

fig. 8 shows a block diagram of a schematic diagram of a part of an internal combustion engine controller according to another embodiment of the present disclosure.

Detailed Description

Fig. 1 shows an overall system diagram of an internal combustion engine 1 and an internal combustion engine controller 10 according to an embodiment of the present disclosure.

The internal combustion engine controller 10 may include a processor and a memory. Accordingly, the internal combustion engine controller 10 may be implemented on any suitable computing device known in the art. The internal combustion engine module may be provided on a dedicated engine control unit (e.g., an engine control module) that includes one or more processors and integrated memory. The internal combustion engine controller 10 may be connected to various inputs and outputs in order to implement the control scheme of the present disclosure. Accordingly, the internal combustion engine controller 10 may be configured to receive various input variable signals, sensor data, and any other signals that may be used in a control scheme. For example, the internal combustion engine controller 10 may be configured to receive engine sensor data, such as engine speed, barometric pressure, ambient temperature, IMAP, Intake Manifold Air Temperature (IMAT), EGR mass rate (or a sensor used to derive an EGR mass estimate), fuel rail pressure and/or air system valve position, fuel mass estimate, and/or aftertreatment sensor data, such as engine out NOx, tailpipe NOx, diesel particulate filter dP/RF soot sensor, diesel oxidation catalyst inlet temperature, and/or SCR inlet temperature.

As indicated in FIG. 1, the actuators of an internal combustion engine are controlled by a plurality of engine actuator set points. The engine actuator set points are controlled by the internal combustion engine controller 10. In the embodiment of FIG. 1, the engine actuators to be controlled are EGR, SOI, fuel quantity, and Intake Manifold Absolute Pressure Request (IMAPR). Of course, in other embodiments, the engine actuators to be controlled may be varied.

As shown in FIG. 1, an internal combustion engine controller includes an engine set point module 20. The engine set point module 20 is configured to output a control signal to each actuator based on a plurality of control maps 30 and input variables to the engine set point module 20. Thus, the operation of the engine set point module 20 is similar to open-loop, engine map-based control schemes known in the art. Such open-loop control schemes have relatively small computational requirements compared to more complex model-based control schemes.

The input variables to the engine set point module 20 may be a combination of different variables derived from the current operation of the internal combustion engine 1. Some of the input variables may be based on the performance requirements of the internal combustion engine. Some of the input variables may be based on the current operating state of the internal combustion engine 1, for example measured by various sensors. Since the input variables are used to determine the actuator set points based on the control maps, it should be appreciated that the total number of input variables per control map may be limited by the computational resources available to internal combustion engine controller 10.

In the embodiment of fig. 1, the input variables are requested torque (TqR), current engine speed (N), and current Intake Manifold Absolute Pressure (IMAPC). In other embodiments, other input variables may be used, such as current EGR (i.e., current position of the EGR valve).

Each of the plurality of control maps 30 defines a relationship between one or more input variables and an actuator set point. In the embodiment of fig. 1, four control maps 30 are provided, one for each of EGR, SOI, fuel quality, and IMAPR. Each of the control maps 30 may define an engine actuator set point based on one or more of the input variables TqR, N, and IMAPC. For example, in one embodiment, the EGR control map may define a hypersurface for the actuator set point based on TqR, N and IMAPC. Thus, TqR, the combination of N and IMAPC defines the position of the hypersurface from which the actuator set point for EGR can be calculated. Similarly, the SOI and fuel quality control map 30 may also be defined by a hypersurface that is a function of TqR, N and IMAPC. The control map of IMAPR in the embodiment of fig. 1 may be defined by a hypersurface which is a function of TqR and N. Thus, different control maps of the plurality of control maps 30 may have different numbers of dimensions (i.e., different numbers of input variables).

Each of the control maps 30 of fig. 1 may be implemented as a lookup table. Look-up table control maps 30 for engine controllers are well known in the art. An exemplary look-up table control map 31 is shown in fig. 2 a. The look-up table control map 31 shown in fig. 2a has two input dimensions and a single output dimension. Thus, in the embodiment of fig. 2a, the control map 31 is a two-dimensional control map, wherein the number of referenced dimensions is determined by the number of input dimensions. The control map 31 of fig. 2a comprises input variables 1 (i.e. first input variables) and input variables 2 (second input variables). The look-up table defines a plurality of values (actuator set points) for different combinations of input variables 1 and 2. Thus, the look-up table control map 31 may be used to select an actuator set point based on the values of the input variables 1 and 2. Fig. 2b is a graphical representation of a hypersurface defined by values in the look-up table control map 31. Interpolation of the set points defined in the lookup table may be used, as is known in the art, to find locations on the hypersurface where one or more input variables do not exactly match the values stored in the lookup table.

In other embodiments, the hyper-surface of each control map 30 may be described using alternative approaches. For example, a hypersurface may be defined as a function of the input variables. A suitable multi-dimensional function for defining a hypersurface may be a general approximator function. Suitable generic approximator functions may include: artificial neural networks (e.g., radial basis functions, multi-layer perceptrons), multivariate polynomials, fuzzy logic, irregular interpolation, Kriging).

The plurality of control maps 30 may be stored in a memory of the internal combustion engine controller 10 such that various processing modules of the internal combustion engine controller 10 may access the control maps 30.

As shown in fig. 1, the internal combustion engine controller 10 also includes a map update module 40. The map update module 40 is configured to optimize one or more of the hypersurfaces of the control map at locations defined by the plurality of input variables. In the embodiment of fig. 1, the map update module 40 simultaneously calculates an optimized hypersurface for each of the control maps 30. The map update module 40 updates the control map at a location defined by the plurality of input variables.

The map update module 40 is configured to update the hypersurface of the control map 30 based on the optimized hypersurface. Thus, during operation of the internal combustion engine 1, the hypersurface of one or more control maps 30 may be updated. By providing an updateable set of control maps 30, a set of control maps 30 may be provided that may be optimized to different operating point ranges. Therefore, the number of control maps that need to be calibrated for the internal combustion engine 1 may be reduced, because the updatable control map set 30 of the present disclosure may provide control that covers different ranges of operating points for which a separate set of control maps (i.e., multiple sets of control maps) may have been calibrated in the past.

FIG. 3 shows a block diagram representation of an internal combustion engine controller according to an embodiment of the present disclosure. The block diagram represents the engine set point module 20 and the map update module 40. Therefore, the internal combustion engine controller of this embodiment has an overall structure similar to that of the internal combustion engine controller 10 shown in fig. 1. Thus, referring to fig. 1 and the corresponding description, it will be understood that the engine set point module 20 operates to output a plurality of actuator set points based on positions on the hypersurface of the corresponding control map 30 defined by a plurality of input variables.

As shown in fig. 3, the map update module 40 includes an optimizer module 50 configured to search for an optimized set of actuator set points. The process of searching for an optimized set of actuator set points performed by the optimizer can be considered as being divided into three sub-modules 51, 52, 53. In the first sub-module 51, the optimizer module executes a hierarchical sample of the initial actuator setpoint search space of the control map in order to select a first set of candidate actuator setpoint sets, and evaluates the first set of candidate actuator setpoint sets in accordance with a performance model of the internal combustion engine to calculate a cost associated with each of the first set of candidate actuator setpoint sets. In the second sub-module 52, the optimizer module 50 determines a search line in the initial actuator setpoint search space that spans a first cost minimum based on the costs associated with the first set of candidate sets of actuator setpoints. In the third sub-module 53, the optimizer module 50 performs a line search along the search line to calculate an optimized set of actuator set points associated with the first cost minimum. The three-step process of searching for an optimized set of actuator set points is indicated by sub-modules 51, 52 and 53 shown in the block diagram of fig. 3.

The first sub-module 51 executes a hierarchical sample of the initial actuator set point search space of the control map. The initial actuator set point search space may be a multi-dimensional search space, where the number of dimensions corresponds to the number of control maps (i.e., the number of actuators of the internal combustion engine to be controlled by the internal combustion engine controller). Each actuator of the internal combustion engine may have a predetermined range of actuator set points. The predetermined range of actuator setpoints for the control map may be defined by one or more of an upper actuator constraint and a lower actuator constraint. The upper and lower actuator constraints may be selected to ensure that the actuators of the internal combustion engine are always operating within certain physical limits. For example, for an EGR actuator, the upper EGR actuator constraint may be 360kg/hr and the lower EGR actuator constraint may be 0 kg/hr. Thus, the initial actuator setpoint search space may be defined by the upper and lower actuator constraints of each control map of the internal combustion engine controller. As described above, the initial actuator setpoint search space may be predetermined to reflect the physical limits of the actuators of the internal combustion engine. The upper and lower actuator constraints defining each control map of the initial actuator setpoint search space may be stored in a memory of the internal combustion engine controller.

In some embodiments, the initial actuator set point search space may vary depending on a desired operating point of the internal combustion engine. For example, the search space for the EGR actuator may vary depending on the desired operating load and/or desired engine speed of the internal combustion engine. For example, the upper actuator constraint may vary depending on the desired operating point. In one embodiment, the upper EGR actuator constraint may vary depending on a desired load and/or engine speed of the internal combustion engine. For example, an upper EGR actuator constraint of 360kg/hr may be provided at high speed and high load. At low speeds and loads, it may be desirable to reduce EGR, so the upper EGR actuator constraint may be reduced, or even set to 0kg/hr, to "clamp" the optimizer against this variable.

The initial actuator set point search space effectively defines each possible operating point that may be evaluated by the internal combustion engine controller. The optimizer module 50 is configured to select a set of candidate actuator setpoints from within the initial actuator setpoint search space for evaluation by the optimizer module 50. Each set of candidate actuator set points effectively represents a potential operating point of the internal combustion engine 1. As part of the first step, the optimizer module 50 is configured to perform a hierarchical sample of the initial actuator setpoint search space in order to obtain a first set of candidate actuator setpoint sets. By sampling the initial actuator setpoint search space using the hierarchical samples, the optimizer module ensures that the selected set of candidate actuator setpoints is distributed over the actuator setpoint search space. Thus, it will be appreciated that the hierarchical sample may provide a more uniform distribution of the set of candidate actuator setpoints over the initial actuator setpoint search space than a purely random sample of the initial actuator setpoint search space.

Various methods of performing hierarchical samples of a multi-dimensional search space are known to those skilled in the art. In one embodiment of the present disclosure, the optimizer module 50 executes a latin hypercube sample of the initial actuator setpoint search space. Thus, for an initial actuator setpoint search space of N variables, the range of each actuator (defined by the upper and lower actuator constraints) is divided into M equal probability intervals. Then, M sampling points are placed, where each sampling point is a unique one of the hyperplanes for each axis alignment. For example, at least 5 sample points, or at least 7, or at least 9 are taken. In other embodiments, the hierarchical samples may be determined using an orthogonal sampling method, or any other suitable hierarchical sampling method that provides a distribution of the set of candidate actuator setpoints over the initial actuator setpoint search space.

The first submodule 51 evaluates each candidate set of actuator set points (of the first set) according to a performance model of the internal combustion engine. The first sub-module 51 uses the performance model to calculate the cost associated with each candidate set of actuator setpoints of the first set.

FIG. 4 shows a graphical representation of a portion of an initial actuator setpoint search space and a cost surface generated by a performance model, in accordance with an embodiment of the present disclosure. In the embodiment of FIG. 4, the initial actuator setpoint search space is defined by two actuator variables A1And A2A definition (i.e., a two-dimensional initial actuator setpoint search space). Thus, as shown in FIG. 4, the performance model defines a cost surface in the initial actuator setpoint search space. Another contour plot of the cost surface of fig. 4 is shown in fig. 5. As described above, only a portion of the initial actuator setpoint search space is shown. Each actuator variable (A)1And A2) There is a search range from a lower constraint limit (lc 1 and lc2, respectively, not shown in fig. 4 and 5) to an upper constraint limit (uc 1 and uc2, respectively). FIGS. 4 and 5 show the slave A, respectively1And A2Up to the initial actuator set point search space of uc1 and uc 2. It should be understood that the cost surfaces shown in fig. 4 and 5 are merely one illustrative example of possible actuator setpoint search spaces and resulting cost surfaces, and in other embodiments actuator setpoint search spaces having three or more dimensions are contemplated.

A series of points a, b, c, d, e, f and g are indicated in fig. 4 and 5 to represent the first set of candidate sets of actuator setpoints selected by the first sub-module 51. Points a, b, c, d, e, f and g represent layered samples (latin hypercube samples) of the initial actuator setpoint search space.

The performance model used to evaluate each candidate set of actuator setpoints may be any suitable performance model for evaluating the performance of an internal combustion engine. The performance model may depend on the input variables and the processing power available to the optimizer module 50. The performance model of the internal combustion engine may be a real-time performance model of the internal combustion engine 1. With a real-time performance model, it should be appreciated that the evaluation is based on a real-time calculated internal combustion engine performance model, rather than an off-line calculation of, for example, historical engine data. The real-time performance model may use sensor data from the internal combustion engine 1 and a plurality of input variables (i.e., real-time input variables to the internal combustion engine). Thus, the real-time performance model may use additional sensor data from the internal combustion engine 1 in addition to the input variables of the control map in order to optimize the control map. Indeed, the internal combustion engine controller 10 of the present disclosure may incorporate additional variables (direct and/or indirect sensor data variables) into the internal combustion engine control in a manner that does not significantly increase the computational complexity of map-based control.

The performance model of the internal combustion engine 1 may comprise an engine model arranged to calculate one or more engine performance variables, and a cost model arranged to calculate a cost based on the one or more engine performance variables. The engine model may utilize one or more physical models of the internal combustion engine to calculate the engine performance variable, and/or one or more empirical models of the arrangement to calculate the additional engine performance variable. Therefore, the performance model of the internal combustion engine 1 may be a "gray box" type performance model.

Inputs to the performance model are a plurality of input variables of the control map, as well as sensor inputs from the internal combustion engine and the candidate set of actuator set points. Thus, the performance model is provided with a plurality of variables associated with the real-time operation of the internal combustion engine. Thus, the engine performance variables calculated from the performance model may represent the real-time performance of the internal combustion engine 1.

One example of a suitable performance model is now described with reference to FIG. 3. In the embodiment of fig. 3, the performance model is provided with candidate actuator set point sets of SOI, fuel quality, requested egr (egr), and IMAPR. The performance model is also provided with a plurality of real-time data from sensors of the internal combustion engine. The sensor data from the internal combustion engine 1 may include information from various sensors associated with the internal combustion engine. The sensor data may also include various variables derived from data from one or more sensors of the internal combustion engine. For example, the sensor data may include intake manifold pressure, intake manifold temperature, fuel rail pressure, back pressure valve position, mass EGR flow, total air mass flow, Fuel Rail Pressure (FRP).

The performance model may include one or more models configured to calculate a plurality of engine performance variables associated with each candidate set of actuator setpoints. It will be appreciated that since the inputs to the performance model include actuator set points and sensor data of the internal combustion engine, the calculated engine performance variables will represent the real-time performance of the internal combustion engine 1 at these actuator set points. The calculated engine performance variables may include: engine torque, mass air flow, Brake Mean Effective Pressure (BMEP), net mean indicated effective pressure (IMEP), Pump Mean Effective Pressure (PMEP), Friction Mean Effective Pressure (FMEP), exhaust manifold temperature, peak cylinder pressure, NOx amounts (e.g., net indicated specific NOx, brake indicated specific NOx), soot amounts (e.g., net indicated specific soot, brake indicated specific soot), NOx/soot ratio, minimum fresh charge, EGR potential. The above-described physical relationships between the engine performance variables and the inputs provided to the performance model are well known to those skilled in the art. As described above, the performance model may utilize a physics-based model, an empirical model, or a combination of experience and physics-based models (i.e., a semi-physical/gray-box model) to calculate one or more of the above-described engine performance variables.

For example, the performance model may include a mean engine model. Mean engine models are well known to those skilled in the art for modeling engine performance parameters such as BMEP, engine torque, airflow, etc. Further explanation of a Mean engine model suitable for use in the present disclosure may be found in "Event-Based Mean-Value Modeling of DI Diesel Engines for Controller Design" in Urs Christen et al, SAE Technical Paper Series. Thus, the performance model may be used to calculate engine performance variables based on the inputs.

In addition to using the mean model, the performance model may include one or more neural network-based models for calculating one or more engine performance variables. For example, a net indicated ratio nox (nisnox) engine performance variable may be calculated from sensor data using a suitably trained neural network. Further explanation of suitable techniques for calculating engine performance variables, such as NISNOx, using neural networks can be found in "Development of PEMS Models for Predicting NOx Emissions from Large Bore Natural Gas Engineers" in Michele Steyskal et al, SAE Technical Paper Series.

In addition to the models described above, physics-based models of one or more internal combustion engine components may also be provided. For example, a compressor model, a turbine model, or an exhaust gas recirculation cooler model may be provided to help calculate the appropriate engine performance variables.

The performance model outputs engine performance variables to the cost model. The cost model is configured to evaluate one or more engine performance variables and output a cost associated with each candidate set of actuator setpoints based on the engine performance variables.

The cost model may include a plurality of functions configured to assign costs to various performance goals in order to evaluate the performance of the internal combustion engine 1 according to a set of candidate actuator set points. For example, the plurality of functions may include one or more performance objective functions, one or more emissions functions, and one or more engine constraint functions. Each of the plurality of functions may be configured to output a cost based on a function of one or more engine performance variables and one or more cost parameters. The cost parameter determines the magnitude of the cost associated with each engine performance parameter. In the embodiment of FIG. 3, the cost function is configured such that lower costs are associated with better performance.

The performance objective function may be a function configured to optimize the internal combustion engine 1 to meet certain performance objectives. For example, the performance target may be to minimize Brake Specific Fuel Consumption (BSFC) or Net Indicated Specific Fuel Consumption (NISFC). A further performance goal may be to minimize the torque error (i.e., the difference between the actual output torque and the requested torque). The form of such a performance objective function may be represented by a function having a weighted square law relationship (i.e., the form: cost ═ weight ^2 (engine performance variable)). Thus, for a performance objective function, the weight of the performance objective function is a cost parameter. A graphical representation of a suitable performance objective function is shown in figure 6 a. For example, NISFC (cost)NISFC) The performance targets of (a) may be:

cost ofNISFCWeight-weightNISFC*NISFC^2

The emissions function may be a function configured to optimize the internal combustion engine in order to meet certain objectives related to emissions produced by the internal combustion engine. For example, one or more emission functions may be provided based on engine performance variables related to emissions produced by the internal combustion engine. Thus, one or more emission functions may be based on NOx mass (NISNOx, soot (NISCF), NOx-to-soot ratio, minimum fresh charge, and/or EGR potential. the emission function may use any suitable function to define the relationship between cost and engine performance variables.

In the present disclosure, the net indicated ratio NOx (nisnox) is intended to represent the amount of NOx output by the internal combustion engine prior to any treatment in the aftertreatment system. Of course, those skilled in the art will appreciate that the amount of NOx (e.g., tailpipe NOx) may also be estimated downstream of the aftertreatment system.

For example, the emissions function may include a target upper limit (T). The target upper limit may define a value for the engine performance variable above which significant costs may be incurred, while for values below the target upper limit no or minimal costs may be incurred. For example, for some internal combustion engines, the upper target limit for NISNOx may be 4 g/kWh. Thus, for an emissions function, the target upper limit and/or weight may be a cost parameter. In other embodiments, a target limit may be provided as the target lower limit.

Thus, the emission function (cost) based on the engine performance variable NISNOxNOx) Can be as follows:

when: NISNOx<T, costNOx=0

NISNOx is more than or equal to T, costNOxWeight-weightNOx*(NISNOx–T)^2

The engine constraint function may be a function configured to reflect constraints associated with performance of the internal combustion engine. Thus, one or more engine constraint functions may be provided to prevent or prevent the internal combustion engine controller from operating the internal combustion engine 1 under certain operating conditions. For example, one or more engine constraint functions may be based on engine performance variables having fixed limits that cannot be exceeded due to the physical requirements of the internal combustion engine. Accordingly, one or more engine constraint functions may be based on Peak Cylinder Pressure (PCP), exhaust manifold temperature, compressor outlet temperature. Additional engine performance variables with desired fixed limits, such as maximum torque error, may also have corresponding engine constraint functions. Each engine constraint function may use any suitable function to define the relationship between the cost and one or more engine performance variables. For example, in the embodiment of fig. 3, the engine constraint function may be provided in the form of a cost of 1/engine performance variable. A graphical representation of a suitable engine constraint function is shown in figure 6 c.

For example, an engine constraint function for the engine performance variable PCP may be provided based on the limit L, and the cost calculated by the engine constraint function may increase asymptotically as the limit L is approached. Therefore, the limit L may also be a cost parameter. Therefore, engine constraint function (cost) based on engine performance variable PCPPCP) Can be as follows:

cost ofPCP=1/(L–PCP)

As described above, various cost parameters have been described with respect to performance objective functions, emissions functions, and engine constraint functions. The cost parameters may be stored by the cost model, for example as a cost parameter vector. In some embodiments, the cost parameter may be time-varying. That is, in some embodiments, the cost model may update one or more cost parameters to effect changes in the relative costs associated with different engine performance variables. For example, the cost model may update one or more cost parameters to initiate regeneration of the aftertreatment system, as described below.

For example, the cost model may utilize data from the aftertreatment system to determine that regeneration of the aftertreatment system is to be performed (e.g., an indication from the aftertreatment system that regeneration of the diesel particulate filter is required). The cost model may update some cost functions of the model to enable regeneration of the aftertreatment system. For example, a cost function (e.g., a performance objective function) may be provided to control the exhaust minimum temperature. To regenerate the aftertreatment system, the exhaust temperature minimum loss may be increased (e.g., to 400 ℃) to cause the optimizer to calculate an optimized hypersurface that increases the exhaust temperature. Internal combustion engines may not be able to reach such exhaust temperatures, but will be motivated to find solutions that minimize the deviation from this value. When aftertreatment thermal management is not required, the exhaust temperature minimum loss may be set to a negligible value (e.g., -180 ℃). Thus, the cost function will not consider this term when not needed.

Thus, the cost model may calculate a total cost associated with each candidate set of actuator setpoints based on the costs calculated by each of the cost functions calculated above. The total cost associated with each candidate set of actuator setpoints may be provided to the optimizer module 50 for further processing.

Accordingly, a performance model may be provided for calculating the cost associated with each candidate set of actuator setpoints. It should be understood that various modifications or changes to the above described performance model may occur to those skilled in the art. In particular, the performance model may be adjusted based on the particular internal combustion engine 1 that the internal combustion engine controller 10 is intended to control.

In a second step, the second sub-module 52 of the optimizer module 50 determines a search line in the initial actuator setpoint search space that spans a first cost minimum based on the costs associated with the first set of candidate sets of actuator setpoints.

In one embodiment, the search line is determined based on the two candidate sets of actuator setpoints having the lowest cost. For example, as shown in the search spaces of fig. 4 and 5, the search vector is determined as the vector in the initial actuator setpoint search space along the line between the two candidate sets of actuator setpoints having the lowest cost. The values of the cost function along the search vector are graphically represented in fig. 7. The purpose of determining the search vector is to provide a further search for the minimum value in order to identify the direction of the optimized set of actuator setpoints.

Once the search vector is determined, sub-module 52 determines the line along the search vector that spans the minimum of the cost. Various methods for determining whether the minimum of a function (i.e., a performance model) is located between two points on a line are known to those skilled in the art. One example for determining search lines is discussed in more detail below. Once the search line along which the minimum is known is determined, the sub-module 52 outputs information defining the search line to the third sub-module 53. It should be understood that the search line may be defined in various ways, for example, as coordinates (i.e., two candidate sets of actuator setpoints), or as an equation. Fig. 7 shows in bold a search line extending between points e and f.

One method for checking whether there is a minimum along the search line is at a third point (x) along the search line1) Where (i.e., between the two candidate sets of actuator set points defining the start and end points of the search line) the cost function is evaluated. If the third point evaluated has a lower cost than either of the two end points of the search line, this indicates that the minimum lies on the search line between the two end points. In the case where it is determined that there is no minimum along the search line,the endpoints of the search line may be extended along the search vector in the initial actuator setpoint search space and re-evaluated. This process may be repeated until a search line across the minimum is found (e.g., as shown in fig. 4 and 5). One advantage of the method is that the number of candidate sets of actuator setpoints that need to be evaluated can be reduced. That is, each point along the search vector need not be evaluated. In many cases, the set of candidate actuator set points identified by the hierarchical search having the lowest cost will span the minimum value, and thus only one further point along the search line (i.e. one further set of candidate actuator set points) is evaluated to confirm that the minimum value lies on that line. For example, as shown in the example of FIG. 5, the cost of the performance model along the search line is minimized at the point between candidate sets e and f.

In a third step, the third sub-module 53 of the optimizer module 50 performs a line search along the search line to calculate an optimized set of actuator set points associated with the first cost minimum. Thus, the purpose of the line search is to identify points along the search line in the initial actuator set point search space that correspond to cost minima. Various line search methods are known to those skilled in the art for searching for the minimum of a function along a line.

Referring to the search line of FIG. 7, a golden section line search method may be used to locate the minimum. The golden section line search is a form of a section algorithm in which the golden ratio ((1+ √ 5)/2) is used to select the next point to be evaluated (the set of actuator set points). Other segmentation algorithms (e.g., bisection) are also suitable. One advantage of the golden section line search is that the previously identified set of candidate actuator set points can be reused in the algorithm, thereby reducing the computational requirements of the optimizer module 50. The golden section algorithm uses three points on the curve, with the minimum value being considered to be located between these three points.

In the embodiment of FIG. 7, the golden ratio may be used to select point x between the endpoints of the search line1. As shown in FIG. 7, the minimum may be determined based on two points for establishing a search line and a point x for confirming that the search line crosses the minimum1To select the next candidate to be evaluatedSelected set of actuator set points (from point x)2Representation). Selecting point x on a search line2So that the distance b equals a + c. According to point x2The golden section algorithm updates the three points defining the minimum value of the cost. For example, in the embodiment of FIG. 7, the next triple point will be x1、x2And f.

The golden section line search may repeat the search until a minimum along the search line is identified. Once the termination criteria are met, the golden section line search may terminate. The termination criteria may be based on one or more of the following: the maximum number of iterations, and the cost reduction (i.e., the search has converged to an optimized set of actuator set points) that falls below a certain threshold between iterations.

Once the optimizer module has identified the optimized set of actuator set points, the map update module 40 updates one or more hypersurfaces of the control map 30 based on the optimized set of actuator set points. The hypersurface at the location on each control hypersurface defined by a plurality of input variables is updated as these are the input variables used to evaluate the costs associated with the set of candidate actuator setpoints. The hypersurface of each control map may be updated to reflect the position of the actuator setpoints in the optimized set of actuator setpoints on each control hypersurface defined by a plurality of input variables. Thus, the map update module 40 may update the real-time operating point of the internal combustion engine 1 defined by the control map.

The map update module 40 may include a further check to determine whether to update the control map based on the optimized set of actuator set points. The map update module 40 may determine a cost difference between the cost associated with the optimized set of actuator setpoints and the cost associated with the candidate set of actuator setpoints corresponding to the location on each hypersurface of the control map defined by the plurality of input variables. If the cost difference is less than the update threshold, the hypersurface of the control map may not be updated. It should be appreciated that for some optimized sets of actuator setpoints, the performance improvement relative to the current actuator setpoints defined by the positions on the hyper-curved surface of the control map may be relatively small. For some internal combustion engines 1, it may not be desirable to frequently change the actuator set point for relatively modest performance improvements. Thus, the map update module may choose not to update the control map 30 in the event that the cost reduction associated with the change in the actuator setting to the optimization set point is less than a predetermined threshold. For example, the predetermined threshold may be a percentage of the previous cost. That is, when the variation is less than: in the case of a 10%, 5%, 3%, or 1% difference, the map update module 40 may not update the control map 30.

According to another embodiment of the disclosure, the optimizer module may be configured to iterate the process for calculating the optimized set of actuator setpoints. FIG. 8 is a block diagram of another embodiment of the present disclosure in which the optimizer iterates the calculation of an optimized set of actuator setpoints.

As shown in fig. 8, the optimizer module 50 may be further modified to incorporate inputs from the control map 30. The optimizer module 50 may be configured to select a set of candidate actuator setpoints based on the control signal output of the engine setpoints module 20. Thus, the current control signal output by the internal combustion engine controller 10 may be provided to the map update module 40 to be evaluated as one of the candidate set of actuator set points. Thus, when calculating the optimized set of actuator set points, the map update module 40 may evaluate the position on the current hypersurface defined by the control map 30.

As will be appreciated by those skilled in the art, the output of the engine set point module 20 may be based on the control map 30 that has been previously updated by the map update module 40. Thus, the candidate set of actuator set points output based on the control signals of the engine set point module 20 may reflect the previously calculated optimized hypersurface. Thus, the internal combustion engine controller 10 may effectively incorporate a form of memory in which previously calculated optimized hypersurfaces may affect the set of candidate actuator setpoints evaluated by the optimizer module 50.

Similar to the embodiment of fig. 3 discussed above, the optimizer module 50 of fig. 8 is arranged to perform a hierarchical sample of the initial actuator setpoint search space and to calculate a (first) optimized set of actuator setpoints. The optimizer module 50 may calculate a first optimized set of actuator set points substantially as discussed above for the embodiment of fig. 3.

Once the first optimized actuator set point is calculated, the optimizer module may choose to iterate over the solution found by repeating the search process described above. In an attempt to improve the optimized actuator set points, the optimizer module repeats the search process using the updated search space. Thus, rather than performing a hierarchical sample of the initial actuator setpoint search space, the optimizer module performs a hierarchical sample of the constrained actuator setpoint search space (i.e., a subset of the initial actuator setpoint search space).

The constrained actuator setpoint search space may be constrained based on a previously calculated set of optimized actuator setpoints (e.g., a first set of optimized actuator setpoints). The search space may be constrained by updating upper and lower actuator constraints (e.g., an initial actuator setpoint search space) for each actuator that defines the search space for performing the hierarchical sample. The available search range for each actuator may be at least reduced: 30%, 40%, 50%, 60% or 70%. The upper and lower actuator constraints for each actuator may be selected such that the previously calculated optimized set of actuator setpoints is located at the center of the constrained actuator setpoint search space. Of course, in some examples, a previously calculated optimized set of actuator setpoints may not be positioned in the center of the constrained actuator setpoint search space, for example, where the previously calculated optimized set of actuator setpoints approaches one or more upper or lower constraints of the initial actuator setpoint search space. In this case, the constrained actuator setpoint range may be defined according to the associated upper or lower actuator constraint such that the previously calculated optimized set of actuator setpoints is as centered as possible within the constrained actuator setpoint search space.

Once the constrained actuator setpoint search space is determined, the optimizer module 50 is configured to execute a hierarchical sample of the constrained actuator setpoint search space to select a second set of candidate actuator setpoint sets. The hierarchical sample of the constrained actuator setpoint search space may be performed in substantially the same manner as the hierarchical sample of the initial actuator setpoint search space. In some embodiments, one of the candidate sets of actuator setpoints may be a previously calculated optimized set of actuator setpoints. Thus, the optimizer module 50 ensures that the previous solution is evaluated in subsequent iterations, and also reduces the number of candidate sets of actuator setpoints within the second set that need to be evaluated.

The optimizer module 50 evaluates the second set of candidate sets of actuator setpoints according to a performance model of the internal combustion engine and calculates a cost associated with each of the second set of candidate sets of actuator setpoints. The evaluation of each of the second set of candidate actuator setpoint sets may be performed in substantially the same manner as described above for the first set of candidate actuator setpoint sets.

The optimizer module 50 (e.g., the second sub-module 52) then determines another search line in the constrained actuator setpoint search space that spans a second cost minimum based on the costs associated with the second set of candidate actuator setpoint sets.

The optimizer module 50 (e.g., the third sub-module 53) then performs a line search along the other search line to calculate the set of actuator set points associated with the second cost minimum. The optimizer module may perform a line search substantially as described above.

Once the set of actuator set points associated with the second cost minimum is calculated, the optimizer module evaluates whether a cost reduction has been achieved relative to the first cost minimum (i.e., the previously calculated optimized set of actuator set points), and if so, the optimizer module 50 updates the optimized set of actuator set points based on the set of actuator set points associated with the second cost minimum. If no cost reduction is achieved, the optimized set of actuator setpoints is not updated.

Thus, the optimizer module may iterate the calculation of the optimized set of actuator set points. It will be appreciated from the embodiment of fig. 6 that the optimizer module 50 may make multiple iterations of the calculation of the optimized set of actuator set points. The size of the constrained actuator setpoint search space may be further reduced relative to previous calculations each time the calculation is iterated. The optimizer module may be arranged to iterate the calculation at least 3 times, at least 5 times or at least 7 times.

As shown in the embodiment of fig. 8, the optimizer module 50 includes a termination module 54 configured to decide when to terminate the iteration of the optimized set of candidate actuator setpoints. The termination module 54 may terminate the iteration when the cost reduction achieved in updating the optimized set of actuator setpoints falls below a convergence limit; and/or the time it takes to perform an iteration exceeds a time limit. The time limit may be defined based on the computational resources available to the optimizer module 50. The time limit may be set such that the optimizer module is allowed to run, for example, at least 7 times.

Once the termination module 54 of the optimizer module 50 terminates the iteration of the optimized actuator set points, the optimized actuator set points may be evaluated by the map update module 40 to decide whether to update the control map.

The present disclosure describes operation of an internal combustion engine controller. The internal combustion engine controllers described herein include one or more processors and have access to one or more memory modules. The processing operations performed by the internal combustion engine controller are described in terms of various modules configured to perform various processing tasks. In some embodiments, the various modules may be executed by different computer processors; while in other embodiments some or all of the processing modules may be executed by a single processor. Thus, it will be understood that the processing modules described herein may represent various functions within a computer program executed by one or more processors.

INDUSTRIAL APPLICABILITY

The internal combustion engine controller 10 of the present disclosure may be configured to control an internal combustion engine in a variety of configurations.

One application may be for controlling an actuator set point of an internal combustion engine as shown in fig. 1. The internal combustion engine may be mounted on, for example, a vehicle or machine, or may form part of an electrical generator.

27页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于确定空气质量的方法和水直接喷射系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!