Method of controlling the speed of a vehicle

Abstract: An unobtrusive vehicular adaptive speed control system (18) controls vehicle (10) travelling speed in response to sensed obstacles (12) preceding the vehicle (10), to driver influenced control parameters, and to a desired travelling speed (V SET ) set by the vehicle driver.

Description: This invention relates to a method of controlling the speed of a vehicle. Vehicle cruise control systems are popular equipment on conventional vehicles. Recently, adaptive cruise control systems have been proposed, where, in addition to conventional factors, external factors are considered in the control of vehicle speed. Known automatic systems attempt to maintain a desired speed, set by the driver, but are capable of detecting obstacles in front of the vehicle, and are capable of adapting the vehicle speed in response thereto. Commonly, these adaptive systems adjust vehicle speed in response to detected obstacles in such a manner as to cause speed perturbations perceptible to the driver of the vehicle. These perturbations may affect driver comfort or driver confidence in the adaptive speed control system, with the result that they can affect the commercial value of such systems. Conventional systems also prescribe control based on presumed driver capabilities, such that all drivers alike must succumb to the deceleration rate, brake reaction time and minimum following distance allowed by the system, if any. These parameter settings may not be consistent with the driver's preferred driving style, undermining the desirability of using the adaptive speed control system. A method in accordance with the preamble of Claim 1 is disclosed in EP-A-0145989. The present invention seeks to provide an improved method of controlling the speed of a vehicle. A method of controlling the speed of a vehicle in accordance with the present invention is characterised over EP-A-0145989 by the features specified in the characterising portion of Claim 1. The invention can overcome the shortcomings of the prior art systems by carefully controlling the vehicle speed at all times when obstacles are present, including during control transitions, with a primary objective of minimizing speed perturbations that may be unpleasant to the driver. Additionally, the method can compensate for driver response time by allowing the driver to introduce a preferred reaction time which affects not only minimum desired inter-vehicle spacing, but also braking response time and a maximum allowable deceleration value. In general, this method can determine a desired following distance or spacing between the controlled vehicle and vehicles ahead of the controlled vehicle. This distance may be based on a driver selected "spacing input". If a vehicle detected ahead of the subject vehicle is outside the desired distance, the subject vehicle speed can be controlled with respect to the preceding vehicle in a first mode, in a manner common in the art. However, if the actual spacing is less than the desired spacing, the method can operate in a second control mode and calculate a deceleration rate by which to decelerate the vehicle, such that as the distance to the preceding vehicle approaches a driver-influenced minimum distance, the controlled vehicle speed will approach the speed of the preceding vehicle. Upon reaching a predetermined minimum deceleration value, the vehicle may be further carefully decelerated at that predetermined value, which may be the level road coasting rate for that vehicle, allowing the inter-vehicle spacing to increase until that spacing reaches the desired spacing, at which time a conventional speed control mode can come into effect to maintain the vehicle at or near the desired spacing. Unlike the prior systems, this invention can provide smooth changes between control modes, placing importance on minimizing control perturbations. The rate of deceleration can also be continually controlled for accuracy and repeatability; and can be set to provide a beneficial trade-off between smoothness and precise operation. Additionally, the rate of deceleration, the braking harshness and response and the minimum possible spacing can be tailored to the individual driver's driving style. According to another aspect of the present invention, there is provided a method of controlling the speed of a vehicle as specified in claim 6. An embodiment of the present invention is described below, by way of illustration only, with reference to the accompanying drawings, in which:- Figure 1 is a diagram illustrating the relationship between range and speed for an embodiment using two control modes; Figure 2 is a diagram of an embodiment of electronic controller for implementing the control modes of Figure 1; Figures 3 to 6 and 8 are computer flow charts illustrating the steps carried out by the electronic controller of Figure 2; and Figure 7 is a graph illustrating the basic relationship between a driver's desired spacing and minimum following distance, braking reaction time, and maximum allowable deceleration value. Referring to Figure 1, when the adaptive speed control system of an automotive vehicle 10 (hereinafter referred to as the controlled vehicle), which is travelling at a speed V o and which has an acceleration A o , detects a preceding vehicle 12 travelling at a speed V T it ascertains the speed of the preceding vehicle 12, the distance between the two vehicles (range), and the rate of change of this distance (range rate). Upon sensing the preceding vehicle 12, the control system calculates a desired range RNG D at which the two vehicles 10, 12 should be maintained. If the actual range RNG A of the two vehicles exceeds RNG D , the range is classified as being within mode 1, shown in Figure 1, and a mode 1 speed control is activated. Alternatively, if RNG A is less than RNG D , the range is classified as being within mode 2, also shown in Figure 1, and a mode 2 speed control is activated. In order to minimize the possibility of the control system oscillating between modes 1 and 2, a hysteresis band (not shown) is provided in a conventional manner around the transition point RNG D . Accordingly, to make a transition from mode 2 to mode 1, RNG A must exceed RNG D by an amount determined by the extent of the hysteresis band. In general, when the control system is operating in mode 1, it controls the speed of the controlled vehicle 10 in a conventional manner, such that the vehicle 10 approaches the desired range RNG D , but does not come within it. In mode 2 the control system establishes, on the basis of the driver's entered desired spacing, an absolute minimum distance, shown in Figure 1 as D MIN , and controls the deceleration A D of the vehicle 10 in such a manner that as range RNG A approaches D MIN , the speed V o of the controlled vehicle 10 approaches the speed V T of the preceding vehicle 12. When A D , which decreases in magnitude as V o approaches V T , reaches a predetermined minimum deceleration value, it is held at that value until the actual range RNG A between the two vehicles 10, 12 is approximately equal to the desired range RNG D . Control in mode 1 then operates to control the speed of the controlled vehicle 10. Referring to Figure 2, a conventional obstacle detection unit 20, such as a common radar system, is mounted in a forward position in the controlled vehicle 10, such that it is capable of detecting obstacles ahead of the vehicle 10, in particular preceding vehicles 12 in the path of the controlled vehicle 10. Information from the detection system 20 is transmitted to an adaptive speed controller 18, such that, if a preceding vehicle 12 is present, the controller 18 is provided with the travelling speed of that vehicle V T , the range or inter-vehicle spacing RNG A , and the rate of change of that spacing. A conventional vehicle speed sensor 22 transmits the travelling speed V o of the controlled vehicle 10 to the controller 18. The controller may use this information to calculate the acceleration A o of the controlled vehicle 10. A driver "spacing input" 24 is provided, which may be a dial located in proximity to the vehicle instrument panel (not shown), enables the driver may influence the speed control system according to his desired driving style. The spacing input set by the driver in this manner affects the desired inter-vehicle spacing RNG D , the minimum allowable spacing D MIN , the maximum tolerable vehicle deceleration value, and the vehicle braking reaction time T RB . The manner in which these parameters are affected is be described below. In general, the adaptive speed controller 18, when the vehicle conventional cruise control module 26 is active, attempts to classify the relationship between the controlled vehicle 10 and a sensed preceding vehicle 12 (if present) into one of two modes, mode 1 and mode 2, corresponding to two speed control strategies. Upon such classification, the appropriate control strategy is executed, and an appropriate control command is issued such as a braking command to a brake control module 30, or as a revised cruise control set speed to the cruise control module 26. In this embodiment, the adaptive speed controller 18 may include any conventional microprocessing unit, such as a Motorola MC68HC11 single chip micro-controller. The type of control command issued corresponds to the level of control intervention necessary under the detected circumstances. For example, in mode 1, only subtle control of vehicle speed is necessary such that the desired vehicle speed may be attained by simply adjusting the cruise control set speed. The cruise control module 26 may then control throttle position in a conventional manner on the basis of the adjusted desired speed. However, in mode 2, greater control is required to control vehicle speed appropriately, such that cutting of power to the vehicle engine or braking may be required. An alarm indicator 28 is provided to warn the driver when conditions require his intervention, such as a need for a deceleration that exceeds a predetermined maximum deceleration possible with the system as set. However, in other embodiments, the driver may also be notified of less severe situations, such as when the controlled vehicle 10 moves closer to the preceding vehicle 12 than the desired following distance or simply when the system detects a preceding vehicle 12. The cruise control module 26 is connected to the speed controller 18 and communicates to the controller 18 a driver set speed V SET which is the driver's requested cruising speed, and a cruise enable signal, indicating whether cruise control is currently active. This request is within the driver's control, in that the driver may request cruise control, cancel that request, or temporarily suspend that request in a conventional manner, and thereby deactivate cruise, so as to disable the control by the controller 18. For example, the driver may enable cruise control by setting a switch located in proximity to the instrument panel. He may cancel the cruise control by resetting that switch, or by interrupting power to the cruise control system 26. Finally, he may temporarily suspend cruise control by engaging the vehicle brakes, or by requesting a change in the set speed. In this embodiment, when conventional cruise control has been disabled, adaptive speed control also becomes inactive. The adaptive speed control module 18, if active, transmits a set speed to the cruise control module 26. This speed will be the same as the driver set speed if there is no preceding vehicle 12 present or if the desired speed determined by the adaptive speed control system 18 exceeds the driver set speed. Otherwise, the transmitted set speed will be some value less than the driver set speed. The adaptive speed control module 26 also sets a "brakes enabled" flag when braking is required. The cruise control module 26 has access to this flag, and disables cruise control when the flag shows the brakes to be engaged. When cruise control is disabled in this manner, the throttle blade is automatically closed or is allowed to close such that the effect of the brakes, which will be trying to decelerate the vehicle, is not opposed by engine power, i.e. via an open throttle. When the system determines that the brakes are no longer needed, the brakes enabled flag is deactivated, such that normal cruise control may resume. Referring to Figure 3, when power is applied to the system, such as when the vehicle ignition is turned to its "on" position, the routine starts at step 40, and proceeds to step 42 where the system is initialized. At this step data constants are loaded from ROM locations to RAM locations, and counters, pointers and flags are initialized. The routine then proceeds to step 44, where interrupts used in the operation of the routine are enabled. Next, the routine proceeds to a background loop at step 46, which is continuously repeated while the system is operating. In this loop, system maintenance and diagnostic routines may be executed. This loop is interrupted by the main control routine illustrated in Figure 4. In this embodiment, an interrupt is programmed to occur every 125 milliseconds. Referring to Figure 4, the processor 18, on servicing the speed control interrupt proceeds to step 48. In general, when the driver has requested cruise control, this interrupt routine examines vehicle operating conditions and the vehicle's relationship to any preceding vehicle 12, if present, and based on that examination either determines a new vehicle set speed, which is communicated to the cruise control module 26, or determines that braking is necessary, at which time cruise control is temporarily disabled, and a brake pressure command is transmitted to the conventional brake control module 30. The brake control module 30 in this embodiment is a common vehicle traction controller. If no preceding vehicle 12 is detected, the routine in this embodiment simply passes the driver set speed through to the cruise control module 26, for use in a conventional cruise control algorithm. Specifically, the routine proceeds from step 48 to step 50, where a check is made to determine whether the driver has requested cruise control. If no such request has been made, or if, in a conventional manner, the cruise has been disabled for example by the driver applying the brakes, or by the driver turning off cruise control via a conventional cruise control set switch, this routine is left through step 102, which simply resets the interrupt service routine to cause it to occur again at the predetermined time (125 milliseconds). After resetting the interrupt at step 102, the routine proceeds to step 104, where control is returned to the background loop of Figure 3. If, at step 50, it is determined that the driver has requested cruise control, the routine proceeds to step 52, where the general parameters used in this embodiment are read and stored in RAM. In this embodiment, these parameters are determined using the conventional obstacle detection system 20 of Figure 2, which periodically scans a predetermined area ahead of the controlled vehicle for obstacles such as a preceding vehicle 12. From the reflection of the signal used in scanning, the detection system calculates, even in the absence of an obstacle, the range or distance RNG A to the assumed obstacle, the rate that the range is changing with respect to a predetermined period, and the velocity V T of the assumed obstacle. Additionally, at this step the velocity V o of the controlled vehicle 10 is read using the vehicle speed sensor 22 of Figure 2, and is stored in RAM. The routine then proceeds to step 54, to check whether in fact there is an obstacle ahead of the vehicle 10, such as a preceding vehicle 12. This check may be made by examining the range value received at step 52, such that if this value is excessively large, it is assumed that no preceding obstacle is currently present. A detected obstacle may be assumed to be a preceding vehicle 12. The characteristics of the preceding vehicle 12 then becomes a factor with which the speed control of the controlled vehicle 10 may be changed. Although this embodiment assumes a preceding obstacle may be a vehicle 12, it will, of course, apply to any detected obstacle in the path of the controlled vehicle 10. If no preceding obstacle is detected, the routine proceeds to step 98, where the speed command V OD to be returned to the cruise control module 26 upon completion of this routine is set to the original driver set speed, which is the speed the driver sets when cruise control is requested. Thus, this routine does not alter the driver set speed when no preceding obstacle is detected. The routine then proceeds to step 100, where a brakes active flag is cleared. This flag is set whenever vehicle braking is required, and is periodically read by the cruise control module 26. The module 26 will disable the throttle when the flag is set, allowing the throttle to close before braking is initiated. In this manner, the possibility of the brakes having to work against the effect of the throttle is reduced. After the brakes active flag is cleared, the routine proceeds to step 102, where the interrupt used to trigger operation of this routine is enabled, as previously described. Finally, the routine returns to the background loop of Figure 3, via step 104. Returning to step 54, if a preceding obstacle is present (which is assumed by this embodiment to be a preceding vehicle 12), the routine then moves to step 56 and reads T REACT from system memory. T REACT is a predetermined driver reaction time which is used as a factor in determining a desired distance RNG D by which the controlled vehicle 10 is to follow the detected preceding vehicle 12. The routine now has adequate information to calculate the desired following distance RNG D , at step 58. RNG D is a function of the relative speed of the two vehicles, the range of the two vehicles, and of the rate of change of this range. Additionally, RNG D is a function of T REACT , a predetermined value indicating the driver reaction time. If the driver reaction time is small, a smaller following distance may be allowed, whereas a larger reaction time will result in the adoption of a larger following distance. Upon calculation of RNG D , the routine proceeds to step 59, where a sub-routine to calculate A D is executed. This sub-routine determines the deceleration value A D necessary to decelerate the vehicle 10 when the controlled vehicle 10 is within a range requiring control in mode 2, to a predetermined final condition, that is a minimum acceptable following distance and/or vehicle speed V o . This sub-routine may be executed for control in either mode 1 or mode 2, to predict whether conditions are such that when mode 2 is adopted, the predetermined final condition can be met. In the case that the maximum allowable vehicle deceleration can not meet the final condition, an alarm will be activated to warn the driver of the failure or the prospective failure to meet this condition. After executing the routine to calculate A D , the actual range RNG A is compared to the desired range RNG D at step 60. If RNG A is less than RNG D , mode 2 is activated, and the controlled vehicle 10 will be decelerated on the basis of the value A D , calculated at step 59. To carry out these steps, the routine moves to step 64, where a hysteresis active flag is set. The hysteresis active flag is set whenever the control routine is in mode 2, such that a hysteresis factor δ HYST will be added to the mode 2 to mode 1 transition distance in a conventional manner to prevent control oscillations when RNG A is oscillating around RNG D . In general, this algorithm switches between mode 1 and mode 2 on the basis of the difference between the actual inter-vehicle range RNG A and the desired inter-vehicle range RNG D , as is illustrated in Figure 1. By adding δ HYST to the transition distance while in mode 2, the transition will not be made to mode 1 until the actual spacing exceeds the desired spacing plus δ HYST . Once in mode 1, the hysteresis factor is not used, such that mode 2 will be entered on the normal transition point. Returning to step 60, if RNG A is greater than or equal to RNG D , the routine proceeds to step 66, where the hysteresis flag is checked. The difference between desired and actual range, examined at step 60, indicates that control may be in mode 1. However, if the routine was last in mode 2, such that distance hysteresis is active, an additional check must be made before changing to mode 1. This check, at step 68, requires the difference between the actual and desired range to exceed the hysteresis factor δ HYST , or in other words, RNG A must exceed the sum of RNG D and δ HYST . If the actual range does exceed this sum, the routine clears the distance hysteresis active flag at step 70. Once this flag is cleared, or if hysteresis was not active at step 66, the routine proceeds to step 82, where a minimum deceleration function MIN D is deactivated. MIN D is a function that limits the deceleration of the vehicle to a predetermined minimum, such as the level road coast rate, to reduce driver perception of the final stages of deceleration, as will be described. This function is used in mode 2 control when deceleration is carefully controlled, and therefore is deactivated here. Next, the routine proceeds to step 84, where the desired deceleration value A D is cleared. This value is used as the commanded deceleration value in mode 2 only, and therefore is otherwise deactivated. A sub-routine is then executed at step 86 to revise, if necessary, the desired vehicle travelling speed on the basis of the detected preceding vehicle. It should be noted, as will be detailed later, that the determined revised speed will be limited to a speed less than the driver set speed V SET . Upon completing the revised speed determination at step 86, the brakes active flag is cleared at step 100. The routine then proceeds to step 102, where the interrupt used to trigger operation of this routine is re-enabled. Next, the routine returns to the background loop of Figure 3, via step 104. Returning to step 68, if the actual range RNG A does not exceed the sum of the desired range RNG D and the hysteresis factor δ HYST , or if the routine has just executed steps 60 and 64, the routine proceeds to step 72, where the minimum deceleration function active flag MIN D is checked. MIN D is activated whenever a deceleration value A D is calculated that exceeds a predetermined minimum value A MIN , such that A D will then be limited by the lower limit A MIN . In general, the vehicle will be decelerated at A D , which will continue to decrease in magnitude as V o approaches V T , on the basis of the objectives of mode 2 control, until A D equals or is less than A MIN . The vehicle deceleration will then remain at A MIN until the actual range between the two vehicles 10, 12 approximately equals the desired range RNG D . In this embodiment, A MIN is the predetermined level road coasting rate of the vehicle, which may be determined off-line in a vehicle calibration process. The level road coasting rate of the vehicle is a desirable deceleration value in the context of this embodiment, as it has been determined to be a deceleration value that is relatively comfortable to the driver in relation to other deceleration values. Specifically, at step 72, if MIN D is active, the routine proceeds to step 74, where A D is compared to A MIN . A D is limited to A MIN at step 76 if it is below A MIN . After checking this limit at step 74, and if necessary, after limiting A D at step 76, the routine proceeds to step 88, where a closed loop deceleration sub-routine is executed. This deceleration sub-routine attempts, using vehicle brakes, to cause the actual deceleration rate A o to equal the desired deceleration rate A D . After executing this sub-routine, the speed control interrupt that initiates the routine of Figure 4 is enabled at step 102. The routine then returns to the background loop of Figure 3 via step 104. Returning to step 72, if the minimum deceleration function MIN D is not active, the routine proceeds to step 78, where A D is compared to the minimum deceleration value A MIN . If A D exceeds A MIN , the minimum deceleration function is activated at step 80, such that A D will, in prospective iterations of this routine, be limited to values greater than or equal to A MIN . The routine then proceeds to step 88, where the closed loop deceleration control sub-routine is executed, as described above. If, at step 78, A D is already less than or equal to A MIN , the minimum deceleration function is not enabled, and the routine proceeds to step 88 directly. In this case the vehicle is being controlled according to relatively subtle deceleration values, i.e. values lower than A MIN , such that it is not considered desirable to limit deceleration to the higher A MIN value. The specific steps required to calculate A D in step 59 of the main speed control routine illustrated in Figure 4, is illustrated in Figure 5, and is entered at step 110. This sub-routine iteratively calculates A D , subject to the final condition that when A D is substantially zero, RNG A should be approximately equal to a predetermined minimum range D MIN pre-set by the driver, and V o and V T should be substantially the same. Specifically, the routine proceeds from step 110 to step 112, where D MIN is read. In this embodiment, the driver may, according to his preferred driving style, set a "spacing input", illustrated in Figure 7. This input may be set by the driver using a conventional dial in proximity to the instrument panel of the vehicle. The dial set position (the driver spacing input) is directly proportional to D MIN , and to a braking reaction time T RB , and is inversely proportional to a maximum deceleration value. After reading D MIN from the spacing input, the routine proceeds to step 114, where the rate at which RNG A is changing is examined. If it is less than zero, meaning that the controlled vehicle 10 is moving away from the preceding vehicle 12, there is no need to calculate A D , which is only used when the controlled vehicle 10 is closing in on the preceding vehicle 12. Accordingly, if rate of change of RNG A is less than zero, the routine proceeds to step 136, where any previously set driver alerts are cleared. The driver alert may include an audible or a visual indication to warn the driver that a situation exists or is developing that warrants the driver's attention, such as a situation in which the maximum allowable deceleration would have to be exceeded. After clearing any active alerts at step 136, the routine proceeds to step 132, where it returns to step 59 of the routine illustrated in Figure 4. Returning to step 114, if the rate of change in RNG A (the "range rate") is greater than or equal to zero, the routine proceeds to step 115, where the rate of change is compared to the present vehicle velocity V o . In this embodiment, if rate of change exceeds or is equal to V o , it is determined that the deceleration required to meet the final conditions of mode 2 may exceed the maximum allowable deceleration value. In such a case, the desired deceleration value is set to the maximum available value at step 126, and the routine proceeds to step 128, where the driver is alerted of the potential problem. This alert may include an aural and visual warning of conventional form, for example illumination of a warning light in proximity to the instrument panel, and activation of an aural tone of substantial amplitude to be heard readily by the driver. The routine then, at step 132, returns to step 59 of the routine illustrated in Figure 4. Alternatively, if at step 115, the rate of change is less than V o , the routine moves to step 116, where the actual range RNG A is compared to the desired range RNG D . Steps 116 to 118 make a substitution necessary to allow calculation of A D in mode 1 or in mode 2. If in mode 1, these steps substitute RNG D into the equation for calculation of the desired deceleration value A D . RNG D is required for the deceleration value calculation while in mode 1 because RNG D is the range at which the vehicle deceleration will start to be controlled on the basis of A D . The value of A D , once calculated using RNG D in this manner, can be checked against the system limits to verify that the final conditions can be met. If they cannot be met, an alarm is activated, warning the driver of the prospective problem. However, if control is in mode 2, the actual range of the controlled vehicle 10 will be used in the A D calculation, as it is in that range that control on the basis of A D will be attempted. Accordingly, if the calculated value of A D necessary to meet the predetermined final conditions exceeds the maximum allowable deceleration, an alarm is activated. Specifically, at step 116, if RNG A is greater than RNG D , indicating that control may be in mode 1, the routine proceeds to step 117 and sets a dummy variable Y to RNG D , such that RNG D will be used in the calculation of A D . Alternatively, at step 116, if RNG A is less than or equal to RNG D , indicating that control is in mode 2, the routine proceeds to step 118, where Y is set to RNG A , such that RNG A will be used in the calculation of A D . After determining the value to be assigned to Y via steps 116 through 118, the routine proceeds to step 119, to determine the denominator DENOM of the expression used to calculate A D , on the basis of the following expression DENOM = D MIN - Y + (Range Rate) * T RB where T RB is the driver influenced brake reaction time, and D MIN is the driver influenced minimum allowable range. The driver influences both of these parameters via the driver spacing input. T RB is a setting pertaining to the desired responsiveness of the vehicle braking system. It is directly proportional to the driver spacing input, such that the higher the spacing input, the larger the braking reaction time in response to a determined need for braking. In this manner, a driver may influence how quickly his brakes react in situations requiring automatic braking. Next, at step 120, DENOM is compared to zero. The denominator provides information concerning the capability of the system to decelerate the vehicle so as to satisfy the predetermined final conditions. This may be seen by rearranging the inequality illustrated in step 120 as follows Y <= D MIN + (Range Rate) * T RB This inequality, if it holds, illustrates that, in the context of the driver programmed braking reaction time T RB , and with the present difference in speeds between the vehicles, the actual range of the controlled vehicle 10 will become less than D MIN , despite the largest available deceleration value. In this case, the driver must be notified of the potential problem. Accordingly, if DENOM is greater than or equal to zero, the routine proceeds to step 126, where the desired deceleration value A D is set to the maximum deceleration value. The routine then proceeds to step 128, where the driver is warned of a potential problem by a suitable warning device. The routine then proceeds to step 132, where it returns to step 59 of the routine illustrated in Figure 4. Returning to step 120, if DENOM is less than zero, a deceleration value may be available such that the controlled vehicle can be decelerated to a speed which is less than or equal to the preceding vehicle speed before the actual distance RNG A between the two vehicles 10, 12 becomes less than D MIN . Accordingly, the routine proceeds to step 122, where the deceleration value A D is calculated on the basis of the following equation A D = (-RANGE RATE) 2 /(2 * DENOM). This deceleration value is based on boundary conditions largely controlled by the driver, via the described "spacing input". With this input, the driver influences the minimum following distance, braking reaction time, and maximum deceleration value in a manner consistent with his preferred driving style. Generally, the constraints within which A D is calculated are the desire not to fall within D MIN , tempered with the braking reaction time and the maximum deceleration value. Accordingly, A D is calculated on the basis of the equation illustrated at step 122, such that when RNG A is substantially equal to D MIN , the velocity of the two vehicles 10, 12 will be approximately the same, such that the controlled vehicle 10 is no longer closing on the preceding vehicle 12. Additionally, A D is limited by a driver influenced maximum deceleration value, to ensure a deceleration is not imparted to the vehicle 10 which is too uncomfortable to the driver. Once the vehicle deceleration A D is reduced to a value less than or equal to the predetermined minimum deceleration value A MIN , assuming A D started at a magnitude above A MIN , it is maintained at A MIN until the actual range RNG A is substantially equal to the desired range RNG D . Specifically, upon calculating A D at step 122, the routine proceeds to step 124, where the absolute value of A D is compared to the driver influenced maximum deceleration value. If A D exceeds this maximum, it is limited to the maximum value at step 126. The routine then proceeds to step 128, where the driver is warned of the exceeding of the maximum deceleration value via the described aural and visual alerts. The routine then proceeds to step 132, where it returns to step 59 of the routine illustrated in Figure 4. Alternatively, if the absolute value of A D does not exceed the maximum allowed deceleration value at step 124, the routine proceeds to step 130, where any previous driver alerts are cleared. The clearing of the alert indicates that the predetermined final condition may be satisfied without exceeding the maximum deceleration value. Next, the routine proceeds to step 132, where it returns to step 59 of the routine illustrated in Figure 4. The specific closed loop deceleration control sub-routine used in step 88 of the routine illustrated in Figure 4, is depicted in Figure 6, and starts at step 136. The sub-routine proceeds to step 138, where the brakes active flag is set, indicating that braking will be required to achieve the desired deceleration. Next, the sub-routine proceeds to step 140, where the present deceleration A o of the controlled vehicle 10 is determined. This value may be determined using a conventional vehicle speed signal and calculating the rate that signal changes over a predetermined time period. Next, at step 142, the deceleration error e ACC is generated as the simple difference between A D and A o . The sub-routine then moves to step 144, where a desired change in brake pressure ΔBP is calculated as a function of e ACC . ΔBP is determined as the change in brake pressure necessary to reduce the difference between A D and A o substantially to zero in an expedient manner. This pressure change is then, at step 146, transmitted to a conventional brake control module 30, such as a traction controller. The brake control module 30 generally adds ΔBP to or, in the appropriate case, subtracts ΔBP from any existing commanded brake pressure, thus altering vehicle deceleration in a manner consistent with reaching the desired deceleration value A D . The iterative nature of the routine, by repeatedly revising ΔBP such that A o approaches A D , provides a means of closed loop deceleration control based on A D . After communicating the change in brake pressure to the brake control module 30, the sub-routine proceeds to step 148, where it returns to step 102 of the routine illustrated in Figure 4. In this embodiment, the closed loop deceleration sub-routine illustrated in Figure 6 may be executed in a manner other than via step 88 of the routine illustrated in Figure 4. A dedicated processor interrupt is used in this embodiment to initiate the closed loop deceleration routine at an execution rate exceeding the 125 milliseconds execution rate of the routine of Figure 4. Specifically, in this embodiment the sub-routine of Figure 6 is executed twice by the dedicated interrupt for every one time it is executed by the routine call from step 88 of Figure 4. In this manner, for a calculated value of A D , several deceleration iterations by the routine of Figure 6 may be executed in an attempt to eliminate the deceleration error e ACC . By increasing the iteration rate of the sub-routine of Figure 6, the smoothness and overall responsiveness of the braking control is improved, so as to control vehicle speed in an unobtrusive manner. Returning to step 86 of the routine illustrated in Figure 4, if the control is in mode 1, i.e. if the actual range exceeds the desired range between the vehicles 10, 12, it is necessary to determine a desired travelling speed for the controlled vehicle 10. This determination takes place in the sub-routine called from step 86 of the routine illustrated in Figure 4, and starts at step 150 of the sub-routine illustrated in Figure 8. The sub-routine proceeds to step 152, where the desired vehicle speed V OD is ascertained. V OD may be determined in any conventional manner, for example by basing the controlled vehicle speed on the periodically updated sensed speed of the preceding vehicle 12. However, it is contemplated that this determination can include any means of providing a speed which minimizes the magnitude of the difference between desired range RNG D and actual range RNG A , in a manner that places high importance on minimizing the obtrusiveness of the speed control. Upon calculation of V OD , the sub-routine proceeds to step 154, where V OD is compared to the cruise control set speed V SET , as set by the driver upon activation of the cruise control. Understanding that the driver alone can increase the travelling speed of his vehicle above his original set speed, and that the described routine simply deals with situations that enquire as to whether the vehicle speed may be reduced below the driver's set speed, V OD will be limited to values below the driver's set speed. Accordingly, if V OD exceeds V SET at step 154, it will be limited to V SET at step 156. The sub-routine then, via step 160, returns to step 100 of the routine illustrated in Figure 4. Alternatively, if V OD does not exceed V SET , the sub-routine proceeds from step 154 to step 160 directly, after which it returns to step 100 of the routine illustrated in Figure 4. The cruise control, upon receiving V OD , may control vehicle speed on the basis of V OD in any conventional manner.

Claims: A method of controlling the speed of a controlled vehicle comprising the steps of sensing (54) the presence of a preceding vehicle (12) or other object in the path of the controlled vehicle (10); sensing (52) the actual spacing (RNG A ) between the controlled vehicle and the preceding vehicle or other object when a preceding vehicle or other object is determined to be present; ascertaining (58) a desired spacing (RNG D ) between the controlled vehicle and the preceding vehicle or other object; controlling the speed of the controlled vehicle on the basis of a first speed control mode (MODE 1) when the actual spacing exceeds the desired spacing; and controlling (88) the speed of the controlled vehicle on the basis of a second speed control mode (MODE 2) when the actual spacing is less than the desired spacing; characterised by sensing (52) the relative speed between the controlled vehicle and the preceding vehicle or other object; obtaining (112) a predetermined minimum allowable spacing (D MIN ) which is less than the desired spacing; and in that the second speed control mode includes the steps of (a) calculating (136) a vehicle deceleration value (A O ) by which to decelerate the controlled vehicle, the deceleration value being calculated such that as the actual spacing approaches the minimum allowable spacing, the relative speed between the controlled vehicle and the preceding vehicle or other object approaches zero, and the calculated deceleration value approaches zero; (b) decelerating the controlled vehicle on the basis of the calculated deceleration value; (c) decelerating the controlled vehicle at a predetermined deceleration value (A MIN ) when the calculated deceleration value decreases to a value less than or equal to the predetermined deceleration value; and (d) maintaining the controlled vehicle deceleration at the predetermined deceleration value until the actual spacing exceeds the desired spacing. A method according to Claim 1, wherein the step of controlling vehicle speed on the basis of the first speed control mode (MODE 1) comprises the steps of determining (152) a desired speed (V OD ) of the controlled vehicle (10) on the basis of the speed (V T ) of the preceding vehicle (12) or other object and on the desired spacing (R NGD ), and controlling (154) the speed (V O ) of the controlled vehicle so as to minimise the difference between the desired speed (V OD ) and the actual speed (V O ) of the controlled vehicle when the desired speed is less than a driver set speed (V SET ). A method according to Claim 1 or Claim 2, wherein the step (112) of obtaining a predetermined minimum allowable spacing (D MIN ) comprises the steps of reading a driver-set input indicative of a driver's preferred driving style; and determining the predetermined minimum allowable spacing (D MIN ) on the basis of the driver-set input. A method according to any one of Claims 1 to 3, wherein the step of controlling vehicle speed on the basis of the first or second speed control mode (MODE 1, MODE 2) comprises the steps of reading a driver-set input indicative of a driver's preferred driving style; determining (59) a maximum tolerable vehicle deceleration (A D ) on the basis of the driver-set input; comparing the calculated deceleration (A O ) to the maximum tolerable vehicle deceleration; limiting the deceleration of the controlled vehicle (10) to the maximum tolerable vehicle deceleration when the calculated deceleration exceeds the maximum tolerable deceleration; and generating (128) a warning when the calculated deceleration exceeds the maximum tolerable vehicle deceleration. A method according to any one of Claims 1 to 4, wherein the step of controlling vehicle speed on the basis of the second speed control mode (MODE 2) comprises the steps of reading a driver-set input indicative of a driver's preferred driving style; determining a desired braking reaction time (T RB ) on the basis of the driver-set input; and adjusting (142) the calculated deceleration (A O ) on the basis of the desired braking reaction time. A method according to any one of Claims 1 to 5, comprising the additional step of controlling the speed of the controlled vehicle (10) on the basis of a third speed control mode in the absence of a preceding vehicle (12) or other object, the third speed control mode including the steps of sensing (50) a driver-set speed (V SET ) set by the driver as the desired speed of the controlled vehicle, and controlling the speed of the controlled vehicle so as to minimise the difference between the driver-set speed and the actual speed (V O ) of the controlled vehicle.

Inventors: DEERING RICHARD KARL, DEERING, RICHARD KARL
Applicants: GEN MOTORS CORP, GENERAL MOTORS CORPORATION
Application year: 1991
Main classification: B60K31
IPC codes: B60K31, G01S13, B60T7, B60W40