Vehicle speed control
Patent Information
- Application Number
- CN202610221222.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2025-02-21
- Filing Date
- 2026-02-24
- Publication Date
- 2026-08-21
Smart Images

Figure CN122607318A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to vehicle speed control. Various aspects of the invention relate to control systems, systems, vehicles, methods, and computer-readable instructions. Background Technology
[0002] Vehicle speed control systems typically provide non-adaptive speed control, whereby the system attempts to maintain the vehicle at a set speed. Some vehicle speed control systems are adaptive, meaning they will adjust the maximum driving speed below the set speed in response to, for example, encountering challenging terrain. The purpose of this invention is to overcome one or more disadvantages of the prior art. Summary of the Invention
[0003] The various aspects and embodiments of the present invention provide control systems, systems, vehicles, methods, and computer-readable instructions as claimed in the appended claims.
[0004] According to one aspect of the invention, a speed control system for a vehicle is provided, the speed control system comprising one or more processors, the one or more processors being collectively configured to: receive a signal indicating a vehicle speed; receive a signal indicating at least one vehicle body acceleration component; determine a first score based on the at least one vehicle body acceleration component at a first time; determine a second score based on the at least one vehicle body acceleration component at a second time; determine an allowable score range based on the vehicle speed at the second time, the allowable score range including the first score; determine whether the second score is within the allowable score range; if the second score is within the allowable score range, generate a vehicle acceleration request based on the second score; and if the second score is not within the allowable score range, determine a third score, the third score being the endpoint of the allowable score range closest to the second score, and generate a vehicle acceleration request based on the third score.
[0005] The score will cause the vehicle to tend to accelerate or decelerate. As the vehicle accelerates, the score may shift in the direction that tends to decelerate. As the vehicle decelerates, the score may shift in the direction that tends to accelerate. This invention advantageously prevents the score from fluctuating continuously, thereby preventing the vehicle's speed from fluctuating continuously. However, using an allowable score range carries the risk of making the speed control system react slowly to changes in the roughness of the driving surface. The perception of this roughness by vehicle occupants is modulated by the vehicle's speed. Therefore, it is beneficial to adjust the allowable score range according to the vehicle speed, and thus, it is beneficial to adjust the responsiveness.
[0006] A speed control system includes one or more controllers, which collectively include: at least one electronic processor having an electrical input for receiving input signals; and at least one memory device electrically coupled to the at least one electronic processor and having instructions stored therein; wherein the at least one electronic processor is configured to access the at least one memory device and execute the instructions thereon to: receive a signal indicating a vehicle speed; receive a signal indicating at least one vehicle body acceleration component; determine a first score based on the at least one vehicle body acceleration component at a first time; determine a second score based on the at least one vehicle body acceleration component at a second time; determine an allowable score range based on the vehicle speed at the second time, the allowable score range including the first score; determine whether the second score is within the allowable score range; if the second score is within the allowable score range, generate a vehicle acceleration request based on the second score; and if the second score is not within the allowable score range, determine a third score, the third score being the endpoint of the allowable score range closest to the second score, and generate a vehicle acceleration request based on the third score.
[0007] Optionally, the at least one vehicle body acceleration component includes at least one of the following: vertical acceleration, pitch acceleration, or roll acceleration.
[0008] Optionally, the at least one vehicle body acceleration component is received from one or more accelerometers and / or one or more gyroscopes mounted on the vehicle body.
[0009] Optionally, different allowable scoring ranges exist for different vehicle speeds.
[0010] Optionally, as vehicle speed increases, the lower endpoint of the allowed scoring range becomes further away from the first score.
[0011] Advantageously, this allows the vehicle to decelerate more quickly from higher speeds in order to rebuild the score rapidly within acceptable limits.
[0012] Optionally, for the vehicle speed within the first range, as the vehicle speed increases, the upper endpoint of the allowed scoring range becomes further away from the first score.
[0013] Advantageously, this allows vehicles to quickly regain speed as scores increase, but preventing vehicles from accelerating too aggressively from low speeds can be unsettling and undesirable due to the uncertainty of whether challenging terrain has ended.
[0014] Optionally, for a second range of vehicle speeds that are higher than the first range, the upper endpoint of the allowed scoring range becomes closer to the first score as the vehicle speed increases.
[0015] Advantageously, this limits the rate at which scores can increase when the vehicle is already at a high speed, so there is no need to gain faster speeds.
[0016] Optionally, the first range of vehicle speed and the second range of vehicle speed are continuous.
[0017] Optionally, the one or more processors are collectively configured to also determine the allowed score range based on the difference between the first score and the second score.
[0018] Optionally, as the magnitude of the negative difference between the first score and the second score increases, the magnitude of the difference between the lower endpoint of the allowed score range and the first score also increases.
[0019] Optionally, the increase in magnitude of the negative difference between the first score and the second score is greater than the increase in magnitude of the difference between the lower endpoint of the allowed score range and the first score.
[0020] Optionally, for vehicle speeds within a first range, as the magnitude of the positive difference between the first score and the second score increases, the magnitude of the difference between the upper endpoint of the allowed score range and the first score also increases.
[0021] Optionally, for the first portion of the vehicle speed in the second range that is higher than the vehicle speed in the first range, as the magnitude of the positive difference between the first score and the second score increases, the magnitude of the difference between the upper endpoint of the allowed score range and the first score also increases.
[0022] Optionally, for the second portion of the vehicle speed that is higher than the first portion, as the magnitude of the positive difference between the first score and the second score increases, the magnitude of the difference between the upper endpoint of the allowed score range and the first score remains the same or decreases.
[0023] Optionally, the one or more processors are jointly configured to: calculate a first running average amplitude of at least one vehicle body acceleration component within a sampling window at the end of a first time; determine a first score based on the first running average amplitude of the at least one vehicle body acceleration component; calculate a second running average amplitude of the at least one vehicle body acceleration component within a sampling window at the end of a second time; and determine a second score based on the second running average amplitude of the at least one vehicle body acceleration component.
[0024] Optionally, the one or more processors are collectively configured to: receive multiple vehicle body acceleration components, wherein different vehicle body acceleration components correspond to different degrees of freedom of movement of the vehicle body; and determine a score based on a combination of the multiple vehicle body acceleration components.
[0025] Optionally, the one or more processors are collectively configured to combine multiple vehicle body acceleration components by applying different weights to different vehicle body acceleration components.
[0026] Optionally, different weights reflect the perceptible impact of the vehicle body acceleration component on the occupants.
[0027] Optionally, the one or more processors are configured to: determine a second vehicle acceleration request based on the vehicle speed and the difference between the vehicle speed and the cruise control speed setpoint; arbitrate between the vehicle acceleration request and the second vehicle acceleration request; and output the arbitrated vehicle acceleration request.
[0028] Optionally, arbitration includes a minimum amplitude selection.
[0029] Advantageously, if there is significant vehicle body acceleration, for example, due to traveling on rough driving surfaces, this will adjust the maximum driving speed to be lower than the cruise control speed setpoint.
[0030] Optionally, the operating condition of the speed control system is that the vehicle speed is higher than a threshold speed, and the one or more processors are jointly configured to: determine a third vehicle acceleration request for maintaining the vehicle speed above the threshold speed; arbitrate between the vehicle acceleration request and the third vehicle acceleration request; and output the arbitrated vehicle acceleration request.
[0031] Optionally, the arbitration includes a maximum value selection.
[0032] Advantageously, this prevents the vehicle speed from dropping so low that it becomes challenging to maintain control of the vehicle speed in a predictable and / or consistent manner.
[0033] According to another aspect of the invention, a vehicle or a system for controlling the speed of a vehicle is provided, comprising: a speed control system; a sensor configured to output a signal indicating the vehicle speed; at least one sensor configured to output one or more signals indicating at least one vehicle body acceleration component; and a vehicle powertrain configured to accelerate the vehicle by controlling the amount of drive torque applied to one or more wheels of the vehicle in response to a vehicle acceleration request.
[0034] Optionally, the vehicle or system also includes a vehicle braking system configured to decelerate the vehicle by applying braking torque if the vehicle acceleration request is a request for negative acceleration.
[0035] According to another aspect of the present invention, a method for controlling the speed of a vehicle is provided, the method comprising: receiving an indication of vehicle speed; receiving an indication of at least one vehicle body acceleration component; determining a first score based on the at least one vehicle body acceleration component at a first time; determining a second score based on the at least one vehicle body acceleration component at a second time; determining an allowable score range based on the vehicle speed at the second time, the allowable score range including the first score; determining whether the second score is within the allowable score range; if the second score is within the allowable score range, generating a vehicle acceleration request based on the second score; and if the second score is not within the allowable score range, determining a third score as the endpoint of the allowable score range closest to the second score, and generating a vehicle acceleration request based on the third score.
[0036] According to another aspect of the invention, a computer-readable instruction is provided, which, when executed by a computer, is arranged to perform any or more of the methods described herein.
[0037] According to another aspect of the invention, a non-transitory computer-readable medium is provided comprising computer-readable instructions, which, when executed by one or more electronic processors, cause the one or more electronic processors to perform any or more of the methods described herein.
[0038] According to another aspect of the invention, a speed control system for a vehicle is provided, the speed control system comprising one or more processors configured to: receive a signal indicating a vehicle speed; receive a signal indicating at least one vehicle body acceleration component; and generate a vehicle acceleration request, the vehicle acceleration request depending on at least one vehicle body acceleration component.
[0039] Within the scope of this application, it is expressly intended that various aspects, embodiments, examples, and alternatives, and in particular their various features, set forth in the preceding paragraphs, in the claims, and / or in the description and drawings below, may be adopted independently or in any combination falling within the scope of the appended claims. That is, all embodiments and / or features of any embodiment may be combined in any manner and / or combination falling within the scope of the appended claims, unless such features are incompatible. The applicant reserves the right to amend any originally filed claim or accordingly file any new claim, including the right to modify any originally filed claim to any feature subordinate to and / or incorporated into any other claim, although not initially claimed in this manner. Attached Figure Description
[0040] One or more embodiments of the invention will now be described by way of example only, with reference to the accompanying drawings, in which:
[0041] Figure 1 An example of a vehicle is shown;
[0042] Figure 2A and Figure 2B An example of a system for controlling the speed of a vehicle is shown;
[0043] Figure 3 An example of a speed control system for a vehicle is shown;
[0044] Figure 4 An example is shown as a part of a vehicle's speed control system;
[0045] Figure 5 An example of a predefined relationship between vehicle speed and sampling window length used in a vehicle speed control system is shown;
[0046] Figure 6 An example of a speed control system for a vehicle is shown;
[0047] Figure 7 An example of a speed control system for a vehicle is shown;
[0048] Figure 8 and Figure 9 An example of a predefined relationship between vehicle speed and rate limit used in a vehicle speed control system is shown;
[0049] Figure 10 An example is shown as a part of a vehicle's speed control system;
[0050] Figure 11 An example of a rate limit used in a vehicle's speed control system is shown;
[0051] Figure 12 An example of a speed control system for a vehicle is shown;
[0052] Figure 13 An example is shown as a part of a vehicle's speed control system;
[0053] Figure 14 An example is shown as a part of a vehicle's speed control system;
[0054] Figures 15 to 17 Examples of the effects of various parameters on the target value of vehicle acceleration determined by the speed control system used for the vehicle are shown;
[0055] Figure 18 An example is shown as a part of a vehicle's speed control system;
[0056] Figure 19 An example of a method for controlling the speed of a vehicle is shown;
[0057] Figure 20 An example of a method for controlling the speed of a vehicle is shown; and
[0058] Figure 21 An example of a method for controlling the speed of a vehicle is shown. Detailed Implementation
[0059] Refer to the appendix in this article Figure 1 Vehicle 1 is described according to an embodiment of the present invention. In some, but not all, examples, vehicle 1 is a passenger vehicle, also referred to as a bus or automobile. In other examples, embodiments of the present invention may be implemented for other applications, such as commercial vehicles.
[0060] Figure 1 This is a front-view perspective view showing the longitudinal x-axis representing the centerline between the front and rear of vehicle 1, the orthogonal lateral y-axis between the left and right lateral sides of vehicle 1, and the vertical z-axis. The forward / forward direction, typically viewed from the driver's seat, is the negative x-direction; the backward / rearward direction is the +x-direction. The rightward direction, as seen from the driver's seat, is the positive y-direction; the leftward direction is the -y-direction. These are the first and second lateral directions. The upward direction, as seen from the driver's seat, is the positive z-direction; the downward direction is the -z-direction.
[0061] Figure 2A A system for controlling vehicle speed is shown.
[0062] System 3 includes at least one vehicle body acceleration sensor 21, which is a sensor configured to output one or more signals indicating at least one vehicle body acceleration component 23.
[0063] The vehicle body acceleration component 23 is the acceleration of the vehicle body in one of the six mechanical motion degrees of freedom in three-dimensional space.
[0064] The longitudinal acceleration (surge / longitudinal acceleration) involving translational acceleration forward and / or backward along the x-axis is the vehicle body acceleration component 23. The lateral acceleration (sway / lateral acceleration) involving translational acceleration to the right and / or left along the y-axis is the vehicle body acceleration component 23. The vertical (or vertical) acceleration involving translational acceleration upward or downward along the z-axis is the vehicle body acceleration component 23. The roll acceleration involving angular / rotational acceleration about the x-axis is the vehicle body acceleration component 23. The pitch acceleration involving angular / rotational acceleration about the y-axis is the vehicle body acceleration component 23. The yaw acceleration involving angular / rotational acceleration about the z-axis is the vehicle body acceleration component 23.
[0065] The vehicle body is part of the vehicle's sprung mass. The vehicle body includes the passenger compartment (sometimes called the passenger unit), and therefore the vehicle occupants are located within the vehicle body and experience the acceleration experienced by the vehicle body. Therefore, from the perspective of the vehicle occupants, the vehicle body acceleration component 23 can be considered as indicating the roughness of the driving surface on which the vehicle 1 travels, as adjusted by the vehicle's suspension system.
[0066] At least one vehicle body acceleration sensor 21 may be at least one accelerometer and / or at least one gyroscope or at least one other inertial sensor mounted to the vehicle body. Multiple vehicle body acceleration sensors 21 may be combined into an internal measurement unit mounted to the vehicle body. In some, but not all, examples, the rotational motion of the vehicle body in three-dimensional space (e.g., roll, pitch, and / or yaw) may be measured by the vehicle body acceleration sensor 21 as the rate of change of the vehicle body relative to time (e.g., roll rate, pitch rate, and / or yaw rate), and may be differentiated to produce the corresponding vehicle body acceleration component 23. Differentiation may be performed by an input preprocessing block (not shown) implemented by the speed control system 5, or may be performed by another control system before being input to the speed control system 5.
[0067] System 3 includes a vehicle speed sensor 25, which is configured to output a signal indicating vehicle speed 27. Vehicle speed 27 refers to the speed at which vehicle 1 travels on a running surface. Vehicle speed 27 can be derived from engine speed measured using a crank position sensor, transmission powertrain speed measured using a transmission speed sensor, or wheel speed measured using a wheel speed sensor, etc. Indirect measurement of vehicle speed 27 can be processed by another control system to calculate vehicle speed 27 before being input to speed control system 5.
[0068] In some, but not all, examples, system 3 includes a slope sensor 29, which is a sensor configured to output a signal indicating the slope 31 of the driving surface.
[0069] In some, but not all, examples, the slope sensor 29 may be an inertial sensor associated with the pitch of the vehicle 1. While this may not directly produce the driving surface slope 31, the pitch angle can be derived by integrating the output of the inertial sensor, and this pitch angle can strongly influence the estimation of the driving surface slope 31. Filtering can be applied to remove noise from the output of the inertial sensor due to disturbances or obstacles on the driving surface, such as potholes, because the gradient estimation should reflect the total slope and not be overly localized. Other processing may also be performed. Therefore, it should be understood that in some, but not all, examples, the slope sensor 29 may be one of the vehicle body acceleration sensors 21, although the input to the speed control system 5 for the purpose of indicating the driving surface slope 31 may not come directly from this sensor, as its output requires further processing to estimate the driving surface slope 31.
[0070] System 3 includes a speed control system 5, which includes one or more controllers 7.
[0071] The speed control system 5 is configured to receive data about at least one vehicle body acceleration component 23 from at least one vehicle body acceleration sensor 21.
[0072] In some, but not all, examples, the speed control system 5 is configured to receive and use data about at least one rotational acceleration experienced by the vehicle body. That is, system 3 is configured to use at least one of roll acceleration, pitch acceleration, or yaw acceleration experienced by the vehicle body.
[0073] In some, but not all, examples, the speed control system 5 is configured to receive and use data regarding at least one non-longitudinal translational acceleration experienced by the vehicle body. That is, system 3 is configured to use at least one of the lateral or vertical acceleration experienced by the vehicle body.
[0074] Assume that the accelerations most susceptible to vehicle occupants are those in the directions where their bodies bear the least weight. This could be along the z-axis, around the x-axis, and around the y-axis. Therefore, in some, but not all, examples, the speed control system 5 is configured to receive and use data regarding at least one of the vertical acceleration, pitch acceleration, or roll acceleration experienced by the vehicle body. In some, but not all, examples, the speed control system 5 is configured to receive and use data regarding each of the vertical acceleration, pitch acceleration, and roll acceleration experienced by the vehicle body. It should be understood that this does not preclude the speed control system 5 from now or in the future from receiving and using data regarding other vehicle body acceleration components such as lateral acceleration and yaw acceleration.
[0075] Vehicle occupants may also be more susceptible to vehicle body acceleration occurring at specific frequencies. These frequencies at which occupants may be more susceptible may differ for different degrees of freedom of movement. Therefore, in some, but not necessarily all, examples, the speed control system 5 is configured to preprocess data on at least one vehicle body acceleration component 23 before using it, wherein the preprocessing includes filtering the at least one vehicle body acceleration component 23 to weight different frequencies differently. Different filtering can be performed for different vehicle body acceleration components 23.
[0076] The speed control system 5 is also configured to receive data about the vehicle speed 27 from the vehicle speed sensor 25, and in some, but not all, examples, data about the slope 31 of the driving surface from the slope sensor 29.
[0077] The speed control system 5 is configured to generate at least one vehicle acceleration request 37 or an arbitrated vehicle acceleration request 37' and output it as a control signal to control the speed of the vehicle, for example, via controls of the powertrain 33 of the vehicle 1 or controls of the braking system 35 of the vehicle 1.
[0078] Vehicle acceleration request 37 / 37' is a request for longitudinal acceleration of vehicle 1, used to change the speed of vehicle 1 traveling on the driving surface.
[0079] like Figure 2AThe speed control system 5 shown includes a controller 7; however, it should be understood that this is merely illustrative. The controller 7 includes a processing device 15 and a memory device 17. The processing device 15 may be one or more electronic processing devices 15 capable of executing computer-readable instructions. The memory device 17 may be one or more memory devices 17. The memory device 17 is electrically coupled to the processing device 15. The memory device 17 is configured to store instructions, and the processing device 15 is configured to access the memory device 17 and execute the instructions stored on the memory device 17.
[0080] The controller 7 includes an input device 11 and an output device 13. The input device 11 may include an electrical input terminal 11 of the controller 7. The output device 13 may include an electrical output terminal 13 of the controller 7. The controller 7 may have an interface 9, which includes electrical input / output I / Os 11, 13, or either electrical input terminal 11 or electrical output terminal 13, for receiving information and interacting with external components. The input terminal 11 is arranged to receive: at least one signal from at least one vehicle body acceleration sensor 21; a signal from a vehicle speed sensor 25; and, in some examples but not necessarily all examples, a signal from a gradient sensor 29. The signals are electrical signals indicating at least one vehicle body acceleration component 23, vehicle speed 27, and driving surface slope 31, respectively. The output terminal 13 is arranged to output a control signal indicating a vehicle acceleration request 37 or an arbitrated vehicle acceleration request 37' for controlling the vehicle speed, for example, via controls of the powertrain 33 or braking system 35.
[0081] The speed control system 5 can be an "off-road" or "off-highway" speed control system. The speed control system can be operable if the vehicle speed 27 is within a predefined speed range. For example, the operating conditions of the speed control system could be a vehicle speed 27 below 30 km / h and above 2 km / h or 2.5 km / h. It should be understood that other values at the endpoints of the predefined speed range may be useful. When the vehicle speed 27 exceeds this predefined speed range, another speed control system suitable for higher-speed driving may take over. This other vehicle speed control system may be useful when driving on highway conditions (e.g., on relatively slippery, dry asphalt or concrete driving surfaces) and may involve functions such as maintaining a distance from the vehicle in front. However, this other, higher-speed speed control system is not the subject of this application.
[0082] In some, but not all, examples, the speed control system 5 can be activated by the occupants of vehicle 1 via user-selectable input controls. In other examples, the speed control system 5 can be activated automatically when one or more criteria are met.
[0083] System 3 includes a powertrain 33. The powertrain 33 is configured to accelerate vehicle 1 according to vehicle acceleration request 37 or an arbitrated vehicle acceleration request 37' by controlling the amount of drive torque applied to one or more wheels of vehicle 1. The powertrain 33 can be controlled to provide positive or negative acceleration according to vehicle acceleration request 37 or an arbitrated vehicle acceleration request 37'.
[0084] System 3 may also include braking system 35. Braking system 35 is configured to decelerate vehicle 1 by applying braking torque in response to vehicle acceleration request 37 or an arbitrated vehicle acceleration request 37' which is a request for negative acceleration.
[0085] Figure 2B A non-transitory computer-readable storage medium 18 including instructions (computer software) is shown.
[0086] Figure 3 An example of a speed control system 5 configured to generate a vehicle acceleration request 37 is shown. In this example, the speed control system 5 includes a running average calculation block 39, a sampling window length determination block 41, and a vehicle acceleration target determination block 47.
[0087] The running average calculation block 39 is configured to calculate and output the running average amplitude 45 of at least one vehicle body acceleration component 23 within a sampling window. The sampling window includes the current sample. The running average calculation block 39 receives the current sample value of at least one vehicle body acceleration component 23 and the window length 43 of the sampling window as input, within which the running average amplitude 45 of at least one vehicle body acceleration component 23 will be calculated. The window length determination block 41 receives the window length 43. In some, but not necessarily all, examples, if the sampling rate of at least one vehicle body acceleration component 23 is constant, the window length 43 is expressed in terms of the number of samples. In some, but not necessarily all, examples, the specific average calculated is the root mean square (RMS).
[0088] In some, but not necessarily all, examples, the running average calculation block 39 is configured to recursively calculate the running average magnitude 45. Figure 4An example is shown. In this example, the run-average calculation block 39 includes a weighted summation block 49 and a delay block 51. The weighted summation block 51 is configured to calculate a weighted sum of a new data point (current sample) of at least one vehicle body acceleration component 23 and the run-average amplitude 45' of at least one vehicle body acceleration component at a previous time step (e.g., immediately preceding the previous time step). The run-average amplitude 45' of at least one vehicle body acceleration component at the previous time step is provided as input to the weighted summation block 51. The delay block 51 is configured to receive the output from the weighted summation block 49 as input and hold and delay the input for one or more time steps before releasing it as input to the weighted summation block 51. In some examples, but not necessarily in all examples, the delay block 51 is a unit delay block and is configured to hold and delay the input for one time step before releasing it as output. In some examples, but not necessarily in all examples, one time step is equal to the sampling period of at least one vehicle body acceleration component 23. The weighted summation block 51 is configured to change the weights of new data points (current samples) applied to at least one vehicle body acceleration component 23 and the running average amplitude 45' applied to at least one vehicle body acceleration component at a previous time step according to the window length 43. The weighted summation block is also configured to receive the window length 43 as input.
[0089] In other examples, the run-average calculation block 39 can be configured to temporarily store previous samples (e.g., in a buffer) and calculate the average of the stored previous samples within the received window length 43.
[0090] Return to Figure 3 The sampling window length determination block 41 is configured to determine the window length 43 of the sampling window within which the running average amplitude 45 of at least one vehicle body acceleration component 23 will be calculated. The sampling window length determination block 41 receives the current sampled value of the vehicle speed 27 as input. The sampling window length determination block 41 is configured with a predefined relationship between the vehicle speed 27 and the window length 43. Based on the predefined relationship, the sampling window length determination block 41 outputs the window length 43 of the current vehicle speed 27. In some, but not necessarily all, examples, the predefined relationship is expressed in the form of a lookup table, which includes breakpoints for the vehicle speed 27 and table data indicating the window length 43. That is, the lookup table includes a set of values for the vehicle speed 27, to which the corresponding window length 43 is mapped. The sampling window length determination block 41 is configured to perform a lookup operation on the lookup table using the current vehicle speed 27 to retrieve the corresponding value for the window length 43. The sampling window length determination block 41 can be configured to estimate the value of the window length 43 via interpolation of the table data if the current vehicle speed 27 is not an explicitly defined breakpoint.
[0091] Figure 5 A graphical representation of the predefined relationship between vehicle speed 27 (plotted on the x-axis) and window length 43 (plotted on the y-axis) is shown. In some, but not all, examples, the sampling window length determination block 41 is configured with this predefined relationship.
[0092] In this example, for a first range 53 of vehicle speed, a predefined relationship includes increasing the window length 43 as the vehicle speed 27 increases. For example, the window length 43 can increase from approximately 0.5 seconds at the lowest speed in the first range 53 to approximately 5 or 7 seconds at the highest speed in the first range 53. At an example sampling rate of 1 sample per 0.01 seconds, this results in averaging over approximately 50 samples when vehicle 1 is traveling at the lowest speed in the first range 53, and over approximately 500 to 700 samples when vehicle 1 is traveling at the highest speed in the first range 53. Therefore, as the window length 43 increases, new data, such as the current sample value of at least one vehicle body acceleration component 23, has a smaller impact on its operating average amplitude 45. This makes the speed control system 5 less responsive (responds slowly) to changes in the roughness of the driving surface. Conversely, as the window length 43 decreases, new data, such as the current sample value of at least one vehicle body acceleration component 23, has a greater impact on its operating average amplitude 45. This makes the speed control system 5 more responsive (responds faster) to changes in the roughness of the driving surface. Therefore, the window length 43 controls the responsiveness of the speed control system 5 to the roughness of the driving surface of the vehicle 1.
[0093] When driving at low speeds, as is the case when driving on a consistently rough road, reacting quickly to changes in roughness helps avoid loss of control. When driving at higher speeds, as is the case when driving on a generally smooth road where changes in roughness might come from small potholes or speed bumps, reacting less (slower and less aggressively) to such inputs is therefore beneficial, because slowing down the vehicle after an isolated disturbance may offer little or no benefit, and such vehicle behavior may not be intuitive to the driver.
[0094] Similarly, in this example, for a second range 55 of vehicle speeds that is adjacent to but lower and narrower than the first range 53 of vehicle speeds, a predefined relationship includes increasing the window length 43 as the vehicle speed 27 decreases. However, the window length 43 at the lowest speed in the second range 55 (i.e., the maximum window length of the second range 55) is shorter than the window length 43 at the highest speed in the first range 53 (i.e., the maximum window length of the first range 53).
[0095] Very low speeds, such as the lowest speed in the lower second range 55, can approach the lower end of the predefined speed range in which the speed control system 5 operates. In order to reduce the likelihood that the speed control system 5 will respond to changes in the roughness of the driving surface in a manner that suggests reducing the vehicle speed below that end, the window length 43 (and therefore the number of samples, assuming a consistent sampling rate / sampling period) is not its minimum at these very low speeds.
[0096] In some, but not all, examples, the first range 53 of vehicle speed includes all, or at least all, possible vehicle speeds 27 that the speed control system 5 can operate at. Therefore, in such an example, the window length 43 increases with increasing vehicle speed 27.
[0097] Return to Figure 3 The vehicle acceleration target determination block 47 is configured to determine a target value for vehicle acceleration and output a vehicle acceleration request 37 based on the determined target value. The vehicle acceleration target determination block 47 receives, from the running average calculation block 39, either a running average amplitude 45 of at least one vehicle body acceleration component 23 or a parameter dependent on the running average amplitude 45 as input. In the former case, the vehicle acceleration target determination block 47 is configured to determine the target value for vehicle acceleration using a predefined relationship between at least the running average amplitude 45 and the vehicle acceleration. In the latter case, in some, but not necessarily all, examples, the parameter is the amplitude difference between the running average amplitude of the vehicle body acceleration component and a predefined target amplitude. The predefined target amplitude may reflect a tolerable amplitude of the vehicle body acceleration component with respect to vehicle occupant comfort. In such an example, the vehicle acceleration target determination block 47 is configured to determine the target value for vehicle acceleration using a predefined relationship between at least the determined amplitude difference and the vehicle acceleration.
[0098] Figure 6 An example is shown in which a vehicle acceleration request 37 is generated based on multiple vehicle body acceleration components 23A to 23C. Each of the vehicle body acceleration components 23A to 23C corresponds to a different degree of freedom of motion of the vehicle body of vehicle 1, such as vertical acceleration, pitch acceleration, and roll acceleration.
[0099] Figure 6 The example speed control system 5 includes multiple operating average calculation blocks 39A to 39C, each receiving current sample values of different components from multiple vehicle body acceleration components 23A to 23C as input. Each operating average calculation block 39A to 39C is as follows... Figure 3 or Figure 4 As described.
[0100] Figure 6 Example speed control system 5 includes, as about Figure 3 And optional about Figure 5 The sampling window length determination block 41 is described. The window length 43 calculated by the sampling window length determination block 41 is provided as input to each running average calculation block 39A to 39C.
[0101] Figure 6 The example speed control system 5 includes a scoring calculation block 57 that receives, as input, the corresponding operating average amplitudes 45A to 45C of each of a plurality of vehicle body acceleration components 23A to 23C within a defined sampling window 43. The scoring calculation block 57 is configured to determine a score 59 indicating a combination of the corresponding operating average amplitudes 45A to 45C of each of the plurality of vehicle body acceleration components 23A to 23C. In some, but not necessarily all, examples, combining the corresponding operating average amplitudes 45A to 45C of each of the plurality of vehicle body acceleration components 23A to 23C includes applying different weights to the operating average amplitudes 39A to 39C of the different vehicle body acceleration components 23A to 23C. These different weights can reflect the perceptible impact of the vehicle body acceleration components 23A to 23C on the occupants of vehicle 1. These different weights can be derived from experimental data, theoretical modeling, or a combination thereof. When subjected to these accelerations, these different weights can be fine-tuned to suit the subjective comfort assessment of the test user. In some, but not all, examples, combining the corresponding running average amplitudes 45A to 45C of each of the multiple vehicle body acceleration components 23A to 23C includes calculating a weighted root mean square, wherein different weights are applied to the running average amplitudes 45A to 45C of the different vehicle body acceleration components 23A to 23C.
[0102] Figure 6 The example speed control system 5 includes a rate limiter block 61. The rate limiter block 61 is optional and does not need to be included in combination with the score calculation block 57. The rate limiter block 61 is configured to receive a score 59 as input from the score calculation block 57. The rate limiter block 61 is configured to apply a rate limit to the score 59 to limit the rate at which the score 59 can vary over time. The rate limiter block 61 can be configured to impose a fixed positive or negative limit on the rate at which the score 59 can vary over time, or it can be configured to vary the positive or negative limit based on one or more parameters such as the vehicle speed 27. Figure 7An example describing the latter case. The application of rate limiting results in a rate-limited score of 59'. If score 59 changes relative to a previous score, such as the score immediately following the previous time step, at a rate exceeding the positive or negative limit, then the rate-limited score 59' will be equal to the previous score plus or minus the change allowed by the positive or negative limit, respectively. If score 59 changes relative to a previous score at a rate below the positive or negative limit, then the rate-limited score 59' will be the same as score 59.
[0103] Figure 6 Example speed control system 5 includes similar features to... Figure 3 The vehicle acceleration target determination block 47 is described. The vehicle acceleration target determination block 47 is configured to determine a target value for vehicle acceleration and output a vehicle acceleration request 37 based on the determined target value. In this example, the vehicle acceleration target determination block 47 receives a score 59 as input from a score calculation block 57 or a rate limit score 59' as input from a rate limiter block 61. The vehicle acceleration target determination block 47 is configured to determine the target value for vehicle acceleration using a predefined relationship between at least the score 59 or the rate limit score 59' and the vehicle acceleration. Alternatively, the vehicle acceleration target determination block 47 may receive a score difference as input between the score 59 or the rate limit score 59' and a predefined score target. The predefined score target may reflect the desired level of vehicle occupant comfort or other user-selectable settings. The vehicle acceleration target determination block 47 is then configured to determine the target value for vehicle acceleration using a predefined relationship between at least the score difference and the vehicle acceleration. In either case, Figure 6 The example vehicle acceleration target determination block 47 determines the vehicle acceleration request 37 based on score 59 or rate limit score 59'.
[0104] Figure 7 An example of a speed control system 5 configured to generate a vehicle acceleration request 37 is shown. In this example, the speed control system 5 includes a score calculation block 57, a rate limiter block 61, and a vehicle acceleration target determination block 47.
[0105] The scoring calculation block 57 is configured to determine a score 59 for a given time step based on at least one vehicle body acceleration component 23 or its running average amplitude 45 received as input at a given time step.
[0106] Therefore, at the first time point, the scoring calculation block 57 determines a first score 59'' based on at least one vehicle body acceleration component 23, and similarly, at the second time point, the scoring calculation block 57 determines a second score 59 based on at least one vehicle body acceleration component 23.
[0107] In some, but not necessarily all, instances occur before instances. An instance may occur one time step before an instance. One time step may correspond to the sampling period of the vehicle body acceleration component 23.
[0108] In some, but not all, examples, a score of 59 is an estimate of occupant comfort. For example, a higher score indicates a more comfortable occupant and a lower score indicates a less comfortable occupant. The score of 59 can be determined based on a predefined relationship with at least one vehicle body acceleration component 23 or its operating average amplitude 45, derived from experimental data, theoretical modeling, or a combination thereof. The score of 59 can reflect a test user's subjective comfort assessment when experiencing a corresponding value / level of vehicle body acceleration component 23.
[0109] In some, but not all, examples, the scoring calculation block 57 is configured to receive multiple vehicle body acceleration components 23A to 23C or their corresponding running average amplitudes 45A to 45C as input. The scoring calculation block 57 is configured to determine a score 59 indicating a combination of the multiple vehicle body acceleration components 23A to 23C or their corresponding running average amplitudes 45A to 45C. In some, but not all, examples, combining multiple vehicle body acceleration components 23A to 23C or their corresponding running average amplitudes 45A to 45C includes applying different weights to the different vehicle body acceleration components 23A to 23C or their corresponding running average amplitudes 45A to 45C. These different weights can reflect the perceptible impact of the vehicle body acceleration components 23A to 23C on the occupants of vehicle 1. These different weights can be derived from experimental data, theoretical modeling, or a combination thereof. When subjected to these accelerations, these different weights can be fine-tuned to suit the subjective comfort assessment of the test user. In some, but not all, examples, combining multiple vehicle body acceleration components 23A to 23C or their corresponding running average amplitudes 45A to 45C includes calculating a weighted root mean square, wherein different weights are applied to the different vehicle body acceleration components 23A to 23C or their corresponding running average amplitudes 45A to 45C.
[0110] As previously stated, the score 59 is a measure of occupant comfort. A higher score 59 indicates greater occupant comfort; a lower score 59 indicates less occupant comfort. A higher score tends to cause vehicle 1 to accelerate. As vehicle 1 accelerates, the score 59 is more likely to decrease. A lower score 59 tends to cause vehicle 1 to decelerate. As vehicle 1 decelerates, the score 59 may increase. To prevent the score 59 from fluctuating continuously around a predetermined target score, and thus to prevent continuous fluctuations in vehicle speed, the rate limiter block 61 applies a rate limit to the score 59. However, implementing a speed limit makes vehicle 1 react slowly to changes in driving surface roughness or occupant comfort, especially when the speed limit is fixed. Whether this slow response is desirable depends on the vehicle speed 23, and in some examples, on the direction of change in the score 59, i.e., whether it increases or decreases.
[0111] In this example, the rate limiter block 61 includes a dynamic rate limiter block 63, a delay block 65, an upper limit calculation block 67, and a lower limit calculation block 71.
[0112] Dynamic rate limiter block 63 is configured to determine whether the score 59 output from score calculation block 57 at a given time step is within the allowed score range, and if so, to output a rate-limited score 59' equal to the input score 59 for the given time step, and if not, to output a rate-limited score 59' equal to the nearest endpoint of the allowed score range for the given time step. Dynamic rate limiter block 63 is configured with an allowed score range that varies with the time step. This time-varying allowed score range is configured by the following inputs: the output of dynamic rate limiter block 63 from a previous time step received via delay block 65 (i.e., the previous rate-limited score 59''); the positive rate limit 69 calculated by upper limit calculation block 67 for the given time step; and the negative rate limit 73 calculated by lower limit calculation block 71 for the given time step. The upper endpoint of the allowed score range is given by the previous rate limit score 59'' plus the allowed variation of the positive rate limit 69. The lower endpoint of the allowed score range is given by subtracting the allowed variation of the negative rate limit 73 from the previous rate limit score of 59''.
[0113] Delay block 65 is configured to receive the output from dynamic rate limiter block 63 as input, and to hold and delay the input for one or more time steps before releasing it as input to dynamic rate limiter block 63. In some, but not all, examples, delay block 65 is a unit delay block and is configured to hold and delay the input for one time step before releasing it as output. In some, but not all, examples, a time step is equal to the sampling period of at least one vehicle body acceleration component 23.
[0114] Upper limit calculation block 67 and lower limit calculation block 71 are configured to receive the current sample value of the vehicle speed 27 as input. They are respectively configured to determine the positive rate limit 69 and the negative rate limit 73 based on the current sample value of the vehicle speed 27.
[0115] The upper limit calculation block 67 is configured with a predefined relationship between vehicle speed 27 and positive rate limit 69. In some, but not all, examples, the predefined relationship is represented as a lookup table, which includes breakpoints for vehicle speed 27 and table data indicating the positive rate limit 69. That is, the lookup table includes a set of values for vehicle speed 27 to which the corresponding positive rate limit 69 is mapped. The upper limit calculation block 67 is configured to perform a lookup operation against the lookup table using the current vehicle speed 27 to retrieve the corresponding value for the positive rate limit 69. The upper limit calculation block 67 can be configured to estimate the value of the positive rate limit 69 via interpolation of the table data if the current vehicle speed 27 is not an explicitly defined breakpoint.
[0116] Figure 8 A graphical representation of the predefined relationship between vehicle speed 27 (plotted on the x-axis) and positive rate limit 69 (plotted on the y-axis) is shown in some, but not all, examples.
[0117] In this example, for the first range of vehicle speed 75, the predefined relationship includes: as the vehicle speed 27 increases, the positive rate limit 69 increases. Therefore, for the first range of vehicle speed 75, as the vehicle speed 27 increases, the upper endpoint of the allowed score range configured at the dynamic rate limiter block 63 becomes further away from the previous rate limit score 59''. That is, for the first range of vehicle speed 75, as the vehicle speed 27 increases, the difference between the upper endpoint of the allowed score range and the previous rate limit score 59'' increases in magnitude.
[0118] In this example, for a second range 77 of vehicle speeds adjacent to and higher than the first range 75, the positive rate limit 69 decreases as the vehicle speed 27 increases. Therefore, for the second range 77 of vehicle speeds, as the vehicle speed 27 increases, the upper endpoint of the allowed score range configured at the dynamic rate limiter block 63 becomes closer to the previous rate limit score 59''. In other words, for the second range 77 of vehicle speeds, as the vehicle speed 27 increases, the difference between the upper endpoint of the allowed score range and the previous rate limit score 59'' decreases in magnitude.
[0119] As the score increases from 59, the positive rate limit 69 allows vehicle 1 to quickly regain speed, but prevents vehicle 1 from accelerating too aggressively from low speeds, which could be unsettling and undesirable, as it may be uncertain whether the challenging terrain has ended. If vehicle 1 is already at a higher speed, it does not need to accelerate faster, so the positive rate limit 69 suppresses the rate at which the score 59 could increase in such situations.
[0120] It should be noted that the first range 75 and the second range 77 are unrelated to the previously described first range 53 and second range 55.
[0121] Return to Figure 7 The lower bound calculation block 71 is configured with a predefined relationship between vehicle speed 27 and negative rate limit 73. In some, but not all, examples, the predefined relationship is represented as a lookup table, which includes breakpoints for vehicle speed 27 and table data indicating the negative rate limit 73. That is, the lookup table includes a set of values for vehicle speed 27 to which the corresponding negative rate limit 73 is mapped. The lower bound calculation block 71 is configured to perform a lookup operation against the lookup table using the current vehicle speed 27 to retrieve the corresponding value for the negative rate limit 73. The lower bound calculation block 71 can be configured to estimate the interpolated value of the negative rate limit 73 in the table data if the current vehicle speed 27 is not an explicitly defined breakpoint.
[0122] Figure 9 A graphical representation of the predefined relationship between vehicle speed 27 (plotted on the x-axis) and negative rate limit 73 (plotted on the y-axis) is shown in some, but not all, examples.
[0123] In this example, the predefined relationship includes: as the vehicle speed 27 increases, the negative rate limit 73 increases. Therefore, as the vehicle speed 27 increases, the lower endpoint of the allowed score range configured at the dynamic speed limiter block 63 becomes further away from the previous speed limit score 59''. In other words, as the vehicle speed 27 increases, the difference between the lower endpoint of the allowed score range and the previous speed limit score 59'' increases in magnitude.
[0124] This allows vehicle 1 to decelerate more quickly from higher speeds in order to rapidly restore occupant comfort within acceptable limits.
[0125] Return to Figure 7Therefore, it will be understood that the permissible score range configured at the dynamic rate limiter block 63 depends on the vehicle speed 27. For different vehicle speeds 27, at least assuming all other parameters are equal, there are different permissible score ranges. The different permissible score ranges may differ in one or more of the following aspects: (i) the magnitude of the permissible score range, i.e., the magnitude of the difference between its upper and lower endpoints; (ii) the relative position of the previous rate limit score 59'' within the permissible score range, i.e., the relative position of the previous rate limit score 59'' with respect to its upper and lower endpoints. In other words, for a given value of the previous rate limit score 59'', the permissible score range differs at different vehicle speeds 27.
[0126] Vehicle acceleration target determination block 47 is configured to determine a target value for vehicle acceleration and output a vehicle acceleration request 37 based on the determined target value. In this example, vehicle acceleration target determination block 47 receives a rate limit score 59' as input from rate limiter block 61 or specifically from dynamic rate limiter block 63. Vehicle acceleration target determination block 47 is configured to determine the target value for vehicle acceleration using at least a predefined relationship between the rate limit score 59' and vehicle acceleration. Vehicle acceleration target determination block 47 may alternatively receive a score difference between the rate limit score 59' and a predefined score target as input. The predefined score target may reflect the desired level of vehicle occupant comfort or other user-selectable settings. Vehicle acceleration target determination block 47 is then configured to determine the target value for vehicle acceleration using at least the score difference and the predefined relationship between vehicle acceleration. In either case, Figure 6 The example vehicle acceleration target determination block 47 determines the vehicle acceleration request 37 based on the rate limit score 59'.
[0127] Figure 10 It shows Figure 7 A variation of the example, wherein the positive rate limit 69 and the negative rate limit 73 (and thus also the allowed score range configured at the dynamic rate limiter block 63) additionally depend on the difference 81 between the previous rate limit score 59'' and the current (non-rate limit) score 59, hereinafter referred to as "difference 81".
[0128] Figure 10 The example rate limiter block 61 further includes a subtraction block 79, which is configured to perform a subtraction between its inputs and output the result. Subtraction block 79 receives a previous rate-limited score 59'' and a current (non-rate-limited) score 59 as inputs, and is configured to subtract the current (non-rate-limited) score 59 from the previous rate-limited score 59''. Therefore, subtraction block 79 is configured to output a difference 81.
[0129] Figure 10The upper limit calculation block 67 and the lower limit calculation block 71 of the example are each additionally configured to receive the difference 81 as input. They are respectively configured to determine the positive rate limit 69 and the negative rate limit 73 based on the current sample value of the vehicle speed 27 and the difference 81.
[0130] The upper limit calculation block 67 is configured with a predefined relationship between (i) vehicle speed 27, (ii) difference 81, and (iii) positive rate limit 69. In some, but not necessarily all, examples, the predefined relationship is represented in the form of a two-dimensional lookup table, which includes breakpoints for vehicle speed 27 in the first dimension of the lookup table, breakpoints for difference 81 in the second dimension of the lookup table, and table data indicating the positive rate limit 69.
[0131] The lower limit calculation block 71 is configured with a predefined relationship between (i) vehicle speed 27, (ii) difference 81, and (iii) negative rate limit 73. In some, but not all, examples, the predefined relationship is represented in the form of a two-dimensional lookup table, which includes breakpoints for vehicle speed 27 in the first dimension of the lookup table, breakpoints for difference 81 in the second dimension of the lookup table, and table data indicating the negative rate limit 73.
[0132] For each vehicle speed 27, there exists a range 87 around the previous speed limit score 59'', and if the current (non-speed limit) score 59 falls within this range 87, it is not actually subject to any limit. However, when the current (non-speed limit) score 59 is outside this range 87, the limit applied by the dynamic rate limiter block 63 to the current (non-speed limit) score 59 to produce the rate limit score 59' depends on how far the current (non-speed limit) score 59 is outside the range 87.
[0133] Or in other words, regarding the difference of 81, there are upper and lower thresholds (the endpoints of interval 87) that trigger the application of restrictions on the current (non-rate-limited) score 59. These thresholds depend on the vehicle speed 27. Specifically, the upper threshold has a relationship with the vehicle speed 27. Figure 8 The positive rate limit 69 shown has the same relationship as the lower threshold and the vehicle speed 27. Figure 9 The negative rate limit 73 shown has the same relationship. The limit applied to the current (non-rate limit) score 59 is related to the degree to which the threshold is exceeded. Different relationships exist at different vehicle speeds 27.
[0134] Figure 11A graphical representation of the difference 81 (plotted on the x-axis) between the upper endpoint of the allowed score range and the previous rate limit score 59'' (plotted on the positive y-axis as parameter 83) and the difference between the lower endpoint of the allowed score range and the previous rate limit score 59'' (plotted on the negative y-axis as parameter 85) is shown in some, but not necessarily all, examples.
[0135] Within interval 87, the endpoints of the allowed score range increase in a one-to-one correspondence with the difference 81. Therefore, when generating the rate-limited score 59', score 59 is actually not limited by the dynamic rate limiter block 63.
[0136] Outside of interval 87, there is a one-to-one correspondence between the endpoints of the allowed score range and the difference 81 (which is within...). Figure 11 The dashed line 89, representing the one-to-one correspondence (x=y), is used to illustrate this.
[0137] As the difference 81 becomes increasingly negative, the difference 85 between the lower endpoint of the allowed score range and the previous rate-limited score 59'' continues to increase in magnitude. However, the increase in magnitude of the difference 85 between the lower endpoint of the allowed score range and the previous rate-limited score 59'' is less than the increase in magnitude of the difference 81. For example, if the lower endpoint of interval 87 is at -0.8, then when the difference 81 is -0.8, the difference 85 can be -0.8. Then, when the difference 81 is -1.5, the difference 85 can increase in magnitude but only to -1, and when the difference 81 is -2.5, the difference 85 can again increase in magnitude but only to -1.2.
[0138] As the difference 81 becomes increasingly negative, the increase in magnitude of the difference 85 between the lower endpoint of the allowed scoring range and the previous rate limit score 59'' can be maintained for all vehicle speeds 27. However, the increase in magnitude of the difference 85 between the lower endpoint of the allowed scoring range and the previous rate limit score 59'' can vary between vehicle speeds 27 by less than the increase in magnitude of the difference 81.
[0139] As the difference 81 becomes increasingly positive, for the first range 75 of vehicle speed, and in some examples for the first portion of the second range 77 of vehicle speed, the difference 83 between the upper endpoint of the allowed scoring range and the previous rate limit score 59'' continues to increase in magnitude. This is shown by solid line 91.
[0140] For the second range 77 of vehicle speed, which is higher than the first part, as the difference 81 becomes more and more positive, the difference 83 between the upper endpoint of the allowed scoring range and the previous rate limit score 59'' can remain constant in magnitude as shown by solid line 93, or decrease in magnitude as shown by solid line 95.
[0141] Figure 12 An example of a speed control system 5 configured to generate a vehicle acceleration request 37 is shown. In this example, the speed control system 5 includes a score calculation block 57, a score difference determination block 99, and a vehicle acceleration target determination block 47.
[0142] Score calculation block 57 as about Figure 6 or Figure 7 As described. Despite in Figure 12 Not shown in the image, but in this example, the score calculation block may optionally be followed by something like the one described above. Figure 6 , Figure 7 or Figure 10 The rate limiter block 61 is described.
[0143] The score difference determination block 99 is a subtraction block configured to perform subtraction between its inputs and output the result. The score difference determination block 99 receives a predefined score target 97 and a score 59 or a rate limit score 59' as inputs, and is configured to subtract the score 59 or the rate limit score 59' from the predefined score target 97 to determine the score difference 101. Therefore, the score difference determination block 99 is configured to output the score difference 101.
[0144] The predefined score target of 97 can reflect the expected level of vehicle occupant comfort or another user-selectable setting.
[0145] Vehicle acceleration target determination block 47 is configured to determine a target value for vehicle acceleration and output vehicle acceleration request 37 based on the determined target value. In this example, vehicle acceleration target determination block 47 receives a score difference 101 from score difference determination block 99 as input. In this example, vehicle acceleration target determination block 47 receives the current sample value of vehicle speed 27 and the current estimate of driving surface slope 31 as additional inputs. Vehicle acceleration target determination block 47 is configured to determine the target value for vehicle acceleration using a predefined relationship between (i) score difference 101, (ii) vehicle speed 27, (iii) driving surface slope 31, and (iv) vehicle acceleration.
[0146] exist Figure 12 In a variant of the example, the vehicle acceleration target determination block 47 can receive the current sample value of the vehicle speed 27 as additional input, but does not receive the current estimate of the driving surface slope 31 as additional input. In this variant, the vehicle acceleration target determination block 47 is configured to determine the target value of the vehicle acceleration using a predefined relationship between (i) the score difference 101, (ii) the vehicle speed 27, and (iii) the vehicle acceleration.
[0147] exist Figure 12In another variation of the example, the vehicle acceleration target determination block 47 may receive the current estimate of the driving surface slope 31 as additional input, but not the current sample value of the vehicle speed 27 as additional input. In this additional variation, the vehicle acceleration target determination block 47 is configured to determine the target value of the vehicle acceleration using a predefined relationship between (i) the score difference 101, (ii) the driving surface slope 31, and (iii) the vehicle acceleration.
[0148] In some, but not all, examples, the predefined relationship is represented in the form of a multi-dimensional lookup table, which includes (i) a breakpoint for score difference 101, which serves as an index to the first dimension of the lookup table; (ii) a breakpoint for vehicle speed 27, which serves as an index to the second dimension of the lookup table; and / or a breakpoint for driving surface slope 31, which serves as an index to the second or third dimension of the lookup table; and (iii) table data indicating vehicle acceleration. That is, the lookup table includes a set of values to which the corresponding vehicle acceleration is mapped (i) score difference 101 and (ii) vehicle speed 27 and / or driving surface slope 31. Vehicle acceleration target determination block 47 is configured to perform a lookup operation on the lookup table using the current input to block 47 to retrieve the corresponding value of vehicle acceleration as the target value, and then generate and output vehicle acceleration request 37 based on the target value. Vehicle acceleration target determination block 47 can be configured to estimate the target value of vehicle acceleration via interpolation of the table data if the current input to block 47 is not an explicitly defined breakpoint.
[0149] This predefined relationship defines a unified multivariate dependency between vehicle acceleration and score difference 101, as well as vehicle speed 27 and / or driving surface slope 31. This enables improved modeling of the interdependencies between these parameters. For example, if the target value of vehicle acceleration always responds only to the most severe of score difference 101, vehicle speed 27, and / or driving surface slope 31, this could be an overreaction or underreaction depending on the severity of the other two parameters.
[0150] exist Figure 12 In a variant of the example vehicle acceleration target determination block 47, predefined relationships are represented in the form of two or more lookup tables, and their outputs are combined to determine the target value of the vehicle acceleration. Examples of such variants are shown in... Figure 13 As shown in the image.
[0151] exist Figure 13 In the example, the vehicle acceleration target determination block 47 includes a speed-related target determination block 103, a slope-related target determination block 105, and a summation block 107.
[0152] The speed-related target determination block 103 receives the current sample values of score difference 101 and vehicle speed 27 as input. The speed-related target determination block 103 is configured with a predefined relationship between (i) score difference 101, (ii) vehicle speed 27 and (iii) vehicle acceleration, represented in the form of a two-dimensional lookup table. The two-dimensional lookup table includes (i) the breakpoint of score difference 101, which serves as the index of the first dimension of the lookup table, (ii) the breakpoint of vehicle speed 27, which serves as the index of the second dimension of the lookup table, and (iii) table data indicating vehicle acceleration.
[0153] The slope-related target determination block 105 receives the current estimate of the score difference 101 and the driving surface slope 31 as input. The slope-related target determination block 105 is configured with a predefined relationship between (i) the score difference 101, (ii) the driving surface slope 31 and (iii) the vehicle acceleration, represented in the form of a two-dimensional lookup table. The two-dimensional lookup table includes (i) the breakpoint of the score difference 101, which serves as the index of the first dimension of the lookup table, (ii) the breakpoint of the driving surface slope 31, which serves as the index of the second dimension of the lookup table, and (iii) table data indicating the vehicle acceleration.
[0154] Summing block 107 is configured to perform a summation between its inputs and output a result. Summing block 107 receives two target values of vehicle acceleration retrieved from table data in each of the speed-related target determination blocks 103 and 105, respectively, based on the current inputs of the speed-related target determination block 103 and 105. Summing block 107 is configured to sum these two target values of vehicle acceleration to produce a final target value of vehicle acceleration on which vehicle acceleration request 37 is based.
[0155] It should be understood that the speed-related target determination block 103 can represent the predefined relationship between (i) score difference 101, (ii) vehicle speed 27 and (iii) vehicle acceleration in a form other than a two-dimensional lookup table.
[0156] Similarly, it should be understood that the slope-related target determination block 105 can represent a predefined relationship between (i) the score difference 101, (ii) the driving surface slope 31, and (iii) the vehicle acceleration in a form other than a two-dimensional lookup table.
[0157] It should be understood that the speed-related target determination block 103 and the slope-related target determination block 105 can be configured to determine target values for vehicle acceleration, which are designed to be averaged or otherwise interpolated rather than summed, in order to determine the final target value of vehicle acceleration on which the vehicle acceleration request 37 is based. In this case, the summation block 107 can be replaced by an appropriate interpolation block.
[0158] In another example of such a variation, the vehicle acceleration target determination block 47 may include: a base target determination block configured with a predefined relationship between the score difference 101 and the vehicle acceleration; a speed-related adjustment target determination block configured with a predefined relationship between (i) the score difference 101, (ii) the vehicle speed 27, and (iii) the vehicle acceleration adjustment amount; and a slope-related adjustment target determination block configured with a predefined relationship between (i) the score difference 101, (ii) the driving surface slope 31, and (iii) the vehicle acceleration adjustment amount. In this example, the vehicle acceleration determined by the base target determination block can be summed with two vehicle acceleration adjustment amounts determined by the speed-related adjustment target determination block and the slope-related adjustment target determination block, respectively, to produce the final target value of the vehicle acceleration on which the vehicle acceleration request 37 is based.
[0159] In some, but not all, examples, the target value of vehicle acceleration on which vehicle acceleration request 37 is based is determined according to the user-selected settings 109 (such as, for example, the ride comfort settings of vehicle 1). Figure 14 An example is shown in the image.
[0160] exist Figure 14 In the example, the speed control system 5 includes a score target determination block 111, which is configured to receive a user-selected setting 109 as input and determine a predefined score target 97 based on the user-selected setting 109.
[0161] exist Figure 14 In this example, the speed control system 5 includes a relationship selection block 113 configured to receive a user-selected setting 109 as input and select a predefined relationship that the vehicle acceleration target determination block 47 will configure based on the user-selected setting 109. In this example, different predefined relationships are stored and associated with different user-selected settings 109. The relationship selection block 113 is configured to output an indication 115 of this selection to the vehicle acceleration target determination block 47.
[0162] exist Figure 14 In the example, the vehicle acceleration target determination block 47 is then configured to obtain a selected predefined relationship between (i) the score difference, (ii) the vehicle speed and / or the driving surface slope, and (iii) the vehicle acceleration, and to determine the target value of the vehicle acceleration using the selected predefined relationship.
[0163] It should be understood that in the case where the vehicle acceleration target determination block 47 includes two or more predefined relationships between (i) score difference, (ii) vehicle speed and / or driving surface slope, and (iii) different subsets of vehicle acceleration, as in Figure 13In the example, the relation selection block 113 can be configured to select each of two or more predefined relations based on the user-selected setting 109, and output each selection 115 to the vehicle acceleration target determination block 47, and the vehicle acceleration target determination block 47 is configured to obtain each of the selected predefined relations and use them to determine the target value of vehicle acceleration.
[0164] exist Figure 14 In a variant of the example, relation selection block 113 can be omitted, and vehicle acceleration target determination block 47 can receive user-selected settings 109 as direct input. In such a variant, vehicle acceleration target determination block 47 can alternatively be configured with lookup tables or additional dimensions for each lookup table. For example, the lookup table or each lookup table may include breakpoints of user-selected settings, which serve as indexes to the additional dimensions of the lookup table or each lookup table.
[0165] It should be understood that although the scoring target determination block 111, the relationship selection block 113, and (in a variant) the vehicle acceleration target determination block 47 have been described as responding to the user-selected setting 109, in some examples they may alternatively respond to the vehicle-selected setting. For example, in some examples, the ride comfort setting may be automatically determined by the vehicle 1, for example, based on previous driver behavior, rather than being selected by the user.
[0166] Now available Figures 15 to 17 Graphical representations of some, but not all, of the predefined relationships configured in the vehicle acceleration target determination block 47 are provided. For clarity, each graph shows the effect of one of the score difference 101, the driving surface slope 31, and the vehicle speed 27 on the target value of the vehicle acceleration.
[0167] It should be understood that the impact can vary depending on the user's choice of setting 109, but Figures 15 to 17 This can be considered an example illustrating a common general trend across different user-selected settings 109.
[0168] Figure 15 An example is depicted showing the effect of the score difference 101 on the x-axis compared to its impact on the target value of vehicle acceleration 117 on the y-axis.
[0169] As shown, the positive score difference 101 has the following effect on the target value of vehicle acceleration: 117 - the target value of vehicle acceleration increases. The negative score difference 101 has the following effect on the target value of vehicle acceleration: 117 - the target value of vehicle acceleration decreases. The effect of the offset of the score difference 101 in the direction of more positive or less negative scores: 117 - the target value of vehicle acceleration increases.
[0170] Figure 16An example is depicted showing the effect of the driving surface slope 31 on the target value of vehicle acceleration 119 on the y-axis compared to the slope 31 on the x-axis.
[0171] The dashed line 121 represents an example where the score difference of 101 is positive, and the solid line 123 represents an example where the score difference of 101 is negative.
[0172] In both examples, as shown, the driving surface slope 31 corresponding to an uphill (positive) slope has a greater positive effect 119 compared to when the driving surface slope 31 corresponds to a downhill (negative) slope. The driving surface slope 31 corresponding to an uphill (positive) slope has an effect of increasing the target value of vehicle acceleration 119. A steeper uphill (positive) slope has a greater effect of increasing the target value of vehicle acceleration 119. The driving surface slope 31 corresponding to a downhill (negative) slope can have an effect of decreasing the target value of vehicle acceleration 119. A steeper downhill (negative) slope can have a greater effect of decreasing the target value of vehicle acceleration 119.
[0173] The combination of a positive score difference 101 with an uphill (positive) gradient 31 has a greater positive impact on the target value of vehicle acceleration than the combination of a negative score difference 101 with the same uphill (positive) gradient 31. For a given uphill (positive) gradient 31, the effect 119 of the offset 101 in the direction of more positive or less negative is an increase in the target value of vehicle acceleration.
[0174] The combination of a positive score difference 101 with a downhill (negative) gradient 31 has a smaller negative impact on the target value of vehicle acceleration than the combination of a negative score difference 101 with the same downhill (negative) gradient 31. For a given downhill (negative) gradient 31, the effect 119 of the offset 101 in the direction of less positive or more negative gain is a reduction in the target value of vehicle acceleration.
[0175] This provides the acceleration that will be increased when driving uphill (at least assuming the driving surface does not become rougher) so that vehicle 1 can have momentum to overcome obstacles or roughness that it may subsequently encounter, which could otherwise take away its momentum and bring it to a stop or to a speed slow enough that further speed control becomes challenging.
[0176] This also provides for the reduction in acceleration when driving downhill (at least if the driving surface becomes rougher), because the effect of encountering an obstacle or roughness without the vehicle 1 slowing down is that the vehicle 1 may feel as if it is "out of control," that is, the speed control system 5 is not properly controlling the speed of the vehicle, which may cause driver anxiety.
[0177] Figure 17An example is plotted showing the effect of the vehicle speed 27 on the x-axis and its impact on the target value 125 of the vehicle acceleration on the y-axis.
[0178] Solid line 131, dashed line 133, and dotted line 135 represent examples where the score difference 101 is positive but has a continuously decreasing magnitude. That is, among these examples, solid line 131 represents the example with the highest positive score difference 101, dotted line 135 represents the example with the lowest positive score difference 101, and dashed line 133 represents the example with an intermediate positive score difference 101.
[0179] When the vehicle speed 27 is within the first speed range 127, all examples with a positive score difference 101 have an effect 125 that increases the target value of vehicle acceleration. That is, effect 125 is a bias toward positive acceleration.
[0180] Within the first range 127, the effect 125 of lower vehicle speeds 27 is a greater increase in the target value of vehicle acceleration. That is, throughout the first range 127, as vehicle speed 27 increases, it has a smaller effect 125 on the target value of vehicle acceleration. At lower vehicle speeds 27, the bias toward positive acceleration is greater.
[0181] Within the first range 127, the effect 125 of a higher positive score difference 101 is a greater increase in the target value of vehicle acceleration. At higher positive score differences 101, the bias toward positive acceleration is greater.
[0182] When the vehicle speed 27 is within the second speed range 129 (the second speed range 129 is higher than the first speed range 127 and narrower than the first speed range 127 in some examples), the effect 125 on the target value of vehicle acceleration is to reduce the target value. That is, the effect 125 is a bias toward deceleration.
[0183] Within the second range 129, the effect 125 of higher vehicle speeds 27 is a greater reduction in the target value of vehicle acceleration. That is, throughout the second range 129, as vehicle speed 27 increases, it has a greater effect 125 on the target value of vehicle acceleration. At higher vehicle speeds 27, the bias towards deceleration is greater.
[0184] Within the second range 129, the effect 125 of a higher positive score difference 101 is a greater reduction in the target value of vehicle acceleration. At higher positive score differences 101, the bias toward deceleration is greater.
[0185] When the score difference 101 is zero or negative, the effect of vehicle speed 27 on the target value of vehicle acceleration 125 may be low.
[0186] It should be noted that the first range 127 and the second range 129 may be consecutive or non-consecutive. It should also be noted that the first range 127 and the second range 129 are unrelated to the previously described first range 53 and second range 55, and also unrelated to the previously described first range 75 and second range 77.
[0187] This provides an increased acceleration at low speeds (except on the roughest driving surfaces) so that some speed can be retained when encountering obstacles that require a little momentum to flip over.
[0188] This also provides for reduced acceleration at high speeds, so that vehicle 1 will not gain greater speed.
[0189] Figure 18 An example of any of the speed control systems 5 described previously is shown, wherein a vehicle acceleration request 37 output by the vehicle acceleration target determination block 47 is input to the arbitration block 137.
[0190] Arbitration block 137 is configured to receive multiple individual vehicle acceleration requests 37A to 37D, wherein the first request among the multiple individual vehicle acceleration requests 37A to 37D is request 37A output from the previously described vehicle acceleration target determination block 47, and the other requests among the multiple individual vehicle acceleration requests 37A to 37D have different sources. Arbitration block 137 is configured to process the multiple individual vehicle acceleration requests 37A to 37D and output the final arbitrated vehicle acceleration request 37'.
[0191] The source of the second vehicle acceleration request 37B is the non-adaptive speed control block 141. The non-adaptive speed control block 141 is configured to receive the current sample value of the vehicle speed 27 and the cruise control speed setpoint 139 as input. When the speed control system 5 is activated, the cruise control speed setpoint 139 can be set by the user. The non-adaptive speed control block 141 is configured to determine the second vehicle acceleration request 37B based on the difference between the current sample value of the vehicle speed 27 and the cruise control speed setpoint 139. The non-adaptive speed control block 141 is configured to determine the second vehicle acceleration request 37B in such a way that the vehicle speed 27 is maintained at the cruise control speed setpoint 139 or the vehicle speed 27 is returned to the cruise control speed setpoint 139.
[0192] The source of the third vehicle acceleration request 37C is the minimum speed protection block 145. The minimum speed protection block 145 is configured to calculate the vehicle acceleration required to prevent the vehicle speed from dropping below a threshold speed, such as 2 km / h to 2.5 km / h, below which vehicle speed control can become challenging. For example, below this threshold speed, the noise level of the wheel speed sensors may make it difficult to reliably determine the vehicle speed 27. For example, assuming that the first vehicle acceleration request 37A and the second vehicle acceleration request 37B depend on the vehicle speed 27, it should be understood that the speed control system 5 benefits from the reliable determination of the vehicle speed 27. Furthermore, below this threshold speed, even a small amount of braking can bring the vehicle 1 to a rapid stop while fulfilling the vehicle acceleration request. Disturbances such as potholes or rocks can also bring the vehicle 1 to a rapid stop. Moreover, the powertrain 33 and braking system 35 may have nonlinear responses below the threshold speed, and therefore using them in a predictable and / or consistent manner to control the vehicle speed is challenging.
[0193] Any fourth and additional vehicle acceleration requests 37D can originate from the corresponding adaptive speed control block. These can be configured to request vehicle acceleration below the cruise control speed setpoint 139 when encountering challenging driving conditions such as soft driving surfaces, reaching the top of a slope with obstructed visibility, articulated surfaces, side slopes, etc.
[0194] Arbitration block 137 includes minimum amplitude selector block 143. All requests except the third vehicle acceleration request 37C are input to minimum amplitude selector block 143, and a request for minimum vehicle acceleration is output. Since the second vehicle acceleration request 37B is input to this minimum amplitude selector block 143 along with other vehicle acceleration requests 37A, 37D, the effect of the arbitration performed by block 143 is, for example, to adjust the vehicle speed below the cruise control speed setpoint 139 when at least one vehicle body acceleration component 23 indicates driving on a rough surface or, for example, driving on disturbances on another generally smooth surface.
[0195] Arbitration block 137 also includes a maximum amplitude selector block 147. Maximum amplitude selector block 147 is configured to receive the output from minimum amplitude selector block 143 and a third vehicle acceleration request 37C from minimum speed protection block 145 as inputs. Between these two inputs, the output is a request for the highest vehicle acceleration. This ensures that the final arbitrated vehicle acceleration request 37' is sufficient to keep the vehicle speed above the aforementioned threshold speed, and thus ensures that the vehicle speed can be controlled in a predictable and / or consistent manner.
[0196] Figure 3 , Figure 4, Figure 6 , Figure 7 , Figure 10 , Figure 12 , Figure 13 , Figure 14 and Figure 18 The block shown can represent a code segment in computer program 19.
[0197] Figure 19 A method 200 according to an embodiment of the present invention is shown. Method 200 is for controlling vehicle 1, for example... Figure 1 The method for determining the speed of vehicle 1 shown. Method 200 can be derived from... Figure 2A The speed control system 5 shown is executed. In particular, the memory 17 may include computer-readable instructions 19, which, when executed by the processor 15, perform method 200.
[0198] Step S201 includes receiving an indication of vehicle speed 27.
[0199] Step S203 includes receiving an indication of at least one vehicle body acceleration component 23.
[0200] In some, but not all, examples of step S203, multiple vehicle body acceleration components 23A to 23C are received. The different vehicle body acceleration components 23A to 23C correspond to different degrees of freedom of motion of the vehicle body of vehicle 1. The different vehicle body acceleration components 23A to 23C can be the vertical acceleration, pitch acceleration, and roll acceleration experienced by the vehicle body.
[0201] Step S205 includes determining a sampling window with a window length 43 that depends on the vehicle speed 27.
[0202] For a first range of vehicle speeds 53, as the vehicle speed 27 increases, a sampling window with a longer window length 43 is determined.
[0203] In some, but not necessarily all, examples, the first range 53 of vehicle speed includes all possible vehicle speeds, or at least all possible vehicle speeds, under which the speed control system 5 is operable. Therefore, in such examples, the window length 43 increases as the vehicle speed 27 increases.
[0204] In some, but not all, examples, the predefined range of speeds under which the speed control system 5 is operable includes a second range of speeds 55 in addition to a first range of speeds 53. The second range of speeds 55 is lower than the first range of speeds 53, and in some examples, it is narrower than the first range of speeds 53. The first range of vehicle speeds 53 and the second range of vehicle speeds 55 can be continuous. For the second range of speeds 55, a sampling window with a longer window length 43 is determined as the vehicle speed 27 decreases. The maximum window length 43 of the first range of vehicle speeds 53 is longer than the maximum window length 43 of the second range of vehicle speeds 55.
[0205] In some, but not all, examples of step S205, a lookup table is used to determine the sampling window, which includes a breakpoint of vehicle speed 27 and table data indicating window length 43.
[0206] Step S207 includes calculating the running average amplitude 45 of at least one vehicle body acceleration component 23 within the determined sampling window.
[0207] In some, but not all, examples of step S207, the calculation of the running average amplitude 45 of at least one vehicle body acceleration component 23 is recursive and includes new data points of at least one vehicle body acceleration component 23 and the running average amplitude 45 of at least one vehicle body acceleration component 23 at a previous time step. The weighted sum, wherein the weights used in the weighted sum vary according to the window length 43 of the determined sampling window.
[0208] In some, but not all, examples of step S207, assuming that an indication of multiple vehicle body acceleration components 23A to 23C is received in step S203, the corresponding running average amplitude 45A to 45C is calculated for each of the multiple vehicle body acceleration components 23A to 23C within the determined sampling window.
[0209] In such an example, step S207 may be followed by an additional (not shown) step to determine a score 59, which indicates a combination of the corresponding operating average amplitudes 45A to 45C of the multiple vehicle body acceleration components 23A to 23C. Combining the corresponding operating average amplitudes 45A to 45C of the multiple vehicle body acceleration components 23A to 23C may include applying different weights to the operating average amplitudes 45A to 45C of the different vehicle body acceleration components 23A to 23C. These different weights may reflect the perceptible impact of the vehicle body acceleration components on the occupants of vehicle 1.
[0210] In some, but not necessarily all, examples, an additional (not shown) step may be performed to apply a rate limit to score 59 to restrict the rate under which score 59 may vary over time. The rate limit may apply fixed positive and negative limits to the rate under which score may vary over time, or the rate limit may be based on some parameters (e.g., vehicle speed 27 and score 59 of the previous rate limit). The difference 81 between the current (unrate-limited) score of 59 and the current score of 59 is used to change the positive limit 69 and the negative limit 73.
[0211] In some, but not necessarily all, examples can be performed to determine a score of 59 or a rate limit of 59. Another additional (not shown) step for the score difference of 101 between the predefined score target of 97 and the score difference of 101.
[0212] Step S209 includes generating a vehicle acceleration request 37, which depends on the running average amplitude 45 of at least one vehicle body acceleration component 23.
[0213] In some, but not all, examples of step S209, assuming that an indication of multiple vehicle body acceleration components 23A to 23C is received in step S203, the vehicle acceleration request 37 may alternatively be generated based on a score 59, which can be determined by a combination of the corresponding running average amplitudes 45A to 45C of the multiple vehicle body acceleration components 23A to 23C.
[0214] In some, but not all, examples of step S209, the vehicle acceleration request 37 may alternatively be generated by first determining a target value for the vehicle acceleration using a predefined relationship between at least the score difference 101 and the vehicle acceleration, and then making the vehicle acceleration request 37 based on the determined target value for the vehicle acceleration.
[0215] If multiple vehicle body acceleration components 23A to 23C are not used, and therefore no score 59 representing or indicating their combination is determined, then alternatively, and in some but not all examples, the difference between the running average amplitude 45 of the vehicle body acceleration component 23 and a predefined target amplitude can be determined, and in step S209, the vehicle acceleration request 37 can be generated by first determining a target value of vehicle acceleration using at least the determined difference and a predefined relationship between vehicle acceleration, and then making the vehicle acceleration request 37 based on the determined target value of vehicle acceleration.
[0216] In some, but not all, examples of step S209, at least (i) the predefined relationship between the score difference 101 or the determined difference and (ii) the vehicle acceleration can be the predefined relationship between (i) the score difference 101 or the determined difference, (ii) the vehicle speed 27 and / or the driving surface slope 31 and (iii) the vehicle acceleration.
[0217] In some, but not all, examples, step S209 may be followed by an additional (not shown) arbitration step between the vehicle acceleration request 37(A) generated in step S209 and the second vehicle acceleration request 37B and / or the third vehicle acceleration request 37C, wherein, as a result of the arbitration, the arbitrated vehicle acceleration request 37 is output. .
[0218] In some, but not all, examples, the second vehicle acceleration request 37B is determined based on the difference between the vehicle speed 27 and the cruise control speed setpoint 139. Arbitration between the vehicle acceleration request 37(A) generated in step S209 and the second vehicle acceleration request 37B includes a minimum amplitude selection.
[0219] In some, but not all, examples, a third vehicle acceleration request 37C is determined to maintain vehicle speed 27 above a threshold speed, where maintaining vehicle speed 27 above the threshold speed may be a prerequisite for performing method 200. Arbitration between the vehicle acceleration request 37(A) generated in step S209 and the third vehicle acceleration request 37C includes the selection of the maximum amplitude value.
[0220] Figure 20 Another method 300 according to an embodiment of the present invention is shown. Method 300 is controlling vehicle 1, for example... Figure 1 Another method for determining the speed of vehicle 1 shown. Method 300 can be derived from... Figure 2A The speed control system 5 shown is executed. In particular, the memory 17 may include computer-readable instructions 19, which, when executed by the processor 15, perform method 300.
[0221] Step S301 includes receiving an indication of vehicle speed 27.
[0222] Step S303 includes receiving an indication of at least one vehicle body acceleration component 23.
[0223] In some, but not all, examples of step S303, multiple vehicle body acceleration components 23A to 23C are received. The different vehicle body acceleration components 23A to 23C correspond to different degrees of freedom of motion of the vehicle body of vehicle 1. The different vehicle body acceleration components 23A to 23C can be the vertical acceleration, pitch acceleration, and roll acceleration experienced by the vehicle body.
[0224] Step S305 includes determining a first score based on at least one vehicle body acceleration component 23 at a first time.
[0225] In some, but not all, examples of step S305, the first score can be determined by first calculating the first running average amplitude 45 of at least one vehicle body acceleration component 23 within a sampling window ending at the first time, wherein the window length 43 of the sampling window can be fixed or can depend on the vehicle speed 27. The first score can then be determined based on the first running average amplitude 45 of at least one vehicle body acceleration component 23.
[0226] In some, but not all, examples of step S305, assuming that an indication of multiple vehicle body acceleration components 23A to 23C is received in step S303, a first score can be determined based on a combination of the multiple vehicle body acceleration components 23A to 23C. Combining the multiple vehicle body acceleration components 23A to 23C may include applying different weights to different vehicle body acceleration components 23A to 23C. These different weights can reflect the perceptible impact of the vehicle body acceleration components on the occupants of vehicle 1.
[0227] In some, but not all, examples of step S305, the first score can be determined by first calculating the corresponding first running average amplitude 45A to 45C for each of the plurality of vehicle body acceleration components 23A to 23C within a sampling window ending at a first time, wherein the window length 43 of the sampling window can be fixed or can depend on the vehicle speed 27. The first score can then be determined based on a combination of the corresponding first running average amplitudes 45A to 45C of the plurality of vehicle body acceleration components 23A to 23C. Combining the corresponding first running average amplitudes 45A to 45C of the plurality of vehicle body acceleration components 23A to 23C can include applying different weights to the first running average amplitudes 45A to 45C of the different vehicle body acceleration components 23A to 23C. These different weights can reflect the perceptible impact of the vehicle body acceleration components on the occupants of vehicle 1.
[0228] Step S307 includes determining a second score based on at least one vehicle body acceleration component 23 at a second time. The first time occurs before the second time. The first time may occur at a time step prior to the second time. A time step may correspond to the sampling period of the vehicle body acceleration component 23.
[0229] In some, but not all, examples of step S307, the second score can be determined by first calculating the second running average amplitude 45 of at least one vehicle body acceleration component 23 within a sampling window ending at the second time, wherein the window length 43 of the sampling window can be fixed or can depend on the vehicle speed 27. The second score can then be determined based on the second running average amplitude 45 of at least one vehicle body acceleration component 23.
[0230] In some, but not all, examples of step S307, assuming that an indication of multiple vehicle body acceleration components 23A to 23C is received in step S303, the second score can be determined based on a combination of the multiple vehicle body acceleration components 23A to 23C. Combining the multiple vehicle body acceleration components 23A to 23C may include applying different weights to different vehicle body acceleration components 23A to 23C. These different weights can reflect the perceptible impact of the vehicle body acceleration components on the occupants of vehicle 1.
[0231] In some, but not all, examples of step S307, the second score can be determined by first calculating the corresponding second running average amplitude 45A to 45C for each of the plurality of vehicle body acceleration components 23A to 23C within a sampling window ending at the second time, wherein the window length 43 of the sampling window can be fixed or can depend on the vehicle speed 27. The second score can then be determined based on a combination of the corresponding second running average amplitudes 45A to 45C of the plurality of vehicle body acceleration components 23A to 23C. Combining the corresponding second running average amplitudes 45A to 45C of the plurality of vehicle body acceleration components 23A to 23C can include applying different weights to the second running average amplitudes 45A to 45C of the different vehicle body acceleration components 23A to 23C. These different weights can reflect the perceptible impact of the vehicle body acceleration components on the occupants of vehicle 1.
[0232] Step S309 includes determining an allowable scoring range based on the vehicle speed 27 at a second time, the allowable scoring range including the first score.
[0233] Different allowable score ranges may exist for different vehicle speeds 27. Different allowable score ranges differ in one or more of the following aspects: (i) the magnitude of the allowable score range, i.e., the magnitude of the difference between its upper and lower endpoints; and (ii) the relative position of the first score within the allowable score range, i.e., the relative position of the first score with respect to the upper and lower endpoints. In other words, for a given first score, the allowable score range differs at different vehicle speeds 27.
[0234] In some, but not necessarily all, examples show that as vehicle speed 27 increases, the lower endpoint of the allowed scoring range becomes further away from the first score. That is, as vehicle speed 27 increases, the magnitude of the difference 85 between the lower endpoint of the allowed scoring range and the first score increases.
[0235] In some, but not all, examples, for a first range of vehicle speeds 75, as the vehicle speed 27 increases, the upper endpoint of the allowed scoring range becomes further away from the first score. That is, for a first range of vehicle speeds 75, as the vehicle speed 27 increases, the magnitude of the difference 83 between the upper endpoint of the allowed scoring range and the first score increases.
[0236] In some, but not necessarily all, examples, for a second range 77 where the vehicle speed is above the first range, the upper endpoint of the allowed scoring range becomes closer to the first score as the vehicle speed 27 increases. That is, for a second range 77 where the vehicle speed is above the first range, the magnitude of the difference 83 between the upper endpoint of the allowed scoring range and the first score decreases as the vehicle speed 27 increases. The first range 75 and the second range 77 of vehicle speed can be continuous.
[0237] In some, but not all, examples of step S309, the allowed score range is also determined based on the difference 81 between the first score and the second score.
[0238] As the magnitude of the negative difference 81 between the first and second scores increases, the magnitude of the difference 85 between the lower endpoint of the allowed score range and the first score also increases. The increase in the magnitude of the negative difference 81 between the first and second scores can exceed the increase in the magnitude of the difference 85 between the lower endpoint of the allowed score range and the first score.
[0239] For a first range of vehicle speed 75, as the magnitude of the positive difference 81 between the first score and the second score increases, the magnitude of the difference 83 between the upper endpoint of the allowed score range and the first score also increases.
[0240] For the first part of the second range 77 of vehicle speed, as the magnitude of the positive difference 81 between the first score and the second score increases, the magnitude of the difference 83 between the upper endpoint of the allowed score range and the first score also increases.
[0241] For the second portion of the vehicle speed range 77 that is higher than the first portion, as the magnitude of the positive difference 81 between the first score and the second score increases, the magnitude of the difference 83 between the upper endpoint of the allowed score range and the first score remains consistent or decreases.
[0242] Step S311 includes determining whether the second score is within the allowed score range.
[0243] Step S313 includes generating a vehicle acceleration request 37 based on the second score if the second score is within the allowed score range.
[0244] In some, but not all, examples of step S313, the vehicle acceleration request 37 may alternatively be generated as follows: first, a score difference 101 between the second score and the predefined score target 97 is determined; then, a target value for the vehicle acceleration is determined using at least the score difference 101 and the predefined relationship between the vehicle acceleration; and then the vehicle acceleration request 37 is made based on the determined target value for the vehicle acceleration.
[0245] In some, but not all, examples of step S313, at least the predefined relationship between the determined score difference 101 and the vehicle acceleration can be a predefined relationship between (i) the score difference 101, (ii) the vehicle speed 27 and / or the driving surface slope 31 and (iii) the vehicle acceleration.
[0246] Step S315 includes determining a third score if the second score is not within the allowed score range, the third score being the endpoint of the allowed score range closest to the second score, and generating a vehicle acceleration request 37 based on the third score.
[0247] In some, but not all, examples of step S315, the vehicle acceleration request 37 may alternatively be generated as follows: first, a score difference 101 between the third score and the predefined score target 97 is determined; then, a target value for the vehicle acceleration is determined using at least the score difference 101 and the predefined relationship between the vehicle acceleration; and then the vehicle acceleration request 37 is made based on the determined target value for the vehicle acceleration.
[0248] In some, but not all, examples of step S315, at least the predefined relationship between the determined score difference 101 and the vehicle acceleration can be a predefined relationship between (i) the score difference 101, (ii) the vehicle speed 27 and / or the driving surface slope 31 and (iii) the vehicle acceleration.
[0249] In some, but not all, examples, steps S313 and S315 may be followed by an additional (not shown) arbitration step between the vehicle acceleration request 37(A) generated in steps S313 and S315 and the second vehicle acceleration request 37B and / or the third vehicle acceleration request 37C, respectively, wherein, as a result of the arbitration, the arbitrated vehicle acceleration request 37 is output. .
[0250] In some, but not all, examples, the second vehicle acceleration request 37B is determined based on the difference between the vehicle speed 27 and the cruise control speed setpoint 139. Arbitration between the vehicle acceleration request 37(A) generated in step S313 or step S315 and the second vehicle acceleration request 37B includes a minimum amplitude selection.
[0251] In some, but not all, examples, a third vehicle acceleration request 37C is determined to maintain vehicle speed 27 above a threshold speed, where maintaining vehicle speed 27 above the threshold speed may be a prerequisite for performing method 300. Arbitration between the vehicle acceleration request 37(A) generated in step S313 or step S315 and the third vehicle acceleration request 37C includes the selection of the maximum amplitude value.
[0252] Figure 21 Another method 400 according to an embodiment of the present invention is shown. Method 400 is controlling vehicle 1, for example... Figure 1 Another method for determining the speed of vehicle 1 shown. Method 400 can be determined by... Figure 2A The speed control system 5 shown is executed. In particular, the memory 17 may include computer-readable instructions 19, which, when executed by the processor 15, perform method 400.
[0253] Step S401 includes receiving an indication of vehicle speed 27.
[0254] Step S403 includes receiving an indication of the driving surface slope 31.
[0255] Step S405 includes receiving an indication of at least one vehicle body acceleration component 23.
[0256] In some, but not all, examples of step S405, multiple vehicle body acceleration components 23A to 23C are received. The different vehicle body acceleration components 23A to 23C correspond to different degrees of freedom of motion of the vehicle body of vehicle 1. The different vehicle body acceleration components 23A to 23C can be the vertical acceleration, pitch acceleration, and roll acceleration experienced by the vehicle body.
[0257] In some, but not all, examples, additional (not shown) steps may be performed to receive instructions on the user-selected setting 109. The user-selected setting 109 may be a ride comfort setting for vehicle 1.
[0258] Step S407 includes determining a score 59 based on at least one vehicle body acceleration component 23.
[0259] In some, but not all, examples of step S407, score 59 can be determined by first calculating the running average amplitude 45 of at least one vehicle body acceleration component 23 within a sampling window, wherein the window length 43 of the sampling window can be fixed or can depend on the vehicle speed 27. Score 59 can then be determined based on the running average amplitude 45 of at least one vehicle body acceleration component 23.
[0260] In some, but not all, examples of step S407, assuming that an indication of multiple vehicle body acceleration components 23A to 23C is received in step S405, score 59 can be determined based on the combination of the multiple vehicle body acceleration components 23A to 23C. Combining the multiple vehicle body acceleration components 23A to 23C may include applying different weights to different vehicle body acceleration components 23A to 23C. Different weights may reflect the perceptible impact of the vehicle body acceleration components on the occupants of vehicle 1.
[0261] In some, but not all, examples of step S407, score 59 can be determined by first calculating the corresponding running average amplitudes 45A to 45C for each of the multiple vehicle body acceleration components 23A to 23C within a sampling window, wherein the window length 43 of the sampling window can be fixed or can depend on the vehicle speed 27. Score 59 can then be determined based on a combination of the corresponding running average amplitudes 45A to 45C of the multiple vehicle body acceleration components 23A to 23C. Combining the corresponding running average amplitudes 45A to 45C of the multiple vehicle body acceleration components 23A to 23C can include applying different weights to the running average amplitudes 45A to 45C of the different vehicle body acceleration components 23A to 23C. These different weights can reflect the perceptible impact of the vehicle body acceleration components on the occupants of vehicle 1.
[0262] In some, but not necessarily all, examples, additional (not shown) steps may be performed to apply a rate limit to score 59 to restrict the rate under which score 59 may vary over time. The rate limit may apply fixed positive and negative limits to the rate under which score 59 may vary over time, or the rate limit may be based on some parameters (e.g., vehicle speed 27 and the previous rate limit score 59). The difference 81 between the current (unrate-limited) score of 59 and the current score of 59 is used to change the positive limit 69 and the negative limit 73.
[0263] Step S409 includes determining score 59 or the rate limit score 59. The score difference between the predefined score target of 97 and the score difference is 101.
[0264] In some, but not all, examples of step S409, before determining the score difference 101, it is assumed that an instruction for user-selected setting 109 is received, and a predefined score target 97 is determined based on user-selected setting 109.
[0265] Step S411 includes determining a target value for vehicle acceleration using a predefined relationship between (i) score difference 101, (ii) vehicle speed 27 and / or driving surface slope 31 and (iii) vehicle acceleration.
[0266] In some, but not all, examples of step S409, before determining the target value of vehicle acceleration, it is assumed that an instruction for user-selected setting 109 is received, and a predefined relationship between (i) score difference 101, (ii) vehicle speed 27 and / or driving surface slope 31, and (iii) vehicle acceleration is obtained based on that user-selected setting 109. Different predefined relationships exist associated with different user-selected settings 109.
[0267] In some, but not all, examples, the predefined relationship includes increasing vehicle acceleration as the score difference of 101 becomes more positive or less negative.
[0268] In some, but not all, examples, the predefined relationship includes a vehicle acceleration for a downhill driving surface slope 31 being lower than the vehicle acceleration for an uphill driving surface slope 31.
[0269] In some, but not all, examples, the predefined relationship includes that for steeper downhill driving surfaces with a slope of 31, the decrease in vehicle acceleration is greater.
[0270] In some, but not all, examples, the predefined relationship includes that for a given downhill driving surface gradient 31, the smaller the positive or negative score difference 101, the greater the decrease in vehicle acceleration.
[0271] In some, but not all, examples, the predefined relationship includes that for a steeper uphill driving surface slope of 31, the increase in vehicle acceleration is greater.
[0272] In some, but not all, examples, the predefined relationship includes that for a given uphill driving surface gradient 31, the increase in vehicle acceleration is greater for a score difference 101 that is more positive or less negative.
[0273] In some, but not all, examples, the predefined relationship includes increasing vehicle acceleration for a first range of 127 for vehicle speed, with a minimum positive score difference of 101.
[0274] In some, but not all, examples, the predefined relation includes a first range 127 for vehicle speeds, where the more positive the score difference 101, the greater the increase in vehicle acceleration. That is, given a vehicle speed 27 in the first range 127 and a positive score difference 101 (indicating, for example, that the driving surface becomes smoother), the predefined relation proposes a higher vehicle acceleration value for a higher score difference 101.
[0275] In some, but not all, examples, the predefined relationship includes a first range of 127 for vehicle speeds, where the increase in vehicle acceleration is greater for lower vehicle speeds of 27.
[0276] In some, but not all, examples, the predefined relationship includes a second range 129 for vehicle speeds that are higher than the first range 127 (and narrower in some examples), with a minimum positive score difference of 101 for reducing vehicle acceleration.
[0277] In some, but not all, examples, the predefined relationship includes a second range of 129 for vehicle speed, where the more positive the score difference 101, the greater the decrease in vehicle acceleration.
[0278] In some, but not all, examples, the predefined relationship includes a second range of 129 for vehicle speeds, where the decrease in vehicle acceleration is greater for higher vehicle speeds 27.
[0279] Step S413 includes: generating a vehicle acceleration request 37 based on the determined target value of vehicle acceleration.
[0280] In some, but not all, examples, step S413 may be followed by an additional (not shown) step of arbitration between the vehicle acceleration request 37(A) generated in step S413 and the second vehicle acceleration request 37B and / or the third vehicle acceleration request 37C, wherein, as a result of the arbitration, the arbitrated vehicle acceleration request 37' is output.
[0281] In some, but not all, examples, the second vehicle acceleration request 37B is determined based on the difference between the vehicle speed 27 and the cruise control speed setpoint 139. Arbitration between the vehicle acceleration request 37(A) generated in step S413 and the second vehicle acceleration request 37B includes a minimum amplitude selection.
[0282] In some, but not all, examples, a third vehicle acceleration request 37C is determined to maintain vehicle speed 27 above a threshold speed, where maintaining vehicle speed 27 above the threshold speed may be a prerequisite for performing method 400. Arbitration between the vehicle acceleration request 37(A) generated in step S413 and the third vehicle acceleration request 37C includes the selection of the maximum amplitude value.
[0283] It will be understood that each of the methods 200, 300, and 400 can be combined with one or both of the other methods.
[0284] It will be understood that various changes and modifications can be made to this invention without departing from the scope of this application.
[0285] It should be understood that controller 7 or each controller 7 may include control units or computing devices having one or more electronic processors (e.g., microprocessors, microcontrollers, application-specific integrated circuits (ASICs), etc.), and may include a single control unit or computing device, or alternatively, different functions of controller 7 or each controller 7 may be contained in or hosted in different control units or computing devices. As used herein, the terms “controller,” “control unit,” or “computing device” will be understood to include a single controller, control unit, or computing device, as well as multiple controllers, control units, or computing devices that operate together to provide the desired control functions. A set of instructions may be provided that, when executed, causes controller 7 to perform some or all of the control techniques described herein (including some or all of the functions required by the methods described herein). This set of instructions 19 may be built into the one or more electronic processors 15 of controller 7; or alternatively, the set of instructions 19 may be provided as software to be executed in controller 7. The first controller or control unit may be implemented in software running on one or more processors. One or more other controllers or control units may be implemented in software running on one or more processors (optionally, the same one or more processors as the first controller or control unit). Other arrangements are also useful.
[0286] Electronic processor 15, or each electronic processor 15, may include any suitable electronic processor (e.g., microprocessor, microcontroller, ASIC, etc.) configured to execute electronic instructions 19. Electronic memory device 17, or each electronic memory device 17, may include any suitable memory device and may store various data, information, thresholds, lookup tables, or other data structures and / or instructions therein or on it. In embodiments, memory device 17 has information and instructions stored therein or on it for software, firmware, programs, algorithms, scripts, applications, etc., which may control all or part of the methods described herein. Processor or each electronic processor 15 may access memory device 17 and execute and / or use these or those instructions and information to perform some or all of the functions and methods described herein.
[0287] At least one memory device 17 may include a computer-readable storage medium (e.g., a non-transitory or non-transient storage medium), which may include any mechanism for storing information in a form readable by a machine or electronic processor / computing device. Examples of such forms include, but are not limited to: magnetic storage media (e.g., floppy disks); optical storage media (e.g., CD-ROMs); magneto-optical storage media; read-only memory (ROM); random access memory (RAM); erasable programmable memory (e.g., EPROMs and EEPROMs); flash memory; or electrical or other types of media for storing such information / instructions.
[0288] It will be understood that embodiments of the present invention can be implemented in any suitable form, in hardware, in software, or in a combination of hardware and software. For example, it is conceivable that the present invention is not limited to implementation by a programmable processing device, and that at least some of the functional and / or method steps of the present invention, as well as all of the functional and / or method steps in some embodiments, can be equivalently implemented by non-programmable hardware, such as by a non-programmable ASIC, a Boolean logic circuit system, etc.
[0289] Figures 19 to 21 The steps illustrated in the diagram may represent individual steps in the method and / or code portions in computer program 19. The description of a specific order of steps does not necessarily imply a required or preferred order for the steps, and the order and arrangement of steps may vary. Furthermore, some steps may be omitted.
[0290] The features described in the preceding description may be used in combinations other than those explicitly described. While some features have been described with reference to functionality, those functions may be performed by other features, whether or not they have been described. Similarly, while some embodiments have been described with reference to features, those features may exist in other embodiments, whether or not they have been described.
Claims
1. A speed control system for a vehicle, the speed control system comprising one or more processors, the one or more processors being configured to: Receive signals indicating vehicle speed; Receive a signal indicating at least one component of vehicle body acceleration; A first score is determined based on at least one vehicle body acceleration component at the first moment; A second score is determined based on the at least one vehicle body acceleration component at a second time. In the second time period, an allowable score range is determined based on the vehicle speed, and the allowable score range includes the first score; Determine whether the second score falls within the allowed score range; If the second score is within the allowed score range, then a vehicle acceleration request is generated based on the second score; as well as If the second score is not within the allowed score range, a third score is determined, which is the endpoint of the allowed score range closest to the second score, and a vehicle acceleration request is generated based on the third score.
2. The speed control system according to any of the preceding claims, wherein, The at least one vehicle body acceleration component includes at least one of the following: vertical acceleration, pitch acceleration, or roll acceleration.
3. The speed control system according to any of the preceding claims, wherein, The at least one vehicle body acceleration component is received from one or more accelerometers and / or one or more gyroscopes mounted on the vehicle body.
4. The speed control system according to any of the preceding claims, wherein, Different vehicle speeds have different allowable scoring ranges.
5. The speed control system according to any of the preceding claims, wherein, As vehicle speed increases, the lower endpoint of the allowed scoring range becomes further away from the first score.
6. The speed control system according to any of the preceding claims, wherein: For a first range of vehicle speeds, as the vehicle speed increases, the upper endpoint of the allowed scoring range becomes farther away from the first score; and For a second range of vehicle speeds that are higher than the first range, the upper endpoint of the allowed scoring range becomes closer to the first score as the vehicle speed increases.
7. The speed control system according to any of the preceding claims, wherein, The one or more processors are collectively configured to determine the allowed score range based on the difference between the first score and the second score.
8. The speed control system according to claim 7, wherein, As the magnitude of the negative difference between the first score and the second score increases, the magnitude of the difference between the lower endpoint of the allowed score range and the first score increases, wherein the increase in the magnitude of the negative difference between the first score and the second score is greater than the increase in the magnitude of the difference between the lower endpoint of the allowed score range and the first score.
9. The speed control system according to claim 7 or 8, wherein, For vehicle speeds within a first range, as the magnitude of the positive difference between the first score and the second score increases, the magnitude of the difference between the upper endpoint of the allowed score range and the first score also increases.
10. The speed control system according to claim 9, wherein, For at least some vehicle speeds higher than the first range, as the magnitude of the positive difference between the first score and the second score increases, the magnitude of the difference between the upper endpoint of the allowed score range and the first score remains consistent or decreases.
11. The speed control system according to any of the preceding claims, wherein, The one or more processors are configured together to: Multiple vehicle body acceleration components are received, wherein different vehicle body acceleration components correspond to different degrees of freedom of movement of the vehicle body; and The first score and the second score are determined based on the combination of the multiple vehicle body acceleration components.
12. The speed control system according to claim 11, wherein, The one or more processors are collectively configured to combine the multiple vehicle body acceleration components by applying different weights to the different vehicle body acceleration components.
13. A vehicle or a system for controlling the speed of a vehicle, comprising: The speed control system according to any of the preceding claims; A sensor configured to output a signal indicating vehicle speed; At least one sensor configured to output one or more signals indicating at least one component of vehicle body acceleration; as well as A vehicle powertrain configured to accelerate the vehicle by controlling the amount of drive torque applied to one or more wheels of the vehicle in response to an acceleration request.
14. A method for controlling the speed of a vehicle, the method comprising: Receive vehicle speed instructions; Receive indication of at least one vehicle body acceleration component; A first score is determined based on at least one vehicle body acceleration component at the first moment; A second score is determined based on the at least one vehicle body acceleration component at a second time. In the second time period, an allowable score range is determined based on the vehicle speed, and the allowable score range includes the first score; Determine whether the second score falls within the allowed score range; If the second score is within the allowed score range, then a vehicle acceleration request is generated based on the second score; as well as If the second score is not within the allowed score range, a third score is determined, which is the endpoint of the allowed score range closest to the second score, and a vehicle acceleration request is generated based on the third score.
15. A computer-readable instruction, which, when executed by a computer, is arranged to perform the method according to claim 14.