Automotive control unit programmed to estimate road slope and vehicle mass, vehicle with such a control unit and corresponding program product

10124806 ยท 2018-11-13

Assignee

Inventors

Cpc classification

International classification

Abstract

Automotive electronic control unit programmed to realtime estimate either or both of vehicle mass and road slope, wherein; a. road slope, is estimated; a1. when vehicle is considered stopped based on an accelerometer signal indicative of vehicle acceleration, wherein the vehicle is considered stopped in the presence of substantially zero values of a speed signal indicative of vehicle speed, and a2. when vehicle is in rectilinear and curvilinear motion by implementing a road slope observer based on a linear Kalman filter, which is designed to: a21. operate based on signals indicative of vehicle speed and acceleration, and a22. compensate for accelerometric disturbances due to; a221. vehicle static pitch resulting from vehicle load distribution, and a222. vehicle dynamic pitch due to acceleration to which vehicle is subjected during motion, and a223. accelerometric disturbance components due to vehicle lateral dynamics; b. vehicle mass is estimated: b1. when vehicle is in motion, and b2. based on a recursive least square algorithm with forgetting factor, and b3. based on an accelerometric signal indicative of vehicle acceleration, on a vehicle speed signal, and other signals representing a vehicle propulsive/resistive torque, and b4. at different low gears, to provide a mass estimation and an associated variance for each gear, and b5. based on mass estimations and corresponding variances for each gear, and b6. compensating for accelerometer disturbances due to: b61, vehicle dynamic pitch; and b62. accelerometric disturbance components due to vehicle lateral dynamics; and b7. minimizing uncertainties on propulsive/resistive torque due to gear efficiency and rolling resistance.

Claims

1. An automotive electronic control system comprising: an accelerometer; a sensor associated with the accelerometer for providing a vehicle acceleration signal; a vehicle speed sensor for providing a vehicle speed signal; a plurality of vehicle propulsion and torque sensors for providing vehicle propulsive/resistive torque signals; a stationary lateral compensation means which makes a correction to limit vehicle lateral dynamics that, in curves, introduces an additional term to the vehicle acceleration signal wherein said lateral compensation means is based on a bike model and on target parameters of the vehicle; a forgetting factor means which minimizes prediction error according to quadratic principles and reduces recursive least squares problems regarding progressive decay of algorithm reactivity with sampling aging; an electronic control unit configured to receive the vehicle acceleration signal, the vehicle speed signal, and the vehicle propulsive/resistive torque signals for generating a command for vehicular control based in part on the vehicle mass, wherein the vehicle mass is estimated in real time: when the vehicle is in motion, compensating for accelerometric disturbances due to: the vehicle dynamic pitch; accelerometric components due to the vehicle lateral dynamics; and based on a recursive least square algorithm with the forgetting factor inputted with a compensated acceleration signal for the vehicle, and at different low gears, to estimate the vehicle mass and associated variance for each gear, and based on the vehicle mass estimations and corresponding variances for each gear, minimizing uncertainties on propulsive/resistive torque due to gear efficiency and rolling resistance; and a vehicle control means for providing automated control of the vehicle based on the control command from the electronic control unit.

2. The automotive electronic control system according to claim 1, further programmed to real-time estimate road slope: when the vehicle is considered stopped: based on the vehicle acceleration signal, wherein the vehicle is considered stopped in the presence of substantially zero values of the vehicle speed signal; when the vehicle is in rectilinear and curvilinear motion: compensating for accelerometric disturbances due to: the vehicle static pitch resulting from the vehicle load distribution, and the vehicle dynamic pitch due to acceleration to which the vehicle is subjected during motion, and accelerometric disturbance components due to the vehicle lateral dynamics; implementing a road slope observer based on a linear Kalman filter inputted with the vehicle speed signal and the compensated acceleration signal for the vehicle.

3. The automotive electronic control system according to claim 2, further programmed to: link road slope estimation carried out when the vehicle is considered stopped and in motion: starting road slope estimation when the vehicle is stopped based on the latest road slope estimations when the vehicle was in motion, and starting road slope estimation when the vehicle is in motion based on the latest road slope estimations when the vehicle was stopped.

4. The automotive electronic control system according to claim 2, further programmed to either: estimate road slope and the vehicle mass independently, or estimate road slope based on the vehicle mass estimation.

5. The automotive electronic control system according to claim 2, further programmed to estimate road slope: when the vehicle is in curvilinear motion: for the vehicle lateral acceleration values comprised in a predetermined range, using the road slope observer, having compensated accelerometric disturbances due to the vehicle lateral acceleration.

6. The automotive electronic control system according to claim 2, further programmed to compensate for accelerometric disturbances due to the vehicle static and dynamic pitches: estimating the vehicle static pitch resulting from the vehicle load distribution based on estimated vehicle mass and attitudes diagram, and estimating the vehicle dynamic pitch based on the vehicle acceleration signal during motion.

7. The automotive electronic control system according to claim 1, further programmed to estimate the vehicle mass: limiting dynamic pitch effects and accelerometric disturbances effects due to the vehicle lateral acceleration on the vehicle mass estimation.

8. The automotive electronic control system according to claim 1, wherein the vehicle mass estimation is carried out as a weighted average of individual mass estimations at different gear engaged, and wherein the estimated vehicle mass is associated an overall variance computed as an average of individual variances associated with individual mass estimations.

9. The automotive electronic control system according to claim 1, wherein the vehicle mass is estimated when the vehicle is in motion and only when propulsive/resistive torque is considered reliable, and wherein the vehicle mass estimation is considered to be reliable when overall variance of estimated mass for the vehicle is lower than a threshold value.

10. The automotive electronic control system according to claim 1, wherein the vehicle mass is estimated when the vehicle is in motion and is considered to be reliable even when the vehicle successively stops.

11. The automotive electronic control system according to claim 1, wherein the vehicle mass is estimated every time that predetermined events occur that make unreliable the previous mass estimation for the vehicle.

12. A vehicle comprising an automotive electronic control unit (ECU) according to claim 1.

13. Computer software loadable into an automotive electronic control unit and designed to cause, when executed, the automotive electronic control unit to become programmed as claimed in claim 1.

14. A method for automatically estimating vehicular mass in real time for a vehicle in motion for vehicular control, comprising: obtaining a vehicle acceleration signal from an accelerometer; obtaining a vehicle speed signal and signals representing vehicle propulsive force from the vehicle speed sensors and from the vehicle propulsion and torque sensors; adjusting, the vehicle acceleration signal when the vehicle is in motion for accelerometric disturbances due to the vehicle dynamic pitch and for accelerometric components due to the vehicle lateral dynamics wherein the lateral dynamics are introduced in an estimator compensation block using bike model and on-target parameters; inputting the adjusted vehicle acceleration signal for the vehicle to a recursive least square function with a forgetting factor tied to the compensated acceleration signal wherein the forgetting factor minimizes prediction error according to quadratic principles, and reduces recursive least squares problems regarding progressive decay of algorithm reactivity with sampling aging, and generating automatically in real time the vehicle mass signals corresponding to variances for each gear based on a the vehicle mass estimated for each gear while minimizing uncertainties on the propulsive/resistive torque signals due to gear efficiency and rolling resistance; and automatically controlling the vehicle based on the real time vehicle mass signals.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) FIG. 1 depicts a block diagram representing the functional architecture of a road slope estimator according to the present invention;

(2) FIG. 2 depicts quantities involved in the road slope estimation carried out by a comprises a Linear Kalman Observer; and

(3) FIG. 3 depicts a block diagram representing the functional architecture of a vehicle mass estimator according to the present invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION

(4) The following description is provided to enable a person skilled in the art to make and use the invention. Various modifications to the embodiments will be readily apparent to those skilled in the art, without departing from the scope of the present invention as claimed. Thus, the present invention is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein and defined in the appended claims.

(5) In coherence with explained simplicity and sustainability of estimations, it has been found that the possibility to obtain the estimations with a single extended states estimator, with its relative problems about convergence, different represented dynamics and non-linearity, is to be put aside.

(6) Instead, it has been found suitable to simplify and reduce to the most basic form the problem with a top-down approach. In practice, road slope and vehicle mass are estimates separately by using different model references and real vehicle measurements, in order to obtain two independent estimations, and then estimations are integrated in order to improve estimation performance in a model based framework. With this theoretical base, selected algorithm for implementation of slope observer is a linear Kalman filter based on vehicle longitudinal acceleration model and for mass estimation has been chosen Recursive Least Square with forgetting factor applied to equation (1).

(7) Estimation functions have been developed to be robust to reciprocal disturbance, in practice slope disturbance hasn't influence on mass estimation by using suitably dynamic pitch-compensated longitudinal acceleration measure instead of vehicle wheels speed, while slope estimation is based on longitudinal acceleration sensor model, so, it guarantees robustness to powertrain uncertainties and mass varying by avoiding vehicle motion equation use. Otherwise mass varying disturbance is not fully rejected, there is a not erasable disturbance on longitudinal acceleration measure, static pitch acceleration offset due to vehicle mass distribution. If a vehicle running on a slope with constant speed or still on flat road is considered, there is a static offset on longitudinal acceleration sensor measure, this error is due to load distribution on vehicle, and its entity is linked to vehicle suspension stiffness. This last disturbance on slope estimation may be reduced by integrating slope and mass estimations. So, knowing vehicle load attitude diagrams and using mass estimation function is possible to recognize particular conditions of vehicle load distribution and to correct longitudinal acceleration measure in order to limit this inerasable error on slope estimation improving further estimation precision.

(8) FIG. 1 depicts a block diagram representing the functional architecture of a road slope estimator according to the present invention, and where all the input and output quantities based on which estimator operates are indicated.

(9) The road slope estimator is designed to cover the greatest number of static and dynamic conditions in which the vehicle may operate, namely stationary or in motion, and, when in motion, in longitudinal motion or in a curve, with the possibility to be customized based on the application in which this information is required. In addition, the road slope estimator is model-based in order for it to be portable and tunable on different vehicles to reduce the development time and cost.

(10) In particular, the road slope estimator comprises a Pitch Compensation Block, which corrects the longitudinal acceleration to limit the effect of pitch disturbance on the measurement of the longitudinal acceleration made by an accelerometric sensor, when the vehicle is stationary (static), is braking and is accelerating (dynamic). In essence, the accelerometric sensor measures all the main effects involved in the rigid body mechanics on an object with firm suspension when it is stationary or moving longitudinally or even when cornering. Among the different overlapping effects that are to be purged there is pitching. The pitching phenomenon is both a static and a dynamic phenomenon: in practice, the static part is related to how the vehicle settles down on the suspension based on the load distribution on the floor when the vehicle is stationary, while the dynamic part is an effect that is closely related to braking and accelerating, but extinguishes in a fast transient. The static pitch, which represents a large part of the pitching disturbance, is managed according to two different logics, wherein the first logic considers a load mass evenly distributed on the floor, and then, based on the vehicle suspension structure diagram (target), a static acceleration correction is computed, while the second logic is based, in addition to the previous correction, on information from a vehicle mass estimator.

(11) The road slope estimator further comprises a Stationary Lateral Compensation Block, which makes a correction to limit the effect of the vehicle lateral dynamics that, in bend, introduces an additional term to the longitudinal acceleration, hence a new error to the signal. The block is based on a bike model and on target parameters of the vehicle on which the estimator is implemented.

(12) The road slope estimator further comprises a Linear Kalman Observer designed to estimate the road slope. In order to define the Observer, it is fundamental to describe plant with a detailed model useful to quantify entity of different terms in play. In particular, longitudinal acceleration measured by sensor is expressed in canonical form in order to understand disturbances and system states for estimation.

(13) With reference to FIG. 2, according to rigid body dynamics, sensor position and direction can be described in fixed inertial reference axis always parallel to road R.sub.0 as:

(14) ( x sens y sens z sens ) R 0 = r .Math. sens = r .Math. OG + R body o .Math. r .Math. st ( 2 )
where R.sub.body is a reference axis fixed with vehicle which rotates on vehicle center of gravity CoG of pitch angle.

(15) Deriving equation (2), it results in:
custom character.sub.sens=custom character.sub.OG+custom character.sub.body.sup.o.Math.custom character.sub.st+R.sub.body.sup.o.Math.custom character.sub.st(3)
and again:

(16) a .Math. sens = a .Math. OG + R ^ body o .Math. r .Math. st + 2 .Math. R ^ body o .Math. r . .Math. st + R body o .Math. r .Math. .Math. st + g .Math. ( 4 ) ( x .Math. sens y .Math. sens z .Math. sens ) R 0 = a .Math. sens R 0 = a .Math. OG + R body o .Math. r .Math. .Math. st + ? . ? ( R body o .Math. r .Math. st ) + .Math. + ? ? ( ? ? ( R body o .Math. r .Math. st ) ) + 2 .Math. ? ? ( R body o .Math. r . .Math. st ) + g .Math. ( 5 )

(17) Three axis accelerations of sensor body in R.sub.o are so obtained.

(18) Then in R.sub.body:
?.sub.sens.sup.R.sup.body=R.sub.o.sup.body.Math.a.sub.sens.sup.R.sup.o
only about longitudinal axis:

(19) a x sense R body = x .Math. G .Math. cos ? - z .Math. G .Math. sin ? + ? .Math. .Math. z sens + .Math. - ? . 2 .Math. x sens + g .Math. sin ? ( 6 )

(20) Then, if the road slope angle ? is considered:

(21) a x sens R body = x .Math. G .Math. cos ? - z .Math. G .Math. sin ? + ? .Math. .Math. z sens + .Math. - ? . 2 .Math. x sens + g .Math. sin ( ? + ? ) ( 7 )

(22) This equation is a non-linear, but time-invariant and can be approximated with a general already known linear, time-invariant relation:
a.sub.x.sub.Meas=a.sub.x+a.sub.disturb+g.Math.sin ?(8)

(23) This equation is useful to estimate road slope independently from vehicle mass using only the longitudinal acceleration model and linear Kalman filtering theory. Term a.sub.disturb is the part of the vehicle's acceleration caused by disturbances not described by the model for the longitudinal dynamics. It should cover all the model errors found in this section. So, given a good description on how the state a.sub.disturb is changing, a Kalman filter can be used to estimate system states and to filter this disturbance.

(24) The Kalman filter is then designed using:
x=[v.sub.vehicle sin ?].sup.r;u=a.sub.x.sub.meas;y=v.sub.vehicle
so that:
{dot over (v)}.sub.vehicle=a.sub.x??g.Math.sin ?+a.sub.x.sub.Meas?a.sub.disturbcustom character{dot over (x)}.sub.1=?g.Math.x.sub.2+u+?(9)

(25) All the process state variables are considered Gaussian stochastic ones, so the assumed noise covariance matrix has been defined in coherence with physical characteristics of stochastic variables, and then tuned in order to get the best estimation possible. In this estimation framework, term a.sub.disturb may be modeled as a simple process noise ? over slope state.

(26) About slope state, it has been modeled according to two different approaches, the first time under the assumption that the state x.sub.2 undergoes slight changes each sampling period, so its first derivative is equal to Gaussian noise:
{dot over (x)}.sub.2=?(10)
and a second method according to a first-order Gauss-Markov process:

(27) x . 2 = - 1 ? .Math. x 2 + ? ( 11 )
where ? is a tuned parameter according to slowest slope which is to be observed.

(28) This last approach is useful especially to filter desired slope dynamics from pitch disturbance, so give the possibility to eliminate pitch disturbance leaving only slope information, while there is the need to pre-filter longitudinal acceleration from pitch dynamics also partially. Both approaches are valid and give us interesting estimation results. The latter is preferred, so using a partially pitch corrected longitudinal acceleration as input for explained observer.

(29) The road slope estimator further comprises an Enable Logic Block, which is designed to enable and disable road slope estimation in certain situations in which this estimate is unreliable. In fact, the road slope estimator is always active, or rather is active in as many situations of the vehicle as possible. The basic idea of the road slope estimator is to obtain an estimate as much as possible available. The only limitation is when road slope estimation when the vehicle in dynamic cornering when the lateral acceleration is above a certain threshold. In these cases, the longitudinal acceleration is too soiled by the effect of the lateral acceleration and hence it is preferred to disable the estimation and indicate this situation in a status signal that accompanies the estimate. The disabling threshold changes from vehicle to vehicle based on design specifications from the dynamic standpoint (e.g., understeer gradient and gradient balance). Estimation is disabled when the threshold is reached, and is then re-enabled when a different lower threshold is reached, so as to avoid spurious effects of activation/deactivation on the algorithms downstream of the enablement.

(30) The road slope estimator further comprises a Speed. Zero Slope Estimator which is activated when the Linear Kalman Observer is switched off by the Enable Logic Block, during wheel speed measurements blind windows, and smoothly joins dynamic slope estimation to static slope estimation based on the only acceleration measure from inertial sensor avoiding final braking pitch and other noisy effects.

(31) FIG. 3 depicts a block diagram representing the functional architecture of a vehicle mass estimator according to the present invention, and where all the input and output quantities based on which estimator operates are indicated.

(32) The vehicle mass estimator comprises three Real Time Identification Algorithm & Model Matching Blocks associated with lower powertrain gears, one for 1.sup.st gear, one for the 2.sup.nd gear and one for the 3.sup.rd gear, which are activated where longitudinal acceleration entity and powertrain torque estimated measure are significant.

(33) Each one of the three blocks implements an estimation algorithm which is based on longitudinal motion in a condition that a vehicle accelerates with clutch engaged and without turning or turning with a limited lateral acceleration, with the following additional hypotheses: nominal known drag and rolling resistances; and no limitation about available surface adhesion.

(34) Mechanical equilibrium equation at front wheels is:

(35) ? .Math. C traction .Math. ? diff .Math. ? gear = ( M .Math. R + ? .Math. J mot .Math. ? diff 2 . ? gear 2 R + J wheels R ) .Math. x .Math. ( 12 )
where ?.sub.diff and ?.sub.gear are respectively differential and gearbox ratio and C.sub.traction is traction torque, so applied motor torque at wheels minus frictions torque from powertrain estimations.

(36) In discrete version with sampling time T:

(37) ? ( k - 1 ) T k T C traction d t = .Math. ( M .Math. R ? .Math. ? diff .Math. ? gear + J mot .Math. ? diff .Math. ? gear R + J wheels R .Math. ? .Math. ? diff .Math. ? gear ) .Math. .Math. ( x ( k * T ) - x ( ( k * - 1 ) T ) ) ( 13 )

(38) Approximating the first term of equation with Bilinear Transformation Method:

(39) ? ( k - 1 ) T k T C traction d t = [ ( 1 - ? ) .Math. C m ( ( k - 1 ) T ) + ? .Math. C m ( k T ) ] .Math. T with 0 ? ? ? 1
with ?=1 (Backward Euler Discretization):

(40) 0 C traction ( k ) = ( M .Math. R ? .Math. ? diff .Math. ? gear .Math. T + J mot .Math. ? diff .Math. ? gear R .Math. T + J wheels R .Math. ? .Math. ? diff .Math. ? gear .Math. T ) .Math. .Math. ( x ( k * ) - x ( ( k * - 1 ) ) ) ( 14 )

(41) In order to be robust to slope disturbance we can pass to consider in place of vehicle speed difference, measured longitudinal acceleration multiplied to sampling time:

(42) C traction ( k ) = ( M .Math. R ? .Math. ? diff .Math. ? gear .Math. T + J mot .Math. ? diff .Math. ? gear R .Math. T + J wheels R .Math. ? .Math. ? diff .Math. ? gear .Math. T ) .Math. .Math. ( x .Math. ( k ) .Math. T ) ( 15 )

(43) This longitudinal equation (15) can be rewritten in following regression form:

(44) y ( k ) = ? T ( k ) .Math. ? ( k ) + ? ( k ) with : y ( k ) = C traction ( k ) ? T ( k ) = x .Math. ( k ) .Math. T ? ( k ) = M .Math. R ? .Math. ? diff .Math. ? gear .Math. T + J mot .Math. ? diff .Math. ? gear R .Math. T + J wheels R .Math. ? .Math. ? diff .Math. ? gear .Math. T ( 16 )

(45) From ?(k), vehicle mass M is:

(46) M = ? ( k ) .Math. ? .Math. ? diff .Math. ? gear .Math. T R - ? .Math. J mot .Math. ? diff 2 .Math. ? gear 2 R 2 - J wheels R 2 ( 17 )
where identified ?(k) is the parameter vector and ?(k) denotes lumped disturbance which can degrade the estimation performance of vehicle mass and which must be minimized. In order to overcome this degradation has been used RLS algorithm with forgetting factor (?) which minimizes prediction error according to quadratic principle, and reduces RLS problem about progressive decay of algorithm reactivity with sampling aging:
?(k)=?(k?1)+K(k).Math.?(k)
K(k)=Vff(k).Math.?(k)
?(k)=y(k)??.sup.T(k).Math.?(k?1)
Vff(k)=(1/?).Math.(Vff(k?1)??.sub.k-1.sup.?1.Math.Vff(k?1).Math.?(k).Math.?.sup.T(k).Math.Vff(k?1))
?.sub.k-1=?+?.sup.T(k).Math.Vff(k?1).Math.?(k)(18)

(47) Where Vff(k) is not so different from estimation variance for every sampling period and forgetting factor ? has been managed in a typical mode for estimation of constant parameters:
?(k)=?.Math.?(k?1)+(1??)
?(0)=?.sub.0(19) with ??(0; 1) and ?.sub.0?(0;1)

(48) The vehicle mass estimator further comprises a Merge by Variance Weighted Average Block, where mixed mass estimation from different gears is obtained by using a weighted mean where performed choice about weights is:

(49) ? i = 1 ? i 2

(50) The weighted mean in this case is:

(51) M _ = .Math. i ( M i / ? i 2 ) .Math. i ( 1 / ? i 2 )
and the variance of the weighted mean is:

(52) ? 2 M = 1 .Math. i ( 1 ? i 2 )

(53) The significance of formulation Merge by Variance Weighted Average is that this weighted mean is the maximum likelihood estimator of the mean of the probability distributions under the assumption that they are independent and normally distributed with the same mean.

(54) The vehicle mass estimator further comprises a pitch compensation block, which performs the same compensation as that performed by the pitch compensation block of the road slope estimator. In practice, the same corrections as those performed to the input signals in the road slope estimation are replicated. The only difference is the lack of additional correction due to the mass estimation. In this block, in fact, in the absence of knowledge of the vehicle mass, a uniform distribution of the vehicle mass of the entire vehicle floor is assumed, thus admitting an indelible downstream computation error due to vehicle balance. Is to be noted that in this case this effect is acceptable because it is completely hidden inside of the error committed by using the engine torque signal (signal not measured but in turn estimated by the engine control-unit).

(55) The vehicle mass estimator further comprises a stationary lateral compensation block, which makes a correction to limit the effect of the vehicle lateral dynamics, which in bend introduces an additional term to the longitudinal acceleration, hence a new error to the signal. The block is based on a bike model and on target parameters of the vehicle on which the estimator is implemented.

(56) The vehicle mass estimator further comprises a manual gear estimator block, which, in the absence of an automatic transmission, estimates the gear selected by the driver and indicates when engagement of the powertrain system is successfully completed. In practice, based on vehicle speed, engine speed, clutch pedal position, etc., it recognizes synchronization of a gear shift to enable recursive identification algorithms in the right time, i.e., when the real system is as similar as possible to the mathematical model implemented in the real-time identification Algorithm & model matching blocks.

(57) In the end, the vehicle mass estimator further comprises an enable mass & gear block, which manages activation of three different estimators (one for a corresponding gear) and enable them only when the real system is more likely modellable in accordance with the equations set. It is carried out in first, second and third gear, where vehicle acceleration and engine torque gradients occur such as to better highlight the differences of mass loaded on the vehicle. Activations are based on calibratable thresholds in turn based on various signals coming mainly from the powertrain and on internal estimates and are intended to minimize uncertainties deriving mainly from powertrain signals that are partly estimated (engine torque/fiction) and partly measured (engine speed, accelerator pedal, etc. . . . ).