Controlling motion of a vehicle

By calculating the future trajectory and optimizing the target torque to control vehicle motion, the problems of uncoordinated vehicle motion control and poor responsiveness in traditional methods are solved, thereby improving the vehicle's dynamic performance and driving performance.

CN115583248BActive Publication Date: 2026-04-21RIMAC TECH LLC
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
RIMAC TECH LLC
Filing Date
2022-07-04
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

Traditional vehicle motion control methods handle steering and prevent slippage or high yaw rates independently, lacking proactive prediction, resulting in uncoordinated vehicle motion control and poor responsiveness.

Method used

By obtaining vector information related to vehicle speed, the future trajectory is calculated and the target torque is optimized and applied to the wheels to control vehicle motion. The future trajectory of the vehicle is optimized by combining model predictive control and a secondary program solver.

Benefits of technology

It improves the vehicle's dynamic performance and driving performance, increases lateral acceleration and yaw rate, improves vehicle controllability and stability, and enhances steady-state and transient response.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115583248B_ABST
    Figure CN115583248B_ABST
Patent Text Reader

Abstract

This invention relates to controlling the motion of a vehicle. A method for controlling the motion of a vehicle includes the following steps: obtaining input information about a vector related to the speed of the vehicle; repeatedly calculating the future trajectory of the vehicle based on the input information and a test torque to be applied to at least one wheel of the vehicle, optimizing the future trajectory in view of the target vehicle motion to obtain a target test torque; and applying the obtained target test torque to at least one wheel to control the motion of the vehicle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to controlling the movement of a vehicle. Background Technology

[0002] Traditionally, steering the vehicle according to driver commands and controlling the vehicle to prevent it from veering off course due to slippage or high yaw rate (yaw rate) are handled separately. While this approach may offer advantages in some situations, or even be necessary in others, it is by no means essential. In fact, this modular approach of having the driver drive the vehicle as desired and keeping it on course is almost independent of each other, but certainly not considered two aspects of the same concept, making it impossible to achieve vehicle motion control in which the synergistic capabilities of combining various aspects of the vehicle's motion are utilized.

[0003] However, with the advent of fully electric vehicles, these concepts may be overturned and replaced by a more holistic approach in which such synergistic combination can be achieved.

[0004] Furthermore, in traditional methods, vehicle steering is typically based solely on feedback control, i.e., considering past data and using only the difference between measured and desired values ​​to control vehicle motion. However, this method has a significant drawback: it is merely a reactive approach and lacks any proactive aspect that would allow for the inclusion of predictions about the vehicle's possible future trajectories to influence motion control. Summary of the Invention

[0005] The above problems are addressed by the following topics. Further preferred embodiments are given by the topics described below.

[0006] According to an embodiment of the present invention, a method for controlling the motion of a vehicle is provided, the method comprising the steps of: obtaining input information about a vector related to the speed of the vehicle; calculating, in a repeatable manner, a future trajectory of the vehicle based on the input information and a test torque to be applied to at least one wheel of the vehicle, optimizing the future trajectory in view of the target vehicle motion to obtain a target test torque; and applying the obtained target test torque to the at least one wheel to control the motion of the vehicle.

[0007] According to another embodiment of the present invention, a vehicle is provided, the vehicle being configured to perform a method for controlling the motion of the vehicle, the method comprising the steps of: obtaining input information about a vector related to the speed of the vehicle; calculating, in a repeatable manner, a future trajectory of the vehicle based on the input information and a test torque to be applied to at least one wheel of the vehicle, optimizing the future trajectory in view of a target vehicle motion to obtain a target test torque; and applying the obtained target test torque to the at least one wheel to control the motion of the vehicle.

[0008] According to another embodiment of the present invention, an apparatus is provided, the apparatus being configured to perform a method for controlling the motion of a vehicle, the method comprising the steps of: obtaining input information about a vector relating to the speed of the vehicle; calculating, in a repeatable manner, a future trajectory of the vehicle based on the input information and a test torque to be applied to at least one wheel of the vehicle, optimizing the future trajectory in view of the target vehicle motion to obtain a target test torque; and applying the obtained target test torque to the at least one wheel to control the motion of the vehicle.

[0009] According to another embodiment of the invention, a device is provided including an interface to a vehicle, the vehicle providing input information about a vector related to the vehicle's speed via the interface, the device being configured to: calculate, in a repeatable manner, the future trajectory of the vehicle based on the input information and a test torque to be applied to at least one wheel of the vehicle, optimize the future trajectory in view of the target vehicle motion to obtain a target test torque; and output the obtained target test torque to the vehicle to be applied to the at least one wheel to control the motion of the vehicle.

[0010] The embodiments of the present invention improve the dynamic performance and driving performance of a vehicle. It increases the maximum achievable lateral acceleration and yaw rate, improving vehicle controllability and stability. It accelerates the vehicle's lateral response to steering input, improving both steady-state and transient response.

[0011] Furthermore, in electric vehicles, steering of each wheel and corresponding control of the movement of each wheel can be achieved independently without any further development, making electric vehicles a particularly good platform for using this invention. Attached Figure Description

[0012] Embodiments of the invention will now be described with reference to the accompanying drawings, which are provided to better understand the inventive concept but should not be considered as limiting the invention. In the drawings:

[0013] Figure 1 A flowchart illustrating an overall method implementation of the present invention is shown;

[0014] Figure 2 A schematic diagram of a vehicle configured to perform the overall motion control method of this embodiment is shown; and

[0015] Figure 3 A schematic diagram of an embodiment of the apparatus of the present invention is shown. Detailed Implementation

[0016] Figure 1 A flowchart illustrating an overall method embodiment of the present invention is shown. The method for controlling the motion of a vehicle according to the present invention includes the following steps: obtaining input information about a vector related to the speed of the vehicle (S101); repeatedly calculating the future trajectory of the vehicle based on the input information and a test torque to be applied to at least one wheel of the vehicle (S102), optimizing the future trajectory in view of the target vehicle motion to obtain a target test torque; and applying the obtained target test torque (S103) to the at least one wheel to control the motion of the vehicle.

[0017] In the context of this application, "movement" refers to all types of movement of a vehicle, including acceleration and deceleration of the vehicle, braking of the vehicle, and changing the direction of the vehicle, and therefore should not be construed as limiting the types of movement of the vehicle.

[0018] The first step of obtaining input information can be achieved in various ways. For example, the information can be sensed or measured by the vehicle. Alternatively, the information can be obtained from an external source, such as via GPS signals or similar signals. At least a portion of the information can also be provided by signals from another entity, such as a vehicle, for example, by utilizing vehicle-to-vehicle communication.

[0019] Furthermore, the input information regarding the vector related to the vehicle's speed can take various forms. For example, the vector may include speed and vehicle yaw rate. It can also be obtained independently, i.e., by a different means and / or a different source than the vehicle yaw rate. Information can be obtained directly, i.e., directly about speed and yaw rate, or indirectly, i.e., information from which speed and yaw rate can be derived. For example, instead of obtaining speed and yaw rate, position and yaw angle can be obtained, and the corresponding derivatives can be calculated to obtain speed and yaw rate separately. Moreover, this information is not limited and can include additional information related to the control of vehicle motion. Examples of such information could be yaw rate, yaw angle, lateral velocity, longitudinal velocity, wheel speed (also called angular velocity) of at least one of the vehicle's wheels, steering wheel angle, lateral acceleration, and longitudinal acceleration. Obviously, this list is not final and can include any quantity that can be used for vehicle motion control.

[0020] For example, a vector related to the vehicle's speed may include at least two of the following: the vehicle's lateral speed, the vehicle's longitudinal speed, the vehicle's yaw rate, and the ratio of the vehicle's lateral speed to its longitudinal speed, or any derivative or integral of the aforementioned quantities. In other words, as those skilled in the art will understand, instead of speed, acceleration may be used, and speed can be obtained by integration. Similarly, any quantity substantially the same as or containing substantially the same information as one of the aforementioned quantities may be used. For example, the square of the speed may be used alternatively.

[0021] In another example, the input information may also include the vehicle's motion target. Here, the motion target refers, for example, to input provided by the driver, which may be provided via the accelerator and brake pedals. Alternatively, in scenarios involving autonomous driving, the motion target may be input provided by the autonomous driving agent before the control provided by the present invention is executed. In other words, the motion target may refer to an intention regarding the vehicle's movement.

[0022] In another example based on the above, the input information may also include the corresponding angular velocities of all four wheels of the vehicle and the yaw rate of the vehicle, and optimizing the future trajectory may include controlling the yaw rate of the vehicle.

[0023] The second step of repeatedly calculating the future trajectory of the vehicle can be implemented using various algorithms, and is not limited to a specific algorithm or process. This algorithm can be based on the input information and a test torque to be applied to at least one wheel of the vehicle. The test torque can be a preliminary guess of the torque to be applied and can be based on several considerations. For example, it can be based on previously applied torque or even calculated based on a feedback loop.

[0024] Note that calculating the future trajectory can include past data; that is, it can be based on results from measurements and / or on previous results from methods applied at previous times. Therefore, it is evident that the method can be applied iteratively, and each iteration can be used for the next iteration.

[0025] Furthermore, the duration of the future trajectory is variable and can be selected based on various requirements. For example, a longer duration may result in longer computation times, making real-time analysis more challenging. Since all these decisions may also depend on each iteration of the step of repeatably calculating the future trajectory, it may be appropriate to change this parameter for each iteration of the trajectory calculation.

[0026] The optimization aspect of this step can take various forms. One possible approach is to compare the calculated future trajectory with the target trajectory (i.e., the target vehicle motion) and then determine whether the future trajectory meets the requirements, such as whether it is close enough to the target trajectory. If so, the optimization is complete, and the test torque is taken as the target test torque. If not, i.e., the calculated future trajectory does not correspond to the target trajectory with sufficient accuracy, the test torque is modified and the calculation is repeated. In particular, the modification of the test torque can be based on the difference between the calculated future trajectory and the target trajectory. This difference can be calculated in different ways; for example, the two trajectories can be written as vectors, and then the distance between these vectors can be calculated using an appropriate specification.

[0027] Alternatively, this evaluation can involve parameters other than the trajectory itself. This can be achieved using a cost function, where several parameters related to the vehicle's motion and its control can be considered. These other possible parameters could be errors in the motion target, such as yaw rate error, force request error (i.e., the deviation between the force applied according to the driver's command and the force applied according to the calculated future trajectory), one or more slack variables limiting the slip ratio, and parameters limiting the input. These different parameters can be weighted differently relative to each other, and these differences in weights can vary depending on the circumstances, such as different driving styles.

[0028] However, this is merely an example and should by no means be construed as limiting. Any process that allows determining whether the calculated future trajectory is sufficient to control the next step of the motion to obtain the target test torque, and that determines a new test torque if the calculated future trajectory is insufficient, is sufficient for this purpose.

[0029] In the third step, the obtained target test torque is applied to at least one wheel to control the movement of the vehicle.

[0030] Here, it should be noted that the concept of calculating the future trajectory may include, for example, a time series of test torques for each wheel, rather than a single value for each wheel. The first test torque in this time series corresponds to the torque to be applied to at least one wheel to control the motion of the vehicle. The remaining test torques, since they are referred to as the target test torques to be applied in the future, can be used as the test torques for the next iteration of the method.

[0031] In embodiments of the present invention, the second step of obtaining the target test torque may include the following sub-steps:

[0032] In the first sub-step, the future trajectory of the vehicle is calculated based on the input information and the test torque to be applied to at least one wheel.

[0033] In the second sub-step, the calculated future trajectory is evaluated based on the motion of the target vehicle.

[0034] In the third sub-step, if the evaluation indicates that the target vehicle motion is not optimal, the test torque is adjusted according to the evaluation, and another iteration begins in sub-step 1; if the evaluation indicates that the target vehicle motion is optimal, the test torque is set to the target test torque.

[0035] Figure 2 A schematic diagram of a vehicle 2 configured to perform the overall motion control method of this embodiment is shown. This method essentially corresponds to the method discussed above, i.e., the vehicle is configured to perform a method comprising the following steps: obtaining input information about a vector related to the vehicle's speed (S101); repeatedly calculating the vehicle's future trajectory based on the input information and a test torque to be applied to at least one wheel of the vehicle (S102), optimizing the future trajectory in view of the target vehicle motion to obtain a target test torque; and applying the obtained target test torque (S103) to at least one wheel to control the vehicle's motion.

[0036] Therefore, with combination Figure 1 The above considerations regarding the methods discussed also apply to vehicles constructed to perform this method.

[0037] Figure 3 A schematic diagram of an embodiment of the device of the present invention is shown. The device 3 may include a processor 301 and a memory 302. The processor may be a central processing unit (CPU) or a graphics processing unit (GPU). Using a GPU may be advantageous for some optimization algorithms. Additionally, it may optionally include an interface 303. These elements may be configured to exchange data with each other; that is, the processor 301 may receive data from both the memory 302 and the interface 303, and this data is then processed by the processor 301. Thus, the memory 302 may receive data and / or provide data to the processor 301, i.e., the data to be processed and the data to be processed. Furthermore, the memory may also receive data and / or provide data to the interface 303. Correspondingly, the interface 303 may provide data and / or receive data from the processor 301, which is either the data to be processed or the data already processed, and the interface 303 may provide data and / or receive data from the memory 302.

[0038] like Figure 3The device 3, schematically shown in the diagram, can be configured to perform a method for controlling the motion of a vehicle, the method comprising the steps of: obtaining input information about a vector related to the speed of the vehicle (S101); repeatedly calculating the future trajectory of the vehicle based on the input information and a test torque to be applied to at least one wheel of the vehicle (S102), optimizing the future trajectory in view of the target vehicle motion to obtain a target test torque; and applying the obtained target test torque (S103) to at least one wheel to control the motion of the vehicle.

[0039] In this case, device 3 can be considered as an integral part of vehicle 1.

[0040] Alternatively, Figure 3 The device 3, schematically shown, particularly when the device includes an interface 3, can be configured such that the vehicle provides input information (S101) about a vector related to the vehicle's speed to the device via the interface, and the device is configured to: repeatedly calculate the future trajectory of the vehicle based on the input information and a test torque to be applied to at least one wheel of the vehicle (S102), optimize the future trajectory in view of the target vehicle motion to obtain a target test torque; and output the obtained target test torque (S103) to the vehicle to apply it to at least one wheel to control the motion of the vehicle.

[0041] In this case, device 3 can be considered a modular part of vehicle 1, because device 3 receives input information from vehicle 1, and therefore does not receive input information on its own.

[0042] Another embodiment of the present invention will now be described in detail. This embodiment includes three components: yaw rate target calculation, model predictive control (MPC) problem formulation, and quadratic problem solver.

[0043] The yaw rate target calculation unit calculates the yaw rate target based on the current state of vehicle 1 (e.g., via a lookup table). Calculation using a lookup table can provide a faster calculation than online calculation.

[0044] The MPC problem formulation component creates a model predictive control problem suitable for the vehicle's current state and desired behavior. This problem can be formulated as a finite-horizon open-loop optimal control problem, which is then passed to a quadratic program solver for solving.

[0045] The secondary program solver calculates the torque command to be applied to the vehicle (i.e., at least one of the vehicle's wheels), i.e., the target test torque. The current control action is obtained by solving a finite-domain open-loop optimal control problem. The optimal control sequence is then returned. The first control action in this sequence is applied to the vehicle.

[0046] The yaw rate target can be obtained through a lookup table. This table is two-dimensional, taking the steering wheel angle and vehicle longitudinal speed as inputs and a reference yaw rate as the output, i.e.:

[0047]

[0048] The data in the reference table (lookup table) is generated offline, for example, by performing steady-state analysis on a passive vehicle in a simulation. For instance, a slowly increasing longitudinal speed is applied at different constant steering angles, and the measured yaw rate is recorded as a steady-state passive yaw rate value.

[0049] In another detailed implementation, the obtained steady-state passive yaw rate value is multiplied by a factor to produce a yaw rate target that differs from the vehicle's passive behavior. A smaller factor is used for higher speeds where vehicle instability is more dangerous.

[0050] Furthermore, in this embodiment, it may be necessary to know the current state of the vehicle in order to determine the optimal wheel torque. The current state of the vehicle can be a set of measurements or estimates that allow the system to specify initial conditions for its internal vehicle model.

[0051] The following values ​​may include vehicle status: currently estimated vehicle longitudinal speed, currently estimated vehicle lateral speed, currently measured vehicle yaw rate, and wheel rotation speed (one for each wheel).

[0052] In another implementation, the discrete nonlinear vehicle model for MPC is given by the following equation:

[0053]

[0054] The linear time-varying (LTV) MPC implemented in this embodiment uses a linear vehicle model approximated by the following equation:

[0055] ξ(k+1)=A k ξ(k)+B k u(k)+d k

[0056] Where ξ(k) is the vehicle model state vector, u(k) is the input vector at time step k, and t is the current time step. The prediction domain is represented by N, therefore,

[0057]

[0058] u = [δ, T] fl T fr T rl T rr ] T k = t, ..., t+N-1

[0059] Here, δ is the steering wheel angle, and T is the wheel torque. ·★ The notation · ∈ {f, r} represents the value of the front wheel or the value of the rear wheel, while the notation ★ ∈ {l, r} represents the value of the left wheel or the value of the right wheel. Although this assumes the vehicle has four wheels, i.e., front and rear wheels, left and right wheels, this is by no means limiting. In fact, this embodiment is not limited to this case, and it is used merely for ease of understanding.

[0060] For each time step in the prediction domain, the vehicle model used in this implementation is linearized once per algorithm iteration. This results in a set of similar linear models—once per time step—which can be viewed together as a linear time-varying model (LTV model). The optimization algorithm uses the LTV model to achieve the optimal torque value.

[0061] The model can be linearized around the most probable operating point at that time step. When the torque vector is initialized first, the most probable future operating point is the current operating point, and this value is used for all time steps. Once the optimal state trajectory is available (already computed in the previous algorithm iteration), it can be used to linearize the surrounding model.

[0062] The model can be linearized before optimization begins, and it doesn't need to be relinearized when the predicted optimal trajectory changes. This is acceptable because the change in the optimal trajectory should be small when comparing consecutive algorithm iterations.

[0063] Since the model used in this MPC must be linear, matrices Ak and Bk are obtained by continuously linearizing the nonlinear vehicle model along the predicted state trajectory. The state and input are predicted at each time step, and the predicted values ​​are then used for further predictions across the entire domain.

[0064]

[0065]

[0066] d k This indicates the deviation between the predicted steady-state response of the nonlinear model and the LTV model:

[0067]

[0068] A vehicle's LTV model can be used to calculate the change in state resulting from a change in input. However, this implementation may require comparing the actual value of the state with a reference value. If an LTV model is simulated, its output may not precisely match the output of a nonlinear model, therefore a set of correction "delta" values ​​are calculated.

[0069] In this implementation, after the system has been linearized, the increment value can be calculated once in each algorithm iteration. Then, for all optimization iterations, these increment values ​​remain constant.

[0070] The incremental values ​​are computed by simulating a fully nonlinear model over the prediction domain. Then, for each time step, the LTV model is initialized with nonlinear state values, the input values ​​for that time step are applied, and the state values ​​for the next time step are computed according to the LTV model. The difference between the nonlinear state value for the next time step and the LTV state value for the next time step is the incremental value for that time step.

[0071] Once calculated, this increment is used in the objective function of the optimal control problem. At each time step, the increment is used as a known disturbance to align or match the predicted state with the nonlinear simulation state. If the system input remains unchanged, the LTV model and the nonlinear model will be a perfect match.

[0072] The model used can be a dual-track bicycle model with nonlinear tires, weight transfer effects, and wheel dynamics. The coordinate system is chassis-fixed and does not track the vehicle's position.

[0073] Equal steering angles are assumed on the left and right front wheels, and the model does not consider static toe on any wheel.

[0074] Wheel slip is calculated in the same way during braking and acceleration using the following equation:

[0075]

[0076] This equation may not support operation at very low speeds, which may be reasonable, since this implementation should not be required to be effective at very low speeds.

[0077] This model can include simple load transfer behavior without dynamics. Lateral load transfer is assumed to be uniformly distributed between the front and rear axles and is calculated purely by lateral acceleration. Longitudinal load transfer is calculated purely by longitudinal acceleration.

[0078] Calculate load transfer using the following equation:

[0079]

[0080]

[0081]

[0082]

[0083] Because this model accepts wheel torque as input, it has a wheel dynamics model. This model assumes a fixed wheel radius and inertia and does not consider rolling resistance. The wheel dynamics of each individual wheel are described by the following equation:

[0084]

[0085] Aerodynamic drag, downforce, and torque may not be modeled.

[0086] The goal of each step is to find the optimal control sequence along the domain that minimizes the cost function. This cost function can, for example, take the following form:

[0087]

[0088] The first part of the cost function It is the yaw rate tracking squared error weighted by the scalar q.

[0089] Part Two It is the force request tracking squared error weighted by the scalar w.

[0090] Part Three It is the slack variable vector ε k Multiply by the identity matrix I and squared by the scalar p.

[0091] The last part is the cost of the input variables: The squared value of the input, weighted by the S matrix, is penalized, while Penalize the squared value of the input change weighted by the R matrix.

[0092] Slack variables can be used to penalize variables when they break their soft constraints. For example, we might want to limit the slip ratio:

[0093] slip≤slip_limit or slip-slip_limit≤0

[0094] In optimization problems, the above equations are considered hard constraints, meaning that if the inequalities cannot be satisfied, the problem is infeasible.

[0095] Because there may be indirect control over slip, the limit could potentially be broken, and we want to penalize it if the value exceeds the limit. To achieve this, we add slack variables to the soft-constraint inequalities:

[0096] slip-slip_limit≤ε

[0097] The optimization algorithm calculates the slack variable ε so that it satisfies the soft constraint inequalities above and keeps the cost function J(t) minimum. To keep J(t) minimum, It must be the smallest, and when ε k This is the case when it is as close to 0 as possible.

[0098] Different behaviors can be achieved by changing the weights in the cost function. For example, if q is increased relative to R, the vehicle will follow the yaw rate reference better, but the wheel torque may undergo more aggressive changes.

[0099] Regarding hard constraints, any combination of the following can be considered in another embodiment of the invention.

[0100] Upper input limit and lower input limit:

[0101] u low ≤u(k)≤u high

[0102] Upper input rate limit and lower input rate limit:

[0103] Δu low ≤u(k)-u(k-1)≤Δu high

[0104] The steering input in the MPC must be the same as the driver's steering reference:

[0105] u(1,k)=δ ref (k)

[0106] The first state in the optimization is the current measurement state ξ0:

[0107] ξ(1)=ξ0

[0108] The LTV vehicle model equation must be satisfied in all prediction steps:

[0109] ξ(k+1)=A k ξ(k)+B k u(k)+d k

[0110] If the driver's force request is negative (the driver is braking), then the front wheels will apply hard braking twice, compared to the rear wheels:

[0111] u(2,k)+u(3,k)=2*(u(4,k)+u(5,k))

[0112] The sum of the products of wheel torque and predicted wheel speed (total power) must be lower than the battery's discharge power limit during acceleration, and higher than the charging power limit during motor braking.

[0113] -chargePowerLimit≤u(2:5,k)*ξ(4:7,k)≤dischargePowerLimit

[0114] The slip ratio and slip angle are located between upper and lower limits to keep the vehicle in a stable region:

[0115] s low ≤s(k)≤s upp

[0116] α low ≤α(k)≤α upp

[0117] The total force on the wheels must be as close as possible to the driver's force request (force request tracking):

[0118]

[0119] Once the MPC problem is formalized as described elsewhere in this document, it can be passed to a quadratic program solver—a software component that solves a special class of optimization problems.

[0120] Typically, quadratic program solvers solve problems that are formalized into quadratic program optimization problems:

[0121]

[0122] subject to l≤Ax≤u

[0123] In the case of this disclosure:

[0124] Vector x represents the optimization variables. The solver will output the optimal values ​​for these variables.

[0125] x = [u0; u1; ...; u Nc ;∈0;∈1;...;∈ Np ]

[0126] u k =[T fl,k T fr,k T rl,k T rr,k ]

[0127] Where u kIt is the torque input to be applied to the system, and ∈ k It is the slack variable that governs the soft constraints.

[0128] Matrix P and vector q are calculated using the cost function formula as described elsewhere in this document. These parameters include yaw rate tracking terms, slack variables, and input variables. The soft constraints described elsewhere in this document are also implemented using these parameters.

[0129] Matrix A, along with vectors l and u, are calculated using hard constraint formulas described elsewhere in this paper. These parameters may include the vehicle model, output constraints (power and torque), initial conditions (current vehicle state), and the specific affordance for regenerative braking torque used for front-to-rear separation.

[0130] The differential torque limit, which determines the maximum differential torque that can be applied to the rear and front axles, can be in the form of an offline-generated lookup table (based on force request).

[0131] The steering angle of the prediction domain is predicted based on the last two values ​​of the steering wheel angle.

[0132] δ(k+1)=γ1δ(k)+γ2δ(k-1)

[0133] Further details of the model prediction controller used in another embodiment of the invention will now be discussed.

[0134] In each time sample, the controller takes the following inputs:

[0135] Current vehicle status and current acceleration (a) x a y )

[0136] ο Estimate longitudinal and lateral velocities (v) on the PCU using the Vx and Vy estimation functions. x v y )

[0137] Obtain yaw rate from IMU sensor and vehicle longitudinal acceleration and lateral acceleration (a x a y )

[0138] ο The current speed of the vehicle's four wheels (ω) fl ω fr ω rl ω rr Wheel speed sensor mapping function from PCU.

[0139] • The last two values ​​of the steering wheel angle

[0140] Power and torque limits

[0141] Differential torque limit

[0142] • Yaw rate reference based on the predicted steering angle across the entire prediction domain

[0143] Further details regarding the vehicle model simulation used in another embodiment of the invention will now be discussed.

[0144] In nonlinear and linear vehicle model simulations, the current vehicle state and acceleration are used as inputs, and updates to all states are obtained through simulations in both nonlinear and linear models. The updated state and acceleration from the nonlinear model are then used as the starting point for the next iteration of the nonlinear and linear vehicle model simulations. This process is repeated until the entire prediction domain is covered, i.e., until predictions of the vehicle state for both the linear and nonlinear versions of the model are achieved for the entire prediction domain. In addition to the vehicle state, the vehicle model also uses steering predictions over the entire prediction domain and the torques of the four wheels as inputs. After the first "start," the torques used to obtain vehicle state predictions in both vehicle models are equal to their initial values. In each subsequent iteration of the algorithm, the optimal torque from the previous iteration is used for this purpose.

[0145] Changes in speed and yaw rate are captured by the following equation:

[0146]

[0147]

[0148]

[0149] Where I z It is the moment of inertia about the yaw z-axis.

[0150] The changes in the rotational speed of all four wheels are given below:

[0151]

[0152] Acceleration is updated using the following equation:

[0153]

[0154]

[0155] Through the above simulation, from LTV model A k and B k The matrix and the increment matrix were obtained—the difference in vehicle states obtained from nonlinear and linear models across the entire prediction domain.

[0156] The increment value is used in the objective function of the optimal control problem and remains constant for all optimization iterations.

[0157] Further details regarding the formulation and optimization of the problem used in another embodiment of the invention will now be discussed.

[0158] The measurement or estimation of the current vehicle state is used to initialize the optimization problem. The model predictive controller starts its planned state trajectory from the current state and plans the control inputs that produce optimal future behavior. The goal of each step is to find the optimal control sequence along the domain that minimizes the cost function.

[0159] By changing the wheel torque input u k The vehicle state is obtained through the vehicle model, and the optimal torque is obtained as the torque that minimizes the cost function and satisfies all constraints.

Claims

1. A method for controlling the movement of a vehicle, the method comprising the following steps: Obtain input information about a vector related to the speed of the vehicle, wherein the input information includes the target vehicle motion, the target vehicle motion being an intention about the vehicle motion provided by the driver or by the autonomous driving agent; The future trajectory of the vehicle is calculated in a repeatable manner based on the input information and the test torque to be applied to at least one wheel of the vehicle, and the future trajectory is optimized in view of the target vehicle motion to obtain the target test torque; The obtained target test torque is applied to at least one wheel to control the motion of the vehicle, wherein the input information also includes the corresponding angular velocities of all four wheels of the vehicle and the yaw rate of the vehicle; and Optimizing the future trajectory includes controlling the vehicle's yaw rate; The test torque to be applied to at least one wheel of the vehicle is calculated using the following steps: Compare the calculated future trajectory with the target trajectory; and Determine whether the calculated future trajectory is close to the target trajectory. Wherein, when the calculated future trajectory is close to the target trajectory, the test torque corresponding to the calculated future trajectory is selected as the target test torque; and When the calculated future trajectory does not approach the target trajectory, the test torque is modified and the calculated future trajectory is compared with the target trajectory.

2. The method according to claim 1, wherein, The vector related to the speed of the vehicle includes at least two of the following: The vehicle's lateral velocity, the vehicle's longitudinal velocity, the vehicle's yaw rate, and the ratio of the vehicle's lateral velocity to its longitudinal velocity, or any derivative or integral of the above quantities.

3. The method according to claim 1 or 2, wherein, The target vehicle movement includes input provided by the driver on at least one of the accelerator pedal and brake pedal of the vehicle.

4. A vehicle configured to perform a method for controlling the movement of the vehicle, the method comprising the steps of: Obtain input information about a vector related to the speed of the vehicle, wherein the input information includes the target vehicle motion, the target vehicle motion being an intention about the vehicle motion provided by the driver or by the autonomous driving agent; Based on the input information and the test torque to be applied to at least one wheel of the vehicle, the future trajectory of the vehicle is calculated in a repeatable manner to optimize the future trajectory in view of the target vehicle motion, thereby obtaining the target test torque; and The obtained target test torque is applied to at least one wheel to control the movement of the vehicle. The input information also includes the corresponding angular velocities of all four wheels of the vehicle and the yaw rate of the vehicle; and Optimizing the future trajectory includes controlling the vehicle's yaw rate; The test torque to be applied to at least one wheel of the vehicle is calculated using the following steps: Compare the calculated future trajectory with the target trajectory; and Determine whether the calculated future trajectory is close to the target trajectory. Wherein, when the calculated future trajectory is close to the target trajectory, the test torque corresponding to the calculated future trajectory is selected as the target test torque; and When the calculated future trajectory does not approach the target trajectory, the test torque is modified and the calculated future trajectory is compared with the target trajectory.

5. An apparatus configured to perform a method for controlling the movement of a vehicle, the method comprising the steps of: Obtain input information about a vector related to the speed of the vehicle, wherein the input information includes the target vehicle motion, the target vehicle motion being an intention about the vehicle motion provided by the driver or by the autonomous driving agent; The future trajectory of the vehicle is calculated in a repeatable manner based on the input information and the test torque to be applied to at least one wheel of the vehicle, and the future trajectory is optimized in view of the target vehicle motion to obtain the target test torque; The obtained target test torque is applied to at least one wheel to control the movement of the vehicle; The input information also includes the corresponding angular velocities of all four wheels of the vehicle and the yaw rate of the vehicle; and Optimizing the future trajectory includes controlling the vehicle's yaw rate; The test torque to be applied to at least one wheel of the vehicle is calculated using the following steps: Compare the calculated future trajectory with the target trajectory; and Determine whether the calculated future trajectory is close to the target trajectory. Wherein, when the calculated future trajectory is close to the target trajectory, the test torque corresponding to the calculated future trajectory is selected as the target test torque; and When the calculated future trajectory does not approach the target trajectory, the test torque is modified and the calculated future trajectory is compared with the target trajectory.

6. A device including an interface, The vehicle provides input information about a vector related to its speed to the device via the interface, wherein, The input information includes the target vehicle's motion, which is the intention regarding the vehicle's motion provided by the driver or by the autonomous driving agent. The device is configured such that: The future trajectory of the vehicle is calculated in a repeatable manner based on the input information and the test torque to be applied to at least one wheel of the vehicle, and the future trajectory is optimized in view of the target vehicle motion to obtain the target test torque; The obtained target test torque is output to the vehicle to be applied to at least one wheel to control the movement of the vehicle. The input information also includes the corresponding angular velocities of all four wheels of the vehicle and the yaw rate of the vehicle; and Optimizing the future trajectory includes controlling the vehicle's yaw rate; The test torque to be applied to at least one wheel of the vehicle is calculated using the following steps: Compare the calculated future trajectory with the target trajectory; and Determine whether the calculated future trajectory is close to the target trajectory. Wherein, when the calculated future trajectory is close to the target trajectory, the test torque corresponding to the calculated future trajectory is selected as the target test torque; and When the calculated future trajectory does not approach the target trajectory, the test torque is modified and the calculated future trajectory is compared with the target trajectory.

7. The apparatus of claim 6, further comprising: A yaw rate target calculation unit, the yaw rate target calculation unit being adapted to calculate a yaw rate target based on the current state of the vehicle; as well as A model predictive control problem formulation component is provided, which is adapted to create a model predictive control problem suitable for the current state and desired behavior of the vehicle, wherein the model predictive control problem is formulated as a finite-domain open-loop optimal control problem.

8. The apparatus according to claim 7, further comprising: A secondary program solver component, the secondary program solver component being adapted to calculate a torque command to be applied to at least one of the wheels of the vehicle.

Citation Information

Patent Citations

  • Method to control a vehicle path during autonomous braking

    CN104908727A

  • Motor vehicle and method for the lateral guidance of a motor vehicle

    DE102013006685A1