Linear parameter varying model predictive control for engine assemblies
10605187 ยท 2020-03-31
Assignee
Inventors
- Yue-Yun Wang (Troy, MI)
- Ruixing Long (Windsor, CA)
- Julian R. Verdejo (Novi, MI, US)
- Jyh-Shin Chen (Troy, MI)
Cpc classification
F02D2200/1002
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2250/18
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/1402
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D35/023
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2200/602
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/1406
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2041/143
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2041/1433
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2041/1429
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
International classification
Abstract
An LPV/MPC engine control system is disclosed that includes an engine control unit connected to multiple sensors. The engine control unit receives, from the sensors, signals indicative of desired engine torque and engine torque output, and determines, from these signals, optimal engine control commands using a piecewise LPV/MPC routine. This routine includes: determining a nonlinear and a linear system model for the engine assembly, minimizing a control cost function in a receding horizon for the linear system model, determining system responses for the nonlinear and linear system models, determining if a norm of an error function between the system responses is smaller than a calibrated threshold, and if the norm is smaller than the predetermined threshold, applying the linearized system model in a next sampling time for a next receding horizon to determine the optimal control command. Once determined, the optimal control command is output to the engine assembly.
Claims
1. An engine control system for torque and emissions control of an engine assembly, the engine control system comprising: an input sensor configured to detect desired engine torque for the engine assembly and generate signals indicative thereof; an engine sensor configured to detect torque output of the engine assembly and generate signals indicative thereof; and an engine control unit communicatively connected to the engine sensor and the input sensor, the engine control unit being programmed to: receive, from the input sensor, a signal indicative of a desired engine torque; receive, from the engine sensor, a signal indicative of an engine torque output; receive, via a model predictive control (MPC) module, a reference torque for the engine assembly; determine, from the desired engine torque, the engine torque output, and the reference torque, an optimal control command using a piecewise linear parameter varying (LPV) MPC routine, including: determining a nonlinear system model of engine torque for the engine assembly; determining a linear system model for the engine assembly at a current engine operating condition; and minimizing a control cost function in a receding horizon for the linear system model, wherein the optimal control command includes an optimal wastegate position, an optimal throttle position, an optimal intake valve position, and/or an optimal exhaust valve position; and transmit the determined optimal control command to the engine assembly to thereby modify a torque and emissions output of the engine assembly.
2. The engine control system of claim 1, wherein the optimal control command modifies a resultant output torque of the engine assembly to track the reference torque by changing a current turbocharger wastegate position to the optimal wastegate position, a current air throttle position to the optimal throttle position, a current engine intake valve maximum open position to the optimal intake valve position, and/or a current engine exhaust valve maximum open position to the optimal exhaust valve position.
3. The engine control system of claim 1, wherein the engine control unit is further programmed to employ a proportional and integral (PI) controller to modify the optimal control command to offset a control error between the engine torque output and the reference torque.
4. The engine control system of claim 3, wherein the PI controller is switchable between an on state and an off state, the PI controller applying a weighting function in an MPC cost function when in the on state.
5. The engine control system of claim 4, wherein the PI controller includes: a first PI controller with a first weighting function that modifies the optimal intake valve position; a second PI controller with a second weighting function that modifies the optimal exhaust valve position; a third PI controller with a third weighting function that modifies the optimal throttle position; and a fourth PI controller with a fourth weighting function that modifies the optimal wastegate position.
6. The engine control system of claim 1, wherein the nonlinear system model includes a nonlinear state space model of engine air path and torque for the engine assembly.
7. The engine control system of claim 1, wherein determining the optimal control command using the piecewise LPV/MPC routine further includes: determining a nonlinear system response for the nonlinear system model with a current optimal control input; determining a linear system response for the linear system model with the current optimal control input; determining if a norm of an error function between the nonlinear and linear system responses is smaller than a predetermined threshold; and responsive to a determination that the norm is smaller than the predetermined threshold, applying the linear system model in a next sampling time for a next receding horizon to determine the optimal control command.
8. The engine control system of claim 7, wherein the piecewise LPV/MPC routine further includes, responsive to the determination that the norm is smaller than the predetermined threshold, executing the following in a continuous loop, starting at sample time k, until it is determined that the norm is not smaller than the predetermined threshold: minimizing the control cost function at next sampling times k+1, 2 . . . N in respective next receding horizons for the linear system model; determining new respective nonlinear and linear system responses for the nonlinear and linear system models with the current optimal control input; and determining if the norm of the error function between the new system responses is smaller than the predetermined threshold.
9. The engine control system of claim 8, wherein the piecewise LPV/MPC routine further includes, responsive to a determination that the norm is not smaller than the predetermined threshold: determining a new linear system model for the engine assembly; minimizing the control cost function in a new receding horizon for the new linear system model; determining new respective system responses for the nonlinear system model and the new linear system model with the current optimal control input; and determining if the norm of the error function between the new system responses is smaller than the predetermined threshold.
10. The engine control system of claim 1, wherein determining the linear system model for the engine assembly includes calculating a system dynamic matrix A, B, C, D and V at a sample time k.
11. The engine control system of claim 1, wherein determining the nonlinear system model includes building a nonlinear physics-based plant model for the engine assembly.
12. The engine control system of claim 11, wherein determining the linear system model includes linearizing the nonlinear physics-based plant model at the current operating condition, and calculating a system dynamic matrix A, B, C, D and V based on a Jacobian matrix from derivatives of a nonlinear system function.
13. The engine control system of claim 7, wherein determining the norm of the error function includes defining a vector norm calculated for N number of samples, the error function being a function of the nonlinear system response of the nonlinear system model and the linear system response of the linear system model.
14. A motor vehicle, comprising: a vehicle body defining an engine compartment; an internal combustion engine (ICE) assembly stowed in the engine compartment; an input sensor configured to detect desired engine torque for the ICE assembly and generate signals indicative thereof; an engine sensor operatively coupled to the ICE assembly and configured to detect torque output of the ICE assembly and generate a signal indicative thereof; and an engine control unit communicatively connected to the ICE assembly, the engine sensor, and the input sensor, the engine control unit being programmed to: receive, from the input sensor, a signal indicative of a desired engine torque; receive, from the engine sensor, a signal indicative of an engine torque output; receive, via a model predictive control (MPC) module, a reference torque for the engine assembly; determine, from the desired engine torque, the engine torque output, and the reference torque, an optimal control command using a piecewise linear parameter varying (LPV) MPC routine, including: determining a nonlinear system model of engine torque for the engine assembly; determining a linear system model for the engine assembly at a current engine operating condition; and minimizing a control cost function in a receding horizon for the linear system model, wherein the optimal control command includes an optimal wastegate position, an optimal throttle position, an optimal intake valve position, and/or an optimal exhaust valve position; and transmit the optimal control command to the engine assembly to thereby modify a torque and emissions output of the engine assembly.
15. A method of operating an engine control system for torque and emissions control of an engine assembly, the method comprising: receiving, from an input sensor, a signal indicative of a desired engine torque for the engine assembly; receiving, from an engine sensor, a signal indicative of an engine torque output of the engine assembly; receiving, via a model predictive control (MPC) module, a signal indicative of a reference torque for the engine assembly; determining, from the desired engine torque, the engine torque output, and the reference torque, an optimal control command using a piecewise linear parameter varying (LPV) MPC routine, including: determining a nonlinear system model of engine torque for the engine assembly; determining a linear system model for the engine assembly at a current engine operating condition; and minimizing a control cost function in a receding horizon for the linear system model, wherein the optimal control command includes an optimal wastegate position, an optimal throttle position, an optimal intake valve position, and/or an optimal exhaust valve position; and transmitting the optimal control command to the engine assembly to thereby modify a torque and emissions output of the engine assembly.
16. The method of claim 15, wherein the optimal control command modifies a resultant output torque of the engine assembly to track the reference torque by changing a current turbocharger wastegate position to the optimal wastegate position, a current air throttle position to the optimal throttle position, a current engine intake valve maximum open position to the optimal intake valve position, and/or a current engine exhaust valve maximum open position to the optimal exhaust valve position.
17. The method of claim 15, further comprising employing a proportional and integral (PI) controller to modify the optimal control command to offset a control error between the engine torque output and the reference torque.
18. The method of claim 16, wherein the PI controller is switchable between an on state and an off state, the PI controller applying a weighting function in an MPC cost function when in the on state.
19. The method of claim 15, wherein the PI controller includes: a first PI controller with a first weighting function that modifies the optimal intake valve position; a second PI controller with a second weighting function that modifies the optimal exhaust valve position; a third PI controller with a third weighting function that modifies the optimal throttle position; and a fourth PI controller with a fourth weighting function that modifies the optimal wastegate position.
20. The method of claim 15, wherein nonlinear system model includes a nonlinear state space model of engine air path and torque for the engine assembly.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6) The present disclosure is susceptible to various modifications and alternative forms, and some representative embodiments have been shown by way of example in the drawings and will be described in detail herein. It should be understood, however, that the novel aspects of this disclosure are not limited to the particular forms illustrated in the appended drawings. Rather, the disclosure is to cover all modifications, equivalents, combinations, subcombinations, permutations, groupings, and alternatives falling within the scope and spirit of the disclosure as defined by the appended claims.
DETAILED DESCRIPTION
(7) This disclosure is susceptible of embodiment in many different forms. There are shown in the drawings and will herein be described in detail representative embodiments of the disclosure with the understanding that these representative embodiments are to be considered an exemplification of the principles of the disclosure and are not intended to limit the broad aspects of the disclosure to the embodiments illustrated. To that extent, elements and limitations that are disclosed, for example, in the Abstract, Summary, and Detailed Description sections, but not explicitly set forth in the claims, should not be incorporated into the claims, singly or collectively, by implication, inference or otherwise. For purposes of the present detailed description, unless specifically disclaimed: the singular includes the plural and vice versa; the words and and or shall be both conjunctive and disjunctive; the word all means any and all; the word any means any and all; and the words including and comprising and having mean including without limitation. Moreover, words of approximation, such as about, almost, substantially, approximately, and the like, may be used herein in the sense of at, near, or nearly at, or within 3-5% of, or within acceptable manufacturing tolerances, or any logical combination thereof, for example.
(8) Referring now to the drawings, wherein like reference numbers refer to like features throughout the several views, there is shown in
(9) There is shown in
(10) An air intake system transmits intake air to the cylinders 15 through an intake manifold 29, which directs and distributes air into the combustion chambers 17, e.g., via intake runners of the cylinder head 25. The engine's air intake system has airflow ductwork and various electronic devices for monitoring and controlling the flow of intake air. The air intake devices may include, as a non-limiting example, a mass airflow sensor 32 for monitoring mass airflow (MAF) 33 and intake air temperature (IAT) 35. A throttle valve 34 controls airflow to the ICE assembly 12 in response to a control signal (ETC) 120 from a programmable engine control unit (ECU) 5. A pressure sensor 36 operatively coupled to the intake manifold 29 monitors, for instance, manifold absolute pressure (MAP) 37 and barometric pressure. An optional external flow passage recirculates exhaust gases from engine exhaust to the intake manifold 29, e.g., via a control valve in the nature of an exhaust gas recirculation (EGR) valve 38. The programmable ECU 5 controls mass flow of exhaust gas to the intake manifold 29 by regulating the opening and closing of the EGR valve 38 via EGR command 139. In
(11) Airflow from the intake manifold 29 into each combustion chamber 17 is controlled by one or more dedicated intake engine valves 20. Evacuation of exhaust gases out of the combustion chamber 17 to an exhaust aftertreatment system 55 via an exhaust manifold 39 is controlled by one or more dedicated exhaust engine valves 18. In accord with at least some of the disclosed embodiment, exhaust aftertreatment system 55 includes an exhaust gas recirculation (EGR) system and/or a selective catalytic reduction (SCR) system. The engine valves 18, 20 are illustrated herein as spring-biased poppet valves; however, other available types of engine valves may be employed. The ICE assembly 12 valve train system is equipped to control and adjust the opening and closing of the intake and exhaust valves 20, 18. According to one example, the activation of the intake and exhaust valves 20, 18 may be respectively modulated by controlling intake and exhaust variable cam phasing/variable lift control (VCP/VLC) devices 22 and 24. These two VCP/VLC devices 22, 24 are configured to control and operate an intake camshaft 21 and an exhaust camshaft 23, respectively. Rotation of these intake and exhaust camshafts 21 and 23 are linked and/or indexed to rotation of the crankshaft 11, thus linking openings and closings of the intake and exhaust valves 20, 18 to positions of the crankshaft 11 and the pistons 16.
(12) The intake VCP/VLC device 22 may be fabricated with a mechanism operative to switch and control valve lift of the intake valve(s) 20 in response to a control signal (iVLC) 125, and variably adjust and control phasing of the intake camshaft 21 for each cylinder 15 in response to a control signal (iVCP) 126. In the same vein, the exhaust VCP/VLC device 24 may include a mechanism operative to variably switch and control valve lift of the exhaust valve(s) 18 in response to a control signal (eVLC) 123, and variably adjust and control phasing of the exhaust camshaft 23 for each cylinder 15 in response to a control signal (eVCP) 124. The VCP/VLC devices 22, 24 may be actuated using any one of electro-hydraulic, hydraulic, electro-mechanic, and electric control force, in response to respective control signals eVLC 123, eVCP 124, iVLC 125, and iVCP 126, for example.
(13) With continuing reference to the representative configuration of
(14) The ICE assembly 12 is equipped with various sensing devices for monitoring engine operation, including a crank sensor 42 having an output indicative of, e.g., crankshaft crank angle, torque and/or speed (RPM) signal 43. A temperature sensor 44 is operable to monitor, for example, one or more engine-related temperatures (e.g., coolant temperature, fuel temperature, exhaust temperature, etc.), and output a signal 45 indicative thereof. An in-cylinder combustion sensor 30 monitors combustion-related variables, such as in-cylinder combustion pressure, charge temperature, fuel mass, air-to-fuel ratio, etc., and output a signal 31 indicative thereof. An exhaust gas sensor 40 is configured to monitor exhaust-gas related variables, e.g., actual air/fuel ratio (AFR), burned gas fraction, etc., and output a signal 41 indicative thereof.
(15) The combustion pressure and the crankshaft speed may be monitored by the ECU 5, for example, to determine combustion timing, i.e., timing of combustion pressure relative to the crank angle of the crankshaft 11 for each cylinder 15 for each working combustion cycle. It should be appreciated that combustion timing may be determined by other methods. Combustion pressure may be monitored by the ECU 5 to determine an indicated mean effective pressure (IMEP) for each cylinder 15 for each working combustion cycle. The ICE assembly 12 and ECU 5 cooperatively monitor and determine states of IMEP for each of the engine cylinders 15 during each cylinder firing event. Alternatively, other sensing systems may be used to monitor states of other combustion parameters within the scope of the disclosure, e.g., ion-sense ignition systems, EGR fractions, and non-intrusive cylinder pressure sensors.
(16) Control module, module, controller, control unit, electronic control unit, processor and similar terms mean any one or various combinations of one or more of Application Specific Integrated Circuit(s) (ASIC), electronic circuit(s), central processing unit(s) (e.g., microprocessor(s)), and associated memory and storage (read only, programmable read only, random access, hard drive, etc.) executing one or more software or firmware programs or routines, combinational logic circuit(s), input/output circuit(s) and devices, appropriate signal conditioning and buffer circuitry, and other components to provide the described functionality. Software, firmware, programs, instructions, routines, code, algorithms and similar terms mean any controller executable instruction sets including calibrations and look-up tables. The ECU may be designed with a set of control routines executed to provide the desired functions. Control routines are executed, such as by a central processing unit, and are operable to monitor inputs from sensing devices and other networked control modules, and execute control and diagnostic routines to control operation of devices and actuators. Routines may be executed at regular intervals, for example each 100 microseconds, 3.125, 6.25, 12.5, 25 and 100 milliseconds during ongoing engine and vehicle operation. Alternatively, routines may be executed in response to occurrence of an event.
(17) Presented in
(18) In the illustrated example, portions of the piecewise LPV/MPC architecture 200 are shown generally embodied as interoperable control modulesa Piecewise LPV (PLPV) module 202, a Model Predictive Control (MPC) module 204, and a Prediction Error (PO) module 206that may each comprise a respective software application with processor-executable instructions effectuated, for example, by the onboard engine control unit (ECU) 5 of motor vehicle 10 shown in
(19) To provide closed-loop feedback data, piecewise LPV/MPC architecture 200 implements or otherwise communicates with an assortment of onboard and off-board sensing devices, including those shown in and described above with respect to
(20) In addition to the engine sensor(s) 208, one or more input sensors 210, which may be in the nature of a linear transducer or non-contacting position sensor (NPS), is mounted to a drive-by-wire electronic throttle pedal or other appropriate component of the ICE assembly 12. Each input sensor 210 is operable to determine, e.g., monitor in real-time, systematically or randomly track, and/or otherwise selectively detect, a desired output r(t), such as a desired trajectory or desired engine torque, and generate one or more signals indicative thereof. It is envisioned that the engine control system 200 utilize greater of fewer sensors from that which are shown in the drawings, both onboard and remote from the vehicle. In the same vein, the system may utilize analog circuits or other signal processing hardware, e.g., for converting sensor information into analog electrical signals utilized in controlling engine operation. From these inputs, MPC module 204 helps to determine an optimal control input u(t), some examples of which are provided below, to help drive engine output to track the reference (so the difference between the reference and the measured output is minimal).
(21) For a given nonlinear system, for example as seen in PLPV module 202, an engine assembly's air path and torque system may be described by a nonlinear state space model:
{dot over (x)}=f(x,u,,{dot over (m)}.sub.f,)
y=T.sub.q=g(x,u,,{dot over (m)}.sub.f,)(1)
where is a vector containing ambient temperature and pressure, is engine speed, and {dot over (m)}.sub.f is fuel flow. From these state space models, engine system state x and control input u can be chosen as:
(22)
where N.sub.t is engine turbo speed, {dot over (m)}.sub.a is fresh air flow, p.sub.th is pressure before throttle, p.sub.i is intake manifold pressure as non-limiting examples of variables of engine state x; and u.sub.wg is turbocharger wastegate, u.sub.th is air throttle, u.sub.IMOP is engine intake valve max open position; u.sub.EMOP is engine exhaust valve max open position, and u.sub.spk is spark timing as non-limiting examples of system input u. A linearized system at a sample time k can be derived by PLPV module 202 from (or can be discretized as):
(23)
where x is a representative engine state; dx/dt is a change of the engine state over time; x.sub.k is the engine state at sparse sample time k; u is a representative control input; u.sub.k is the control input at sparse sample time k; y is a representative system output; and A.sub.k, B.sub.k, C.sub.k, D.sub.k, V.sub.k and G.sub.k are linearized system matrices characterizing system dynamics at sparse sample time k. Taking a partial derivative, a nonlinear system can be linearized at operating points x.sub.k and u.sub.k at sparse sample time k as described by the above equations. The linearized system at sparse sample time k is supplied by the PLPV module 202 to MPC module 204 for the optimization algorithm, as described in further detail below.
(24) Starting at sample time k, the MPC control module 204 can determine and output to PLPV module 202 an optimal control sequence u.sub.k, u.sub.k+1, . . . u.sub.N, such that it minimizes a cost function:
(25)
where y.sub.i+1 is a representative system output at sample time i+1; in this instance, r(t) is a reference for a control output; u.sub.i is a representative control input at sample time i; u.sub.ref is a control input reference; and W.sup.y, W.sup.u and W.sup.u are weighting factors in the optimization. Optimization of the cost function can be subject to one or more linearized system dynamic constraints:
x.sub.i+1=A.sub.kx.sub.i+B.sub.ku.sub.i+V.sub.k(x.sub.k,u.sub.k)
y.sub.i=C.sub.kx.sub.iD.sub.ku.sub.i+G.sub.k(x.sub.k,u.sub.k)(5)
where x.sub.i is a representative engine state at sample time i; x.sub.i+1 is an engine state at sample time i+1; u.sub.i is a control input at sample time i; y.sub.i is a representative system output at sample time i. The symbol * is representative of a norm of a vector, i.e., a general vector norm, which is a measure of respective magnitudes of the variables in the norm.
(26) Optimization to minimize the cost function shown above in equation (4) helps to find a control sequence u.sub.k, u.sub.k+1, . . . u.sub.N that can be implemented, for example, to control linear system responses y.sub.k, y.sub.k+1, and y.sub.N to track the reference signal r(t), e.g., such that the difference between y.sub.ir(t) is small. In this example, N.Math.t can be used to denote a prediction time horizon, which contains N number of samples of the system with sample time t. A first norm in the cost function helps to minimize a tracking error between the system measured output y and the reference r(t). A second and a third norm in the cost function may be representative of certain constraints on the control signal, e.g., to help ensure the control signal does not step jump too significantly, or significantly away from a certain input reference u.sub.ref. Once an optimal control sequence is found, a first control element u.sub.k may be applied to the engine assembly 12, e.g., via the MPC module 204 of
(27) The above process may then be repeated, moving forward to calculate an optimal control at a next sample time (k+1). This may require determining a new linearized system of the original nonlinear system at next sample time (k+1), e.g., via PLPV module 202, which may require calculating a new control sequence u.sub.k+1, u.sub.k+2, . . . u.sub.N+1, e.g., via the MPC module 204. The piecewise LPV/MPC architecture 200 repeats this process at each sample time to find an optimal control element for each prediction horizon moving forward in real-time. This process helps to avoid the complexity associated with zone partition calibration. In practice, finding an optimal control sequence for each linearized system model, when calculating the MPC optimal control, may require solving a quadratic program whose formulation relies on complicated manipulation of matrices A.sub.k, B.sub.k, C.sub.k, D.sub.k, V.sub.k and G.sub.k at sample time k. Formulating and then solving this quadratic program tends to consume a large amount of computational time and memory of ECU throughput. This computational burden may prevent ECU/ECU resources from completing other tasks.
(28) To help eliminate the aforementioned computational burden associated with calibration complexity in zone based MPC algorithms and computational complexity of LPV/MPC optimization processes, the representative engine system control architecture 200 presented in
(29) Application of the above piecewise LPV/MPC engine control routine is represented in
(30) PO module 206 compares system responses to determine if a new linearized system model is needed; if so, PO module 206 may responsively reset for a next linearization. There are several methods that can be used to calculate prediction errors in order to determine when the next linearization model is needed. In
e(y,y.sub.i).sub.k+n.sup.k+n+N(6)
defines a vector norm calculated for a number of samples N. There are several proposed ways to measure the norm, such as:
(31)
These approaches are referred to as error based switching test functions. In the first example method of equation set (7), for a number of samples N, the norm can be defined as a maximum absolute difference between the nonlinear system response and the linearized system response during the prediction window. In the second example method of equation set (7), a norm can be defined as a root mean square of the relative errors of the response differences between the original nonlinear model and the linearized model.
(32) In a third method:
der.sub.1=A.sub.k1x(k|k1)+B.sub.k1+v.sub.k1 der2=f(x(k|k1),)
switch if der.sub.1der.sub.2>,(8)
This method calculates the derivative of the nonlinear system der.sub.2(k+1)=f(x.sub.k, u.sub.k.sub.k, m.sub.fk) and the next state of the linearized system der.sub.1(k+1)=x.sub.k+1=A.sub.kx.sub.k+B.sub.ku.sub.k+V.sub.k, when e(y,yi)=|der.sub.2(k+1)der.sub.1(k+1)|>, switch to another linearized model.
(33) Model switching, as indicated in equation (8) below, can also be utilized based on checking among linearized models to avoid solving a new optimization problem at each sample time. Put another way, model switching can be determined by checking a difference among linearized models to avoid solving a new quadratic programming or computationally extensive optimization problem at each sample time:
4).difference(LinSys(k),LinSys(k+n))>,n=M,(n=1,2,3 . . . )(9)
(34) The difference can be calculated based on outputs of two linear systems at a prediction horizon, or the characteristic properties of the two linear systems. Here, LinSys(k) is the linearized system at sample time k:
x.sub.k+1=A.sub.kx.sub.k+B.sub.ku.sub.k+V.sub.k(x.sub.k,u.sub.k)
y.sub.k=C.sub.kx.sub.k+D.sub.ku.sub.k+G.sub.k(x.sub.k,u.sub.k)(10)
where LinSys(k+n) is the linearized system at sample time k+n:
x.sub.k+n+1=A.sub.k+nx.sub.k+n+B.sub.k+nu.sub.k+n+V.sub.k+n(x.sub.k+n,u.sub.k+n)
y.sub.k+n=C.sub.k+nx.sub.k+n+D.sub.k+nu.sub.k+n+G.sub.k+n(x.sub.k+n,u.sub.k+n)(11)
The difference can be calculated based on outputs of two linear systems at a prediction horizon, or the characteristic properties of the two linear systems, such as system poles and zeros.
(35)
(36) With reference now to the flow chart of
(37) The method 400 of
(38) With continuing reference to
(39) The piecewise LPV/MPC routine continues to block 409 to minimize or otherwise optimize a control cost function in a receding horizon for the linear system model, and then, at block 411, determine respective system responses for the nonlinear and linear system models with a current optimal control input. As noted above, once the nonlinear plant model is linearized, a control cost function in receding finite time horizon is optimized against the current linearized system, and a control solution is determined for a current step. Both the nonlinear system response and the linearized system response may be simulated with a current optimal control input u(k).
(40) At step 413, piecewise LPV/MPC routine determines if a norm of an error function between the system responses is smaller than a predetermined threshold. As indicated above, a vector or time series norm may be calculated based on an error function between the two responses; if the norm is smaller than the predetermined threshold, this linearized system and corresponding A, B, C, D and V matrices may be re-used in a next sampling time for a next receding horizon to find an optimal control u(k+1). Thus, at block 415, if the norm is determined to be smaller than the predetermined threshold, the piecewise LPV/MPC routine will apply the linearized system model in a next sampling time for a next receding horizon to determine the optimal control command. This process may iterate in a continuous loop, for example, until a norm of the error response is deemed to be no longer acceptable. When no longer acceptable, a new linearized system model is obtained to calculate a new control series. When an optimal control command is determined, block 415 will output the control command to the engine assembly.
(41) Aspects of this disclosure may be implemented, in some embodiments, through a computer-executable program of instructions, such as program modules, generally referred to as software applications or application programs executed by an on-board vehicle computer or any of the controller variations described herein. Software may include, in non-limiting examples, routines, programs, objects, components, and data structures that perform particular tasks or implement particular data types. The software may form an interface to allow a computer to react according to a source of input. The software may also cooperate with other code segments to initiate a variety of tasks in response to data received in conjunction with the source of the received data. The software may be stored on any of a variety of memory media, such as CD-ROM, magnetic disk, bubble memory, and semiconductor memory (e.g., various types of RAM or ROM).
(42) Moreover, aspects of the present disclosure may be practiced with a variety of computer-system and computer-network configurations, including multiprocessor systems, microprocessor-based or programmable-consumer electronics, minicomputers, mainframe computers, and the like. In addition, aspects of the present disclosure may be practiced in distributed-computing environments where tasks are performed by remote-processing devices that are linked through a communications network. In a distributed-computing environment, program modules may be located in both local and remote computer-storage media including memory storage devices. Aspects of the present disclosure may therefore, be implemented in connection with various hardware, software or a combination thereof, in a computer system or other processing system.
(43) Any of the methods described herein may include machine readable instructions for execution by: (a) a processor, (b) a controller, and/or (c) any other suitable processing device. Any algorithm, software, or method disclosed herein may be embodied in software stored on a tangible medium such as, for example, a flash memory, a CD-ROM, a floppy disk, a hard drive, a digital versatile disk (DVD), or other memory devices, but persons of ordinary skill in the art will readily appreciate that the entire algorithm and/or parts thereof could alternatively be executed by a device other than a controller and/or embodied in firmware or dedicated hardware in an available manner (e.g., it may be implemented by an application specific integrated circuit (ASIC), a programmable logic device (PLD), a field programmable logic device (FPLD), discrete logic, etc.). Further, although specific algorithms are described with reference to flowcharts depicted herein, persons of ordinary skill in the art will readily appreciate that many other methods of implementing the example machine-readable instructions may alternatively be used. For example, the order of execution of the blocks may be changed, and/or some of the blocks described may be changed, eliminated, or combined.
(44) Aspects of the present disclosure have been described in detail with reference to the illustrated embodiments; those skilled in the art will recognize, however, that many modifications may be made thereto without departing from the scope of the present disclosure. The present disclosure is not limited to the precise construction and compositions disclosed herein; any and all modifications, changes, and variations apparent from the foregoing descriptions are within the spirit and scope of the disclosure as defined in the appended claims. Moreover, the present concepts expressly include any and all combinations and subcombinations of the preceding elements and features.