U.S. patent application number 15/044851 was filed with the patent office on 2017-08-17 for preview lateral control for automated driving.
The applicant listed for this patent is GM GLOBAL TECHNOLOGY OPERATIONS LLC. Invention is credited to SHIH-KEN CHEN, BAKHTIAR B. LITKOUHI, NIKOLAI K. MOSHCHUK.
Application Number | 20170233001 15/044851 |
Document ID | / |
Family ID | 59410462 |
Filed Date | 2017-08-17 |
United States Patent
Application |
20170233001 |
Kind Code |
A1 |
MOSHCHUK; NIKOLAI K. ; et
al. |
August 17, 2017 |
PREVIEW LATERAL CONTROL FOR AUTOMATED DRIVING
Abstract
A method for providing vehicle lateral steering control. The
method includes providing a mathematical model of vehicle dynamics
that includes a state variable, a steering control variable and a
future road disturbance factor that defines the upcoming road
curvature, banks and slopes of the roadway. The method determines
an optimal steering control signal that includes a feedback portion
and a feed-forward portion, where the feed-forward portion includes
the road disturbance factor. The method determines a state variable
and a control variable for the current roadway curvature, bank and
slope for stationary motion of the vehicle for constant speed, yaw
rate and lateral velocity. The method then introduces a new state
variable and control variable for dynamic vehicle motion for
variable speed, yaw rate and lateral velocity that is a difference
between the state and control variables for predicted future times
and the steady state variables.
Inventors: |
MOSHCHUK; NIKOLAI K.;
(GROSSE POINTE, MI) ; CHEN; SHIH-KEN; (TROY,
MI) ; LITKOUHI; BAKHTIAR B.; (WASHINGTON,
MI) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
GM GLOBAL TECHNOLOGY OPERATIONS LLC |
DETROIT |
MI |
US |
|
|
Family ID: |
59410462 |
Appl. No.: |
15/044851 |
Filed: |
February 16, 2016 |
Current U.S.
Class: |
701/42 |
Current CPC
Class: |
B62D 1/28 20130101; G05D
1/021 20130101; B62D 15/025 20130101; B62D 6/00 20130101; B62D 6/04
20130101; G05D 1/0088 20130101 |
International
Class: |
B62D 6/00 20060101
B62D006/00; G05D 1/00 20060101 G05D001/00; G05D 1/02 20060101
G05D001/02 |
Claims
1. A method for providing lateral steering control for an
autonomously driven or semi-autonomously driven vehicle traveling
along a roadway, said method comprising: providing a mathematical
model of vehicle dynamics that includes a state variable, a
steering control variable and a future roadway disturbance factor
that defines curvature, bank and/or slope of the roadway, wherein
providing a mathematical model includes providing a four-degree of
freedom mathematical model or a six-degree of freedom mathematical
model where the model uses a one-track bicycle model for the
four-degree of freedom mathematical model and uses a combination of
a one-track bicycle model and a one-degree of freedom steering
model for the six-degree of freedom mathematical model; determining
a steering control goal using the steering control variable that
reduces a difference between a current vehicle path and a desired
vehicle path; determining an optimal steering control signal using
the mathematical model that provides the steering control goal and
that includes a feedback portion and a feed-forward portion, where
the feed-forward portion includes the road disturbance factor; and
providing the control signal to a steering controller.
2. (canceled)
3. (canceled)
4. The method according to claim 1 wherein providing a mathematical
model includes using the one-track bicycle model to provide model
dimensions of lateral offset .DELTA.y of a vehicle center of
gravity from the desired vehicle path, a vehicle heading angle
error .DELTA..psi., vehicle lateral velocity .DELTA.y and vehicle
yaw rate r, and the one-degree of freedom steering column model to
provide steering wheel angle .phi. and steering wheel angle
rotation rate {dot over (.phi.)}.
5. The method according to claim 4 wherein a derivative of the
state variable is defined as: {dot over (X)}=AX+BU+h where X is the
state variable, U is the steering control variable, h is the road
disturbance factor, and A and B are matrices.
6. The method according to claim 5 wherein providing a mathematical
model includes defining the state variable X by lane position
dynamics and the bicycle model for an angle interface steering
control as: X=[.DELTA.y,.DELTA..PSI.,V.sub.y,r].sup.T where the
state variable X is a road wheel angle, and defining the state
variable X by the lane position dynamics, the bicycle model and the
steering model for a torque interface steering control as:
X=[.DELTA.y,.DELTA..PSI.,V.sub.y,r,{dot over (.phi.)};.phi.].sup.T
where the state variable X a combined torque command and a road
wheel angle.
7. The method according to claim 6 wherein the road disturbance
factor h is defined as: h = [ 0 - .kappa. V x g cos .beta.sin y 0 ]
##EQU00012## for the angle interface steering control, or by: h = [
0 - .kappa. V x g cos .beta.sin y 0 0 0 ] ##EQU00013## for the
torque interface steering control, where .kappa. is roadway
curvature, .gamma. is roadway bank and .beta. is roadway slope.
8. The method according to claim 1 wherein determining a steering
control goal includes defining a relationship between a steering
command and a cost function.
9. The method according to claim 8 wherein the cost function is a
quadratic function.
10. The method according to claim 9 wherein the quadratic function
is defined by the equation: J = .intg. 0 .DELTA. T { [ y .PHI. ]
err Q ( t ) [ y .PHI. ] err + U R ( t ) u T } dt , ##EQU00014##
where J is the cost function, y.sub.err is a lateral offset error
(y.sub.desired-y.sub.predicted,), .phi..sub.err is a heading angle
error (.phi..sub.desired-.phi..sub.predicted,), and Q(t) is a
turning weighting matrix for predicted errors given as: Q = ( Q
lateral 0 0 Q heading ) , ##EQU00015## where Q.sub.lateral is the
weight associated with lateral error, Q.sub.heading is a weight
associated with heading error, and R(t) is a weighting matrix for
control actions given as: R = ( R front 0 0 0 R rear 0 0 0 R db ) ,
##EQU00016## where R.sub.front is a weight associated with front
steer, R.sub.rear is a weight associated with rear steer, and
R.sub.db is a weight associated with differential braking.
11. (canceled)
12. The method according to claim 22 wherein determining a steering
control signal includes transforming the state variable and the
control variable for the vehicle steady state condition by
subtracting the state variable and the control variable for the
steady state condition from the state variable and the control
variable at future sample times to obtain a new state variable and
a new control variable for each sample time that provides a
deviation of the dynamic motion of the vehicle from the stationary
motion.
13. The method according to claim 12 wherein determining a steering
control signal includes using model predictive control.
14. The method according to claim 12 wherein determining a steering
control signal includes using the equation: U k = j = 1 j = p ( C d
i = 1 j A d i - 1 B d ) T Q k + j [ r k + j - C d A d j x k - C d i
= 1 j A d i - 1 h k ] R k + j = 1 j = p ( C d i = 1 j A d i - 1 B d
) T Q k + j ( C d i = 1 j A d i - 1 B d ) ##EQU00017## is the
feedback portion of the steering control variable U.sub.k, and:
[.SIGMA..sub.j=1.sup.p[.SIGMA..sub.i=1.sup.j(CA.sup.i-1B).sup.TR.sub.k+j(-
CA.sup.i-1B)]+Q.sub.k].sup.1.SIGMA..sub.j=1.sup.p[.SIGMA..sub.i=1.sup.j(CA-
.sup.i-1B).sup.TR.sub.k+jr.sub.k+j-C.SIGMA..sub.i=1.sup.jA.sup.i-1h.sub.k+-
j-i]+K.sub.kx.sub.SS+U.sub.SS, is the feed-forward portion of the
control variable U.sub.k, and:
C.SIGMA..sub.i=1.sup.jA.sup.i-1h.sub.k+j-i, is future curvature,
bank and slope information, and: K.sub.kx.sub.SS+U.sub.SS, is
current curvature, bank and slope information, where A.sub.d,
B.sub.d, C.sub.d and h.sub.k are discreet versions of matrices A,
B, C and h, respectively, Q.sub.k+j is a weight on path tracking
error, R.sub.k is a weight on actuator command, and r.sub.k+j is a
vector of set points.
15. A method for providing lateral steering control for an
autonomously driven or semi-autonomously driven vehicle traveling
along a roadway, said method comprising: providing a four-degree of
freedom or a six-degree of freedom mathematical model of vehicle
dynamics that includes a state variable, a steering control
variable and a future roadway disturbance factor that defines
curvature, bank and/or slope of the roadway; determining a steering
control goal using the steering control variable that reduces a
difference between a current vehicle path and a desired vehicle
path; determining an optimal steering control signal using the
mathematical model that provides the steering control goal and that
includes a feedback portion and a feed-forward portion, where the
feed-forward portion includes the road disturbance factor, wherein
determining the steering control signal includes defining a state
variable and a control variable for a vehicle steady state or
stationary motion condition for a current curvature, bank and slope
of the roadway, where the stationary motion has a constant speed,
yaw rate and lateral velocity, and transforming the state variable
and the control variable for the vehicle steady state condition by
subtracting the state variable and the control variable for the
steady state condition from the state variable and the control
variable at future sample times to obtain a new state variable and
a new control variable for each sample time that provides a
deviation of the dynamic motion of the vehicle from the stationary
motion; and providing the control signal to a steering
controller.
16. The method according to claim 15 wherein determining a steering
control signal includes using the equation: U k = j = 1 j = p ( C d
i = 1 j A d i - 1 B d ) T Q k + j [ r k + j - C d A d j x k - C d i
= 1 j A d i - 1 h k ] R k + j = 1 j = p ( C d i = 1 j A d i - 1 B d
) T Q k + j ( C d i = 1 j A d i - 1 B d ) ##EQU00018## where:
-[.SIGMA..sub.j=1.sup.p[.SIGMA..sub.i=1.sup.j(CA.sup.i-1B).sup.TR-
.sub.k+j(CA.sup.i-1B)]+Q.sub.k].sup.-1.SIGMA..sub.j=1.sup.p[.SIGMA..sub.i=-
1.sup.j(CA.sup.i-1B).sup.TR.sub.k+jCA.sup.j]X.sub.k, is the
feedback portion of the steering control variable U.sub.k, and:
[.SIGMA..sub.j=1.sup.p[.SIGMA..sub.i=1.sup.j(CA.sup.i-1B).sup.TR.sub.k+j(-
CA.sup.i-1B)]+Q.sub.k].sup.1.SIGMA..sub.j=1.sup.p[.SIGMA..sub.i=1.sup.j(CA-
.sup.i-1B).sup.TR.sub.k+jr.sub.k+j-C.SIGMA..sub.i=1.sup.jA.sup.i=1h.sub.k+-
j-i]+K.sub.kx.sub.SS+U.sub.SS, is the feed-forward portion of the
control variable U.sub.k, and:
C.SIGMA..sub.i=1.sup.jA.sup.i-1h.sub.k+j-i, is future curvature,
bank and slope information, and: K.sub.kx.sub.SS+U.sub.SS, is
current curvature, bank and slope information, where A.sub.d,
B.sub.d, C.sub.d and h.sub.k are discreet versions of matrices A,
B, C and h, respectively, Q.sub.k+j is a weight on path tracking
error, R.sub.k is a weight on actuator command, and r.sub.k+j is a
vector of set points.
17. The method according to claim 15 wherein providing a
mathematical model includes providing a mathematical model that
uses a one-track bicycle model for the four-degree of freedom
mathematical model and uses a combination of a one-track bicycle
model and a one-degree of freedom steering model for the six-degree
of freedom mathematical model.
18. The method according to claim 17 wherein providing a
mathematical model includes using the one-track bicycle model to
provide model dimensions of lateral offset .DELTA.y of a vehicle
center of gravity from the desired vehicle path, a vehicle heading
angle error .DELTA..psi., vehicle lateral velocity .DELTA.y and
vehicle yaw rate r, and the one-degree of freedom steering column
model to provide steering wheel angle .phi. and steering wheel
angle rotation rate {dot over (.phi.)}.
19. The method according to claim 18 wherein a derivative of the
state variable is defined as: {dot over (X)}=AX+BU+h where X is the
state variable, U is the steering control variable, h is the road
disturbance factor, and A and B are matrices.
20. The method according to claim 19 wherein providing a
mathematical model includes defining the state variable X by lane
position dynamics and the bicycle model for an angle interface
steering control as: X=[.DELTA.y,.DELTA..PSI.,V.sub.y,r].sup.T
where the state variable X is a road wheel angle, and defining the
state variable X by the lane position dynamics, the bicycle model
and the steering model for a torque interface steering control as:
X=[.DELTA.y,.DELTA..PSI.,V.sub.y,r,{dot over (.phi.)},.phi.].sup.T
where the state variable X is a combined torque command and a road
wheel angle.
21. The method according to claim 20 wherein the road disturbance
factor h is defined as: h = [ 0 - .kappa. V x g cos .beta.sin y 0 ]
##EQU00019## for the angle interface steering control or by: h = [
0 - .kappa. V x g cos .beta.sin y 0 0 0 ] ##EQU00020## for the
torque interface steering control, where .kappa. is roadway
curvature, .gamma. is roadway bank and .beta. is roadway slope.
22. A method for providing lateral steering control for an
autonomously driven or semi-autonomously driven vehicle traveling
along a roadway, said method comprising: providing a mathematical
model of vehicle dynamics that includes a state variable, a
steering control variable and a future roadway disturbance factor
that defines curvature, bank and/or slope of the roadway;
determining a steering control goal using the steering control
variable that reduces a difference between a current vehicle path
and a desired vehicle path; determining an optimal steering control
signal using the mathematical model that provides the steering
control goal and that includes a feedback portion and a
feed-forward portion, where the feed-forward portion includes the
road disturbance factor, wherein determining a steering control
signal includes using the mathematical model to define a state
variable and a control variable for a vehicle steady state or
stationary motion condition, where the stationary motion has a
constant speed, yaw rate and lateral velocity, for a current
curvature, bank and slope of the roadway; and providing the control
signal to a steering controller.
23. The method according to claim 22 wherein determining a steering
control goal includes defining a relationship between a steering
command and a cost function.
24. The method according to claim 23 wherein the cost function is a
quadratic function.
Description
BACKGROUND OF THE INVENTION
[0001] Field of the Invention
[0002] This invention relates generally to a system and method for
providing lateral steering control assist for lane centering, lane
keeping, lane changing, collision imminent steering, etc. in an
autonomously driven or semi-autonomously driven vehicle and, more
particularly, to a system and method for providing lateral steering
control assist for lane centering, lane changing, lane keeping,
lane following, a collision imminent steering, etc. in an
autonomously driven or semi-autonomously driven vehicle, where the
system and method provide a preview of upcoming curved, banked
and/or sloped roadways.
[0003] Discussion of the Related Art
[0004] The operation of modern vehicles is becoming more
autonomous, i.e., the vehicles are able to provide driving control
with less driver intervention. Cruise control systems have been on
vehicles for a number of years where the vehicle operator can set a
particular speed of the vehicle, and the vehicle will maintain that
speed without the driver operating the throttle. Adaptive cruise
control systems have been recently developed in the art where not
only does the system maintain the set speed, but also will
automatically slow the vehicle down in the event that a slower
moving preceding vehicle is detected using various sensors, such as
radar and cameras. Certain modern vehicles also provide autonomous
parking where the vehicle will automatically provide the steering
control for parking the vehicle. Some vehicle systems providing
automatic braking without driver intervention to avoid rear-end
collisions. As vehicle systems improve, they will become more
autonomous with the goal being a completely autonomously driven
vehicle. For example, future vehicles probably will employ
autonomous systems for lane changing, passing, turns away from
traffic, turns into traffic, etc.
[0005] Collision avoidance systems are known in the art for
providing automatic braking and/or steering of a subject vehicle to
avoid a slower or stopped object in front of the subject vehicle in
the event that the vehicle driver does not take evasive action.
Known collision avoidance systems provide warnings to the vehicle
driver and depending on whether the driver takes evasive action,
may provide automatic braking and/or automatic steering. If the
system determines that automatic steering is necessary to avoid a
collision, the system must calculate a safe steering path for the
subject vehicle to provide the steering control. Some of those
systems are able to detect lane markings so as to calculate the
steering path of the subject vehicle to make a lane change for
collision avoidance purposes. Those collision avoidance systems
also provide steering commands that cause the subject vehicle to
follow the calculated steering path to provide the vehicle
steering.
[0006] The object detection sensors for these types of systems may
use any of a number of technologies, such as short range radar,
long range radar, cameras with image processing, laser or lidar,
ultrasound, etc. The object detection sensors detect vehicles and
other objects in the path of a subject vehicle, and the application
software uses the object detection information to provide warnings
or take actions as appropriate. The warning can be a visual
indication on the vehicles instrument panel or in a head-up display
(HUD), and/or can be an audio warning or other haptic feedback
device, such as seat shaking. In many vehicles, the object
detection sensors are integrated directly into the front bumper or
other fascia of the vehicle.
[0007] Various systems are known in the art for autonomously driven
or semi-autonomously driven vehicles that employ suitable
controllers, sensors, steering actuators, etc. that provide
automatic vehicle steering for one or more of lane centering, lane
keeping, lane changing, collision avoidance, etc. For example, U.S.
Pat. No. 8,903,607 issued Dec. 2, 2014 to Lee et al., titled, Lane
Tracking System With Active Rear-Steer, discloses a lane tracking
system that determines a desired course of a vehicle along a
roadway, estimates a trajectory of the vehicle based on sensed
vehicle motion, computes an error between the determined desired
course and the estimated trajectory, and provides a front steering
torque command to a front steering controller and a rear steering
torque command to a rear steering controller to minimize the
error.
[0008] U.S. Pat. No. 8,849,515 issued Sep. 30, 2014 to Moshchuk et
al., titled, Steering Assist in Driver initiated Collision
Avoidance Maneuver, discloses a collision avoidance system that
identifies a collision threat, calculates an optimal collision
avoidance path, and provides a steering assist torque for steering
the vehicle along the path.
[0009] U.S. Pat. No. 8,170,739 issued May 1, 2012 to Lee, titled,
Path Generation Algorithm for Automated Lane Centering and Lane
Changing Control System, discloses a system for providing path
generation for automated lane centering and/or lane keeping
purposes. The system detects lane markings on the roadway and
generates a desired vehicle path that maintains the vehicle in the
lane.
[0010] U.S. Patent Application Publication No. 2015/0158528 to
Moshchuck et al., titled, Collision Avoidance Control Integrated
with EPS Controller, discloses a model predictive control (MPC)
that employs a six-dimensional vehicle motion model including a
combination of a one-track linear bicycle model and a one-degree of
freedom steering column model to model the vehicle steering to
provide a torque overlay command for steering assist.
[0011] The known systems generally referred to above for providing
lane centering, lane keeping, lane following, collision imminent
steering, steering angle assist, etc. for autonomously and
semi-autonomously driven vehicles typically use fused sensor data
available at any particular point in time. However, upcoming road
changes, such as curves, banks, slopes, etc., in the roadway are
typically not fully processed in the control architecture for these
systems. For example, segments of a roadway that have sudden
horizontal curvature changes are the most challenging situation for
autonomously driven vehicle control. The performance requirements
for active safety features in these types of system impose a strict
limit on the lateral deviation on a curved roadway.
SUMMARY OF THE INVENTION
[0012] The present disclosure describes a system and method for
providing lateral steering control in an autonomously or
semi-autonomously driven vehicle for lane centering, lane changing,
lane following, collision imminent steering, etc., and includes
providing a preview of upcoming road curvature, banks and slopes.
The method includes providing a mathematical model of vehicle
dynamics that includes a state variable, a steering control
variable and a future road disturbance factor that defines the
upcoming road curvature, banks and slopes of the roadway. The
method determines a steering control goal that reduces a difference
between a current vehicle path and a desired vehicle path and
determines an optimal steering control signal that provides the
steering control goal and that includes a feedback portion and a
feed-forward portion, where the feed-forward portion includes the
road disturbance factor. The method determines a state variable and
a control variable for the current roadway curvature, bank and
slope for stationary motion of the vehicle for constant speed, yaw
rate and lateral velocity. The method then introduces a new state
variable and control variable for dynamic vehicle motion for
variable speed, yaw rate and lateral velocity that is a difference
between the state and control variables for predicted future times
and the steady state variables.
[0013] Additional features of the present invention will become
apparent from the following description and appended claims, taken
in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0014] FIG. 1 is an illustration of a vehicle including a path
processing system for providing vehicle lateral steering control
assist in an autonomously driven or semi-autonomously driven
vehicle;
[0015] FIG. 2 is a flow chart diagram showing a method for
providing the lateral steering control assist of the system shown
in FIG. 1;
[0016] FIG. 3 is an illustration of a one-track linear bicycle
model; and
[0017] FIG. 4 is an illustration including different sample points
along a curved travel lane showing a transformation between steady
state control variables and dynamic motion control variables.
DETAILED DESCRIPTION OF THE EMBODIMENTS
[0018] The following discussion of the embodiments of the invention
directed to a system and method that provide lateral steering
control assist in an autonomously driven or semi-autonomously
driven vehicle including providing a preview of upcoming road
curvature, slopes and banks is merely exemplary in nature, and is
in no way intended to limit the invention or its applications or
uses. For example, the system and method of the invention may have
application in other industries and for other types of
conveyances.
[0019] As will be discussed in detail below, the present invention
proposes a system and method for providing lateral steering control
assist for vehicle steering in an autonomously or semi-autonomously
driven vehicle that may be employed for lane centering, lane
changing, lane following, collision imminent steering, etc., where
the system and method provide preview information of upcoming road
curves, banks and/or slopes. The system and method discloses herein
may incorporate one or more of the algorithms or processes
discussed in the references above for detecting a vehicle lane,
objects, etc., determining an optimal steering path, and providing
a steering angle command signal or steering torque command signal
in the particular steering system of the vehicle to steer the
vehicle along the path.
[0020] FIG. 1 is an illustration 10 showing a vehicle 12 traveling
along a travel lane 14 of a roadway, where the vehicle 12 includes
a path processing system 16 that identifies the position of the
vehicle 12 relative to the lane 14 and provides vehicle steering
commands to maintain the vehicle 12 in the travel lane 14 in any
suitable manner as generally or specifically discussed herein. The
system 16 is intended to represent all of the various modules,
controllers, memory, central processing units (CPUs), processors,
electronic control units (ECUs), etc. that are necessary to perform
and operate the various algorithms and processes discussed herein.
The vehicle 12 also includes a map database 20, a navigation system
22, a GPS unit 24, sensors/detectors 26, a vehicle dynamics module
28 and a vehicle controller 30. The map database 20 stores map
information at any level of detail that is available, including
specific information about travel lanes, and operates in
association with the navigation system 22 to display the various
maps and other information that is available. The sensor/detectors
26 are intended to represent any and all object detection sensors
or cameras on the vehicle 12, such as forward, rear and side
cameras, back-up cameras, lidar sensors, long range radar
detectors, short range radar detectors, etc., located in any
suitable position on the vehicle 12. For the purposes described
herein, the sensors/detectors 26 detect lane markings and other
suitable objects that identify the lane 14 that can be used by the
system 16 to provide proper steering. The vehicle dynamics module
28 provides vehicle longitudinal and lateral speed, vehicle yaw
rate, vehicle longitudinal and lateral acceleration, steering
angle, steering torque, etc. The vehicle controller 30 controls the
operation of the vehicle 12 including steering, brake, throttle,
etc. For steering purposes, the controller 30 may provide torque
commands and/or steering angle commands to make corrections between
a desired course and a predicted course to steering control
actuators 32 that provide one or more of electric power steering
(EPS), active front steering (AFS), active rear steering (ARS),
differential braking (DB), torque vectoring, etc., all well known
to those skilled in the art.
[0021] FIG. 2 is a flow chart diagram 40 showing a process for
providing a steering control command to the vehicle controller 30
as determined by the path processing system 16. At box 42, a
mathematical model of the vehicle dynamics is generated for model
predictive control (MPC), which is a dynamic vehicle model provided
through equations of motion and may employ a one-track linear
bicycle model coupled with front steering, rear steering, and/or
differential braking, and a one-degree of freedom steering column
using an EPS. Such a vehicle steering control using MPC may be
found in one or more of the references discussed above. As will be
discussed in detail below, the one-track linear bicycle model
provides four dimensions or parameters, namely, lateral offset
.DELTA.y of the vehicle center of gravity (CG) from the lane 14,
vehicle heading angle error .DELTA..PSI., vehicle lateral velocity
V.sub.y and vehicle yaw rate r, and the one-degree of freedom
steering column model provides two other dimensions or parameters,
namely, steering wheel angle .phi. (or pinion angle) and steering
wheel angle rotation rate {dot over (.phi.)}.
[0022] In one embodiment, the model is a six-dimensional model
including a combination of the one-track bicycle model and the
one-degree of freedom steering column model. A one-track linear
bicycle model is shown by illustration 50 in FIG. 3 including
wheels 52 and 54, vehicle center of gravity 58 and roadway 56, and
describes vehicle position with respect to the lane markings of the
roadway 56 and clarifies sign convention. The state-space model for
vehicle motion includes equations defining relationships of the
vehicle 12 to the roadway 56 as:
.DELTA.{dot over (y)}=V.sub.x.DELTA..PSI.+V.sub.y, (1)
.DELTA.{dot over (.PSI.)}=r-V.sub.x.chi., (2)
and a classical bicycle model for a single track is:
V . y = - C f + C r MV x V y - ( V x + aC f - bC r MV x ) r + C f M
.delta. f , ( 3 ) r . = aC f - bC r I z V x V y a 2 C f + b 2 C r I
z V x r + aC f I z .delta. f , ( 4 ) ##EQU00001##
where .DELTA.y is the lateral offset of the vehicle center of
gravity from the lane (lane offset), .DELTA..PSI. is the vehicle
heading with respect to the lane (lane heading), V.sub.y is the
vehicle lateral velocity, r is the vehicle yaw rate, V.sub.x is the
vehicle longitudinal velocity, C.sub.f and C.sub.r are the
cornering stiffness of the front and rear axles, respectively, a is
the distance from the vehicle's center of gravity to the vehicle's
front axle, b is the distance from the vehicle's center of gravity
to the vehicle's rear axle, M is the mass of the vehicle 12,
I.sub.z is the yaw moment of inertial of the vehicle 12, .chi. is
the path curvature, and .delta..sub.f is the front road wheel
angle.
[0023] It is assumed that the front and rear axle lateral forces
F.sub.f and F.sub.r are linear functions of lateral slip angles
as:
F.sub.f=C.sub.f.alpha..sub.f, (5)
F.sub.r=C.sub.r.alpha..sub.r, (6)
where .alpha..sub.f and .alpha..sub.r are front and rear slip
angles, respectively, and where:
.alpha. f = .delta. f - V y V x - .alpha. V x r , ( 7 ) .alpha. r =
V y V x + b V x r . ( 8 ) ##EQU00002##
[0024] The mathematical model employs a state variable X that is
determined depending on whether the EPS uses an EPS angle
interface, where the lane position dynamics and the bicycle model
are employed, or an EPS torque interface, where the lane position
dynamics, the bicycle model and the steering column model are
employed. A torque overlay command can be provided to the EPS to
add or subtract torque to the steering system in either direction
independent of the driver steering input. Also, for the angle
interface, the EPS actuator can add or subtract a steering angle in
addition to the steering angle provided by the driver, or provide a
steering angle independent of the driver. The state variable X for
the angle interface embodiment is defined by:
X=[.DELTA.y,.DELTA..PSI.,V.sub.y,r].sup.T (9)
and the state variable X for the torque interface embodiment is
defined by:
X=[.DELTA.y,.DELTA..PSI.,V.sub.y,r,{dot over (.phi.)};.phi.].sup.T.
(10)
[0025] The change or derivative of the state variable X is defined
as:
{dot over (X)}=AX+BU+h, (11)
where U is a steering control variable, such as steering control
for total EPS torque, rear steering angle, differential braking,
etc., and is an angle for the angle interface and is a torque for
the torque interface, and where in the case for combined front
steering, differential braking and rear steering, the control
variable U for the angle interface is front steer angle, yaw moment
and rear steer angle and for the torque interface is front torque,
yaw moment and rear steer angle, and h is a road disturbance factor
that defines the curvature, bank and slope of the roadway, which
for the angle interface embodiment is:
h = [ 0 - .kappa. V x cos .beta. sin .gamma. 0 ] , ( 12 )
##EQU00003##
and for the torque interface embodiment is:
h = [ 0 - .kappa. V x cos .beta. sin .gamma. 0 0 0 ] , ( 13 )
##EQU00004##
where .kappa. is the road curvature, .gamma. is the road bank and
.beta. is the road slope, and where governing matrices A and B have
the following form.
A = [ 0 V x 1 0 0 0 0 0 0 1 0 0 0 0 a 11 a 12 0 b 1 n 0 0 a 21 a 22
0 b 2 n 0 0 2 D f IV x 2 D f a IV x - c I - 2 D f nI 0 0 0 0 1 0 ]
, ( 14 ) B = [ 0 0 0 0 1 / I 0 ] , ( 15 ) a 11 = C f + C r MV x , (
16 ) a 12 = - V x - aC f - bC r MV x , ( 17 ) a 21 = - aC f - bC r
I z V x , ( 18 ) a 22 = - a 2 C f + b 2 C r I z V x , ( 19 ) b 1 =
C f M , ( 20 ) b 2 = aC f I z . ( 21 ) ##EQU00005##
[0026] It is noted that matrix B in equation (15) will have
different forms depending on the steering actuator set available,
where each column in the matrix defines a control input to a
steering actuator. The example given above where the matrix B has
one column, the vehicle 12 has front EPS only. If the vehicle 12
has front and rear steering actuators, then the matrix B will have
two columns, if the vehicle 12 has front steer and differential
braking, then the matrix B will have two columns, and if the
vehicle 12 has three actuators for front and rear steering and
differential braking, then matrix B will have three columns. It is
also noted that instead of the factor h being a curvature term
defined as a known disturbance in the '528 application, the factor
h is the road disturbance for bank, slope and curvature as defined
herein that is provided by cameras, the map database 20, etc.
[0027] Once the model is provided, the algorithm identifies a
steering control goal at box 44 that minimizes the deviation of the
vehicle center of gravity (CG) from the planned or desired path to
provide corrected steering. Many algorithms are known in the art to
define a desired steering path for collision avoidance purposes. As
will be discussed below, the steering control goal obtains the
control variable U that minimizes a quadratic cost function J. The
planned path (or reference trajectory) of the vehicle 12 at any
time instant k is a set of points r.sub.k+j, j=1, 2, . . . , p.
Each point r.sub.k+j is a two-dimensional vector including the lane
lateral position of the vehicle center of gravity, and relative to
the vehicle heading angle .DELTA..PSI.. The number of set points p
is driven by a prediction horizon T.sub.p=pT.sub.s, where T.sub.s
is a sampling time. Future outputs of the mathematical model should
follow the reference trajectory r.sub.k+j, or in other words, the
cost function J associated with the errors y.sub.k+j-r.sub.k+j,
j=1, 2, . . . , p should be minimized from its path in the
lane.
[0028] Since the state variable X.sub.k for sample time k is known,
the problem of finding the optimal steering control variable
U.sub.k reduces to finding a global minimum of the quadratic
function J in the control variable U.sub.k. Such a problem can be
solved in a standard quadratic programming manner. A detailed
discussion of how the cost function J is minimized can be found in
the '528 application, where the cost function J is defined as:
J = .intg. 0 .DELTA. T { [ y .PHI. ] err Q ( t ) [ y .PHI. ] err +
U R ( t ) u T } dt , ( 22 ) ##EQU00006##
where y.sub.err is the lateral offset error
(y.sub.desired-y.sub.predicted,), .phi..sub.err is the heading
angle error (.phi..sub.desired-.phi..sub.predicted,), and Q(t) is a
turning weighting matrix for predicted errors given as:
Q = ( Q lateral 0 0 Q heading ) , ( 23 ) ##EQU00007##
where Q.sub.lateral is the weight associated with lateral error
(output), Q.sub.heading is the weight associated with heading error
(output), and R(t) is the weighting matrix for control actions
given as:
R = ( R front 0 0 0 R rear 0 0 0 R db ) , ( 24 ) ##EQU00008##
where R.sub.front is the weight associated with front steer (input
to the controller), R.sub.rear is the weight associated with rear
steer (input to the controller) and R.sub.db is the weight
associated with differential braking (input to the control).
[0029] At box 46, the algorithm uses the determined future
curvature, bank and slope information of the roadway to compute a
feed-forward part of the steering control variable U by solving the
cost function J of equation (22) discussed above. The algorithm
uses the MPC or an optimal linear quadratic (LQ) regulator to
determine optimal control variables U for one or more of a front
angle overlay or a front torque overlay, a rear steering angle, a
yaw moment for differential braking and/or torque vectoring. The
algorithm first determines the state variable X and the steering
control variable U for stationary motion of the vehicle 12 for a
current horizontal curvature, bank and slope of the roadway, where
the stationary motion is a circular motion that the vehicle 12
would travel with a constant speed V.sub.y, yaw rate r and lateral
velocity V.sub.y, i.e., the roadway is approximated to a circular
track. The dynamic motion of the vehicle 12 is defined by equation
(11), and by setting the derivative of the state value X to 0, the
steady state or stationary motion of the vehicle 12 can be defined
as:
AX.sub.SS+BU.sub.SS+h.sub.SS=0, (25)
where the steady state variables X.sub.SS and U.sub.SS can be
obtained analytically using mathematical models or can be measured
experimentally, and where the stationary values for circular motion
can be defined as:
.DELTA. y = 0 , ( 26 ) .DELTA..psi. = - V y / V x , ( 27 ) V y = (
b - aMV x 2 LC r ) .kappa. V x , ( 28 ) r = .kappa. V x , ( 29 )
.PHI. . = 0 , ( 30 ) .PHI. = .kappa. ( L + K us V x 2 ) SR , ( 31 )
##EQU00009##
where L is the vehicle wheel base, which is a+b, K.sub.us is a
vehicle understeer gradient, and SR is steering ratio, and where
the other variables are defined above.
[0030] Once the steady state variables X.sub.SS and U.sub.SS have
been obtained, new state variables X.sub.1 and U.sub.1 are
introduced that describe a deviation of the dynamic motion of the
vehicle 12 from the stationary motion, which is linearized around
the steady state, where the deviation from the steady state is
defined as:
X.sub.1=X-X.sub.SS, (32)
U.sub.1=U-U.sub.SS, (33)
and where the dynamic motion having variable velocity V.sub.x, yaw
rate r and lateral velocity V.sub.y for the actual road geometry is
defined as:
{dot over (X)}.sub.1=AX.sub.1+BU.sub.1+h.sub.1, (34)
where h.sub.1=-{dot over (X)}.sub.SS.
[0031] This transformation of the state and control variables X and
U for the deviation of the dynamic motion from the stationary
motion of the vehicle 12 can be described with the help of FIG. 4,
which is an illustration 60 showing a curve 62 representing the
travel lane that the vehicle 12 is following, where sample point 66
is the current location of the vehicle 12 and has a disturbance
factor h(t) for the current curvature, bank and slope of the
roadway, where t is time. The curvature, bank and slope of the
roadway at sample points 64 for future locations of the vehicle 12
along the curve 62 are defined as h(t+.tau.), h(t+2.tau.), . . . ,
h(t+n.tau.), where .tau. is the change in time. The state and
control variables X and U are transformed to X.sub.1 and U.sub.1 at
each of the sample points 64 illustrated by line 68 for the new
disturbance factor h.sub.1.
[0032] The MPC or LQ control algorithm is then employed using
equations with the terms of the new state and control variables
X.sub.1 and U.sub.1. The final expression for the steering control
variable U.sub.k is provided as follows, where the final control
action is the sum of the feedback and feed-forward terms, and where
the feed-forward terms are the sum of the steady-state control
value and the planned path related terms so as to consider the
roadway curvature, bank and/or slope. Thus, the steering control
variable U.sub.k is defined as:
U k = - [ j = 1 p [ i = 1 j ( CA i - 1 B ) T R k + j ( CA i - 1 B )
] + Q k ] - 1 j = 1 p [ i = 1 j ( CA i - 1 B ) T R k + j CA j ] X k
+ [ j = 1 p [ i = 1 j ( CA i - 1 B ) T R k + j ( CA i - 1 B ) ] + Q
k ] 1 j = 1 p [ i = 1 j ( CA i - 1 B ) T R k + j r k + j - Ci = 1
jAi - 1 hk + j - i + KkxSS + USS , ( 35 ) where : - [ j = 1 p [ i =
1 j ( CA i - 1 B ) T R k + j ( CA i - 1 B ) ] + Q k ] 1 p j = 1 [ i
= 1 j ( CA i - 1 B ) T R k + j CA j ] X k , ( 36 ) ##EQU00010##
is the feedback term of the control variable U.sub.k, and:
[ j = 1 p [ i = 1 j ( CA i - 1 B ) T R k + j ( CA i - 1 B ) ] + Q k
] 1 j = 1 p [ i = 1 j ( CA i - 1 B ) T R k + j r k + j - C i = 1 j
A i - 1 h k + j - 1 ] + K k x SS + U SS , ( 37 ) ##EQU00011##
is the feed-forward term of the control variable U.sub.k, and:
C.SIGMA..sub.i=1.sup.jA.sup.i-1h.sub.k+j-i, (38)
is the future curvature, bank and slope information, and:
K.sub.kx.sub.SS+U.sub.SS, (39)
is the current steady state curvature, bank and slope
information.
[0033] At box 48, the algorithm provides the steering command to
the controller 30 for either front or rear steering, which may be a
torque overlay command for an EPS.
[0034] As will be well understood by those skilled in the art, the
several and various steps and processes discussed herein to
describe the invention may be referring to operations performed by
a computer, a processor or other electronic calculating device that
manipulate and/or transform data using electrical phenomenon. Those
computers and electronic devices may employ various volatile and/or
non-volatile memories including non-transitory computer-readable
medium with an executable program stored thereon including various
code or executable instructions able to be performed by the
computer or processor, where the memory and/or computer-readable
medium may include all forms and types of memory and other
computer-readable media.
[0035] The foregoing discussion discloses and describes merely
exemplary embodiments of the present invention. One skilled in the
art will readily recognize from such discussion and from the
accompanying drawings and claims that various changes,
modifications and variations can be made therein without departing
from the spirit and scope of the invention as defined in the
following claims.
* * * * *