Adaptive control method and system in a terrestrial vehicle for tracking a route, particularly in an autonomous driving scenario
11318936 · 2022-05-03
Assignee
Inventors
- Michele Giorelli (Turin, IT)
- Matteo Corno (Milan, IT)
- Federico Roselli (Milan, IT)
- Sergio Matteo Savaresi (Cremona, IT)
Cpc classification
B60W2040/1315
PERFORMING OPERATIONS; TRANSPORTING
B60W10/20
PERFORMING OPERATIONS; TRANSPORTING
International classification
B60W30/00
PERFORMING OPERATIONS; TRANSPORTING
B60W10/20
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A method for controlling the lateral movement of a terrestrial vehicle arranged to track a predetermined trajectory, particularly in an assisted driving or autonomous driving scenario, comprising: determining a lateral offset of the vehicle center of mass from the predetermined trajectory; determining a look-ahead error defined as a distance of a virtual look-ahead position of the vehicle center of mass from the predetermined trajectory; and controlling the steering angle of the vehicle so as to also minimize the lateral offset and the first derivative of said look-ahead error over time.
Claims
1. A method for the control of the lateral movement of a terrestrial vehicle arranged to track a predetermined trajectory in an assisted driving or autonomous driving scenario, said method comprising the steps of: determining a lateral offset of a vehicle center of mass from a predetermined trajectory by determining a distance between a position of the vehicle center of mass and a straight line passing through a trajectory point closest to the vehicle center of mass and directed along a local direction tangential to said trajectory, the trajectory point closest to the vehicle center of mass being identified as the trajectory point at a minimum Euclidean distance from the position of the vehicle center of mass; wherein the trajectory point at the minimum Euclidean distance from the position of the vehicle center of mass is determined by: (a) calculating a first distance between an initial end point E.sub.s of a predetermined trajectory segment and the vehicle center of mass, and storing said first distance as a value of minimum distance and said initial end point of the a trajectory segment as a point closest to the vehicle center of mass; (b) calculating a second distance between a subsequent point of a predetermined succession of discrete points on said trajectory segment and the vehicle center of mass and, if said second distance is lower than said first stored distance, storing said second distance as a value of minimum distance and said subsequent point of trajectory segment as a point closest to the vehicle center of mass; and (c) iterating step (b) for all the points of said succession of discrete points on said trajectory segment; controlling a steering angle of the vehicle so as to minimize said lateral offset; determining a look-ahead error defined as a distance of a virtual look-ahead position of the vehicle center of mass from said predetermined trajectory; and controlling a steering angle of the vehicle so as to also minimize the first derivative over time of said look-ahead error.
2. The method as set forth in claim 1, wherein determining a look- ahead error comprises: determining a virtual look-ahead position for the vehicle center of mass along a current look-ahead direction of the vehicle after a predetermined period of time or at a predetermined look-ahead distance; and determining a distance between said virtual look-ahead position for the vehicle center of mass and the straight line passing through a trajectory point closest to the virtual look-ahead position for the vehicle center of mass and directed along a local direction tangential to said trajectory, the trajectory point closest to the virtual look-ahead position for the vehicle center of mass being identified as the trajectory point at the minimum Euclidean distance from the virtual look-ahead position for the vehicle center of mass.
3. The method as set forth in claim 2, wherein the trajectory point at the minimum Euclidean distance from the virtual look-ahead position for the vehicle center of mass is determined by: (a) calculating a first distance between an initial end point E.sub.s of a predetermined trajectory segment and the virtual look-ahead position for the vehicle center of mass, and storing said first distance as a value of minimum distance and said initial end point of the trajectory segment as the point closest to the virtual look-ahead position for the vehicle center of mass; (b) calculating a second distance between a subsequent point of a predetermined succession of discrete points on said trajectory segment and the virtual look-ahead position for the vehicle center of mass and, if said second distance is lower than said stored first distance, storing said second distance as the minimum distance value and said subsequent point of the trajectory segment as the closest point to the virtual look-ahead position for the vehicle center of mass; and (c) iterating step (b) for all the points of said succession of discrete points on said trajectory segment.
4. The method as set forth in claim 1, wherein controlling the steering angle of the vehicle comprises applying an H.sub.∞ control method wherein an exogenous input includes a local curvature radius of said predefined trajectory, an input of the controlled variables includes the steering angle of the vehicle, a performance variable output includes the steering angle of the vehicle, a lateral offset and the derivative of the look-ahead error, and an output of measured variables includes the lateral offset and the derivative of the look-ahead error.
5. The method as set forth in claim 4, wherein the steering angle of the vehicle, the lateral offset, the derivative of the look-ahead error, and preferably the curvature radius of the predetermined trajectory, are processed through respective weight functions.
6. The method as set forth in claim 1, wherein the length of the trajectory segment is also determined as a function of the vehicle current speed.
7. The method as set forth in claim 2, wherein the virtual look-ahead distance for the vehicle is also determined as a function of the vehicle current speed.
8. A system for the control of the lateral movement of a terrestrial vehicle arranged to track a predetermined trajectory in an assisted driving or autonomous driving scenario, comprising: acquisition member of vehicle position data, adapted to emit a first signal indicative of coordinates of a current actual position of the vehicle and of an angle of the actual current direction of the vehicle; a vehicle trajectory module, arranged for calculating a local trajectory of the vehicle movement and adapted to emit a second signal indicative of the expected coordinates of the vehicle along said predefined trajectory and of an expected local look-ahead direction of the vehicle; a controller that calculates a lateral error of the vehicle with respect to said predetermined trajectory, and that is adapted to receive said first and second signal and arranged for determining a lateral offset and a look-ahead error based on said first and second signal; and a lateral control module of the vehicle, adapted to receive said lateral offset and a time derivative of the look-ahead error, and arranged for emitting a signal indicative of a steering angle required to operate a correction of the look-ahead direction of the vehicle so as to allow tracking the predefined trajectory; wherein the lateral control module of the vehicle is programmed to control the lateral movement of a terrestrial vehicle.
9. A method for the control of the lateral movement of a terrestrial vehicle arranged to track a predetermined trajectory in an assisted driving or autonomous driving scenario, comprising the steps of: determining a lateral offset of the vehicle center of mass from said predetermined trajectory; controlling a steering angle of the vehicle so as to minimize said lateral offset, determining a look-ahead error defined as a distance of a virtual look-ahead position of the vehicle center of mass from said predetermined trajectory, wherein determining a look-ahead error includes the steps of: determining the virtual look-ahead position for the vehicle center of mass along a current look-ahead direction of the vehicle after a predetermined period of time or at a predetermined look-ahead distance; and determining the distance between said virtual look-ahead position for the vehicle center of mass and the straight line passing through a trajectory point closest to the virtual look-ahead position for the vehicle center of mass and directed along a local direction tangential to said trajectory, the trajectory point closest to the virtual look-ahead position for the vehicle center of mass being identified as the trajectory point at the minimum Euclidean distance from the virtual look-ahead position for the vehicle center of mass; wherein the trajectory point at the minimum Euclidean distance from the virtual look-ahead position for the vehicle center of mass is determined by: (a) calculating a first distance between an initial end point E.sub.s of a predetermined trajectory segment and the virtual look-ahead position for the vehicle center of mass, and storing said first distance as a value of minimum distance and said initial end point of the trajectory segment as the point closest to the virtual look-ahead position for the vehicle center of mass; (b) calculating a second distance between a subsequent point of a predetermined succession of discrete points on said trajectory segment and the virtual look-ahead position for the vehicle center of mass and, if said second distance is lower than said stored first distance, storing said second distance as the minimum distance value and said subsequent point of the trajectory segment as the closest point to the virtual look-ahead position for the vehicle center of mass; and (c) iterating step (b) for all the points of said succession of discrete points on said trajectory segment; and controlling the steering angle of the vehicle so as to also minimize the first derivative over time of said look-ahead error.
10. A method for the control of the lateral movement of a terrestrial vehicle arranged to track a predetermined trajectory in an assisted driving or autonomous driving scenario, comprising the steps of: determining a lateral offset of the vehicle center of mass from said predetermined trajectory; controlling a steering angle of the vehicle so as to minimize said lateral offset, determining a look-ahead error defined as a distance of a virtual look-ahead position of the vehicle center of mass from said predetermined trajectory; and controlling the steering angle of the vehicle so as to also minimize the first derivative over time of said look-ahead error, wherein controlling the steering angle of the vehicle includes the steps of applying an H.sub.∞ control method wherein an exogenous input includes a local curvature radius of said predefined trajectory, an input of the controlled variables includes the steering angle of the vehicle, a performance variable output includes the steering angle of the vehicle, the lateral offset and the derivative of the look-ahead error, and an output of measured variables includes the lateral offset and the derivative of the look-ahead error.
11. A method for the control of the lateral movement of a terrestrial vehicle arranged to track a predetermined trajectory in an assisted driving or autonomous driving scenario, comprising the steps of: determining a lateral offset of the vehicle center of mass from said predetermined trajectory; controlling a steering angle of the vehicle so as to minimize said lateral offset, determining a look-ahead error defined as a distance of a virtual look-ahead position of the vehicle center of mass from said predetermined trajectory, wherein determining the look-ahead error includes the steps of: determining the virtual look-ahead position for the vehicle center of mass along a current look-ahead direction of the vehicle after a predetermined period of time or at a predetermined look-ahead distance determined as a function of the vehicle current speed; and determining the distance between said virtual look-ahead position for the vehicle center of mass and the straight line passing through a trajectory point closest to the virtual look-ahead position for the vehicle center of mass and directed along a local direction tangential to said trajectory, the trajectory point closest to the virtual look-ahead position for the vehicle center of mass being identified as the trajectory point at the minimum Euclidean distance from the virtual look-ahead position for the vehicle center of mass; and controlling the steering angle of the vehicle so as to also minimize the first derivative over time of said look-ahead error.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Further features and advantages of the invention will be described in greater detail in the following detailed description of one embodiment thereof, given by way of non-limiting example, with reference to the accompanying drawings wherein:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
DETAILED DESCRIPTION OF THE INVENTION
(12)
(13) The vehicle V is represented with its center of mass B between the front steering wheels, shown at FW, and the rear wheels, shown at RW.
(14) In the drawing, h indicates the local look-ahead direction of the vehicle as a dotted line, and Δψ indicates the angle between the local look-ahead direction h of the vehicle and the local direction ψ of the trajectory T at the point of the trajectory closest to the vehicle's center of mass. A current steering angle of the vehicle (of the vehicle's front wheels FW) with respect to the local look-ahead direction h of the vehicle is represented at δ.sub.w, and the speed vector of the vehicle is shown applied to the center of mass B, with module v and orientation at an angle β with respect to the local look-ahead direction of the vehicle.
(15) Along the local look-ahead direction h, at a predetermined distance from the center of mass of the vehicle, the point P is identified representative of a virtual look-ahead position of the vehicle (of the center of mass of the vehicle), i.e. a position wherein the position of the center of mass of the vehicle is estimated after a predetermined time period as a function of its known local look-ahead direction. Hereinafter d.sub.la indicates a virtual look-ahead distance between the virtual look-ahead position of the vehicle (of the center of mass of the vehicle) and the current position of the vehicle (of the center of mass of the vehicle).
(16) The trajectory T, which is a curved trajectory with a (constant or variable) curvature radius .sub.T, is represented as the succession of a discrete plurality of trajectory points which, in the execution of the described method taken as an example, is comprised between a first initial end point E.sub.s and a second final end point E.sub.f.
(17) The distance between the vehicle V, i.e. the center of mass B of the vehicle, and the trajectory T represents the lateral offset and is labeled in the figure as e.sub.cg, while e.sub.la indicates the look-ahead error, i.e., the distance between the virtual look-ahead position of the vehicle (of the vehicle's center of mass) P along the local look-ahead direction h and the trajectory T.
(18)
(19) The control system comprises a data collection and merging module 10 arranged for processing the merging of the data D detected by onboard sensors, purely by way of example the vehicle's satellite positioning data and the recognition data of the environment surrounding the vehicle coming from laser sensors, video cameras, radar sensors and ultrasonic sensors or an even partial combination thereof. The module 10 is adapted to emit a signal s.sub.10 indicating a data trio, respectively the X and Y coordinates of the actual current position and the actual current direction angle ψ of the vehicle.
(20) A trajectory definition module is indicated at 12 and designed to calculate a local trajectory of movement of the vehicle adapted to carry out the route programmed by the navigation system as a function of the environmental constraints (e.g. traffic conditions or obstacles) detected in real time. The trajectory definition module 12 is adapted to emit a signal s.sub.12 indicating a data trio, respectively, the expected coordinates of the vehicle along a predetermined trajectory T, X.sub.T(t) and Y.sub.T(t), variable over time, and the expected local look-ahead direction, which also varies over time ψ.sub.T(t).
(21) The signals s.sub.10 and s.sub.12, respectively emitted by the data collection and merging module 10 and the trajectory definition module 12, are in input to a processing module for calculating the lateral error of the vehicle, indicated collectively at 14, which will be described in greater detail in the following. It is specified henceforth that the figure omits the representation of a longitudinal error calculation module, which is also necessary to carry out a longitudinal control of the vehicle, and thus a complete control of the vehicle dynamics for example in autonomous driving applications, but which is not the subject of the present invention.
(22) The processing module for the calculation of the lateral error of the vehicle is designed to calculate the lateral offset e.sub.cg and the look-ahead error e.sub.la. A differential calculation module, indicated at 16, is designed to perform a calculation operation of the derivative of the look-ahead error e.sub.la, which is henceforth labeled as e′.sub.la.
(23) Finally, the lateral offset e.sub.cg and the derivative of the look-ahead error e′.sub.la are input to a lateral control module 18, which will be better described in the following, adapted to calculate the steering angle δ.sub.w needed to correct the look-ahead direction of the vehicle such as to allow the tracking of the predefined trajectory T.
(24) With reference to
(25) The processing module for calculating the lateral error of the vehicle 14 receives in input the position of the center of mass of the vehicle and its local look-ahead direction, i.e. the data trio (X, Y, ψ) and the representation of the trajectory T of the predefined route generated by the trajectory definition module 12, i.e. the data trio (X.sub.T(t), Y.sub.T(t), ψ.sub.T(t)).
(26) In order to decouple the problem of longitudinal movement control from the problem of lateral movement control of the vehicle, the lateral offset e.sub.Cg is not calculated by considering the coordinates of the trajectory T planned at the current time (X.sub.T(t.sub.c), Y.sub.T(t.sub.c)), but is defined as the minimum distance between the center of mass of the vehicle and the entire trajectory T, while the problem of longitudinal control is typically handled by defining a longitudinal reference speed at positions along the time-dependent trajectory T.
(27) In general, the lateral offset is calculated as the distance between the position of the (center of mass of the) vehicle and the straight line passing through a trajectory point closest to the (center of mass of the) vehicle and directed along a local direction (tangential to the trajectory), the trajectory point closest to the (center of mass of the) vehicle being identified as the trajectory point at the minimum Euclidean distance from the position of the center of mass of the vehicle.
(28) Specifically, the lateral offset is calculated by performing in successive iterations the following operations at the lateral error calculation module 14.
(29) First, for each iteration, a trajectory segment comprising a plurality of discrete coordinates of the trajectory T starting from a first initial end point E.sub.s, which is identified as the point of minimum distance from the vehicle determined in the previous iteration, up to a second final end point E.sub.f, identified by imposing a predetermined length to the trajectory segment comprising a predetermined number of discrete points (which may be either equally spaced or more concentrated in the vicinity of directional variations), wherein said predetermined number of points is high enough to contain a point of minimum distance from the vehicle. In general, the number of discrete points and the length of the trajectory segment depend on the vehicle's current forward speed and the directionality of the same segment. In effect, if there are sudden changes in direction, it is preferable to have shorter segments with respect to the case wherein the vehicle travels a straight trajectory. Alternatively, it is possible to set a constant length for the trajectory segment that is greater than or at least equal to the maximum distance that the vehicle may travel at the maximum theoretical speed at a sample time of the control system.
(30) Therefore, the point of the trajectory segment closest to the (center of mass of the) vehicle is identified by an iterative algorithm comprising the following steps:
(31) 1. The distance between the initial end point E.sub.s of the trajectory segment and the (center of mass of the) vehicle is calculated; such distance is provisionally stored as a minimum distance value and the initial end point of the trajectory segment is provisionally identified as the point closest to the (center of mass of the) vehicle;
(32) 2. The distance between the successive point on the trajectory segment and the (center of mass of the) vehicle is calculated, and if this value is less than the stored value of the minimum distance, then it is provisionally stored as a new minimum distance value and said point is provisionally identified as a new point closest to the (center of mass of the) vehicle; otherwise, the data obtained from the previous step will be retained;
(33) 3. The procedure in the previous step is repeated for all the successive points on the trajectory segment;
(34) 4. The algorithm stops when the final end point E.sub.f of the trajectory segment is reached, or before if the calculated distance value is much greater than the stored minimum distance, which may be set at the design stage.
(35) Finally, after the point of the trajectory segment closest to the (center of mass of the) vehicle is identified, the lateral offset is calculated as the distance between the (center of mass of the) vehicle and the straight line passing through the point closest to the (center of mass of the) vehicle and directed in the direction locally tangential to the trajectory (indicated at ψ.sub.T(t) in
(36) Similarly, the look-ahead error e.sub.la is calculated from the knowledge of the vehicle's direction and the virtual look-ahead position of the (center of mass of the) vehicle, shown in
(37) 1. The distance between the initial end point E.sub.s of the trajectory segment and the look-ahead position of the (center of mass of the) vehicle is calculated; such distance is provisionally stored as a minimum distance value and the first point of the trajectory segment is temporarily identified as the point closest to the virtual look-ahead position of the (center of mass of the) vehicle;
(38) 2. The distance between the successive point on the trajectory segment and the virtual look-ahead position of the (center of mass of the) vehicle is calculated, and if this value is less than the minimum distance value stored, then it is provisionally stored as a new minimum distance value and said point is provisionally identified as a new point closest to the virtual look-ahead position of the (center of mass of the) vehicle; otherwise, the data obtained from the previous step will be retained;
(39) 3. The procedure in the previous step is repeated for all the successive points on the trajectory segment;
(40) 4. The algorithm stops when the final end point E.sub.f of the trajectory segment is reached, or before if the calculated distance value is much greater than the minimum stored distance, which may be set at the design stage.
(41) Finally, after the point of the trajectory segment closest to the virtual look-ahead position of the (center of mass of the) vehicle is identified, the look-ahead error e.sub.la is calculated as the distance between the virtual look-ahead position of the (center of mass of the) vehicle and the straight line passing through the point closest to the virtual look-ahead position of the (center of mass of the) vehicle and directed in the direction locally tangential to the trajectory.
(42) The derivative e′.sub.la of the look-ahead error is calculated with a high pass filter made as a discrete filter of fixed order n, the cutting frequency of which is a tunable parameter depending on the noise level and on the quantization of the signals received by the onboard geographic positioning system.
(43)
(44)
(45) The control module 18 is preferably synthesized to apply an H.sub.∞ control method and implemented on the basis of the lateral dynamics model of the vehicle defined in .sub.t, of the predetermined trajectory the lateral offset e.sub.cg and the look-ahead error e.sub.la.
(46) An H.sub.∞ control model of a system P is shown in
(47)
δ.sup.w.sub.w(s)=W.sub.o.sup.{1}(s)*δ.sub.w(s);
e.sup.w.sub.cg(s)=W.sub.o.sup.{2}(s)*e.sub.cg(s);
e′.sup.w.sub.ka(s)=W.sub.o.sup.{3}(s)*e′.sub.la(s);
(48) Preferably, also the exogenous input reference signal, the local curvature radius .sub.t, of the predetermined trajectory is processed through a respective weighing module W.sub.i(s).
(49) Weighing the variables allows the magnitude of errors in the frequency domain to be specified based on the desired performance and the behavior of the controller to be regulated for greater response speed or greater robustness to external disturbances. For example, a small trajectory tracking error may be favored at the expense of high actuation energy, or a different balance may be set between the different aspects of control (tracking error, actuation cost, robustness to measurement errors, and rejection of load disturbances).
(50) Unlike known algorithms based on minimizing the virtual prediction error, the control system and method of the invention allow advantageously for the future evolution of the curvature of the predetermined trajectory to be taken into account by virtue of the fact that look-ahead error is determined, i.e., a real distance is calculated between the virtual look-ahead position of the (center of mass of the) vehicle and the predetermined trajectory, whereby the control may anticipate a vehicle's maneuver of entry into a curve and overcome the inconvenience of a delay in the tracking of the predefined trajectory that is introduced by the vehicle dynamics. Conveniently, the virtual look-head position of the (center of mass of the) vehicle, or better yet the virtual look-ahead distance, may be considered a tunable parameter to adjust the anticipatory action of the control, improving the predictive readiness of the system of the invention, particularly in the case of high dynamics maneuvers.
(51)
(52) Specifically, the control algorithm is a function of the lateral dynamics model of the vehicle defined in
(53) The lateral control module or controller 18 is a dynamic system that may be represented by equations in the state space, characterized by the matrices A, B, C, D:
x(k+1)=Ax(k)+Bu(k)
y(k)=Cx(k)+Du(k)
(54) The output y is the steering angle and the input u is a vector of two variables, respectively the lateral offset e.sub.cg and the derivative of the prediction error e′.sub.la. A is an n×n matrix where n is the order of the controller that depends on the order of the system and on the order of weight functions, B is an n×2 matrix, C is a 1×n matrix and D is a 1×2 matrix. The matrices A, B, C, D are the result of a mathematical optimization performed by defining the vehicle model and the weights, and have no representation in closed form.
(55) In an improved embodiment, the control algorithm is made in such a way as to take into account the speed v of the vehicle and is shown in
x(k+1)=A(v)x(k)+B(v)u(k)
y(k)=C(v)x(k)+D(v)u(k)
(56) This means that the control mode is advantageously programmed over time as a function of the speed of the vehicle, for example with a frequency of 50 Hz, whereby the steering angle is determined on the basis of the lateral offset e.sub.cg, of the derivative of the look-ahead error e′.sub.la and of the value of the matrices evaluated at the current speed of the vehicle.
(57) The control of the invention has superior performance compared to a classic control based exclusively on the knowledge of the look-ahead error or compared to a classic control based exclusively on the knowledge of the lateral offset.
(58) For a better appreciation of the excellence of the control of the invention,
(59) In the first graph from the top, the absolute lateral position of the (center of mass of the) vehicle is shown in a reference system X, Y, where X evolves along the direction of travel and Y is the direction orthogonal to X on the plane of travel. The curve T shows with hatched lines the predefined reference trajectory. It is evident in the graph that with a classic control, the vehicle is delayed in tracking the predefined trajectory.
(60) In the second graph from the top, the evolution over time of the lateral offset is shown. Also in this case, it should be noted that a classic control allows for a lateral offset for much of the time greater than the lateral offset allowed by the control according to the two embodiments of the invention, and is extremely variable in absolute value.
(61) In the third graph from the top, the trend of the lateral acceleration is traced over time, as a result of the maneuvers required to recover the lateral offset that is created. Also, this graph shows a clear delay of the classic control in tracking the predefined trajectory.
(62) Finally, in the fourth graph (the last graph on the bottom), the trend of the steering angle over time is traced, which represents the command imposed to the vehicle by the controller. The summation of the disadvantages of the known technique (curve A) is evident in terms of delay and greater amplitude of the required corrections.
(63) Ultimately, the graphs in
(64) In addition to the foregoing, it is possible to recognize that also the vehicle's virtual look-ahead distance is a control parameter that may be adjusted according to the speed, and in
(65) Naturally, without altering the principle of the invention, the embodiments and the details of implementation may vary widely with respect to that which is described and illustrated purely by way of non-limiting example, without thereby departing from the scope of protection of the invention defined by the accompanying claims.