Attitude estimation apparatus and transportation machine
10634694 ยท 2020-04-28
Assignee
Inventors
Cpc classification
B60W2040/1307
PERFORMING OPERATIONS; TRANSPORTING
G01C21/188
PHYSICS
G01P3/42
PHYSICS
G01C19/00
PHYSICS
G01P21/00
PHYSICS
B60W2300/36
PERFORMING OPERATIONS; TRANSPORTING
G01C21/28
PHYSICS
B60T2250/04
PERFORMING OPERATIONS; TRANSPORTING
B60W40/12
PERFORMING OPERATIONS; TRANSPORTING
International classification
G01C21/16
PHYSICS
G01P21/00
PHYSICS
G01C19/00
PHYSICS
B60W40/12
PERFORMING OPERATIONS; TRANSPORTING
G01C21/28
PHYSICS
G01P3/42
PHYSICS
Abstract
An attitude estimation apparatus for estimating the attitude of a movable body includes an attitude estimation unit for estimating the roll angle of the movable body and for using a calculation process to estimate the offset error for at least one of first and second angular velocity detection units and first, second and third acceleration detection units. The attitude estimation unit includes a plurality of Kalman filters that each receive at least two or more imaginary offset quantities for a detection unit of interest, the imaginary offset quantities being different from each other. Each of the Kalman filters uses detected values from the detection units, estimated values from the previous estimation operation and the imaginary offset quantities to calculate a likelihood, which indicates how reliable the estimated values are. The attitude estimation unit weights the estimated values from the Kalman filters based on the likelihood to estimate the roll angle of the movable body.
Claims
1. An attitude estimation apparatus for estimating an attitude of a movable body, comprising: a first angular velocity detection unit configured to detect a first angular velocity, the first angular velocity being an angular velocity of the movable body about a first axis; a second angular velocity detection unit configured to detect a second angular velocity, the second angular velocity being an angular velocity of the movable body about a second axis, the second axis being in a different direction than that of the first axis; a first acceleration detection unit configured to detect a first acceleration, the first acceleration being an acceleration of the movable body in a first direction; a second acceleration detection unit configured to detect a second acceleration, the second acceleration being an acceleration of the movable body in a second direction, the second direction being different from the first direction; a third acceleration detection unit configured to detect a third acceleration, the third acceleration being an acceleration of the movable body in a third direction, the third direction being different from the first and second directions; a velocity information detection unit configured to detect information about a moving velocity in a direction of advance of the movable body; and an attitude estimation unit configured to estimate a roll angle of the movable body and estimate a first offset error using a calculation process, the first offset error being an offset error in at least one of the first angular velocity detection unit, the second angular velocity detection unit, the first acceleration detection unit, the second acceleration detection unit, or the third acceleration detection unit, wherein the attitude estimation unit includes: a plurality of Kalman filters each configured to receive, as an imaginary offset quantity for the first offset error, an associated one of a plurality of values including at least two values different from each other, and each of the plurality of Kalman filters uses, in a current estimation operation, a detected value from the first angular velocity detection unit, a detected value from the second angular velocity detection unit, a detected value from the first acceleration detection unit, a detected value from the second acceleration detection unit, a detected value from the third acceleration detection unit, a detected value from the velocity information detection unit, an estimated value of the roll angle from a previous estimation operation, and the imaginary offset quantity to calculate the estimated value of the roll angle of the movable body and a likelihood in the current estimation operation, the likelihood representing a reliability of an estimation result, and the attitude estimation unit estimates the first offset error based on the likelihoods obtained from the plurality of Kalman filters and the imaginary offset quantities provided to the plurality of Kalman filters.
2. The attitude estimation apparatus according to claim 1, wherein the attitude estimation unit estimates the first offset error by weighting the imaginary offset quantity received by each of the plurality of Kalman filters based on the likelihood obtained from each respective one of the plurality of Kalman filters.
3. The attitude estimation apparatus according to claim 1, wherein the attitude estimation unit estimates the roll angle of the movable body based on the likelihoods obtained from the plurality of Kalman filters and the roll angles of the movable body obtained from the plurality of Kalman filters.
4. The attitude estimation apparatus according to claim 1, wherein each of the plurality of Kalman filters includes: a first Kalman filter configured to receive, as the imaginary offset quantity, a value larger than a maximum possible value of an offset quantity for a detection unit of interest from among the first angular velocity detection unit, the second angular velocity detection unit, the first acceleration detection unit, the second acceleration detection unit, and the third acceleration detection unit, the detection unit of interest being the detection unit from among the first angular velocity detection unit, the second angular velocity detection unit, the first acceleration detection unit, the second acceleration detection unit, and the third acceleration detection unit with which the first offset error is associated; a second Kalman filter configured to receive, as the imaginary offset quantity, a value smaller than a minimum possible value of the offset quantity of the detection unit of interest; and a third Kalman filter configured to receive, as the imaginary offset quantity, a value between the minimum possible value and the maximum possible value of the offset quantity of the detection unit of interest.
5. The attitude estimation apparatus according to claim 1, wherein the first offset error is the offset error from one of the first acceleration detection unit, the second acceleration detection unit, and the third acceleration detection unit.
6. The attitude estimation apparatus according to claim 1, wherein each of the plurality of Kalman filters calculates a second offset error in addition to the roll angle of the movable body and the likelihood, the second offset error being the offset error from one of the first angular velocity detection unit, the second angular velocity detection unit, the first acceleration detection unit, the second acceleration detection unit, and the third acceleration detection unit, other than a detection unit of interest, and, in a current estimation operation, calculates the estimated value of the roll angle of the movable body, an estimated value of the second offset error and the likelihood using the detected value from the first angular velocity detection unit, the detected value from the second angular velocity detection unit, the detected value from the first acceleration detection unit, the detected value from the second acceleration detection unit, the detected value from the third acceleration detection unit, the detected value from the velocity information detection unit, the estimated value of the roll angle from the previous estimation operation, an estimated value of the second offset error from the previous estimation operation, and the imaginary offset quantity, wherein the attitude estimation unit estimates the second offset error based on the likelihoods obtained from the plurality of Kalman filters and the second offset errors obtained from the plurality of Kalman filters.
7. The attitude estimation apparatus according to claim 6, wherein the second offset error is the offset error from a detection unit, from among the first angular velocity detection unit, the second angular velocity detection unit, the first acceleration detection unit, the second acceleration detection unit, and the third acceleration detection unit, other than the detection unit of interest.
8. The attitude estimation apparatus according to claim 7, wherein the second offset error includes the offset errors from the first angular velocity detection unit and the second angular velocity detection unit.
9. The attitude estimation apparatus according to claim 8, wherein the second offset error includes the offset error from a detection unit, from among the first angular velocity detection unit, the second angular velocity detection unit, the first acceleration detection unit, the second acceleration detection unit, and the third acceleration detection unit, other than the detection unit of interest.
10. The attitude estimation apparatus according to claim 9, wherein: the first angular velocity detection unit detects a roll angular velocity of the movable body, the second angular velocity detection unit detects a yaw angular velocity of the movable body, and the second offset error includes the offset error from the first angular velocity detection unit, the offset error from the second angular velocity detection unit and the offset error from one of the first acceleration detection unit and the second acceleration detection unit that is other than the detection unit of interest.
11. The attitude estimation apparatus according to claim 1, wherein the first acceleration detection unit detects an acceleration in a top-bottom direction of the movable body, the second acceleration detection unit detects an acceleration in a left-right direction of the movable body, the third acceleration detection unit detects an acceleration in a front-rear direction of the movable body, and the first offset error is the offset error from the first acceleration detection unit or the offset error from the second acceleration detection unit.
12. The attitude estimation apparatus according to claim 6, further comprising: a third angular velocity detection unit configured to detect a third angular velocity, the third angular velocity being an angular velocity of the movable body about a third axis, the third axis being different from the first and second axes, wherein each of the plurality of Kalman filters, in a current estimation operation, calculates the estimated value of the roll angle of the movable body, an estimated value of the pitch angle of the movable body and the likelihood using the detected value from the first angular velocity detection unit, the detected value from the second angular velocity detection unit, a detected value from the third angular velocity detection unit, the detected value from the first acceleration detection unit, the detected value from the second acceleration detection unit, the detected value from the third acceleration detection unit, the detected value from the velocity information detection unit, the estimated value of the roll angle from the previous estimation operation, the estimated value of the pitch angle from the previous estimation operation, the imaginary offset quantity, and an estimated value of the second offset error from the previous estimation operation, the attitude estimation unit estimates the first offset quantity based on the likelihoods obtained from the plurality of Kalman filters and the imaginary offset quantities provided to the plurality of Kalman filters, estimates the roll angle of the movable body based on the likelihoods obtained from the plurality of Kalman filters and the roll angles of the movable body obtained from the plurality of Kalman filters, and estimates the pitch angle of the movable body based on the likelihoods obtained from the plurality of Kalman filters and the pitch angles of the movable body obtained from the plurality of Kalman filters.
13. The attitude estimation apparatus according to claim 12, wherein each of the plurality of Kalman filters, in the current estimation operation, calculates the estimated value of the roll angle of the movable body, the estimated value of the pitch angle of the movable body and the likelihood using a characteristic equation in which a value of a predetermined function is a constant, the function having, as its elements, the detected value from the first angular velocity detection unit, the detected value from the second angular velocity detection unit, the detected value from the third angular velocity detection unit, the detected value from the first acceleration detection unit, the detected value from the second acceleration detection unit, the detected value from the third acceleration detection unit, the detected value from the velocity information detection unit, the estimated value of the roll angle from the previous estimation operation, the estimated value of the pitch angle from the previous estimation operation, the imaginary offset quantity, and the estimated value of the second offset error from the previous estimation operation.
14. The attitude estimation apparatus according to claim 12, further comprising: a load estimation unit configured to estimate a load applied to at least one of a front wheel and a rear wheel included in the movable body, wherein the load estimation unit estimates the load based on the detected value from the first angular velocity detection unit, the detected value from the second angular velocity detection unit, the detected value from the third angular velocity detection unit, the detected value from the first acceleration detection unit, the detected value from the second acceleration detection unit, the detected value from the third acceleration detection unit, the detected value from the velocity information detection unit, and the roll angle of the movable body, the pitch angle of the movable body and the first offset error estimated by the attitude estimation unit.
15. The attitude estimation apparatus according to claim 14, further comprising: a suspension stroke quantity estimation unit configured to estimate a stroke quantity of a suspension provided on at least one of the front wheel and the rear wheel of the movable body, wherein the load estimation unit estimates the load applied to both the front wheel and the rear wheel provided on the movable body, and the suspension stroke quantity estimation unit estimates the stroke quantity of the suspension based on an estimated value of the load applied to both the front wheel and the rear wheel estimated by the load estimation unit.
16. The attitude estimation apparatus according to claim 15, further comprising: an elevation/depression angle estimation unit configured to estimate an elevation/depression angle based on an estimated value of the stroke quantity of the suspension estimated by the suspension stroke quantity estimation unit, the elevation/depression angle being an angle between an axis in a vehicle-body coordinate system fixed to the movable body and an axis in a road-surface coordinate system fixed to a road surface in contact with the front wheel or the rear wheel.
17. The attitude estimation apparatus according to claim 16, wherein each of the plurality of Kalman filters calculates the estimated value of the roll angle of the movable body, the estimated value of the pitch angle of the movable body, and the likelihood taking account of an estimated value of the elevation/depression angle estimated by the elevation/depression angle estimation unit.
18. The attitude estimation apparatus according to claim 16, further comprising: a slope estimation unit configured to estimate a longitudinal slope of the road surface on which the movable body is placed based on an estimated value of the elevation/depression angle estimated by the elevation/depression angle estimation unit and the estimated values of the roll angle and the pitch angle of the movable body estimated by the attitude estimation unit.
19. A transportation machine comprising: the movable body; and the attitude estimation apparatus according to claim 1.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
(30)
(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)
(40)
(41)
(42)
(43)
(44)
(45)
(46)
(47)
(48)
(49)
(50)
(51)
(52)
EMBODIMENTS FOR CARRYING OUT THE INVENTION
(53) Embodiments of the present invention will be described with reference to the drawings. In the drawings referred to below, the size ratios in the drawings and the actual size ratios are not necessarily identical.
(54) <Definitions>
(55) The coordinate axes will be defined below with reference to the drawings.
e.sub.o=(e.sub.ox,e.sub.oy,e.sub.oz)
e.sub.b=(e.sub.bx,e.sub.by,e.sub.bz)
e.sub.r=(e.sub.rx,e.sub.ry,e.sub.rz) [Formula 1]
(56) The inertia coordinate system e.sub.o is a coordinate system fixed to the horizontal plane of the earth, and the z-axis is defined as the upward vertical direction.
(57) In the vehicle coordinate system e.sub.b, when the vehicle is standing upright on the horizontal road surface, the x- and y-axes are in the horizontal plane and the x-axis is fixed to the vehicle body so as to be the forward direction with respect to the vehicle. The angle formed by the vehicle coordinate system e.sub.b and the inertia coordinate system e.sub.o changes as the suspension of the vehicle moves. The suspension is a shock absorber provided between the vehicle wheels 2 and 3 and the vehicle body 1.
(58) In the road-surface coordinate system e.sub.r, the y-axis is the same as the y-axis of the vehicle coordinate system e.sub.b, and the vehicle coordinate system e.sub.b has been rotated about the y-axis such that the direction extending from the grounding point P3 between the rear wheel 3 and road surface 200 to the grounding point P2 between the front wheel 2 and road surface 200 is the same as the x-axis.
(59) As used herein, yaw angle means a rotational angle about the z-axis of the inertia coordinate system e.sub.o (e.sub.oz), yaw angular velocity means a rate of change over time of the yaw angle, and yaw angular acceleration means a rate of change over time of the yaw angular velocity. As used herein, pitch angle means a rotational angle about the y-axis of the inertia coordinate system e.sub.o (e.sub.oy), pitch angular velocity means a rate of change over time of the pitch angle, and pitch angular acceleration means a rate of change over time of the pitch angular velocity. As used herein, roll angle means a rotational angle about the x-axis of the vehicle coordinate system e.sub.b (e.sub.bx), roll angular velocity means a rate of change over time of the roll angle, and roll angular acceleration means a rate of change over time of the roll angular velocity.
(60) As used herein, top-bottom direction means the direction of the z-axis of the vehicle coordinate system e.sub.b (e.sub.bz), front-rear direction means the direction of the x-axis of the vehicle coordinate system e.sub.b (e.sub.bx), and left-right direction means the direction of the y-axis of the vehicle coordinate system e.sub.b (e.sub.by).
(61) Roll angle, roll angular velocity, roll angular acceleration, yaw angle, yaw angular velocity, yaw angular acceleration, pitch angle, pitch angular velocity, pitch angular acceleration, top-bottom acceleration, front-rear acceleration, and left-right acceleration will be denoted by the following characters. One dot on the character denoting a parameter means first-order temporal differential.
(62) TABLE-US-00001 TABLE 1 Parameter Meaning yaw angle .sub.ya yaw angular velocity {dot over ()}.sub.ya yaw angular acceleration pitch angle .sub.pi pitch angular velocity {dot over ()}.sub.pi pitch angular acceleration roll angle .sub.ro roll angular velocity {dot over ()}.sub.ro roll angular acceleration G.sub.z top bottom acceleration G.sub.x front-rear acceleration G.sub.y left-right acceleration
[First Embodiment]
(63) A first embodiment of the present invention will be described.
(64) <Vehicle>
(65)
(66) As shown in
(67) A rear-wheel velocity sensor 7 is attached to the wheel body of the rear wheel 3 for detecting the rotational velocity of the rear wheel 3. According to the present embodiment, the rear-wheel velocity sensor 7 corresponds to the velocity information detection unit.
(68) Handlebars 11 are attached to the top of the front portion of the vehicle body 1 so as to be swingable to the left and right. In the implementation shown in
(69) Output signals from the group of sensors 5 and rear-wheel velocity sensor 7 are provided to the ECU 20. The ECU 20 controls the various parts of the vehicle body 1, and estimates the roll angle and other parameters of the vehicle body 1 and provide these estimated values to the navigation system 12 and headlight driving device 15, for example.
(70) According to the present embodiment, the group of sensors 5, rear-wheel velocity sensor 7 and ECU 20 constitute the attitude estimation apparatus.
(71) <Configuration of Attitude Estimation Apparatus>
(72)
(73) The group of sensors 5 include a roll angular velocity sensor 21, a yaw angular velocity sensor 22, a top-bottom acceleration sensor 24, a front-rear acceleration sensor 25 and a left-right acceleration sensor 26.
(74) The roll angular acceleration sensor 21 is provided on the vehicle body 1 so as to detect the roll angular velocity of the vehicle body 1. The yaw angular velocity sensor 22 is provided on the vehicle body 1 so as to detect the yaw angular velocity of the vehicle body 1. According to the present embodiment, the roll angular velocity sensor 21 corresponds to the first angular velocity detection unit and the yaw angular velocity sensor 22 corresponds to the second angular velocity detection unit.
(75) The top-bottom acceleration sensor 24 is provided on the vehicle body 1 so as to detect the acceleration in the top-bottom direction of the vehicle body 1. The front-rear acceleration sensor 25 is provided on the vehicle body 1 so as to detect the acceleration in the front-rear direction of the vehicle body 1. The left-right acceleration sensor 26 is provided on the vehicle body 1 so as to detect the acceleration in the left-right direction of the vehicle body 1. According to the present embodiment, the top-bottom acceleration sensor 24 corresponds to the first acceleration detection unit, the front-rear acceleration sensor 25 corresponds to the second acceleration detection unit, and the left-right acceleration sensor 26 corresponds to the third acceleration detection unit.
(76) In this exemplary implementation, the top-bottom acceleration sensor 24, front-rear acceleration sensor 25 and left-right acceleration sensor 26 detect the accelerations in directions that are perpendicular to each other. This is not essential and it is only required that the accelerations in at least three different directions be detected.
(77) The output signal from the roll angular velocity sensor 21 is passed through the low-pass filter 31 and is fed into the calculation unit 49 and differentiator 41 as a roll angular velocity. The low-pass filter 31 removes noise from the output signal from of the roll angular velocity sensor 21. The differentiator 41 provides, to the calculation unit 49, the differential value of the roll angular velocity as a roll angular acceleration.
(78) The output signal from the yaw angular velocity sensor 22 is passed through the low-pass filter 32 and is fed into the calculation unit 49 and differentiator 42 as a yaw angular velocity. The low-pass filter 32 removes noise from the output signal from the yaw angular velocity sensor 22. The differentiator 42 provides, to the calculation unit 49, the differential value of the yaw angular velocity as a yaw angular acceleration.
(79) The output signal from the top-bottom acceleration sensor 24 is passed through the low-pass filter 34 and is provided to the calculation unit 49 as a top-bottom acceleration. The output signal from the front-rear acceleration sensor 25 is passed through the low-pass filter 35 and is fed into the calculation unit 49 as a front-rear acceleration. The output signal from the left-right acceleration sensor 26 is passed through the low-pass filter 36 and is provided to the calculation unit 49 as a left-right acceleration.
(80) The frequency characteristics of the low-pass filters 31, 32, 34, 35 and 36 are decided depending on the output characteristics of the corresponding sensors 21, 22, 24, 25 and 26. More specifically, the frequency characteristics of the noise components contained in the output signals from the sensors 21, 22, 24, 25 and 26 can be identified in advance, at the stage of apparatus design. The low-pass filters 31, 32, 34, 35 and 36 may be designed to block these noise components and pass the detection signals of the sensors 21, 22, 24, 25 and 26, which will be needed.
(81) The output signal from the rear-wheel velocity sensor 7 is fed into the calculation unit 49 as a rear-wheel velocity. The rear-wheel velocity is a rotational velocity of the outermost periphery of the tire, assuming that there is no slide between the road surface and the tire of the rear wheel 3 and, in reality, calculated based on the output signal of the rear-wheel velocity sensor 7 and the size of the tire. To simplify the explanation,
(82) The calculation unit 49 receives detected values relating to roll angular velocity, roll angular acceleration, yaw acceleration, yaw angular acceleration, top-bottom acceleration, front-rear acceleration, left-right acceleration, and rear-wheel velocity. Based on these values, the calculation unit 49 estimates the roll angle, front-rear direction vehicle velocity, roll angular velocity sensor offset, yaw angular velocity sensor offset, left-right acceleration sensor offset and top-bottom acceleration sensor offset before outputting them.
(83) The roll angular velocity sensor offset is the offset error for the roll angular velocity sensor 21. The yaw angular velocity sensor offset is the offset error for the yaw angular velocity sensor 22. The left-right acceleration sensor offset is the offset error for the left-right acceleration sensor 26. The top-bottom acceleration sensor offset is the offset error for the top-bottom acceleration sensor 24.
(84) The rear-wheel velocity detected by the rear-wheel velocity sensor 7, and the front-rear direction vehicle velocity, roll angular velocity sensor offset, yaw angular velocity sensor offset, left-right acceleration sensor offset, and top-bottom acceleration sensor offset estimated by the calculation unit 49 will be denoted by the following characters.
(85) TABLE-US-00002 TABLE 2 Parameter Meaning v.sub.r rear-wheel velocity V.sub.x front-rear-direction vehicle velocity b.sub.ro roll angular velocity sensor offset b.sub.ya yaw angular velocity sensor offset b.sub.y left-right acceleration sensor offset b.sub.z top-bottom acceleration sensor offset
(86) <Configuration of Kalman Filter>
(87)
(88)
(89) The Kalman filters 50 (50_1, 50_2 and 50_3) use a kinematic model for the vehicle 100, described below.
(90) In
(91) The system equation that is an equation used for the calculation at the system equation calculation unit 51 includes the function f(x,u). The observation equation that is an equation used for the calculation at the observation equation calculation unit 52 includes the function h(x,u). The Kalman gain calculation unit 56 includes a fifth-degree Kalman gain K.
(92) The imaginary offset input unit 59 provides, as an offset value for a predetermined one of the sensors of the group 5, a predetermined value for each of the Kalman filters 50 (50_1, 50_2 and 50_3) to the observation equation calculation unit 52. According to the present embodiment, the imaginary offset input unit 59 is configured to provide the offset value b.sub.y for the left-right acceleration sensor 26 to the observation equation calculation unit 52. In this implementation, the left-right acceleration sensor 26 corresponds to the detection unit of interest, or in other words, in this example the left-right acceleration sensor 26 is a detection unit associated with the offset error whose imaginary offset quantity is provided in each of the Kalman filters 50 (50_1, 50_2 and 50_3).
(93) In
(94) The likelihood calculation unit 57 determines a likelihood using calculation, the likelihood being indicative of the reliability of the result from the estimation by the Kalman filter 50 (50_1, 50_2 or 50_3). The low-pass filter 58 is a calculation unit for filtering the value calculated by the likelihood calculation unit 57. The low-pass filter 58 may be replaced by any other calculation unit that can implement the same functionality. It is optional whether the low-pass filter 58 is included. Examples of the calculation performed by the likelihood calculation unit 57 will be described further below.
(95) The calculation units 51, 52, 53, 54, 55, 56, 57 and 58 constituting a Kalman filter 50 may be implemented by, for example, a program that has been prepared in advance being performed by the ECU 20. Alternatively, some or all of the calculation units 51, 52, 53, 54, 55, 56, 57 and 58 may be implemented by independent hardware mounted.
(96) In the current estimation operation, the following values are provided as the input parameter u of the function f(x,u) included in the system equation is the detected value of the roll angular velocity .sub.ro, the detected value of the roll angular acceleration (differential value of the roll angular velocity .sub.ro), the detected value of the yaw angular velocity .sub.ya, the yaw angular acceleration (differential value of the yaw angular velocity .sub.ya), and the detected value of the front-rear acceleration G.sub.x.
(97) Further, the following values are provided as the input parameter x of the function f(x,u) included in the system equation: the estimated value of the roll angle , the estimated value of the vehicle velocity V.sub.x, the estimated value of the roll angular velocity sensor offset b.sub.ro, the estimated value of the yaw angular velocity sensor offset b.sub.ya, and the estimated value of the top-bottom acceleration sensor offset b.sub.z from the previous estimation operation.
(98) The output from the system equation calculation unit 51 is the predicted differential value of the roll angle , the predicted differential value of the vehicle velocity V.sub.x, the predicted differential value of the roll angular velocity sensor offset b.sub.ro, the predicted differential value of the yaw angular velocity sensor offset b.sub.ya, and the predicted differential value of the top-bottom acceleration sensor offset b.sub.z.
(99) The adder 54 adds the fifth-degree Kalman gain K obtained by the previous estimation operation to the predicted differential value of the roll angle , the predicted differential value of the vehicle velocity V.sub.x, the predicted differential value of the roll angular velocity sensor offset b.sub.ro, the predicted differential value of the yaw angular velocity sensor offset b.sub.ya, and the predicted differential value of the top-bottom acceleration sensor offset b.sub.z.
(100) The predicted differential value of the roll angle , the predicted differential value of the vehicle velocity V.sub.x, the predicted differential value of the roll angular velocity sensor offset b.sub.ro, the predicted differential value of the yaw angular velocity sensor offset b.sub.ya, and the predicted differential value of the top-bottom acceleration sensor offset b.sub.z to which the Kalman gain K has been added are integrated by the integrator 55. This provides the estimated value of the roll angle , the estimated value of the vehicle velocity V.sub.x, the estimated value of the roll angular velocity sensor offset b.sub.ro, the estimated value of the yaw angular velocity sensor offset b.sub.ya, and the estimated value of the top-bottom acceleration sensor offset b.sub.z from the current estimation operation.
(101) The following values are provided as the input parameter x of the function h(x,u) included in the observation equation: the estimated value of the roll angle , the estimated value of the vehicle velocity V.sub.x, the estimated value of the roll angular velocity sensor offset b.sub.ro, the estimated value of the yaw angular velocity sensor offset b.sub.ya, and the estimated value of the top-bottom acceleration sensor offset b.sub.z. Further, as discussed above, the offset value for left-right acceleration sensor 26 provided by the imaginary offset input unit 59 is provided as the input parameter x of the function h(x,u) included in the observation equation.
(102) The output from the observation equation calculation unit 52 is the calculated value of the top-bottom acceleration G.sub.z, the calculated value of the left-right acceleration G.sub.y, and the calculated value of the rear-wheel velocity v.sub.r.
(103) The Kalman filters 50 each receive, as the input parameter y, the detected value of the top-bottom acceleration G.sub.z, the detected value of the left-right acceleration G.sub.y, and the detected value of the rear-wheel velocity v.sub.r. The Kalman gain calculation unit 56 calculates the Kalman gain K based on the difference between the detected values of the top-bottom acceleration G.sub.z, left-right acceleration G.sub.y and rear-wheel velocity v.sub.r and the calculated values (this difference may be hereinafter referred to as observation/prediction error e).
(104) Finding this kinematic model's system equation f(x,u) and observation equation h(x,u) gives the relational expression for the input parameters u and y and the output parameter x.
(105) <Finding of System Equation and Observation Equation>
(106) The present embodiment supposes the following points to simplify the kinematic model.
(107) (a) There is no rotational slide between the rear wheel 3 and road surface.
(108) (b) The side-skid velocity of the rear wheel 3 is zero.
(109) (c) The road surface is flat. Flat as used herein means a plane without irregularities, and may be inclined.
(110) (d) The vehicle 100 does not pitch.
(111) Based on suppositions (a) to (d), the kinematic model equation is found in the following manner. The differential value of the yaw angle, the differential value of the pitch angle, and the differential value of the roll angle will be denoted by the following characters.
(112) TABLE-US-00003 TABLE 3 Parameter Meaning {dot over ()} differential value of roll angle {dot over ()} differential value of yaw angle {dot over ()} differential value of pitch angle
(113) First, the following equation may be established based on a common relational expression between Euler angle and angular velocity.
(114)
(115) Supposition (d) provided above means that the pitch angle and its differential value are zero. Thus, the following equation is derived from equation (1).
(116)
(117) Based on the second row of equation (2), the pitch angular velocity .sub.pi may be deleted. This gives the following equation.
(118)
(119)
(120) In
(121) The positional vector of the mounting position PS for the group of sensors 5 relative to the origin O of the inertia coordinate system, the positional vector of the grounding point P3 of the rear wheel 3 relative to the origin O of the inertia coordinate system, the vector from the grounding point P3 of the rear wheel 3 to the mounting position PS for the group of sensors 5, and the second-order differential vector of various vectors will be denoted by the following characters. The two dots on top of the character indicating a parameter means second-order temporal differential.
(122) TABLE-US-00004 TABLE 4 Parameter Meaning r positional vector of mounting position PS for group of sensors 5 {umlaut over (r)} second-order differential vector of positional vector r r.sub.0 positional vector of grounding point P {umlaut over (r)}.sub.0 second-order differential vector of positional vector r.sub.0 vector from grounding point P to mounting position PS of group of sensors 5 {umlaut over ()} second-order differential vector of vector
(123) This gives Equation (4) below.
[Formula 5]
r=r.sub.0+(4)
(124) Gravity acceleration vector and acceleration vector detected at the mounting position PS will be denoted by the following characters. The acceleration vector G is detected by the top-bottom acceleration sensor 24 provided at the mounting position PS, front-rear acceleration sensor 25 and left-right acceleration sensor 26.
(125) TABLE-US-00005 TABLE 5 Parameter Meaning g Gravity acceleration vector G acceleration vector at mounting position PS for group of sensors 5
(126) The acceleration vector G is obtained by Equation (5) below.
[Formula 6]
G={umlaut over (r)}+g={umlaut over (r)}.sub.0+{umlaut over ()}+g (5)
(127) The right side of Equation (5) will be calculated below. The vector shown in FIG 7 is expressed by the following equation.
[Formula 7]
=[e.sub.b]=[e.sub.bx,e.sub.by,e.sub.bz](6)
(128) As discussed above, the vector e.sub.b is the basis vector of the vehicle coordinate system, where e.sub.bx corresponds to the component in the forward direction with respect to the vehicle body 1, e.sub.by corresponds to the component in the left direction with respect to the vehicle body 1, and e.sub.bz corresponds to the component in the upward direction with respect to the vehicle body 1. Based on
(129)
(130) When movements of the suspension of the vehicle 100 are considered, to speak exactly, L and h vary; however, such variances are sufficiently small compared with the values of L and h, and thus the values of L and h can be considered approximately constant.
(131) From Equation (7) provided above, the second-order differential vector of the vector can be expressed by the following equation.
(132)
(133) In Equation (8), a.sub.x, a.sub.y and a.sub.z are functions. The functions a.sub.x, a.sub.y and a.sub.z can be determined by calculating Equations (6) and (7). Using Equation (1) provided above to rearrange Equation (7) into Equation (8) removes the differential value of the roll angle and the differential value of the yaw angle .
(134) Next, the side-skid velocity of the vehicle 100 is denoted by V.sub.y. The first-order differential vector of the positional vector r.sub.0 in
(135)
(136) From Supposition (b), V.sub.y=0; when Equation (9) is first-order-differentiated, the second-order differential vector of the positional vector r is expressed by the following equation.
(137)
(138) Next, the gravity acceleration vector may be expressed by the following equation. g in the right side of Equation (11) indicates the magnitude of the gravity acceleration.
(139)
(140) Based on Equations (5), (8), (10) and (11), the acceleration vector G detected at the mounting position PS may be expressed by the following equation.
(141)
(142) The acceleration vector G detected at the mounting position PS may be expressed by the following equation using the front-rear acceleration G.sub.x detected by the front-rear acceleration sensor 25, the left-right acceleration G.sub.y detected by the left-right acceleration sensor 26, and the top-bottom acceleration G.sub.z detected by the top-bottom acceleration sensor 24.
(143)
(144) Thus, based on Equations (12) and (13), the front-rear acceleration G.sub.x, the left-right acceleration G.sub.y and the top-bottom acceleration G.sub.z may be expressed by the following equation.
(145)
(146) Next, the relationship between the rear-wheel velocity v.sub.r and vehicle velocity V.sub.x is determined. Supposition (a) means that there is no slide between the rear wheel 3 and road surface 200, and thus the relationship expressed by the following equation can be established between the rear-wheel velocity v.sub.r and vehicle velocity V.sub.x.
(147)
(148) Equation (15) gives the following equation.
(149)
(150) Equations (1), (14) and (16) give the following equations.
(151)
(152) Each of the Kalman filters 50, at the system equation calculation unit 51, uses Equation (17) as the system equation to perform calculation, and, at the observation equation calculation unit 52, uses Equation (18) as the observation equation to perform calculation.
(153) Even if the roll angular velocity offset b.sub.ro, yaw angular velocity offset b.sub.ya, pitch angular velocity offset b.sub.pi and top-bottom acceleration offset b.sub.z vary, such variances are small compared with movements of the vehicle 100. Thus, the differential value of the roll angular velocity offset b.sub.ro, the differential value of the yaw angular velocity offset b.sub.ya, the differential value of the pitch angular velocity offset b.sub.pi, and the differential value of the top-bottom acceleration offset b.sub.z can be considered to be zero.
(154) Further, replacing some values in Equations (17) and (18) with values reflecting offset errors gives the following equations.
(155)
(156) When the offset errors are taken into consideration, each of the Kalman filters 50, at the system equation calculation unit 51, uses Equation (19) as the system equation to perform calculation, and, at the observation equation calculation unit 52, uses Equation (20) as the observation equation to perform calculation. Equations (19) and (20) take account of the roll angular velocity offset b.sub.ro, yaw angular velocity offset b.sub.ya, and top-bottom acceleration offset b.sub.z.
(157) As the Kalman filters 50 use Equation (19) as the system equation and use Equation (20) as the observation equation to perform calculation, the roll angle , vehicle velocity V.sub.x, roll angular velocity offset b.sub.ro, yaw angular velocity offset b.sub.ya, and top-bottom acceleration offset b.sub.z may be estimated. The right side of Equation (19) corresponds to the function f(x,u) and the right side of Equation (20) corresponds to the function h(x,u).
(158) An angular velocity sensor is more likely to have an offset error than an acceleration sensor. In view of this, according to the present embodiment, the offset error of the roll angular velocity sensor 21 (roll angular velocity sensor offset b.sub.ro) and the offset error of the yaw angular velocity sensor 22 (yaw angular velocity sensor offset b.sub.ya) are estimated. Using the estimated values of the roll angular velocity offset b.sub.ro and yaw angular velocity offset b.sub.ya in a subsequent estimation operation improves the estimation accuracy for the roll angle .
(159) Further, if the offset errors of the three acceleration sensors (top-bottom acceleration sensor 24, front-rear acceleration sensor 25 and left-right acceleration sensor 26) can be estimated, the estimation accuracy for the roll angle is expected to further improve. However, when the offset errors of the three acceleration sensors are to be estimated, observability cannot be maintained. In view of this, according to the present embodiment, the offset error of the top-bottom acceleration sensor 24 (top-bottom acceleration sensor offset b.sub.z) is estimated for the following reasons. When the roll angle of the vehicle body 1 is in a small range, the top-bottom acceleration of the vehicle body 1 does not change significantly. If the detected value of the top-bottom acceleration in such a case is changed by the top-bottom acceleration sensor offset b.sub.z, the effect of a change in the detected value of the top-bottom acceleration when the roll angle is to be estimated is large. Thus, using the estimated value of the top-bottom acceleration sensor offset b.sub.z in a subsequent estimation operation further improves the estimation accuracy found when the roll angle is in a small range.
(160) When the roll angle is to be estimated, in addition to the change in the detected value of the top-bottom acceleration, although to a lesser degree, a change in the detected value of the left-right acceleration is likely to affect the result. In view of this, as discussed above with reference to
(161) The observation equation calculation unit 52 according to the present embodiment uses, instead of Equation (20) provided above, the following equation as the observation equation to perform calculation.
(162)
(163) That is, each of the Kalman filters 50 according to the present embodiment, at the system equation calculation unit 51, uses Equation (19) as the system equation to perform calculation, and, at the observation equation calculation unit 52, uses Equation (21) as the observation equation to perform calculation.
(164) The value of b.sub.y in the first row of Equation (21) is the value of the left-right acceleration sensor offset b.sub.y(b.sub.y1,b.sub.y2,b.sub.y3) provided by the imaginary offset input unit 59 of each of the Kalman filters 50 (50_1, 50_2 and 50_3).
(165) Based on the observation equation including the left-right acceleration sensor offset b.sub.y(b.sub.y1,b.sub.y2,b.sub.y3) provided by the imaginary offset input unit 59, the observation equation calculation unit 52 calculates the estimated values of the top-bottom acceleration G.sub.z, left-right acceleration G.sub.y and rear-wheel velocity v.sub.r. These estimated values are provided to the likelihood calculation unit 57 to calculate the value relating to the likelihood indicative of the reliability of the estimation results of the Kalman filters 50 (50_1, 50_2 and 50_3).
(166) Preferably, the largest one of the values of the left-right acceleration sensor offset b.sub.y(b.sub.y1,b.sub.y2,b.sub.y3) provided by the imaginary offset input unit 59 is larger than the maximum value of the zero-point offset that can be provided by the left-right acceleration sensor 26, and the smallest value is smaller than the minimum value of the zero-point offset that can be provided by the left-right acceleration sensor 26. Thus, the observation equation calculation unit 52 can calculate the estimated values of the top-bottom acceleration G.sub.z, left-right acceleration G.sub.y and rear-wheel velocity v.sub.r taking account of situations where the value of the zero-point offset of the left-right acceleration sensor 26 is the largest.
(167) For example, if it is ensured that the value of the zero-point offset that can be provided by the left-right acceleration sensor 26 is in a range of 100 mG, then, the offset value provided by the imaginary offset input unit 59 of the Kalman filter 50_1 may be b.sub.y1100 mG and the offset value provided by the imaginary offset input unit 59 of the Kalman filter 50_3 may be b.sub.y3100 mG. In this case, the offset value provided by the imaginary offset input unit 59 of the Kalman filter 50_2 may be b.sub.y2=0 mG.
(168) As discussed above, the above-described embodiment describes an implementation where the calculation unit 49 includes three Kalman filters 50 (50_1, 50_2 and 50_3); alternatively, the value of the left-right acceleration sensor offset b.sub.y may be set in a similar way if the calculation unit 49 includes two Kalman filters 50 or four or more Kalman filters 50.
(169) Next, the likelihood calculated by the likelihood calculation unit 57 will be described. As discussed above, if the difference between an estimated value and an actual detected value is expressed by the observation/prediction error e, e is defined by the following equation.
(170)
(171) In Equation (22), y is the detected value of the top-bottom acceleration G.sub.z, the detected value of the left-right acceleration G.sub.y, and the detected value of the rear-wheel velocity v.sub.r provided by the Kalman filters 50 as input parameters. h(x) is the calculation result from the observation equation calculation unit 52.
(172) If the detection error in the top-bottom acceleration G.sub.z detected by the top-bottom acceleration sensor 24 is denoted by G.sub.z, the detection error in the left-right acceleration G.sub.y detected by the left-right acceleration sensor 26 is denoted by G.sub.y, and the detection error in the rear-wheel velocity v.sub.r detected by the rear-wheel velocity sensor 7 is denoted by v.sub.r, then, the variance-covariance matrix R of these detection errors can be expressed by the equation below. In the equation below, E(a) means the expected value of a.
(173)
(174) Further, if the estimation error in the roll angle is denoted by , the estimation error in the vehicle velocity V.sub.x is denoted by V.sub.x, the estimation error in the roll angular velocity sensor offset b.sub.ro is denoted by b.sub.ro, the estimation error in the yaw angular velocity sensor offset b.sub.ya is denoted by b.sub.ya, and the estimation error in the top-bottom acceleration sensor offset b.sub.z is denoted by b.sub.z, then, the variance-covariance matrix P of these detection errors can be expressed by the following equation.
(175)
(176) The Kalman filters 50 (50_1, 50_2 and 50_3) successively calculate the matrix P and matrix R.
(177) The variance-covariance matrix S for the error contained in the observation/prediction error e is expressed by the following equation.
[Formula 26]
S=R+HPH.sup.t (25)
(178) The superscript tin the equation provided above means transposed matrix. That is, H.sup.t means the transposed matrix of the matrix H. H is the Jacobian matrix of h(x), defined by the following equation.
(179)
(180) The likelihood calculation unit 57 calculates the likelihood based on the equation provided below, for example. This likelihood is a likelihood value that is momentary, and may be called momentary likelihood.
(181)
(182) The likelihood calculation unit 57 is only required to be configured to calculate the likelihood based on the observation/prediction error e=yh(x), and the calculation method is not limited to Equation (27).
(183) x(,V.sub.x,b.sub.ro,b.sub.ya,b.sub.z) estimated by the Kalman filter 50_1 is denoted by x.sub.1, and the likelihood calculated by the likelihood calculation unit 57 of the Kalman filter 50_1 is denoted by .sub.1. Similarly, x(,V.sub.x,b.sub.ro,b.sub.ya,b.sub.z) estimated by the Kalman filter 50_2 is denoted by x.sub.2, and the likelihood calculated by the likelihood calculation unit 57 of the Kalman filter 50_2 is denoted by .sub.2. Similarly, x(,V.sub.x,b.sub.ro,b.sub.ya,b.sub.z) estimated by the Kalman filter 50_3 is denoted by x.sub.3, and the likelihood calculated by the likelihood calculation unit 57 of the Kalman filter 50_3 is denoted by .sub.3. Then, the left-right acceleration sensor offset b.sub.y is calculated by the following equation.
(184)
(185) In Equation 28, the character with a tilde () on top of means a value obtained after the momentary likelihood has been filtered by the low-pass filter 58. It does not mean that filtering is necessary. If filtering is not performed, the value of the momentary likelihood may be used. In Equation (28), n is the number of Kalman filters 50 included in the calculation unit 49. According to the present embodiment, n=3.
(186) Each Kalman filter 50 performs the estimation process taking account of the left-right acceleration sensor offset b.sub.y(b.sub.y1,b.sub.y2,b.sub.y3) provided by the imaginary offset input unit 59. Then, the indicators that show how reliable these estimation results are are calculated, which are (.sub.1, .sub.2, .sub.3). Thus, the value of the left-right acceleration sensor offset b.sub.y provided to the imaginary offset input unit 59 included in each of the Kalman filters 50 (50_1, 50_2 and 50_3) is weighted depending on the likelihood (.sub.1, .sub.2, .sub.3), which indicates how reliable the estimation results of the Kalman filters 50 (50_1, 50_2 and 50_3) are, thereby determining the estimated value of the left-right acceleration sensor offset b.sub.y.
(187) Further, based on the same reasoning, as expressed by the equation below, x(,V.sub.x,b.sub.ro,b.sub.ya,b.sub.z) estimated by each Kalman filter 50 is weighted depending on the likelihood (.sub.1, .sub.2, .sub.3), which indicates how reliable the estimation results of the Kalman filters 50 (50_1, 50_2 and 50_3) are, thereby providing the estimation results taking account of the left-right acceleration sensor offset b.sub.y.
(188)
(189) The state quantity determination unit 503 performs the calculation represented by Equations (28) and (29). Thus, the calculation unit 49 estimates the left-right acceleration sensor offset b.sub.y, in addition to the roll angle , vehicle velocity V.sub.x, roll angular velocity offset b.sub.ro, yaw angular velocity offset b.sub.ya, and top-bottom acceleration offset b.sub.z. These estimated values are estimation results taking account of the left-right acceleration sensor offset b.sub.y, and thus have improved accuracy over the conventional art.
(190) Equations (28) and (29) perform calculation with proportional distribution depending on the value of the likelihood ; however, this calculation is merely an example. The state quantity determination unit 503 may use any other calculation method that performs weighting depending on the value of the likelihood .
(191) <Alternative Configurations>
(192) The attitude estimation apparatus 10 according to the present embodiment may use the following variations.
(193) (1) In the embodiment described above, the state quantity determination unit 503 performs a calculation where the left-right acceleration sensor offset b.sub.y provided to each Kalman filter 50 and the estimated value x estimated by the Kalman filter are weighted depending on the likelihood . Alternatively, a Kalman filter 50 that is most likely to be reliable may be selected based on the likelihood calculated by the Kalman filters 50, the left-right acceleration sensor offset b.sub.y provided to this Kalman filter 50 may be treated as the estimated value of the left-right acceleration sensor offset and the estimation results of this Kalman filter 50 may be treated as the estimation results of the calculation unit 49. This will simplify the calculation process by the state quantity determination unit 503.
(194) (2) In the embodiment described above, each Kalman filter 50 estimates the roll angle , vehicle velocity V.sub.x, roll angular velocity sensor offset b.sub.ro, yaw angular velocity sensor offset b.sub.ya, and top-bottom acceleration sensor offset b.sub.z, and the left-right acceleration sensor offset b.sub.y is estimated taking account of the likelihood obtained based on the estimation results of the Kalman filters 50. Alternatively, each Kalman filter 50 may estimate the roll angle , vehicle velocity V.sub.x, roll angular velocity sensor offset b.sub.ro, yaw angular velocity sensor offset b.sub.ya, and left-right acceleration sensor offset b.sub.y, and the top-bottom acceleration sensor offset b.sub.z may be estimated taking account of the likelihood obtained based on the estimation results of the Kalman filters 50. In this case, the top-bottom acceleration sensor 24 corresponds to the detection unit of interest or in other words, in this example the top-bottom acceleration sensor 24 is a detection unit associated with the offset error which is estimated by using the likelihood.
(195) In this case, the calculation unit 49 has the configuration shown in
(196) In this case, the state quantity determination unit 503 calculates the top-bottom acceleration sensor offset b.sub.z by performing calculation based on Equation (30), instead of Equation (28). Further, calculating the estimated value x by Equation (29) provides estimated values taking account of the roll angle , vehicle velocity V.sub.x, roll angle velocity offset b.sub.ro, yaw angle velocity offset b.sub.ya, top-bottom acceleration offset b.sub.z, and left-right acceleration sensor offset b.sub.y.
(197)
(198) Similarly, each Kalman filter 50 may estimate the roll angle , vehicle velocity V.sub.x, roll angle velocity sensor offset b.sub.ro, yaw angle velocity sensor offset b.sub.ya, and top-bottom acceleration sensor offset b.sub.z, and the front-rear acceleration sensor offset b.sub.x may be estimated taking account of the likelihood obtained based on the estimation results of the Kalman filters 50. In this case, the front-rear acceleration sensor 25 corresponds to the detection unit of interest, or in other words, in this example the front-rear acceleration sensor 25 is a detection unit associated with the offset error which is estimated by using the likelihood. The offset value for the front-rear acceleration sensor 25 provided by the imaginary offset input unit 59 is provided as the input parameter u for the function f(x,u) included in the system equation.
(199) Similarly, each Kalman filter 50 may estimate the roll angle , vehicle velocity V.sub.x, roll angle velocity sensor offset b.sub.ro, yaw angle velocity sensor offset b.sub.ya, and left-right acceleration sensor offset b.sub.y, and the front-rear acceleration sensor offset b.sub.x may be estimated taking account of the likelihood obtained based on the estimation results of the Kalman filters 50. Again, the front-rear acceleration sensor 25 corresponds to the detection unit of interest, or in other words, in this example the front-rear acceleration sensor 25 is a detection unit associated with the offset error which is estimated by using the likelihood. The offset value for the front-rear acceleration sensor 25 provided by the imaginary offset input unit 59 is provided as the input parameter u for the function f(x,u) included in the system equation.
(200) <Calculation of Estimated Values of Parameters>
(201) Now, the ability of the attitude estimation apparatus according to the present embodiment to estimate the attitude of the vehicle 100 with high accuracy will be proven with reference to examples.
(202)
(203) In
(204)
(205) In
(206)
(207)
(208)
(209)
(210)
(211) The calculation unit 49 presupposed for
(212)
(213)
(214)
(215)
(216)
(217) Further,
(218)
Second Embodiment
(219) A second embodiment of the present invention will be described. The vehicle body 100 is the same as in the first embodiment and will not be described again.
(220) <Configuration of Attitude Estimation Apparatus>
(221)
(222) According to the present embodiment, the group of sensors 5 includes a roll angular velocity sensor 21, a yaw angular velocity sensor 22, a pitch angular velocity sensor 23, a top-bottom acceleration sensor 24, a front-rear acceleration sensor 25, and a left-right acceleration sensor 26. That is, the present embodiment is different from the first embodiment in that the group of sensors 5 further includes a pitch angular velocity sensor 23. The pitch angular velocity sensor 23 is provided on the vehicle body 1 so as to detect the pitch angular velocity of the vehicle body 1, and corresponds to the third angular velocity detection unit.
(223) The output signal from the pitch angular velocity sensor 23 is passed through the low-pass filter 33 and is fed into the calculation unit 49 and differentiator 43 as the pitch angular velocity. The low-pass filter 33 removes noise from the output signal from the pitch angular velocity sensor 23. The differentiator 43 provides, as a pitch angular acceleration, the differential value of the pitch angular velocity to the calculation unit 49.
(224) The frequency characteristics of the low-pass filter 33 are decided depending on the output characteristics of the pitch angular velocity sensor 23. More specifically, the frequency characteristics of the noise components contained in the output signal from the pitch angular velocity sensor 23 can be identified in advance, at the stage of apparatus design. The low-pass filter 33 may be designed to block these noise components and pass the detection signal of the pitch angular velocity sensor 23.
(225) In the present embodiment, the calculation unit 49 receives detected values relating to the roll angular velocity, roll angular acceleration, yaw acceleration, yaw angular acceleration, pitch angular velocity, pitch angular acceleration, top-bottom acceleration, front-rear acceleration, left-right acceleration, and rear-wheel velocity. Then, based on these values, the calculation unit 49 estimates the roll angle, pitch angle, front-rear direction vehicle velocity, roll angular velocity sensor offset, yaw angular velocity sensor offset, pitch angular velocity sensor offset, top-bottom acceleration sensor offset, and front-rear acceleration sensor offset, and output them. The pitch angular velocity sensor offset is the offset error for the pitch angular velocity sensor 23.
(226) The attitude estimation apparatus 10 according to the present embodiment includes an elevation/depression angle estimation unit 80, and is configured such that the calculation unit 49 also receives an estimated value of the elevation/depression angle from the elevation/depression angle estimation unit 80.
(227) The pitch angular velocity sensor offset estimated by the calculation unit 49, the elevation/depression angle estimated by the elevation/depression angle estimation unit 80, and the first-order differential value of the elevation/depression angle will be denoted by the following characters.
(228) TABLE-US-00006 TABLE 6 Parameter Meaning b.sub.pi pitch angular velocity sensor offset elevation/depression angle differential value of {dot over ()} elevation/depression angle
(229)
(230) <Configuration of Kalman Filters>
(231)
(232) The Kalman filters 50 (50_1, 50_2 and 50_3) use a kinematic model for the vehicle 100, described below. Similar to
(233) The system equation that is an equation used for the calculation at the system equation calculation unit 51 includes the function f(x,u). The observation equation that is an equation used for the calculation at the observation equation calculation unit 52 includes the function h(x,u). The Kalman gain calculation unit 56 includes a seventh-degree Kalman gain K.
(234) The imaginary offset input unit 59 provides, as an offset value for a predetermined one of the sensors of the group 5, a predetermined value for each of the Kalman filters 50 (50_1, 50_2 and 50_3) to the system equation calculation unit 51 and observation equation calculation unit 52. According to the present embodiment, the imaginary offset input unit 59 is configured to provide the offset value b.sub.x for the front-rear acceleration sensor 52 to the system equation calculation unit 51 and observation equation calculation unit 52. In this implementation, the front-rear acceleration sensor 25 corresponds to the detection unit of interest, or in other words, in this example the front-rear acceleration sensor 25 is a detection unit associated with the offset error whose imaginary offset quantity is provided in each of the Kalman filters 50 (50_1, 50_2 and 50_3).
(235) In
(236) The likelihood calculation unit 57 determines a likelihood using calculation, the likelihood being indicative of the reliability of the result from the estimation by the Kalman filter 50 (50_1, 50_2 or 50_3). The low-pass filter 58 is a calculation unit for filtering the value calculated by the likelihood calculation unit 57. The low-pass filter 58 may be replaced by any other calculation unit that can implement the same functionality. It is optional whether the low-pass filter 58 is included. The calculation performed by the likelihood calculation unit 57 will be described further below.
(237) The calculation units 51, 52, 53, 54, 55, 56, 57 and 58 constituting a Kalman filter 50 may be implemented by, for example, a program that has been prepared in advance being performed by the ECU 20. Alternatively, some or all of the calculation units 51, 52, 53, 54, 55, 56, 57 and 58 may be implemented by independent hardware mounted.
(238) According to the present embodiment, in the current estimation operation, the following values are provided as the input parameter u of the function f(x,u) included in the system equation: the detected value of the roll angular velocity .sub.ro, the detected value of the roll angular acceleration (differential value of the roll angular velocity .sub.ro), the detected value of the yaw angular velocity .sub.ya, the yaw angular acceleration (differential value of the yaw angular velocity .sub.ya), the detected value of the pitch angular velocity .sub.pi, the detected value of the pitch angular acceleration (differential value of the pitch angular velocity .sub.pi) and the detected value of the front-rear acceleration G.sub.x.
(239) Further, the following values are provided as the input parameter x of the function f(x,u) included in the system equation: the estimated value of the roll angle , the estimated value of the pitch angle , the estimated value of the vehicle velocity V.sub.x, the estimated value of the roll angular velocity sensor offset b.sub.ro, the estimated value of the yaw angular velocity sensor offset b.sub.ya, the estimated value of the pitch angular velocity sensor offset b.sub.pi, and the estimated value of the top-bottom acceleration sensor offset b.sub.z from the previous estimation operation. Further, as discussed above, the offset value for the front-rear acceleration sensor 25 provided by the imaginary offset input unit 59 is provided as the input parameter u of the function f (x,u) included in the system equation.
(240) The output from the system equation calculation unit 51 is the predicted differential value of the roll angle , the predicted differential value of the pitch angle , the predicted differential value of the vehicle velocity V.sub.x, the predicted differential value of the roll angular velocity sensor offset b.sub.ro, the predicted differential value of the yaw angular velocity sensor offset b.sub.ya, the predicted differential value of the pitch angular velocity sensor offset b.sub.pi, and the predicted differential value of the top-bottom acceleration sensor offset b.sub.z.
(241) The adder 54 adds the seventh-degree Kalman gain K obtained by the previous estimation operation to the predicted differential value of the roll angle , the predicted differential value of the pitch angle , the predicted differential value of the vehicle velocity V.sub.x, the predicted differential value of the roll angular velocity sensor offset b.sub.ro, the predicted differential value of the yaw angular velocity sensor offset b.sub.ya, the predicted differential value of the pitch angular velocity sensor offset b.sub.pi, and the predicted differential value of the top-bottom acceleration sensor offset b.sub.z.
(242) The predicted differential value of the roll angle , the predicted differential value of the pitch angle , the predicted differential value of the vehicle velocity V.sub.x, the predicted differential value of the roll angular velocity sensor offset b.sub.ro, the predicted differential value of the yaw angular velocity sensor offset b.sub.ya, the predicted differential value of the pitch angular velocity sensor offset b.sub.pi, and the predicted differential value of the top-bottom acceleration sensor offset b.sub.z to which the Kalman gain K has been added are integrated by the integrator 55. This provides the estimated value of the roll angle , the estimated value of the pitch angle , the estimated value of the vehicle velocity V.sub.x, the estimated value of the roll angular velocity sensor offset b.sub.ro, the estimated value of the yaw angular velocity sensor offset b.sub.ya, the estimated value of the pitch angular velocity sensor offset b.sub.pi, and the estimated value of the top-bottom acceleration sensor offset b.sub.z from the current estimation operation.
(243) The following values are provided as the input parameter x of the function h(x,u) included in the observation equation: the estimated value of the roll angle , the estimated value of the pitch angle , the estimated value of the vehicle velocity V.sub.x, the estimated value of the roll angular velocity sensor offset b.sub.ro, the estimated value of the yaw angular velocity sensor offset b.sub.ya, the estimated value of the pitch angular velocity sensor offset b.sub.pi, and the estimated value of the top-bottom acceleration sensor offset b.sub.z. Further, as discussed above, the offset value for front-rear acceleration sensor 25 provided by the imaginary offset input unit 59 is provided as the input parameter x of the function h(x,u) included in the observation equation.
(244) The output from the observation equation calculation unit 52 is the calculated value of the top-bottom acceleration G.sub.z, the calculated value of the left-right acceleration G.sub.y, the calculated value of the rear-wheel velocity v.sub.r, and the calculated value of the characteristic equation discussed below.
(245) The Kalman filters 50 each receive, as the input parameter y, the detected value of the top-bottom acceleration G.sub.z, the detected value of the left-right acceleration G.sub.y, the detected value of the rear-wheel velocity v.sub.r and a constant that serves as the detected value of the characteristic equation. The Kalman gain calculation unit 56 calculates the Kalman gain K based on the difference between the detected values of the top-bottom acceleration G.sub.z, left-right acceleration G.sub.y, rear-wheel velocity v.sub.r and the detected value of the characteristic equation, and the calculated values. In the description further below, the detected value of the characteristic equation is zero; however, it is not limited to zero and may be any constant that does not change over time.
(246) Finding this kinematic model's system equation f(x,u) and observation equation h(x,u) gives the relational expression for the input parameters u and y and the output parameter x.
(247) <Finding of System Equation and Observation Equation>
(248) The present embodiment supposes the following points to simplify the kinematic model.
(249) (a) There is no rotational slide between the rear wheel 3 and road surface.
(250) (b) The side-skid velocity of the rear wheel 3 is zero.
(251) (c) The road surface is flat. Flat as used herein means a plane without irregularities, and may be inclined.
(252) Based on suppositions (a) to (c), the kinematic model equation is found in the following manner. That is, it is different from the first embodiment in that the finding of the kinematic model does not incorporate supposition (d).
(253) Based on Equation (7) provided above, the second-order differential vector of the vector is determined by the equation provided below. It is different from Equation (8) in that the second-order differential vector of the vector takes account of the pitch angular velocity .sub.pi and its first-order differential value.
(254)
(255) In Equation (31), a.sub.x, a.sub.y and a.sub.z are functions. The functions a.sub.x, a.sub.y and a.sub.z may be determined by calculating Equations (6) and (7) provided above. Using Equation (1) to rearrange Equation (6) into Equation (7) removes the differential value of the roll angle , the differential value of the yaw angle and the differential value of the pitch angle .
(256) Next, the side-skid velocity of the vehicle 100 is denoted by V.sub.y. The first-order differential vector of the positional vector r.sub.0 in
(257)
(258) From Supposition (b), V.sub.y=0; when Equation (32) is first-order differentiated, the second-order differential vector of the positional vector r is expressed by the equation provided below. The present embodiment is different from the first embodiment in that the pitching of the vehicle 100 is taken into consideration, and thus the equation is different from Equation (10) provided above.
(259)
(260) As discussed above, the elevation/depression angle is the angle formed by the x-axis of the vehicle coordinate system e.sub.b and the x-axis of the road-surface coordinate system e.sub.r. This definition gives the following equation.
[Formula 35]
V.sub.z=V.sub.x tan (34)
(261) Thus, Equation (33) may be rewritten into the following equation, Equation (35).
(262)
(263) Next, the gravity acceleration vector may be expressed by the equation below. g in the right side of Equation (36) below indicates the magnitude of the gravity acceleration.
(264)
(265) Based on Equations (5), (31), (35) and (36), the acceleration vector G detected at the mounting position PS may be expressed by the following equation.
(266)
(267) The acceleration vector G detected at the mounting position PS may be expressed by Equation (13) provided above using the front-rear acceleration G.sub.x detected by the front-rear acceleration sensor 25, the left-right acceleration G.sub.y detected by the left-right acceleration sensor 26, and the top-bottom acceleration G.sub.z detected by the top-bottom acceleration sensor 24. Thus, based on Equations (13) and (37), the front-rear acceleration G.sub.x, left-right acceleration G.sub.y and top-bottom acceleration G.sub.z may be expressed by the following equation.
(268)
(269) Next, the relationship between the rear-wheel velocity v.sub.r and vehicle velocity V.sub.x is determined. Supposition (a) means that there is no slide between the rear wheel 3 and road surface 200, and thus the relationship expressed by the following equation can be established between the rear-wheel velocity v.sub.r and vehicle velocity V.sub.x.
(270)
(271) Equation (39) gives the following equation.
(272)
(273) Equations (1), (38) and (40) give the following equation.
(274)
(275) As shown in
(276)
(277) Since the weight of the vehicle body 1 is generally distributed symmetrically with respect to the vertical centerline, W.sub.y=0. If the mass of the main body of the vehicle body 1 is denoted by M and the inertia moment tensor is denoted by I, the angular momentum vector L of the vehicle 100 as viewed from the reference point O is calculated in the manner described below. In the following vector calculation equation, .circle-solid. means an inner product and means an outer product.
(278)
(279) In Equation (43), the angular velocity vector and tensor I are defined by the following equations.
(280)
(281) In Equation (45), an operator with a circle including a cross means a tensor product.
(282) Temporally differentiating both sides of Equation (43) gives the following equation.
(283)
(284) If it is rearranged in a manner similar to that for the rearrangement of Equation (7) into Equation (31), the second-order differential vector of the vector W and the inner product of the tensor I and angular acceleration vector dot (first-order differential vector of the angular velocity vector ) are expressed by the following equations.
(285)
(286) w.sub.x, w.sub.y and w.sub.z in Equation (47) and q.sub.x, q.sub.y and q.sub.z in Equation (48) are functions. These functions may be calculated by a rearrangement similar to the rearrangement of Equation (7) to Equation (31).
(287) Next, the moments of forces acting on the vehicle 100 as viewed from the reference point O are calculated.
(288)
(289) The force of gravity and the aerodynamic force act on the gravity point MP of the vehicle 100. The aerodynamic vector is expressed by the following equation.
(290)
(291) The aerodynamic force depends on the velocity V and angular velocity of the vehicle 100, and thus may be expressed by the following equation.
(292)
(293) In Equation (51), the rearrangement is done using V.sub.y=0, which is based on Supposition (b), and Equation (34).
(294) As shown in
(295)
(296) The moment vector N of the force acting on the vehicle 100 as viewed from the reference point O is expressed by the following equation.
(297)
(298) The quantity of the first-order differential of the angular momentum vector L of the vehicle 100 as viewed from the reference point O is the same as the moment vector N of the force acting on the vehicle 100 as viewed from the reference point O. That is, the following equation is established.
(299)
(300) Equation (54) should be true regardless of where the reference point is located. That is, Equation (54) should be true for any positional vector r. Thus, if Equations (46) and (53) are identical equations, the following two equations are established.
[Formula 56]
M({umlaut over (r)}.sub.0+{umlaut over ()}+{umlaut over (W)})=Mg++FF+FR (55)
[Formula 57]
M(+W)({umlaut over (r)}.sub.0+{umlaut over ()}+{umlaut over (W)})+I.Math.{dot over ()}=(+W)(Mg+)+(+)FF (56)
(301) Equation (55) may be rearranged into Equation (57) below.
[Formula 58]
FF+FR=M({umlaut over (r)}.sub.0+{umlaut over ()}+g+{umlaut over (W)})(57)
(302) Expressing Equation (57) using entries gives Equation (58) below.
(303)
(304) Based on the relational expression for the first entry of Equation (38) provided above, the following equation may be found.
[Formula 60]
{dot over (V)}.sub.x=A.sub.x(.sub.r0, .sub.ya, .sub.pi, {dot over ()}.sub.r0, {dot over ()}.sub.ya, {dot over ()}.sub.pi, G.sub.x, , , V.sub.x, , L, h, R.sub.cr, g) (50)
(305) Using Equation (59), Equation (58) may be rewritten into the following equation.
(306)
(307) Using Equation (55), Equation (56) may be rearranged into the following equation.
(308)
(309) Expressing Equation (61) using entries gives the following equation, Equation (64).
(310)
(311) Substituting the second and third entries of Equation (60) for the first entry of Equation (64) removes FF.sub.y, FR.sub.y, FF.sub.z and FR.sub.z. That is, Equation (65) below is given.
(312)
(313) Equation (65) may be described by the following equation.
[Formula 65]
0=Q.sub.x(.sub.r0, .sub.ya, .sub.pi, {dot over ()}.sub.r0, {dot over ()}.sub.ya, {dot over ()}pi, G.sub.x, , {dot over ()}, , , V.sub.x, L, h, R.sub.cr, g, W.sub.x, W.sub.z, I.sub.xx, I.sub.yy, I.sub.zz, I.sub.xz) (66)
(314) The factors of the function Q.sub.x of Equation (66) are all numbers that can be uniquely derived from the vehicle data, for example, except the values provided by the group of sensors 5 and the values estimated by the attitude estimation apparatus 10. That is, Equation (66) means that the function Q.sub.x, indicating a constant, necessarily exists regardless of time. An equation satisfying this function Q.sub.x=constant corresponds to the characteristic equation.
(315) Based on Equation (59), Equation (41) may be rewritten into the following equation.
(316)
(317) Further, from Equations (38), (40) and (66), the following equation may be derived.
(318)
(319) Each of the Kalman filters 50 (50_1, 50_2 and 50_3), at the system equation calculation unit 51, uses Equation (67) as the system equation to perform calculation, and, at the observation equation calculation unit 52, uses Equation (68) as the observation equation to perform calculation.
(320) Even if the roll angular velocity offset b.sub.ro, yaw angular velocity offset b.sub.ya, pitch angular velocity offset b.sub.pi and top-bottom acceleration offset b.sub.z vary, such variances are small compared with movements of the vehicle 100. Thus, the differential value of the roll angular velocity offset b.sub.ro, the differential value of the yaw angular velocity offset b.sub.ya, the differential value of the pitch angular velocity offset b.sub.pi, and the differential value of the top-bottom acceleration offset b.sub.z can be considered to be zero.
(321) Further, replacing some values in Equations (67) and (68) with values reflecting offset errors gives the following equations.
(322)
(323) According to the present embodiment, as discussed above with reference to
(324)
(325) That is, each of the Kalman filters 50 according to the present embodiment, at the system equation calculation unit 51, uses Equation (69a) as the system equation to perform calculation, and, at the observation equation calculation unit 52, uses Equation (70a) as the observation equation to perform calculation.
(326) The value of b.sub.x in Equations (69a) and (70a) is the value of the front-rear acceleration sensor offset b.sub.x(b.sub.x1,b.sub.x2,b.sub.x3) provided by the imaginary offset input unit 59 of each of the Kalman filters 50 (50_1, 50_2 and 50_3).
(327) Based on the system equation including the front-rear acceleration sensor offset b.sub.x(b.sub.x1,b.sub.x2,b.sub.x3) provided by the imaginary offset input unit 59, the system equation calculation unit 51 calculates the estimated values of the roll angle, pitch angle , vehicle velocity V.sub.x, roll angular velocity sensor offset b.sub.ro, yaw angular velocity sensor offset b.sub.ya, pitch angular velocity sensor offset b.sub.pi, and top-bottom acceleration sensor offset b.sub.z. Similarly, based on the observation equation including the front-rear acceleration sensor offset b.sub.x(b.sub.x1,b.sub.x2,b.sub.x3) provided by the imaginary offset input unit 59, and using also the estimation results from the system equation calculation unit 51, the observation equation calculation unit 52 calculates the estimated values of the top-bottom acceleration G.sub.z, left-right acceleration G.sub.y and rear-wheel velocity v.sub.r. These estimated values are provided to the likelihood calculation unit 57 to calculate the value relating to the likelihood indicative of the reliability of the estimation results of the Kalman filters 50 (50_1, 50_2 and 50_3).
(328) Preferably, the largest one of the values of the front-rear acceleration sensor offset b.sub.x(b.sub.x1,b.sub.x2,b.sub.x3) provided by the imaginary offset input unit 59 is larger than the maximum value of the zero-point offset that can be provided by the front-rear acceleration sensor 25, and the smallest value is smaller than the minimum value of the zero-point offset that can be provided by the front-rear acceleration sensor 25. Thus, the observation equation calculation unit 52 can calculate the estimated values of the top-bottom acceleration G.sub.z, left-right acceleration G.sub.y and rear-wheel velocity v.sub.r taking account of situations where the value of the zero-point offset of the front-rear acceleration sensor 25 is the largest.
(329) As discussed above, the above-described embodiment describes an implementation where the calculation unit 49 includes three Kalman filters 50 (50_1, 50_2 and 50_3); alternatively, the value of the front-rear acceleration sensor offset b.sub.x may be set in a similar way if the calculation unit 49 includes two Kalman filters 50 or four or more Kalman filters 50.
(330) Next, the likelihood calculated by the likelihood calculation unit 57 will be described. If the detection error in the top-bottom acceleration G.sub.z detected by the top-bottom acceleration sensor 24 is denoted by G.sub.z, the detection error in the left-right acceleration G.sub.y detected by the left-right acceleration sensor 26 is denoted by G.sub.y, the detection error in the rear-wheel velocity v.sub.r detected by the rear-wheel velocity sensor 7 is denoted by v.sub.r, and the model equation error in the rotational-motion equation about the roll axis is denoted by Q.sub.x, then, the variance-covariance matrix R of these detection errors can be expressed by the equation below. As discussed above, the motion-equation model is created by supposing the weight of the rider and treating the rider as a rigid body, and this causes errors derived from these suppositions. This error is represented by Q.sub.x.
(331)
(332) Further, if the estimation error in the roll angle is denoted by , the estimation error in the pitch angle is denoted by , the estimation error in the vehicle velocity V.sub.x is denoted by V.sub.x, the estimation error in the roll angular velocity sensor offset b.sub.ro is denoted by b.sub.ro, the estimation error in the yaw angular velocity sensor offset b.sub.ya is denoted by b.sub.ya, the estimation error in the pitch angular velocity sensor offset b.sub.pi is denoted by b.sub.pi, and the estimation error in the top-bottom acceleration sensor offset b.sub.z is denoted by b.sub.z, then, the variance-covariance matrix P of these detection errors can be expressed by the following equation.
(333)
(334) The Kalman filters 50 (50_1, 50_2 and 50_3) successively calculate the matrix P and matrix R.
(335) The variance-covariance matrix S for the error contained in the observation/prediction error e is expressed by Equation (25) provided above. The following equation is the same as provided above.
[Formula 74]
S=R+HPH.sup.t (25)
(336) In Equation (25), H is the Jacobian matrix of h(x), defined by the following equation.
(337)
(338) Based on the matrix H defined by Equation (74), the likelihood calculation unit 57 calculates the likelihood based on, for example, Equation (27), as in the first embodiment. Based on the likelihood provided by each of the Kalman filters 50 (50_1, 50_2 and 50_3), the state quantity determination unit 503 weights the value of the front-rear acceleration sensor offset b.sub.x to calculate the estimated value of the front-rear acceleration sensor offset b.sub.x. Based on the same reasoning, x(, , V.sub.x,b.sub.ro,b.sub.ya,b.sub.z) estimated by each Kalman filter 50 is weighted depending on the likelihood (.sub.1, .sub.2, .sub.3), which indicates how reliable the estimation results of the Kalman filters 50 (50_1, 50_2 and 50_3) are, thereby providing the estimation results taking account of the front-rear acceleration sensor offset b.sub.x.
(339) <Configuration of Load Estimation Unit>
(340) Based on the results of the calculation at the calculation unit 49, the load estimation unit 60 performs processing to estimate the load applied to at least one of the front wheel 2 and rear wheel 3 of the vehicle 100. Substituting the entries of Equation (60) for the second and third entries of Equation (64) gives the following equation.
[Formula 76]
LFF.sub.yLFR.sub.y=E.sub.y(.sub.ro, .sub.ya, .sub.pi, {dot over ()}.sub.ro, {dot over ()}.sub.ya, {dot over ()}.sub.pi, G.sub.x, , , , V.sub.x, L, h, R.sub.cr, g, W.sub.x, W.sub.z, I.sub.xx, I.sub.yy, I.sub.zz, I.sub.xz) (75)
LFF.sub.zLFR.sub.z=E.sub.z(.sub.ro, .sub.ya, .sub.pi, {dot over ()}.sub.ro, {dot over ()}.sub.ya, {dot over ()}.sub.pi, G.sub.x, , {dot over ()}, , , V.sub.x, L, h, R.sub.cr, g, W.sub.x, W.sub.z, I.sub.xx, I.sub.yy, I.sub.zz, I.sub.xz) (76)
(341) According to the present embodiment, the vehicle 100 is a motorcycle, and thus L+L0. Then, based on the second and third entries of Equation (60) and Equations (75) and (76), a solution may be reached for FF.sub.y, FR.sub.y, FF.sub.z and FR.sub.z. The force FF.sub.z of the front wheel 2 in the z-direction and the force FR.sub.z of the rear wheel 3 in the z-direction are calculated by the equations provided below. In the following equations, J.sub.F and J.sub.R are functions.
[Formula 77]
FF.sub.z=J.sub.F(.sub.ro, .sub.ya, .sub.pi, {dot over ()}.sub.ro, {dot over ()}.sub.ya, {dot over ()}.sub.pi, G.sub.x, , {dot over ()}, , , V.sub.x, L, L, h, R.sub.cr, g, W.sub.x, W.sub.z, I.sub.xx, I.sub.yy, I.sub.zz, I.sub.xz) (77)
FR.sub.z=J.sub.R(.sub.ro, .sub.ya, .sub.pi, {dot over ()}.sub.ro, {dot over ()}.sub.ya, {dot over ()}.sub.pi, G.sub.x, , {dot over ()}, , , V.sub.x, L, L, h, R.sub.cr, g, W.sub.x, W.sub.z, I.sub.xx, I.sub.yy, I.sub.zz, I.sub.xz) (78)
(342) The load estimation unit 60 performs the calculation described above based on the result of the calculation at the calculation unit 49 to calculate the force FP acting on the front wheel 2 and the force FR acting on the rear wheel 3.
(343) <Configuration of Suspension Stroke Quantity Estimation Unit>
(344) The suspension stroke quantity estimation unit 70 performs calculation based on the estimation results from the load estimation unit 60 to estimate the stroke quantity of the suspension provided on at least one of the front wheel 2 and rear wheel 3.
(345) If the caster angle is denoted by .sub.F, the force F.sub.f acting on the front fork 16 is calculated by FF.sub.2 cos .sub.FFF.sub.x sin .sub.F. The caster angle is the angle formed by the direction extending vertically upward from the grounding point P2 of the front wheel 3 and the front fork 16.
(346) The stroke quantity of the shock absorber of the rear suspension is denoted by .sub.R, and the displacement of the center of the rear wheel 3 is denoted by .sub.W. The hang angle of the rear arm relative to the horizontal direction found when the stroke quantity of the shock absorber of the rear suspension is .sub.R is denoted by .sub.R(.sub.R). The caster angle .sub.F and the rear arm angle .sub.R(.sub.W) are shown in
(347) Then, the force F.sub.1 acting on the suspension is expressed by the following equation.
(348)
(349) In Equation (79), is data called lever ratio which may be calculated from design drawings.
(350) The suspension stroke quantity estimation unit 70 performs the following estimation processing.
(351) [Formula 79]
(352) For FFx+FRx0 (during acceleration)
FF.sub.x.fwdarw.FF.sub.x=0
FR.sub.x.fwdarw.FR.sub.x=FF.sub.x+FR.sub.x (80)
(353) For FFx+FRx<0 (during deceleration)
(354)
(355) Then, the force F.sub.f acting on the front fork and the force F.sub.1 acting on the suspension may be calculated by the following Equations (82) and (83).
(356)
(357)
(358) TABLE-US-00007 TABLE 7 Parameter Meaning .sub.F stroke quantity of shock absorber of front-wheel suspension .sub.R stroke quantity of shock absorber of rear-wheel suspension k.sub.F spring coefficient of shock absorber of front-wheel suspension k.sub.R spring coefficient of shock absorber of rear-wheel suspension c.sub.F attenuation coefficient of shock absorber of front-wheel suspension c.sub.R attenuation coefficient of shock absorber of rear-wheel suspension l.sub.F preset load applied to shock absorber of front-wheel suspension l.sub.R preset load applied to shock absorber of rear-wheel suspension
(359)
(360) In Equations (84) and (85), the parameters in the function D.sub.F in Equation (82) and the function D.sub.R in Equation (83) are omitted.
(361) Solving the differential equation of Equations (84) and (85) gives the following equation.
(362)
(363) As discussed above, the suspension stroke quantity estimation unit 70 may calculate the stroke quantity of the shock absorber of the suspension by solving the differential equations in Equations (84) and (85), or calculate the stroke quantity of the shock absorber of the suspension by performing a discretization process over time.
(364) Further, the suspension stroke quantity estimation unit 70 may calculate the amount of sink .sub.W of the rear suspension by performing calculation based on the following equation.
[Formula 83]
.sub.W=.sub.0.sup..sup.
(365) <Configuration of Elevation/Depression Angle Estimation Unit>
(366) The elevation/depression angle estimation unit 80 calculates the elevation/depression angle based on the estimation results from the load estimation unit 60 and suspension stroke quantity estimation unit 70.
(367) If the suspension of the front wheel sinks by the amount of sink .sub.F and the suspension of the rear wheel sinks by the amount of sink .sub.W, the positional vector F.sub.o of the center of the front wheel and the positional vector R.sub.o of the center of the rear wheel may be expressed by the following equations.
(368)
(369) Based on Equations (87) and (88), the elevation/depression angle may be calculated by the following equation.
(370)
(371) In Equation (89), .sub.0 is the angle formed by the basis vector e.sub.b of the vehicle coordinate system and the basis vector e.sub.r of the road-surface coordinate system found when the stroke quantity of the suspension is zero.
(372) <Configuration of Slope Estimation Unit>
(373) Based on the estimation results from the elevation/depression angle estimation unit 80 and the estimation results from the calculation unit 49, the slope estimation unit 90 calculates the longitudinal slope of the road surface.
(374) The longitudinal slope of the road surface is expressed by the following equation using the pitch angle , roll angle and elevation/depression angle of the vehicle 100.
[Formula 86]
sin =sin cos cos cos sin (90)
(375) Thus, the longitudinal slope of the road surface may be calculated by the following equation.
[Formula 87]
=sin.sup.1 (sin cos cos cos sin ) (91)
(376) <Alternative Configurations>
(377) The attitude estimation apparatus 10 according to the present embodiment may use one or more of the following variations.
(378) (1) As in the first embodiment, according to the present embodiment, a Kalman filter 50 that is most likely to be reliable may be selected based on the likelihood calculated by the Kalman filters 50, the left-right acceleration sensor offset b.sub.y provided to this Kalman filter 50 may be treated as the estimated value of the left-right acceleration sensor offset and the estimation results of this Kalman filter 50 may be treated as the estimation results of the calculation unit 49. This will simplify the calculation process by the state quantity determination unit 503.
(379) (2) According to the present embodiment, each Kalman filter 50 estimates the roll angle , pitch angle , vehicle velocity V.sub.x roll angular velocity sensor offset b.sub.ro, yaw angle velocity sensor offset b.sub.ya, pitch angular velocity sensor offset b.sub.pi, and top-bottom acceleration sensor offset b.sub.z, and the front-rear acceleration sensor offset b.sub.x is estimated taking account of the likelihood obtained based on the estimate results of the Kalman filters 50. Alternatively, each Kalman filter 50 may estimate the roll angle , vehicle velocity V.sub.x, roll angular velocity sensor offset b.sub.ro, yaw angle velocity sensor offset b.sub.ya, pitch angular velocity sensor offset b.sub.pi, and front-rear acceleration sensor offset b.sub.x, and the top-bottom acceleration sensor offset b.sub.z may be estimated taking account of the likelihood obtained based on the estimation results of the Kalman filters 50. In this case, the top-bottom acceleration sensor 24 corresponds to the detection unit of interest, or in other words, in this example the top-bottom acceleration sensor 24 is a detection unit associated with the offset error which is estimated by using the likelihood.
(380) In this case, each of the Kalman filters 50 included in the calculation unit 49 according to the present embodiment, at the system equation calculation unit 51, performs calculation using Equation (92) provided below, instead of Equation (69a), as the system equation. Further, each of the Kalman filters 50, at the observation equation calculation unit 52, performs calculation using Equation (93) provided below, instead of Equation (70a), as the observation equation.
(381)
(382) The value of b.sub.z in Equation (93) is the value of the top-bottom acceleration sensor offset b.sub.z(b.sub.z1,b.sub.z2,b.sub.z3) provided by the imaginary offset input unit 59 of each of the Kalman filters 50 (50_1, 50_2 and 50_3).
(383) Alternatively, the left-right acceleration sensor offset b.sub.y may be estimated taking account of the likelihood obtained based on the estimation results from the Kalman filters 50. In this case, each of the Kalman filters 50, at the system equation calculation unit 51, performs calculation using Equation (94) provided below, instead of Equation (69a), as the system equation, and, at the observation equation calculation unit 52, performs calculation using Equation (95) provided below, instead of Equation (70a), as the observation equation.
(384)
(385) Similarly, the value of b.sub.y in Equation (95) may be the value of the left-right acceleration sensor offset b.sub.y(b.sub.y1,b.sub.y2,b.sub.y3) provided by the imaginary offset input unit 59 of each of the Kalman filters 50 (50_1, 50_2 and 50_3).
(386) (3) According to the present embodiment, the attitude estimation apparatus 10 includes the load estimation unit 60, suspension stroke quantity estimation unit 70, elevation/depression angle estimation unit 80, and slope estimation unit 90. Alternatively, the attitude estimation apparatus 10 may include none of these calculation functionalities. That is, as shown in
(387) In this case, unlike the arrangement of
(388) <Calculation of Estimated Values of Parameters>
(389) Now, the ability of the attitude estimation apparatus according to the present embodiment to estimate the attitude of the vehicle 100 with high accuracy will be proven with reference to examples. For the examples provided below, similar to the first embodiment, the attitude of the vehicle 100 was estimated by the attitude estimation apparatus according to the present embodiment while the value 100 traveled on a predetermined road surface. During this, an offset errors was intentionally generated in a predetermined sensor at a predetermined moment.
EXAMPLE 1
(390) The calculation unit 49 presupposed for
(391)
(392) In
(393)
(394)
(395)
(396)
(397)
EXAMPLE 2
(398) The calculation unit 49 presupposed for
(399)
(400) In
(401)
(402)
(403)
(404)
(405)
EXAMPLE 3
(406) The calculation unit 49 presupposed for
(407)
(408) In
(409)
(410)
(411)
(412)
(413)
(414) Further, the results from Examples 1 to 3 prove that an estimation with high accuracy was achieved even when the unit associated with the offset quantity estimated in the Kalman filters 50 varies or even when the unit associated with the offset quantity estimated by using a likelihood varies.
EXAMPLE 4
(415)
(416) In
(417) In
(418) In
(419) From
Alternative Embodiments
(420) Alternative embodiments will be described.
(421) <1> According to the above-illustrated embodiments, information from the rear-wheel velocity sensor 7 provided on the rear wheel 3 is provided, as the rear-wheel velocity, to the calculation unit 49. Alternatively, as shown in
(422) <2> When the moment of the force acting on the vehicle 100 as viewed from the reference point O is calculated, the aerodynamic vector may be approximated, =0. In such implementations, the term with is not present in Equation (57); however, since the relational expression of Equation (51) is used during the process of rearranging Equation (57) to Equation (58) to replace with the function of another factor, the same equation as Equation (58) is found.
(423) <3> The angular velocity sensors, i.e. roll angular velocity sensor 21, yaw angular velocity sensor 22 and pitch angular velocity sensor 23 may be replaced by sensors for detecting the angular velocities about three or more axes different from the top-bottom direction, left-right direction and front-rear direction of the vehicle 100. In such implementations, the detected values from the angular velocity sensors may be replaced by the roll angular velocity .sub.ro, pitch angular velocity .sub.pi and yaw angular velocity .sub.ya using a geometrical method. Then, based on the replacement values, the attitude estimation apparatus 10 may perform the calculation defined by the above-provided Equations.
(424) Similarly, in the above-illustrated embodiments, the acceleration sensors, i.e. top-bottom acceleration sensor 24, front-rear acceleration sensor 25 and left-right acceleration sensor 26 may be replaced by three or more acceleration sensors for directions different from the top-bottom direction, left-right direction and front-rear direction of the vehicle 100. In such implementations, the detected values from the acceleration sensors may be replaced by the top-bottom acceleration G.sub.z, front-rear acceleration G.sub.x and left-right acceleration G.sub.y using a geometrical method. Then, based on the replacement values, the attitude estimation apparatus 10 may perform the calculation defined by the above-provided equations.
(425) <4> In the above-illustrated embodiments, one of the input parameters for the calculation unit 49 is the rear-wheel velocity v.sub.r; alternatively, the vehicle velocity detected by a velocity sensor capable of measuring the travel speed (i.e. vehicle velocity) of the vehicle 100 may be an input parameter for the calculation unit 49. One example may be information from a GPS sensor.
(426) In such implementations, the vehicle velocity Vx estimated by the calculation unit 49 may be replaced by information relating to the vehicle velocity detected by the sensor. That is, the calculation unit 49 may not estimate the vehicle velocity V.sub.x.
(427) <5> In the above-illustrated embodiments, the calculation unit 49 may be implemented by the ECU 20 and a program; alternatively, some or all of the functionalities of the calculation unit 49 may be implemented by hardware such as electronic circuitry.
(428) <6> The filtering method for the Kalman filters of the present invention are not limited to the filtering for the Kalman filters 50 of the above-illustrated embodiments. The above example may be replaced by another adaptive filtering method. Exemplary Kalman filters may be the LMS (least mean square) adaptive filter or H filtering, for example.
(429) <9> In the above-illustrated embodiments, the attitude estimation apparatus 10 is applied to a motorcycle; alternatively, if similar modeling is possible, it may be applied to other vehicles such as a motor four-wheeler or motor three-wheeler or various transportation machines such as ships.
(430) In the above-illustrated embodiments, an offset error is a value indicative of the difference between a detected value from each detection unit and an actual value, i.e. true value. Each Kalman filter receives detected values from a plurality of detection units. Further, each Kalman filter receives an imaginary offset quantity. An imaginary offset quantity is an imaginary value of an offset error for at least one of the detection units, i.e. of the first offset error. The detection unit with which the first offset error is associated is the detection unit of interest. An imaginary offset quantity is an imaginary value of the offset error for the detection unit of interest.
(431) At least two of the imaginary offset quantities provided to the Kalman filters are different from each other. That is, at least two imaginary offset quantities that are different from each other are provided to at least two Kalman filters, respectively.
(432) Each Kalman filter provides an estimated value of the roll angle and a likelihood. Further, each Kalman filter may provide, as an estimated value, an offset error for at least one of a plurality of detection units that is other than the detection unit of interest (i.e. second offset error). Each Kalman filter is configured to calculate the estimated value from the current estimation operation using a plurality of detected values input during the current estimation operation and an estimated value calculated during the previous estimation operation.
(433) In the above-illustrated embodiments, each Kalman filter receives a detected value from the first angular velocity detection unit, a detected value from the second angular velocity detection unit, a detected value from the first acceleration detection unit, a detected value from the second acceleration detection unit, a detected value from the third acceleration detection unit, a detected value from the velocity information detection unit, and an imaginary offset quantity for the first offset error. The output of each Kalman filter includes at least the estimated value of the roll angle of the movable body and a likelihood.
(434) For the current estimation operation, each Kalman filter uses at least one of the detected value from the first angular velocity detection unit, the detected value from the second angular velocity detection unit, the detected value from the first acceleration detection unit, the detected value from the second acceleration detection unit, the detection value from the third acceleration detection unit and the detected value from the velocity information detection unit, as well as the estimated value from the previous estimation operation, to calculate a current intermediate estimated value. The Kalman filter corrects the intermediate estimated value based on the result of a comparison between the previous estimated value and the observed value. The observed value may be at least one of the detected value from the first angular velocity detection unit, the detected value from the second angular velocity detection unit, the detected value from the first acceleration detection unit, the detected value from the second acceleration detection unit, the detected value from the third acceleration detection unit and the detected value from the velocity information detection unit. In the above-illustrated examples, each Kalman filter calculates a Kalman gain as an example of the value indicating the result of the comparison between the previous estimated value and observed value. The intermediate estimated value is corrected using the value indicating the result of the comparison between the previous estimated value and observed value, and the resulting value is provided as the estimated value of the current estimation operation.
(435) In the above-illustrated embodiments, each Kalman filter calculates the likelihood based on an observation/prediction error which indicates how different the previous estimated value and observed value are. The observed value may be at least one of the detected value from the first angular velocity detection unit, the detected value from the second angular velocity detection unit, the detected value from the first acceleration detection unit, the detected value from the second acceleration detection unit, the detected value from the third acceleration detection unit and the detected value from the velocity information detection unit.
EXPLANATION OF REFERENCE CHARACTERS
(436) 1: vehicle body
(437) 2: front wheel
(438) 3: rear wheel
(439) 5: group of sensors
(440) 7: rear-wheel velocity sensor
(441) 8: front-wheel velocity sensor
(442) 10: attitude estimation apparatus
(443) 11: handlebars
(444) 12: navigation system
(445) 14: headlight
(446) 15: headlight driving device
(447) 16: front fork
(448) 20: electronic control unit (ECU)
(449) 21: roll angular velocity sensor
(450) 22: yaw angular velocity sensor
(451) 23: pitch angular velocity sensor
(452) 24: top-bottom acceleration sensor
(453) 25: front-rear acceleration sensor
(454) 26: left-right acceleration sensor
(455) 31, 32, 33, 34, 35 and 36: low-pass filters
(456) 41, 42, 43 and 45: differentiators
(457) 49: calculation unit
(458) 50: Kalman filters
(459) 51: system equation calculation unit
(460) 52: observation equation calculation unit
(461) 53: subtractor
(462) 54: adder
(463) 55: integrator
(464) 56: Kalman gain calculation unit
(465) 57 likelihood calculation unit
(466) 58: low-pass filter
(467) 59: imaginary offset input unit
(468) 60: load estimation unit
(469) 70: suspension stroke quantity estimation unit
(470) 80: elevation/depression angle estimation unit
(471) 90: slope estimation unit
(472) 100: vehicle
(473) 200: road surface