Model Predictive Control of Multiple Components of a Motor Vehicle
20220402508 · 2022-12-22
Inventors
- Timon Busse (München, DE)
- Matthias Friedl (Friedrichshafen, DE)
- Timo Wehlen (Friedrichshafen, DE)
- Valerie Engel (Markdorf, DE)
- Christian Baumann (Friedrichshafen, DE)
Cpc classification
B60W10/08
PERFORMING OPERATIONS; TRANSPORTING
B60W2050/0031
PERFORMING OPERATIONS; TRANSPORTING
B60W2050/0022
PERFORMING OPERATIONS; TRANSPORTING
B60W10/18
PERFORMING OPERATIONS; TRANSPORTING
B60W20/12
PERFORMING OPERATIONS; TRANSPORTING
B60W50/0097
PERFORMING OPERATIONS; TRANSPORTING
International classification
B60W50/00
PERFORMING OPERATIONS; TRANSPORTING
B60W10/08
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A processor unit (3) is configured for executing an MPC algorithm (13) for model predictive control of a first component (18) of a motor vehicle (1) and of a second component (19) of the motor vehicle (1). The MPC algorithm (13) includes a cost function (15) to be minimized and a dynamic model (14) of the motor vehicle (1). The dynamic model (14) includes a loss model (27) of the motor vehicle (1). The loss model (27) describes an overall loss of the motor vehicle (1). The cost function (15) includes a first term, which represents the overall loss of the motor vehicle (1). The overall loss depends on a combination of operating values, which includes a first value of a first operating parameter and a second value of a second operating parameter. The processor unit (3) is also configured for determining, by executing the MPC algorithm (13) as a function of the loss model (14), that combination of operating values, by which the first term of the cost function (15) is minimized.
Claims
1-10: (canceled)
11. A processor unit (3) for model predictive control of multiple components (18, 19) of a motor vehicle (1), wherein: the processor unit (3) is configured for executing an MPC algorithm (13) for model predictive control of a first component (18) of a motor vehicle (1) and of a second component (19) of the motor vehicle (1); the first component (18) is operable with different values (h1, h2, h3) of a first operating parameter (20), and the second component (19) is operable with different values (y1, y2, y3) of a second operating parameter (24); the MPC algorithm (13) comprises a cost function (15) to be minimized and a dynamic model (14) of the motor vehicle (1); the dynamic model (14) comprises a loss model (27) of the motor vehicle (1); the loss model (27) describes an overall loss of the motor vehicle (1); the cost function (15) comprises a first term representing the overall loss of the motor vehicle (1); the overall loss depends on a combination of operating values, which includes a first value (h1; h2; h3) of the first operating parameter (20) and a second value (y1; y2; y3) of the second operating parameter (24); the processor unit (3) is configured for determining, by executing the MPC algorithm (13) as a function of the loss model (14), a combination of operating values that minimizes the first term of the cost function (15); the first term comprises an electrical energy weighted with a first weighting factor and predicted according to the dynamic model (14), which is provided within a prediction horizon by a battery (9) of a drive train (7) of the motor vehicle (1) for driving an electric machine (8) of the drive train (7); the cost function (15) comprises, as a second term, a driving time weighted with a second weighting factor and predicted according to the dynamic model (14), which the motor vehicle (1) requires in order to cover an entire distance predicted within the prediction horizon; and the processor unit (3) is configured for determining an input variable for the electric machine (8) by executing the MPC algorithm (13) as a function of the first term and as a function of the second term such that the cost function is minimized.
12. The processor unit (3) of claim 11, wherein the processor unit (3), by executing a conversion software module, is configured for: controlling a first actuator (22) of the first component (18) such that the first actuator (22) is operated with a first actuator value (x1; x2; x3), as the result of which the first component (18) is operated with the first value (h1; h2; h3) of the first operating parameter (20) of that combination of operating values, by which the first term of the cost function (15) is minimized; and controlling a second actuator (25) of the second component (19) such that the second actuator (25) is operated with a second actuator value (z1; z2; z3), as the result of which the second component (19) is operated with the second value (y1; y2; y3) of the second operating parameter (24) of that combination of operating values, by which the first term of the cost function (15) is minimized.
13. The processor unit (3) of claim 11, wherein the first component is a system (18) for level control of the motor vehicle (1), and the second component is a braking system (19) of the motor vehicle (1).
14. The processor unit (3) of claim 11, wherein: the cost function (15) comprises an energy consumption final value weighted with the first weighting factor, which the predicted electrical energy assumes at the end of the prediction horizon; and the cost function (15) includes a driving time final value weighted with the second weighting factor, which the predicted driving time assumes at the end of the prediction horizon.
15. The processor unit (3) of claim 11, wherein: the cost function (15) comprises a third term having a third weighting factor; the third term comprises a value, predicted according to the dynamic model (4), of a torque that the electric machine (8) provides for driving the motor vehicle (1); and the processor unit (3) is configured for determining the input variable for the electric machine (8) by executing the MPC algorithm (13) as a function of the first term, as a function of the second term, and as a function of the third term such that the cost function (15) is minimized.
16. The processor unit (3) of claim 15, wherein: the third term comprises a first value, weighted with the third weighting factor, of a torque predicted according to the dynamic model (14), which the electric machine (8) provides for driving the motor vehicle (1) to a first waypoint within the prediction horizon; the third term comprises a zeroth value, weighted with the third weighting factor, of a torque that the electric machine (8) provides for driving the motor vehicle (1) to a zeroth waypoint, which is situated directly ahead of the first waypoint; and in the cost function (15), the zeroth value of the torque is subtracted from the first value of the torque.
17. A motor vehicle (3), comprising: the processor unit (3) of claim 11; a driver assistance system (16); the first component (18); and the second component (19), wherein the driver assistance system (16) is configured for accessing a combination of operating values minimizing the first term of the cost function (15), which has been determined by the processor unit (3) and comprises a first value (h1; h2; h3) of the first operating parameter (20) and a second value (y1; y2; y3) of the second operating parameter (24); controlling the first component (18) based on the first value (h1; h2; h3) of the first operating parameter (20); and controlling the second component (19) based on the second value (y1; y2; y3) of the second operating parameter (24).
18. A method for the model predictive control of multiple components (18, 19) of a motor vehicle (1), a first component (18) operable with different values (h1, h2, h3) of a first operating parameter (20), a second component (19) operable with different values (y1, y2, y3) of a second operating parameter (24), the method comprising: executing an MPC algorithm (13) for model predictive control of the first component (18) and of the second component (19), wherein the MPC algorithm (13) comprises a cost function (15) to be minimized and a dynamic model (14) of the motor vehicle (1), the dynamic model (14) comprises a loss model (27) of the motor vehicle (1), the loss model (14) describes an overall loss of the motor vehicle (1), the cost function (15) comprises a first term representing the overall loss of the motor vehicle (1), and the overall loss depends on a combination of operating values, which includes a first value (h1; h2; h3) of the first operating parameter (20) and a second value (y1; y2; y3) of the second operating parameter (24); determining, by executing the MPC algorithm (13) as a function of the loss model (27), a combination of operating values that minimizes the first term of the cost function (15), wherein the first term comprises an electrical energy weighted with a first weighting factor and predicted according to the dynamic model (14), which is provided within a prediction horizon by a battery (9) of a drive train (7) of the motor vehicle (1) for driving an electric machine (8) of the drive train (7), wherein the cost function (15) comprises, as a second term, a driving time weighted with a second weighting factor and predicted according to the dynamic model (14), which the motor vehicle (1) requires in order to cover an entire distance predicted within the prediction horizon, and wherein an input variable for the electric machine (8) is determined by executing the MPC algorithm (13) as a function of the first term and as a function of the second term such that the cost function is minimized.
19. A computer program product (11) for model predictive control of multiple components (18, 19) of a motor vehicle (1), a first component (18) operable with different values (h1, h2, h3) of a first operating parameter (20), a second component (19) operable with different values (y1, y2, y3) of a second operating parameter (24), the computer program product (11), when executed on a processor unit (3), instructing the processor unit (3) to: execute an MPC algorithm (13) for model predictive control of the first component (18) and of the second component (19), the MPC algorithm (13) comprising a cost function (15) to be minimized and a dynamic model (14) of the motor vehicle (1), the dynamic model (14) comprising a loss model (27) of the motor vehicle (1), the loss model (14) describing an overall loss of the motor vehicle (1), the cost function (15) comprising a first term representing the overall loss of the motor vehicle (1), and the overall loss depending on a combination of operating values, which includes a first value (h1; h2; h3) of the first operating parameter (20) and a second value (y1; y2; y3) of the second operating parameter (24); and determine, by executing the MPC algorithm (13) as a function of the loss model (27), a combination of operating values that minimizes the first term of the cost function (15), wherein the first term comprises an electrical energy weighted with a first weighting factor and predicted according to the dynamic model (14), which is provided within a prediction horizon by a battery (9) of a drive train (7) of the motor vehicle (1) for driving an electric machine (8) of the drive train (7), wherein the cost function (15) comprises, as a second term, a driving time weighted with a second weighting factor and predicted according to the dynamic model (14), which the motor vehicle (1) requires in order to cover an entire distance predicted within the prediction horizon, and wherein the computer program product (11), when run on the processor unit (3), instructs the processor unit (3) to determine an input variable for the electric machine (8) by executing the MPC algorithm (13) as a function of the first term and as a function of the second term such that the cost function is minimized.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0040] Exemplary embodiments of the invention are explained in greater detail in the following with reference to the diagrammatic drawings, wherein identical or similar elements are labeled with the same reference numbers, wherein
[0041]
[0042]
[0043]
[0044]
DETAILED DESCRIPTION
[0045] Reference will now be made to embodiments of the invention, one or more examples of which are shown in the drawings. Each embodiment is provided by way of explanation of the invention, and not as a limitation of the invention. For example, features illustrated or described as part of one embodiment can be combined with another embodiment to yield still another embodiment. It is intended that the present invention include these and other modifications and variations to the embodiments described herein.
[0046]
[0047] The motor vehicle 1 also includes multiple components that are relevant for the efficiency of the operation of the motor vehicle 1 (“efficiency-relevant components”), in particular when the motor vehicle 1 is operated in an autonomous traveling mode. These components are not arranged exclusively in the drive train 7 of the motor vehicle 1. In
[0048]
[0049] The system 18 for the level control of the motor vehicle 1 can be construed as an actuator of the motor vehicle 1. In addition, the system 18 for the level control of the motor vehicle 1 itself can include at least one actuator 22 (for example, a hydraulic cylinder or a pneumatic cylinder or a hydro-pneumatic shock absorber), which the system 18 actuates for the level control of the motor vehicle 1. The first actuator 22 can be operated with different actuator values 23, and so the different values h.sub.1, h.sub.2, and h.sub.3 result for the system 18 for the level control of the motor vehicle 1. For example, a first actuator value x.sub.1 (for example, a first pressure value for a hydraulic cylinder) yields the first height h.sub.1 of the chassis 21, a second actuator value x.sub.2 yields the second height h.sub.2 of the chassis 21, and a third actuator value x.sub.3 yields the third height h.sub.3 of the chassis 21.
[0050]
[0051] The braking system 19 can be construed as an actuator of the motor vehicle 1. In addition, the braking system 19 itself can include an actuator 25 (for example, a hydraulic cylinder), which actuates the braking system 19. The second actuator 25 can be operated with different actuator values 26, and so the different values y.sub.1, y.sub.2, and y.sub.3 result for the braking system 19. For example, a first actuator value z.sub.1 yields the first braking force y.sub.1, a second actuator value z.sub.2 yields the second braking force y.sub.2, and a third actuator value z.sub.3 yields the third braking force y.sub.3.
[0052] A computer program product 11 can be stored on the memory unit 4. The computer program product 11 can be run on the processor unit 3, for the purpose of which the processor unit 3 and the memory unit 4 are connected to each other by the communication interface 5. When the computer program product 11 is run on the processor unit 3, it instructs the processor unit 3 to perform the functions described in conjunction with the drawing and/or to carry out method steps.
[0053] The computer program product 11 includes an MPC algorithm 13. The MPC algorithm 13 includes a dynamic model of the motor vehicle, namely a longitudinal dynamic model 14 of the drive train 7 of the motor vehicle 1 in the exemplary embodiment shown. In addition, the MPC algorithm 13 includes a cost function 15 to be minimized, wherein a first term c.sub.efficiency of the cost function 15 represents the overall loss of the motor vehicle 1. Therefore, the cost function 15 to be minimized can be expressed mathematically as follows:
min(c.sub.efficiency+c.sub.time+c.sub.comfort)
Wherein:
[0054] c.sub.efficiency represents the parameterizable costs with respect to efficiency,
c.sub.time represents the parameterizable costs with respect to the travel time, and
c.sub.comfort represents the parameterizable costs with respect to comfort.
[0055] The longitudinal dynamic model 14 includes a loss model 27 of the motor vehicle 1. The loss model 27 describes the operating behavior of the efficiency-relevant components 18, 19 with respect to their efficiency and with respect to their loss. This yields the overall loss of the motor vehicle 1. The processor unit 3 executes the MPC algorithm 13 and, in so doing, predicts a behavior of the motor vehicle 1 based on the longitudinal dynamic model 14, wherein the cost function 15 is minimized.
[0056] The overall loss of the motor vehicle 1 depends on a combination of operating values. The combination of operating values includes a first value of the first operating parameter and a second value of the second operating parameter. In the simplified exemplary embodiment shown, there are six possible combinations of operating values. A first combination of operating values includes the first height h.sub.1 of the chassis 21 and the first braking force y.sub.1 of the braking system 19. The first combination of operating values yields a first overall loss of the motor vehicle 1. A second combination of operating values includes the first height h.sub.1 of the chassis 21 and the second braking force y.sub.2 of the braking system 19. The second combination of operating values yields a second overall loss of the motor vehicle 1. A third combination of operating values includes the first height h.sub.1 of the chassis 21 and the third braking force y.sub.3 of the braking system 19. The third combination of operating values yields a third overall loss of the motor vehicle 1. A fourth combination of the operating values includes the second height h.sub.2 of the chassis 21 and the first braking force y.sub.1 of the braking system 19. The fourth combination of operating values yields a fourth overall loss of the motor vehicle 1. A fifth combination of operating values includes the second height h.sub.2 of the chassis 21 and the third braking force y.sub.3 of the braking system 19. The fifth combination of operating values yields a fifth overall loss of the motor vehicle 1. A sixth combination of operating values includes the third height h.sub.3 of the chassis 21 and the third braking force y.sub.3 of the braking system 19. The sixth combination of operating values yields a sixth overall loss of the motor vehicle 1.
[0057] The processor unit 3 can determine the aforementioned six combinations of operating values by executing the MPC algorithm 13 as a function of the loss model 14. The processor unit 3 can compare the overall losses resulting from the six different combinations of operating values with one another. The processor unit 3 can establish, for example, that the third combination of operating values (h.sub.1; y.sub.3) results in the lowest overall loss of the motor vehicle 1. The processor unit 3 can select the third combination of operating values and output the appropriate values, for example, at a target generator, which can be integrated as a software module, the MPC algorithm. Alternatively, the target generator can also be included, for example, as a software module in a driver assistance system 16. Based on the determined combination of operating values (h.sub.1; y.sub.3), the first component 18 can be regulated to the first value h.sub.1 of the first operating parameter 20 and the second component 19 can be regulated to the third value y.sub.3 of the second operating parameter 24, in particular by the target generator. In addition, the processor unit 3 can also regulate the first actuator 22 to the first actuator value x.sub.1, and so the first value h.sub.1 of the first operating parameter 20 sets in for the first component 18. In a similar way, the processor unit 3 can regulate the second actuator 25 to the third actuator value z.sub.3, and so the third value y.sub.3 value of the second operating parameter 24 sets in for the second component 19.
[0058] In addition, an optimal rotational speed and an optimal torque of the electric machine 8 for calculated points in the prediction horizon can result as the output of the optimization by the MPC algorithm 13. For this purpose, the processor unit 3 can determine an input variable for the electric machine 8, and so the optimal rotational speed and the optimal torque set in. The processor unit 3 can control, by way of an open-loop system, the electric machine 8 based on the determined input variable. In addition, this can also be carried out by the driver assistance system 16, however.
[0059] The detection unit 6 can measure current state variables of the motor vehicle 1, record appropriate data, and supply these to the MPC algorithm 13. In addition, route data from an electronic map can be updated, in particular cyclically, for a prediction horizon (for example, four hundred meters (400 m)) ahead of the motor vehicle 1. The route data can include, for example, uphill grade information, curve information, and information regarding speed limits. Moreover, a curve curvature can be converted, via a maximum permissible lateral acceleration, into a speed limit for the motor vehicle 1. In addition, a position finding of the motor vehicle can be carried out by the detection unit 6, in particular via a signal generated by a GNSS sensor 12 for the precise localization on the electronic map. Moreover, the detection unit for detecting the external surroundings of the motor vehicle 1 can include, for example, a radar sensor, a camera system, and/or a LIDAR sensor. The processor unit 3 can access information of the aforementioned elements, for example, via the communication interface 5. This information can be incorporated into the longitudinal model 14 of the motor vehicle 1, in particular as restrictions or constraints.
[0060] The longitudinal dynamic model 14 of the motor vehicle 1 can be expressed mathematically as follows:
[0068] By converting time dependence into distance dependence
and coordinate transformation in order to eliminate the quadratic speed term in the aerodynamic drag with
the result is
[0069] In order to ensure that the problem is quickly and easily solvable by the MPC algorithm 13, the dynamic equation of the longitudinal dynamic model 14 can be linearized, in that the speed is expressed, via coordinate transformation, by kinetic energy de.sub.kin. As a result, the quadratic term for calculating the aerodynamic drag F.sub.d is replaced by a linear term and, simultaneously, the longitudinal dynamic model 14 of the motor vehicle 1 is no longer described as a function of time, as usual, but rather as a function of distance. This fits well with the optimization problem, since the predictive information of the electric horizon is based on distance.
[0070] In addition to the kinetic energy, there are two further state variables, which, within the scope of a simple optimization problem, can also be described in a linear and distance-dependent manner. On the one hand, the electrical energy consumption of the drive train 7 is usually described in the form of a characteristic map as a function of torque and prime mover speed. In the exemplary embodiment shown, the motor vehicle 1 has a fixed ratio between the electric machine 8 and the road, on which the motor vehicle 1 moves. As a result, the rotational speed of the electric machine 8 can be directly converted into a speed of the motor vehicle 1 or even into a kinetic energy of the motor vehicle 1. In addition, the electrical power of the electric machine 8 can be converted into energy consumption per meter via division by the appropriate speed. As a result, the characteristic map of the electric machine 8 obtains the form shown in
[0071] In detail, the cost function 15 to be minimized can be expressed mathematically as follows:
[0086] The cost function 15 has exclusively linear and quadratic terms. As a result, the overall problem has the form of a quadratic optimization with linear constraints and a convex problem results, which can be solved well and quickly.
[0087] The cost function 15 includes, in addition to the above-described parameterizable efficiency costs of the components 19, 20, as one further term, an electrical energy E.sub.Bat weighted with a first weighting factor w.sub.Bat and predicted according to the longitudinal dynamic model, which is provided within a prediction horizon by the battery 9 of the drive train 7 for driving the electric machine 8. The battery 9 and the electric machine 8 can be construed as efficiency-relevant components of the motor vehicle 1, similarly to the above-described system 18 for level control and the above-described braking system 19. Correspondingly, the electrical energy E.sub.Bat weighted with the first weighting factor w.sub.Bat and predicted according to the longitudinal dynamic model can also be incorporated into the term c.sub.efficiency.
[0088] The cost function 15 includes, as one further term, a driving time T weighted with a second weighting factor W.sub.Time and predicted according to the longitudinal dynamic model 14, which the motor vehicle 1 needs in order to cover the predicted distance. As a result, depending on the selection of the weighting factors, a low speed cannot always be evaluated as optimal and, thus, the problem no longer exists that the resultant speed is always at the lower edge of the permitted speed.
[0089] The energy consumption and the driving time can both be evaluated and weighted at the end of the horizon. These terms are therefore active only for the last point of the horizon.
[0090] Excessively high torque gradients within the horizon are disadvantageous. Therefore, torque gradients are already penalized in the cost function 15, namely by the term
The quadratic deviation of the drive force per meter is weighted with a weighting factor W.sub.Tem and minimized in the cost function. Alternatively to the drive force F.sub.A per meter, the torque M.sub.EM provided by the electric machine 8 can also be utilized and weighted with the weighting factor W.sub.Tem, and so the alternative term
results. Due to the constant ratio of the transmission 10, the drive force and the torque are directly proportional to one another.
[0091] In order to ensure comfortable driving, one further term is introduced in the cost function 15 for penalizing torque surges, namely w.sub.TemStart.Math.(F.sub.A(s.sub.1)−F.sub.A(s.sub.0)).sup.2. Alternatively to the drive force F.sub.A, the torque M.sub.EM provided by the electric machine 8 can also be utilized here, and so the alternative term w.sub.TemStart.Math.(M.sub.EM(s.sub.1)−M.sub.EM(s.sub.0)).sup.2 results. For the first point in the prediction horizon, the deviation from the most recently set torque can be evaluated as negative and weighted with a weighting factor w.sub.TemStart in order to ensure that there is a seamless and smooth transition during the change-over between an old trajectory and a new trajectory.
[0092] Speed limits are hard limits for the optimization that are not permitted to be exceeded. A slight exceedance of the speed limits is always permissible in reality and tends to be the normal case primarily during transitions from one speed zone into a second zone. In dynamic surroundings, where speed limits shift from one computing cycle to the next computing cycle, it can happen, in the case of very hard limits, that a valid solution for a speed profile can no longer be found. In order to increase the stability of the computational algorithm, a soft constraint is introduced into the cost function 15. A slack variable Var.sub.Slack weighted with a weighting factor W.sub.Slack becomes active in a predefined narrow range before the hard speed limit is reached. Solutions that are situated very close to this speed limit are evaluated as poorer, i.e., solutions, the speed trajectory of which maintains a certain distance to the hard limit.
[0093] Modifications and variations can be made to the embodiments illustrated or described herein without departing from the scope and spirit of the invention as set forth in the appended claims. In the claims, reference characters corresponding to elements recited in the detailed description and the drawings may be recited. Such reference characters are enclosed within parentheses and are provided as an aid for reference to example embodiments described in the detailed description and the drawings. Such reference characters are provided for convenience only and have no effect on the scope of the claims. In particular, such reference characters are not intended to limit the claims to the particular example embodiments described in the detailed description and the drawings.
REFERENCE CHARACTERS
[0094] h.sub.1 first value of first operating parameter [0095] h.sub.2 second value of first operating parameter [0096] h.sub.3 third value of first operating parameter [0097] x.sub.1 first actuator value of the first actuator [0098] x.sub.2 second actuator value of the first actuator [0099] x.sub.3 third actuator value of the first actuator [0100] y.sub.1 first value of second operating parameter [0101] y.sub.2 second value of second operating parameter [0102] y.sub.3 third value of second operating parameter [0103] z.sub.1 first actuator value of the second actuator [0104] z.sub.2 second actuator value of the second actuator [0105] z.sub.3 third actuator value of the second actuator [0106] 1 vehicle [0107] 2 system [0108] 3 processor unit [0109] 4 memory unit [0110] 5 communication interface [0111] 6 detection unit [0112] 7 drive train [0113] 8 electric machine [0114] 9 battery [0115] 10 transmission [0116] 11 computer program product [0117] 12 GNSS sensor [0118] 13 MPC algorithm [0119] 14 longitudinal dynamic model [0120] 15 cost function [0121] 16 driver assistance system [0122] 17 internal combustion engine [0123] 18 system for the level control [0124] 19 braking system [0125] 20 first operating parameter [0126] 21 chassis [0127] 22 first actuator [0128] 23 actuator values of the first actuator [0129] 24 second operating parameter [0130] 25 second actuator [0131] 26 actuator values of the second actuator [0132] 27 loss model