Method of estimating road slope and vehicle
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- GREAT WALL MOTOR CO LTD
- Filing Date
- 2026-06-18
- Publication Date
- 2026-08-07
AI Technical Summary
但是,现有的坡度估计方法采用固定权重分配策略融合多源数据,当传感器具有波动或者偏差时,其采集的数据不利于估计坡度,但是其权重分配固定,导致坡度的估计精度较低
[0032]借由上述技术方案,本申请提供的一种道路坡度的估计方法和车辆。该方法采用至少两个坡度估计模型分别计算估计坡度。在确定多个坡度估计模型的结果融合的融合权重时,先确定车辆所处的当前运行工况,并根据当前运行工况确定初始权重,再根据坡度估计模型在当前坡度估计周期内的坡度计算稳定程度,调整初始权重,获得各个坡度估计模型的融合权重,避免在固定权重分配策略下因传感器波动导致的权重分配不佳的问题,按照各个坡度估计模型的融合权重,以及各个坡度估计模型计算的估计坡度,计算当前坡度估计周期内的坡度,有效实现各个坡度估计模型的输出结果的权重分配,有效提高坡度的估计精度。
Smart Images

Figure CN122519291A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and in particular to a method for estimating road slope and a vehicle. Background Technology
[0002] With the rapid development of new energy vehicles and intelligent driving, the gradient information of the road surface has gradually become a key input parameter for many core functional modules in the vehicle. Accurate real-time gradient estimation helps the vehicle controller adjust the power distribution strategy in advance when the vehicle is going uphill or downhill, thereby improving the vehicle's range and driving safety.
[0003] Existing slope estimation methods mainly fuse multi-source data collected by various sensors to obtain the final estimated slope. However, existing slope estimation methods use a fixed weight allocation strategy to fuse multi-source data. When the sensors have fluctuations or biases, the data they collect is not conducive to slope estimation. However, the fixed weight allocation leads to low slope estimation accuracy. Summary of the Invention
[0004] In view of the above problems, this application provides a method and vehicle for estimating road slope to improve the accuracy of slope estimation. The specific solution is as follows:
[0005] The first aspect of this application provides a method for estimating road slope, the method comprising:
[0006] Calculate the estimated current slope of the vehicle using at least two slope estimation models;
[0007] The initial weights of each slope estimation model are determined based on the current operating conditions of the vehicle.
[0008] Based on the stability of slope calculation of each slope estimation model within the current slope estimation period, the initial weights of each slope estimation model are adjusted to obtain the fusion weight of each slope estimation model.
[0009] The slope within the current slope estimation period is calculated based on the fusion weights of each slope estimation model and the estimated slope calculated by each slope estimation model.
[0010] In one embodiment, it further includes:
[0011] The slope is filtered, and the filtered result is used as the slope within the current slope estimation period.
[0012] In one embodiment, adjusting the initial weights of each slope estimation model according to the stability of slope calculation within the current slope estimation period to obtain the fusion weights of the slope estimation models includes:
[0013] Calculate the slope residuals of each slope estimation model at each time point in the current slope estimation period, and calculate the residual variance of each slope estimation model based on the slope residuals at each time point.
[0014] Based on the residual variance of each slope estimation model, calculate the correction weights for each slope estimation model.
[0015] The summation results of each slope estimation model are obtained by calculating the weighted summation of the corrected weights of each slope estimation model and the initial weights of each slope estimation model.
[0016] The summation results of each slope estimation model are weighted and normalized to obtain the fusion weight of each slope estimation model within the current slope estimation period.
[0017] In one embodiment, identifying the current operating condition of the vehicle includes:
[0018] Construct the operating condition feature vector of the vehicle;
[0019] The operating condition feature vector is classified to obtain the category of the operating condition feature vector, and the category is used as the current operating condition of the vehicle.
[0020] In one embodiment, classifying the operating condition feature vector to obtain the category of the operating condition feature vector, and using the category as the current operating condition of the vehicle, includes:
[0021] Based on the values of each working condition feature parameter in the working condition feature vector and the value range of each working condition feature parameter corresponding to each preset working condition, the current operating condition of the vehicle is determined.
[0022] In one embodiment, determining the current operating condition of the vehicle based on the values of each operating condition feature parameter in the operating condition feature vector and the value range of each operating condition feature parameter corresponding to each preset operating condition includes:
[0023] If the values of each of the operating condition characteristic parameters satisfy the value range of each of the operating condition characteristic parameters in the target operating condition, and the value satisfies that the time is not less than the time threshold, then the current operating condition of the vehicle is determined to be the target operating condition, and the target operating condition is one of the preset operating conditions.
[0024] In one embodiment, determining the initial weights of each gradient estimation model based on the current operating conditions of the vehicle includes:
[0025] Based on the current operating conditions, query the preset operating condition-weight base value mapping table to determine the initial weights of each slope estimation model.
[0026] In one embodiment, calculating the estimated current slope of the vehicle using at least two slope estimation models includes:
[0027] Collect slope correlation data required for each slope estimation model; the slope correlation data required for each slope estimation model is different.
[0028] Each slope estimation model calculates the estimated slope based on the required slope correlation data.
[0029] In one embodiment, before each slope estimation model calculates the estimated slope based on the required slope correlation data, the method further includes:
[0030] Data preprocessing and time alignment are performed on the slope correlation data required for each slope estimation model.
[0031] A second aspect of this application provides a vehicle including a memory and a processor, wherein the memory stores executable program code, and the processor is configured to call and execute the executable program code to perform a road gradient estimation method described in the first aspect or any implementation thereof.
[0032] This application provides a method and vehicle for estimating road slope using the above technical solution. The method employs at least two slope estimation models to calculate the estimated slope separately. When determining the fusion weights for fusing the results of multiple slope estimation models, the current operating condition of the vehicle is first determined, and initial weights are determined based on this condition. Then, the initial weights are adjusted based on the stability of the slope calculations of the slope estimation models within the current estimation period, thus obtaining the fusion weights for each slope estimation model. This avoids the problem of poor weight allocation due to sensor fluctuations under a fixed weight allocation strategy. The slope within the current estimation period is calculated according to the fusion weights of each slope estimation model and the estimated slope calculated by each model, effectively achieving weight allocation of the output results of each slope estimation model and significantly improving the accuracy of slope estimation. Attached Figure Description
[0033] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0034] Figure 1 A flowchart illustrating a method for estimating road slope provided in an embodiment of this application;
[0035] Figure 2 This is a structural schematic diagram of a vehicle provided in an embodiment of this application.
[0036] Figure label:
[0037] 1001 - Memory; 1002 - Processor; 10011 - Executable program code. Detailed Implementation
[0038] The embodiments of this application are described below with reference to the accompanying drawings. The terminology used in the implementation section of this application is for explaining specific embodiments only and is not intended to limit the scope of this application.
[0039] The embodiments of this application will now be described with reference to the accompanying drawings. Those skilled in the art will recognize that, with technological advancements and the emergence of new scenarios, the technical solutions provided in the embodiments of this application are equally applicable to similar technical problems.
[0040] The terms "first," "second," etc., used in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such terms can be used interchangeably where appropriate; this is merely a way of distinguishing objects with the same attributes in the embodiments of this application. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion, so that a process, method, system, product, or apparatus that comprises a series of units is not necessarily limited to those units, but may include other units not explicitly listed or inherent to those processes, methods, products, or apparatuses.
[0041] In existing technologies, the acquisition of road slope information where a vehicle is located mainly relies on the following methods:
[0042] High-precision mapping method. This method obtains vehicle slope information by using pre-stored digital elevation models (DEMs) or road slope annotations in high-definition maps. However, this method is costly to collect and update, and cannot cover dynamic or unmapped areas such as construction detours and temporary access roads.
[0043] GNSS (Global Navigation Satellite System) elevation difference method. Slope is calculated using elevation sequences obtained from the Global Navigation Satellite System. However, the vertical positioning accuracy of GNSS is much lower than that of the horizontal direction. In scenarios with severe multipath effects, such as urban canyons, tunnels, and under viaducts, its slope estimation accuracy deteriorates sharply or even becomes completely unusable.
[0044] Single-vehicle sensor approach. Using only an IMU (Inertial Measurement Unit) or only a barometric pressure sensor to estimate the slope, the IMU can obtain a relatively accurate pitch angle estimate by decomposing the gravity component when the vehicle is static or moving at a constant speed. However, under non-steady-state conditions such as acceleration and braking, the longitudinal acceleration and gravity component cannot be decoupled, resulting in a significant deviation in the slope estimation. In addition, MEMS-level IMUs (three-axis accelerometers and geometric three-axis gyroscopes (six-axis IMUs)) have zero-bias drift and temperature drift problems. The barometric pressure sensor indirectly calculates the slope through the atmospheric pressure-altitude relationship. Although it is not affected by the vehicle's motion, atmospheric pressure is significantly affected by changes in weather systems, temperature gradients, and local airflow disturbances, resulting in a prominent long-term drift problem.
[0045] While there are various methods to fuse multi-source sensor data to improve the robustness of slope estimation, the fixed weights assigned to each sensor under all operating conditions make it impossible to dynamically adjust the reliability of each sensor's data and determine which sensor is most reliable under the current conditions. When a sensor exhibits abnormal readings, such as water ingress into the barometer or electromagnetic interference to the IMU, the abnormal data directly participates in the fusion process, resulting in the abnormal data being amplified with high weights and causing a significant deviation in the output slope estimation.
[0046] To address the aforementioned issues, this application provides a method for estimating road slope. To avoid errors from a single detection method, this method employs multiple detection methods in parallel to measure slope. These methods estimate slope based on different principles and sensor data, allowing them to compensate for each other's estimation errors. Furthermore, this method uses a dynamic weighting strategy to dynamically determine the fusion weights when fusing the results from each detection method. First, the method determines initial weights based on the operating conditions to reflect the reliability of sensor data under different conditions. Higher initial weights indicate higher reliability of sensor data under those conditions and more accurate descriptions of the vehicle's current state. Then, the initial weights are adjusted based on the stability of the slope estimation by each detection method over a certain period. Since the stability of the detection method's results is directly related to the stability of the sensor data, the adjusted initial weights further reflect the stability of the sensor data, thus avoiding the influence of abnormal sensor data on the results. Therefore, the fusion weights obtained through the aforementioned weight generation method indicate that higher fusion weights signify higher reliability, stability, and accuracy of the sensor data used by that detection method.
[0047] Therefore, this method uses multiple different detection methods in parallel to compensate for the inherent errors of a single detection method, and fuses the slope estimates from each detection method according to the fusion weight, so that the detection results with high reliability, stability, and high accuracy have a larger proportion in the final slope obtained by fusion. Therefore, the slope estimation of this method has high accuracy. The road slope estimation method of this application embodiment will be described in detail below with reference to the accompanying drawings.
[0048] Reference Figure 1 , Figure 1 A flowchart illustrating a method for estimating road slope provided in this application embodiment is shown below. Figure 1 As shown in the embodiment of this application, a method for estimating road slope is provided. This method can be executed by the central control unit or by other control units independent of the central control unit. The specific execution is not limited. For the convenience of subsequent description, unless otherwise specified, the method is described using the central control unit as an example. The method may include steps S10 to S13, which are described in detail below.
[0049] S10. Use at least two slope estimation models to calculate the estimated slope of the vehicle at present.
[0050] The slope estimation model can refer to an independent calculation module built based on different physical principles. Specifically, in this embodiment, the slope estimation model can include an IMU attitude model, a barometric altitude difference model, and a longitudinal dynamics model. At least two of the aforementioned three models can be used. Of course, other types of slope estimation models can be added depending on the different sensor data sources.
[0051] This embodiment can collect the slope correlation data required by each slope estimation model, calculate the estimated slope based on the required slope correlation data for each slope estimation model, and the slope correlation data required by each slope estimation model is different.
[0052] Specifically, in this embodiment, at least one component in the vehicle can collect at least one slope-related data within the current slope estimation period, and input the slope-related data required by each slope estimation model into each slope estimation model respectively. Each slope estimation model calculates the estimated slope based on the required slope-related data, and obtains the estimated slope output by each slope estimation model.
[0053] At least one component of the vehicle can refer to: physical sensors and communication interfaces installed on the vehicle for sensing motion status and environmental parameters. In this embodiment, it may specifically include an IMU, an on-board atmospheric pressure sensor, and the CAN bus interface of the vehicle controller.
[0054] Slope-related data can refer to raw signals or preprocessed state variables collected by the aforementioned vehicle components that have a physical mapping relationship with the road slope. Since the slope estimation model in this embodiment can include an IMU attitude model, a barometric altitude difference model, and a longitudinal dynamics model, the slope-related data can include the vehicle pitch angle and longitudinal acceleration collected by the IMU, the atmospheric pressure of the vehicle's environment collected by the onboard atmospheric pressure sensor, and the vehicle speed and wheel-end torque obtained through the vehicle's CAN bus signals.
[0055] Each slope estimation model in this embodiment uses a dedicated sensor data source, which fully leverages the advantages of different sensors and data dimensions. This allows for complementarity among sensor data sources of different dimensions, thereby reducing the error in slope estimation. Furthermore, the slope estimation models estimate the slope in parallel, effectively reducing the systematic errors caused by single data or single models and improving the reliability of the overall slope estimation results.
[0056] After obtaining the slope correlation data of each slope estimation model, this embodiment can perform data preprocessing and time alignment on the slope correlation data required by each slope estimation model. The data preprocessing can include IMU zero bias calibration, low-pass filtering, and barometric pressure signal sliding window smoothing.
[0057] Specifically, the IMU can be installed near the vehicle's center of gravity, which can be the midpoint of the line connecting the front and rear axles. Installation deviations of the IMU can be compensated for through factory static calibration. This IMU may include an accelerometer and a gyroscope, both with a sampling frequency of 100 Hz and a noise density of less than 0.15. (milligrams per hertz), the accelerometer range can be ±16. 1 ≈9.8 The gyroscope range can be ±2000° / second.
[0058] During each power-on and stationary phase of the vehicle, if the vehicle speed is zero and remains at zero for more than ten seconds, and the longitudinal acceleration is less than 0.05... At this time, the IMU collects the vehicle pitch angle and longitudinal acceleration over a period of time (e.g., ten seconds), and calculates the mean vehicle pitch angle and mean vehicle longitudinal acceleration as the initial null bias estimate of the IMU. The calculation formulas are as follows:
[0059] , ;
[0060] , ;
[0061] in, It can represent the initial zero bias of the vehicle's pitch angle; This can represent the average value operation. It can represent Vehicle pitch angle collected at all times; It can represent the initial zero bias of the vehicle's longitudinal acceleration; It can represent The longitudinal acceleration of the vehicle is collected at all times; It can represent gravitational acceleration; It can represent the slope angle at the vehicle's parking position, which can be estimated with the help of a barometric pressure sensor or is the slope estimate before the vehicle was last turned off.
[0062] In this embodiment, when the IMU acquires the vehicle pitch angle, a low-pass filter with a cutoff frequency of 0.5 Hz can be applied. Since the slope change is a quasi-static or extremely low-frequency signal in the time domain, the 0.5 Hz cutoff frequency can effectively filter out the disturbance components in the 1-5 Hz frequency band caused by acceleration and braking, while retaining the true slope signal. Therefore, the slow angle change caused by the slope can be retained by the 0.5 Hz low-pass filter. In this embodiment, when the IMU acquires the vehicle longitudinal acceleration, a second-order low-pass filter with a cutoff frequency of 5 Hz can be applied to achieve low-pass filtering in order to filter out high-frequency vibration noise.
[0063] The vehicle-mounted atmospheric pressure sensor can be installed at the air intake below the dashboard in the vehicle's cabin. It uses a static pressure lead to reduce the dynamic impact of vehicle speed on pressure measurement. The vehicle-mounted atmospheric pressure sensor can output absolute air pressure. The unit of air pressure is Pascal (Pa). The sampling frequency of the vehicle-mounted atmospheric pressure sensor is 10 Hz, its resolution is ±1 Pa, and its measurement range is 30,000 Pa to 110,000 Pa. This embodiment can provide the raw signal collected by the vehicle-mounted atmospheric pressure sensor. A moving average filter is applied to suppress random noise from sensors and transient air pressure disturbances caused by opening and closing doors and windows inside the vehicle. The length of the moving average filter... =30, and its sampling duration is 3 seconds, with a sampling frequency of 10 Hz. Since the power spectral density of the noise of the vehicle-mounted atmospheric pressure sensor is significant in the frequency band greater than 1 Hz, the cutoff frequency corresponding to the 3-second sliding mean filter is about 0.33 Hz. Therefore, the air pressure signal can be smoothed by sliding window, which can effectively suppress noise while retaining the slowly varying component of atmospheric pressure with slope.
[0064] The vehicle CAN bus signals may specifically include vehicle speed. , drive motor output torque Braking pressure and vehicle quality Among them, vehicle speed The unit is (km / h), output from a wheel speed sensor with a sampling frequency of 10 Hz. Drive motor output torque. The unit is (Newton-meters), reported by the motor controller with a sampling frequency of 50 Hz. Braking pressure. The unit is (MPa), reported by the Electronic Stability Control (ESP) system with a sampling frequency of 50 Hz. Vehicle weight The unit is (kilogram), It can be estimated from the curb weight and load estimates.
[0065] After the data processing described above, this embodiment can perform signal time alignment for each slope correlation. Specifically, using the IMU's 100 Hz sampling as the reference clock, the 10 Hz barometric pressure signal is upsampled via linear interpolation and aligned to 100 Hz. Similarly, the 10 Hz or 50 Hz CAN bus signal can be upsampled via zero-order hold or linear interpolation and aligned to 100 Hz. The slope correlation data for each item is synchronized within each 10-millisecond period, and the timestamp error can be less than 1 millisecond.
[0066] This embodiment can eliminate inherent sensor biases, filter out high-frequency noise, and smooth signal fluctuations through data preprocessing, effectively improving data quality. Furthermore, by aligning the data over time, it ensures that the slope-related data correspond one-to-one in time sequence, avoiding calculation errors caused by time sequence misalignment and effectively improving the accuracy of slope estimation results.
[0067] After preprocessing and time-aligning the slope sensor data, this embodiment can input the slope sensor data into the slope estimation model. Specifically, this embodiment can input the vehicle pitch angle and longitudinal acceleration collected by the IMU into the IMU attitude model; input the atmospheric pressure of the vehicle's environment collected by the onboard atmospheric pressure sensor into the barometric altitude difference model; and input the vehicle speed and wheel-end torque obtained through the vehicle's CAN bus signal into the longitudinal dynamics model.
[0068] Specifically, since the vehicle pitch angle acquired by the IMU in the vehicle's longitudinal plane can include two components—the road slope angle and the sensor installation error—after zero-bias correction, the formula for slope estimation of the IMU attitude model can be expressed as follows:
[0069] ;
[0070] in, It can represent the slope angle estimated by the IMU attitude model; It can represent Vehicle pitch angle collected at all times; It can represent the initial zero bias of the vehicle's pitch angle.
[0071] The barometric altitude difference model can extrapolate vehicle altitude changes based on the relationship between atmospheric pressure and altitude measured by barometric altimetry. This difference is then used to calculate the gradient by considering the distance traveled. The conversion between atmospheric pressure and altitude can be performed using the differential form of the international standard atmospheric equation, as shown below:
[0072] ;
[0073] in, It can represent The altitude change measured at any time; It can represent the gas constant, and its value can be 8.314 J / (mol×K) (joules per mole per Kelvin). It can represent the average ambient temperature within a time window, and its unit can be K (Kelvin), which is obtained by the vehicle's external temperature sensor; It can represent the molar mass of dry air, and its specific value can be 0.029 kg / mol. It can represent the acceleration due to gravity, and its specific value can be 9.81 m / s². It can represent Atmospheric pressure collected at all times; The length of the differential pressure window can be represented, and its specific value can be 100. It is sampled at a sampling frequency of 10 Hz within ten seconds. The selection of the length of the differential pressure window can eliminate short-term pressure noise, suppress pressure drift caused by weather, and maintain the response speed to slope changes.
[0074] The formula for slope estimation using the barometric altitude difference model can be expressed as follows:
[0075] ;
[0076] in, It can represent the slope angle estimated by the barometric altitude difference model; It can represent The altitude change measured at any time; It can represent total trip data, when At that time, the output of the barometric altitude difference model is set to zero and its weight is reduced to the minimum.
[0077] The longitudinal dynamics model, based on the vehicle's longitudinal dynamics equations, can separate the acceleration components to extract the gravity component caused by the slope, given the driving force, braking force, and vehicle mass. The vehicle's longitudinal dynamics equations can be shown below:
[0078]
[0079] ;
[0080] in, It can represent the slope angle; It can indicate the vehicle's mass; It can represent the actual longitudinal acceleration of a vehicle, which can be obtained through an IMU; It can represent the driving force of a vehicle, and its calculation formula can be: , It can represent the output torque of the drive motor, and its specific value can be the value reported by the controller. It can represent the transmission ratio; It can represent transmission efficiency, which varies with speed and torque. It can be determined using a two-dimensional lookup table interpolation method. The lookup table data can be calibrated in the vehicle's full-vehicle bench test. For models where precise values cannot be obtained, An empirical constant of 0.95 can be used, and the uncertainty can be incorporated into the residual variance of the model; It can represent the radius of a wheel; It can represent braking force, and its calculation formula can be: ;in, It can represent braking pressure; The effective area of the piston can be represented as follows: It can represent the braking coefficient; It can represent rotational speed; Rolling resistance can be represented by the following formula: ; It can represent the rolling resistance coefficient, and its specific value is 0.012; It can represent air resistance; its calculation formula can be: ; It can represent air density, and its specific value can be 1.225 kg / m³; It can represent the drag coefficient; It can represent the windward area; It can indicate vehicle speed.
[0081] Therefore, the formula for slope estimation using the longitudinal dynamics model can be expressed as follows:
[0082]
[0083] ;
[0084] in, An approximation of rolling resistance can be expressed using... Approximate values when ≈1, when When <15°, Error <3.5%.
[0085] This embodiment can obtain the IMU attitude model output through the above calculations. The output of the barometric altitude difference model and the output of the longitudinal dynamics model .
[0086] The IMU attitude model exhibits the highest accuracy under static and uniform steady-state conditions. However, during acceleration and braking, because the IMU cannot distinguish between inertial acceleration and gravity gradient components, significant errors occur when the absolute value of the vehicle's longitudinal acceleration is no greater than 0.5 m / s². Since barometric pressure measurement is decoupled from vehicle motion, the barometric altitude difference model is unaffected by vehicle acceleration and provides stable gradient references under bumpy roads and acceleration / braking conditions. However, its accuracy is lower than the IMU attitude model in the short to medium term due to limitations in the absolute accuracy of barometric pressure measurement and environmental factors. Because the gradient component can be accurately separated due to known driving or braking forces, the longitudinal dynamics model shows good accuracy under acceleration or braking conditions. However, under uniform steady-state conditions, the driving force approaches zero, observability decreases, and gradient estimation noise increases.
[0087] Therefore, this embodiment uses parallel processing of multiple independent slope estimation models. These multiple slope estimation models are based on different physical principles and use different sensor signals to construct multiple slope estimation channels with complementary error structures. The IMU has high steady-state accuracy but poor dynamic accuracy, the longitudinal dynamic model has high accuracy when there is driving force or braking force but low observability when the speed is uniform, and the barometric altitude difference model is not affected by the motion state but is affected by environmental factors. After the three are fused, they cover all working conditions and provide a diverse input basis for subsequent weighted fusion, thereby avoiding the failure risk of a single sensor under specific working conditions.
[0088] S11. Determine the initial weights of each slope estimation model based on the current operating conditions of the vehicle.
[0089] The current operating condition refers to the type of motion state the vehicle is in at its current location and within a time window. In this embodiment, it can specifically include steady-state operating conditions, acceleration operating conditions, braking operating conditions, and bumpy operating conditions. The initial weights refer to pre-set weight values based on prior knowledge, reflecting the theoretical reliability of each slope estimation model under the current operating condition. In this embodiment, the specific process for obtaining the initial weights can be as follows:
[0090] Construct the vehicle's operating condition feature vector; classify the operating condition feature vector to obtain the category of the operating condition feature vector, and take the category as the current operating condition of the vehicle; based on the current operating condition, query the preset operating condition-weight base value mapping table to determine the initial weight of each slope estimation model.
[0091] The operating condition feature vector can refer to a multi-dimensional data set extracted from vehicle operation signals to characterize the current motion state of the vehicle, used to map continuous sensor signals into a quantifiable state description. Specifically, this operating condition feature vector may include: mean longitudinal acceleration, root mean square value of longitudinal acceleration, mean absolute value of the rate of change of longitudinal acceleration, and absolute value of the rate of change of vehicle speed.
[0092] This embodiment can be achieved by adjusting the length. Calculate the vehicle's longitudinal acceleration within a 2-second sliding window. mean longitudinal acceleration and root mean square value of longitudinal acceleration , The root mean square value of longitudinal acceleration can reflect whether the vehicle is in a state of significant acceleration or significant deceleration at the current moment. This embodiment can be achieved by using the same length... =Mean absolute value of the rate of change of longitudinal acceleration within a 2-second sliding window , ,in =10 milliseconds. The mean absolute value of the longitudinal acceleration rate of change reflects the degree of fluctuation in longitudinal acceleration. A larger mean absolute value indicates that the vehicle is on a bumpy road or experiencing rapid acceleration / deceleration. Absolute value of vehicle speed change rate. , The absolute value of the rate of change of vehicle speed can reflect the trend of vehicle speed change within the operating conditions.
[0093] This embodiment integrates and quantifies various feature information related to vehicle movement, transforming complex vehicle motion signals into low-dimensional vectors with clear physical meaning. This retains key information distinguishing different operating conditions while significantly reducing the data dimensionality for subsequent processing. By objectively differentiating various vehicle operating conditions in a standardized manner, the boundaries between different conditions can be clearly defined, effectively differentiating between them. Furthermore, this condition identification method primarily relies on numerical calculations, resulting in low computational load and rapid response, meeting the real-time processing requirements under dynamic operating conditions.
[0094] In this embodiment, when classifying the operating condition feature vector, the classification process can be based on the comparison between the values of each operating condition feature parameter in the operating condition feature vector and a preset threshold. Specifically, this embodiment can determine the current operating condition of the vehicle based on the values of each operating condition feature parameter and the value range of each operating condition feature parameter corresponding to each preset operating condition.
[0095] The value ranges of the characteristic parameters for each preset operating condition can be determined in advance through vehicle bench testing and real-vehicle road calibration, representing threshold ranges. In this embodiment, the preset operating conditions may include steady-state conditions, acceleration conditions, braking conditions, and bumpy conditions. The specific value ranges of the characteristic parameters for each preset operating condition are as follows:
[0096] when ,and ,and When this condition is met, the vehicle's current operating condition is determined to be a steady-state condition. Among these conditions... The specific value can be 0.3. , The specific value can be 0.5. , The specific value can be 0.5. When the root mean square value of longitudinal acceleration Less than When this occurs, it indicates that the vehicle is either not accelerating or decelerating.
[0097] When the mean longitudinal acceleration Greater than ,and If the current operating condition of the vehicle is determined to be an acceleration condition, it means that the vehicle is continuously accelerating and the IMU is affected by inertial acceleration. Therefore, the weight of the longitudinal dynamics model should be increased.
[0098] When the mean longitudinal acceleration Less than ,and If the vehicle's current operating condition is determined to be braking, then the IMU's reliability is reduced. Under this braking condition, the vehicle is decelerating and braking, similar to acceleration, thus reducing the IMU's accuracy. Of course, in another feasible embodiment, when the vehicle's braking pressure... Greater than 0.5 This can also be used to determine that the vehicle's current operating condition is braking.
[0099] when , =2.0 If the road surface is uneven, the vehicle's current operating condition is determined to be a bumpy condition. Under this condition, the high-frequency vibration caused by the uneven road surface can lead to increased short-term estimation fluctuations in the IMU attitude model and longitudinal dynamics model. Therefore, the weight of the pressure-altitude difference model, which is less affected by road vibration, should be increased.
[0100] This embodiment defines clearly defined parameter value ranges for different operating conditions, making the rules for determining operating conditions uniform and clear. It can clearly distinguish various vehicle operating conditions such as constant speed, acceleration / deceleration, bumpy road surfaces, and uphill / downhill driving, accurately defining the judgment boundaries of each different operating condition and avoiding confusion between different operating conditions. Furthermore, using the defined operating condition characteristic parameter value ranges as the judgment basis effectively replaces manual experience or fuzzy judgment, avoiding problems such as misjudgment and incorrect judgment. The parameter value ranges can be flexibly adjusted according to actual vehicle testing, facilitating optimization and maintenance of operating condition classification. The entire process only requires numerical comparison to complete the operating condition determination; the calculation logic is simple, the computational load is small, and the operating condition identification results can be output quickly, reducing processing latency and meeting the requirements of high real-time operation.
[0101] Furthermore, by using the classification method described above, continuous physical signals can be transformed into discrete control commands, which can serve as the basis for scheduling subsequent weight allocation strategies. This effectively avoids the computational burden and poor interpretability issues caused by using complex machine learning models, ensuring real-time response capabilities.
[0102] When the values of the characteristic parameters of each operating condition meet the value range of the characteristic parameters of each operating condition in the target operating condition, and the time for which the values are taken is not less than a time threshold, then the current operating condition of the vehicle can be determined as the target operating condition. The target operating condition can be one of the preset operating conditions. For example, in the currently collected slope correlation data, the root mean square value of longitudinal acceleration... And the mean absolute value of the longitudinal acceleration rate of change And the absolute value of the rate of change of vehicle speed If the condition is maintained for ten seconds, the vehicle's current operating condition is determined to be a steady-state condition.
[0103] The time threshold can refer to the time condition for a switching of operating conditions. Specifically, the value of this time threshold can be... =5 cycles.
[0104] To prevent frequent switching of operating conditions near boundary conditions, this embodiment employs a dual anti-shake mechanism of state confirmation and minimum hold time. Specifically, when a new operating condition is determined and continuously meets the determination conditions, the current operating condition of the vehicle can be changed to the new operating condition. The determination conditions may include: the values of each operating condition characteristic parameter satisfying the value range of each preset operating condition characteristic parameter, and the duration of the change being not less than [a certain value]. =5 cycles.
[0105] The dual anti-shake mechanism not only prevents frequent switching of operating conditions near boundary conditions, but also effectively avoids transient misjudgments caused by noise. Furthermore, when switching to a newly determined operating condition is required, the hold time is [not specified]. Switching is only allowed again after a time threshold is reached to prevent rapid oscillation. It is evident that the dual anti-shake mechanism effectively ensures the stability of the output operating condition category, reduces oscillations at boundaries, and significantly improves the overall robustness and accuracy of slope estimation.
[0106] Once the current operating condition of the vehicle is determined in this embodiment, the initial weights of each slope estimation model can be determined by querying the preset operating condition-weight base value mapping table based on the current operating condition.
[0107] The working condition-weight baseline value mapping table can refer to a data structure pre-stored in the non-volatile memory of the vehicle controller. This table can include a one-to-one correspondence between vehicle operating condition categories and the initial weights of each gradient estimation model v. The specific content of the working condition-weight baseline value mapping table can be as follows:
[0108] When the vehicle's current operating condition is a steady-state condition, the initial weights of the IMU attitude model =0.6; Initial weights of the barometric altitude difference model =0.25; Initial weights of the longitudinal dynamics model =0.15. Since the vehicle pitch angle acquired by the IMU can directly reflect the slope under steady-state conditions and is least affected by inertial interference, the IMU attitude model has the highest accuracy, and its initial weight can be set to the highest value; the barometric altitude difference model is not affected by the motion state but is constrained by the drift of the ambient air pressure, so its initial weight can be set to an intermediate value; while the longitudinal dynamics model has low observability due to the driving force being close to zero, so its initial weight can be set to the lowest value.
[0109] When the vehicle's current operating condition is acceleration, the initial weights of the IMU attitude model =0.15; Initial weights of the barometric altitude difference model =0.30; Initial weights of the longitudinal dynamics model =0.55. Under acceleration conditions, the significant increase in longitudinal acceleration makes it difficult to separate the inertial and gravitational components in the IMU measurements. Therefore, the initial weight of the IMU attitude model decreases. However, the longitudinal dynamics model can effectively separate the inertial term using the known motor torque and vehicle speed. Therefore, the initial weight of the longitudinal dynamics model increases. The initial weight of the barometric altitude difference model can be determined based on the total weight remaining constant.
[0110] When the vehicle's current operating condition is braking, the initial weights of the IMU attitude model =0.15; Initial weights of the barometric altitude difference model =0.35; Initial weights of the longitudinal dynamics model =0.50. Under braking conditions, similar to acceleration conditions, the known braking force can assist in gradient separation, and the pressure model is slightly weighted as an independent reference. Therefore, the initial weight of the longitudinal dynamics model can be set to 0.50, and the initial weight of the pressure-altitude difference model is slightly increased to 0.35 to provide an independent reference.
[0111] When the vehicle's current operating condition is a bumpy condition, the initial weights of the IMU attitude model =0.15; Initial weights of the barometric altitude difference model =0.6; Initial weights of the longitudinal dynamics model =0.25. Under bumpy conditions, high-frequency vibrations of the road surface can cause drastic fluctuations in the outputs of the IMU attitude model and the longitudinal dynamics model, while the barometric altitude difference model is not affected by road vibrations. Therefore, the initial weights of the IMU attitude model and the longitudinal dynamics model can be reduced to 0.15 and 0.25, respectively, while the initial weight of the barometric altitude difference model can be increased to 0.6.
[0112] This application achieves the transformation between qualitative working condition identification and weight allocation by constructing and querying a preset working condition-weight baseline value mapping table. Furthermore, the weight settings in the working condition-weight baseline value mapping table can reflect the theoretical credibility of each sensor model under the current specific driving scenario, ensuring the high accuracy and strong robustness of weight judgment in this embodiment under complex and variable working conditions.
[0113] Furthermore, the initial weights in this embodiment are obtained through a table lookup method, which is logically simple, computationally inexpensive, and can quickly complete weight assignment, meeting the real-time calculation requirements under dynamic vehicle driving conditions. Simultaneously, the mapping table uses preset fixed rules, eliminating subjective judgment interference, ensuring consistent weight output under the same operating conditions, guaranteeing the stability of weight assignment, and the table can be flexibly adjusted according to needs.
[0114] S12. Adjust the initial weights of each slope estimation model according to the stability of slope calculation within the current slope estimation period to obtain the fusion weights of each slope estimation model.
[0115] S13. Calculate the slope within the current slope estimation period based on the fusion weights of each slope estimation model and the estimated slope calculated by each slope estimation model.
[0116] The stability of slope calculation can refer to the fluctuation or consistency of the output values of each slope estimation model within the current period. In this embodiment, the stability of slope calculation for each model in the current slope estimation period can be quantified by calculating the slope residuals and their variances at multiple points in the current slope estimation period. The fusion weights refer to the final weights after online correction and normalization, which can be used to guide the weighted synthesis of results from multiple slope estimation models. The process of obtaining the fusion weights can be specifically described as follows:
[0117] Calculate the slope residuals of each slope estimation model at each time point in the current slope estimation period. Based on the slope residuals of each slope estimation model at each time point, calculate the residual variance of each slope estimation model. Based on the residual variance of each slope estimation model, calculate the corrected weights of each slope estimation model. Calculate the weighted sum of the corrected weights and the initial weights of each slope estimation model to obtain the summation result of each slope estimation model. Normalize the weights of each slope estimation model within the current slope estimation period.
[0118] The slope residual refers to the difference between the estimated slope value output by each slope estimation model at the current moment and the final fused slope value output at the previous moment. It reflects the instantaneous deviation of each slope estimation model from its historical output, and its calculation formula is as follows:
[0119] , =1, 2, 3…;
[0120] in, It can represent the first A slope estimation model in The slope residual at time, It can represent The estimated slope value output at any given time; It can represent The final merged slope value output at the previous time step.
[0121] Residual variance can refer to: within the current slope estimation period, the variance of the selected length A sliding time window of 50 is used to calculate the statistical variance of the slope residual sequence at each time point within this window. This time window acquires the variance of the slope estimation model at 100 Hz within 0.5 seconds. This residual variance quantifies the degree of fluctuation or stability of the slope estimation model's output in the short time domain. The smaller the residual variance of the slope estimation model, the more stable and reliable the model is, and the higher its fusion weight should be. The calculation formula is as follows:
[0122] ;
[0123] in, It can represent the first A slope estimation model in Residual variance at time step; This can represent the variance taking operation; It can represent the first A slope estimation model in The slope residual at any given moment.
[0124] This embodiment can calculate the slope residuals and their variance to perceive the actual performance of each slope estimation model in the current operating environment in real time, providing a quantitative basis for the dynamic adjustment of subsequent weights.
[0125] After obtaining the residual variance of each slope estimation model in this embodiment, the correction weight of each slope estimation model can be calculated based on the residual variance of each slope estimation model.
[0126] The corrected weights can refer to weight coefficients calculated by normalizing the inverse of the residual variance of each slope estimation model. These weights are used to characterize the model's reliability when considering data stability. This embodiment uses the inverse residual variance weighting method to calculate the corrected weights for each slope estimation model, and the calculation formula is as follows:
[0127] ;
[0128] in, It can represent the first A slope estimation model in Time-based adjustment weights; It can represent the first A slope estimation model in Residual variance at time step; It can represent the sum of the reciprocals of all slope estimation models. It can represent the first time when summing. A slope estimation model in The residual variance at each time step.
[0129] To prevent a sensor malfunction from causing the residual variance of its corresponding slope estimation model to approach zero, thus leading to anomaly locking, this embodiment sets a lower limit for the residual variance. Its specific value can be 0.001, which corresponds to a minimum variance of approximately 0.03°.
[0130] In this embodiment, after obtaining the corrected weights of each slope estimation model, the initial weights and corrected weights of each slope estimation model are mixed and weighted. The result of the mixed weighting is then normalized to ensure that the sum of the fused weights of each slope estimation model is 1, thus obtaining the fused weights of each slope estimation model within the current slope estimation period. The calculation formula for the mixed weighting of the initial weights and corrected weights of each slope estimation model is as follows:
[0131] ;
[0132] in, It can represent the result of a weighted average of the initial weights and the adjusted weights; This can represent the mixing ratio coefficients. Since the initial weights are determined based on physical analysis and are highly reliable, they should dominate, while the adjusted weights are used for online fine-tuning to compensate for situations not covered by the initial weights. The specific value can be 0.6; It can represent the first Initial weights for each slope estimation model; It can represent the first Corrected weights for each slope estimation model.
[0133] Weight normalization refers to scaling the weight values while preserving their original relative proportions. Weight normalization ensures that the final weighted fusion calculation remains within a reasonable range of physical dimensions, preventing numerical divergence caused by weight accumulation. The specific calculation formula is shown below:
[0134] ;
[0135] in, It can represent the result of a weighted average of the initial weights and the adjusted weights; It can represent the sum of the results of all slope estimation models after mixing and weighting; It can represent the first weight when the weights are normalized. The result of a weighted average of several slope estimation models.
[0136] This embodiment determines the computational quality of each slope estimation model through residual variance, effectively detects fluctuations in computational results caused by abnormal sensor data, and adaptively corrects the initial weights based on real-time computational quality. By dynamically compensating for the impact of data anomalies caused by sensor aging, temperature drift, or sudden interference through weight adjustment, it avoids the impact of abnormal sensor data on the final slope estimation result. Furthermore, the aforementioned initial weights and weight correction mechanism determined according to working conditions form a dual mechanism of static prior and dynamic feedback, which can further improve the adaptability of fused weights in complex and unknown environments, thereby improving the robustness of slope estimation.
[0137] Furthermore, this embodiment can use a dynamic weight allocation method for multi-source sensors based on a dual mechanism of working condition identification and residual variance adaptation, which avoids the core defect of existing fixed weight allocation strategies that cannot adapt to multiple working conditions, and achieves the optimal sensor combination under various typical working conditions.
[0138] Furthermore, this embodiment can also implement sensor anomaly detection and weight reduction. The specific process is as follows: when the residual variance of a certain slope estimation model suddenly exceeds the normal range (the long-term historical moving average of the residual variance is the threshold of the normal range), it can be determined that the sensor corresponding to the slope estimation model may be abnormal, and the following processing is triggered: the fusion weight of the slope estimation model is forcibly set to 0.01, the remaining weights are redistributed according to the proportion of other slope estimation models, the abnormal sensor is continuously monitored, and when the residual variance of the slope estimation model recovers to the normal range and remains within a certain period of time, the weight of the slope estimation model is gradually restored, for example, by increasing the normal weight value by 10% per second, and it is fully restored in about 10 seconds, which can effectively avoid the jump in the fusion output slope caused by the instant of recovery.
[0139] This embodiment uses weight normalization and an anomaly protection mechanism to ensure that the final fusion weight can accurately reflect the fusion process of the estimated slope output by each slope estimation model. This ensures that even when some sensors fail or their performance degrades, high-precision slope estimates can still be obtained.
[0140] Furthermore, this embodiment uses the vehicle's existing IMU, barometric pressure sensor, and CAN bus signal, eliminating the need for additional sensors, high-precision maps, and surveying qualifications, thereby achieving accurate slope calculation.
[0141] Once the fusion weights of each slope estimation model are obtained in this embodiment, the slope within the current slope estimation period can be determined based on the fusion weights of each slope estimation model and the estimated slope output by each slope estimation model.
[0142] To further improve the accuracy of the slope estimation, this embodiment can filter the weighted summation result to suppress noise, and use the filtered result as the slope for the current slope estimation period. Optionally, extended Kalman filtering or other filtering methods such as unscented Kalman filtering can be used.
[0143] The Extended Kalman Filter (EKF) can refer to an optimal state estimation algorithm for nonlinear systems. Specifically, the EKF process includes a prediction step and an update step. In the prediction step, the state equation is used to make a priori estimation of the state at the next time step.
[0144] The state equation can be determined based on the state vector. In this embodiment, the state vector of the extended Kalman filter can be constructed as a three-dimensional vector, which may include the road slope angle, the IMU pitch angle zero bias, and the barometric pressure sensor equivalent height bias. The road slope angle can be used as the core quantity to be estimated, reflecting the inclination of the road surface on which the vehicle travels. The IMU pitch angle zero bias is used to compensate for the static error caused by temperature changes or time drift of the inertial measurement unit. The barometric pressure sensor equivalent height bias is used to eliminate the systematic deviation of the barometric pressure reading caused by changes in the atmospheric environment.
[0145] In the state equations, the road slope angle in the state vector adopts a random walk model, assuming that the slope changes slowly over a short period of time, and that its process noise variance is set to a small value to reflect the continuous and smooth characteristics of the road slope. The formula for the random walk model can be expressed as follows:
[0146] ;
[0147] in, It can represent The slope at any given moment; It can represent The slope at any given moment; It can represent The variance of the process noise at each time step = (0.01°) 2 × With a standard deviation of 0.01° per second, corresponding to a maximum slope change rate of 0.6° per minute, it can cover the vast majority of highway working conditions.
[0148] In the state equations, the IMU pitch angle zero bias in the state vector can be represented by a first-order Markov model, which describes the slowly varying offset of the IMU bias through a set time constant. The formula for the first-order Markov model of IMU pitch angle zero bias can be shown below:
[0149] ;
[0150] in, It can represent The pitch angle at any given moment is zero; It can represent a time constant, which can take the value of 300 seconds, and is a typical time scale to reflect the zero bias drift of the IMU; It can represent The pitch angle at any given moment is zero; It can represent The variance of the process noise at time zero bias of the IMU can be determined by... calibrated according to the IMU specification sheet.
[0151] In the state equation, the equivalent height offset of the barometric pressure sensor in the state vector can also be represented by a first-order Markov model, which describes the slowly varying offset of the equivalent height offset by a set time constant. The formula for the first-order Markov model of the equivalent height offset of the barometric pressure sensor is as follows:
[0152] ;
[0153] in, It can represent The equivalent height offset of the barometric pressure sensor at any given time; It can represent a time constant, with a value of up to 600 seconds, which can reflect changes in atmospheric pressure. It can represent The equivalent height offset of the barometric pressure sensor at any given time; It can represent The process noise of the equivalent height offset of the barometric pressure sensor at any given time.
[0154] In the update step of the extended Kalman filter, the weighted summation result (slope) obtained above can be used as the observation input to the filter. The observation equation in the filter can establish a nonlinear relationship between the observation and the state vector. Since the initial weights of different slope estimation models change dynamically with the operating conditions, the observation matrix in the filter can be adjusted in real time according to the current fusion weights. The filter can calculate the Kalman gain, weigh the reliability of the predicted value and the observed value, and correct the state vector to obtain a posterior estimate that includes the denoised slope angle, the updated IMU pitch angle zero bias, and the barometric pressure sensor equivalent height bias.
[0155] The observation matrix can take the form shown below:
[0156] ;
[0157] in, It can represent the observation matrix; It can represent the fusion weights of the IMU pose model; This can represent the fusion weights of the barometric altitude difference model; It can represent the estimated slope output by the barometric altitude difference model; This can represent the equivalent height offset of a barometric pressure sensor; It can represent right Find the partial derivative. It can represent minute changes in the slope angle; It can represent minute changes in the equivalent height offset of a barometric pressure sensor.
[0158] Variance of observation noise The slope can be dynamically calculated based on the current fusion weights and the variance of each slope estimation model, and the calculation formula is as follows:
[0159] ;
[0160] in, It can represent the current fusion weight; It can represent the measurement noise variance of each slope estimation model. This measurement noise variance can be pre-calibrated and adjusted according to the working conditions.
[0161] In the filter, the prediction and update steps of a standard extended Kalman filter can be performed in each sampling period, with a sampling period of 10 milliseconds, as shown below:
[0162] Prediction step: , ;
[0163] Update steps: , , ;
[0164] in, It can represent Prior state estimation at time step; It can represent Posterior state estimation at time 1; It can represent Posterior state estimation at time 1; It can represent a state transition function; It can represent Prior covariance at time; It can represent a state transition matrix; It can represent The posterior covariance at time; It can represent The posterior covariance at time; It can represent The transpose of the matrix; It can represent the process noise covariance matrix.
[0165] It can represent Kalman gain; It can represent the observation matrix; It can represent the transpose of the observation matrix; It can represent the observation noise covariance; It can represent The actual observed value at time; It can represent the observation residual; It can represent the identity matrix.
[0166] Filter output It can be used as the result after performing extended Kalman filtering, and as the slope within the current slope estimation period, and the filter output... and It can be used for bias compensation of IMU attitude model and barometric altitude difference model for feedback correction. It can eliminate the systematic error caused by zero bias in subsequent slope estimation cycles, significantly improve the long-term stability and accuracy of slope estimation, and effectively avoid the cumulative error of estimation results caused by sensor drift.
[0167] The embodiments of this application can introduce a filtering stage to form a close synergy with the aforementioned working condition identification-driven multi-model adaptive weight fusion mechanism. This not only solves the problem of high-frequency noise remaining in the weighted fusion results, but also avoids long-term cumulative errors caused by IMU temperature drift and barometric pressure sensor environmental drift. This allows the entire slope estimation to maintain high accuracy and strong robustness without relying on high-precision maps.
[0168] This application provides a method for estimating road slope. This method employs at least two slope estimation models to calculate the estimated slope. When determining the fusion weights for the results of multiple slope estimation models, the current operating condition of the vehicle is first determined, and initial weights are determined based on this condition. Then, the initial weights are adjusted based on the stability of the slope calculations of the slope estimation models within the current estimation period, thus obtaining the fusion weights for each slope estimation model. This avoids the problem of poor weight allocation due to sensor fluctuations under a fixed weight allocation strategy. The slope within the current estimation period is calculated according to the fusion weights of each slope estimation model and the estimated slope calculated by each model, effectively achieving weight allocation of the output results of each slope estimation model and significantly improving the accuracy of slope estimation.
[0169] like Figure 2As shown, this application embodiment also provides a vehicle, which may include a memory 1001 and a processor 1002, wherein the memory 1001 stores executable program code 10011, and the processor 1002 may be configured to call and execute the executable program code 10011 to execute any of the road slope estimation methods provided in this application embodiment.
[0170] This application also provides an electronic device. The electronic device in this application may include, but is not limited to, fixed terminals such as mobile phones, laptops, PDAs (personal digital assistants), PADs (tablet computers), desktop computers, etc.
[0171] The electronic device may include a processing unit (such as a central processing unit, graphics processing unit, etc.) that can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) or programs loaded from storage devices into random access memory (RAM). When the electronic device is powered on, the RAM also stores various programs and data required for its operation. The processing unit, ROM, and RAM are interconnected via a bus. Input / output interfaces (I / O interfaces) are also connected to the bus.
[0172] Typically, the following devices can be connected to an I / O interface: input devices such as touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices such as liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices such as memory cards, hard drives, etc.; and communication devices. Communication devices allow electronic devices to communicate wirelessly or wiredly with other devices to exchange data.
[0173] This application also provides a computer program product including computer-readable instructions, which, when executed on an electronic device, cause the electronic device to implement any of the road slope estimation methods provided in this application.
[0174] This application also provides a computer-readable storage medium carrying one or more computer programs. When the one or more computer programs are executed by an electronic device, the electronic device can implement any of the road slope estimation methods provided in this application.
[0175] It should also be noted that the vehicle embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. In addition, in the vehicle embodiment drawings provided in this application, the connection relationship between modules indicates that they have a communication connection, which can be implemented as one or more communication buses or signal lines.
[0176] Through the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general-purpose hardware, or it can be implemented by special-purpose hardware including application-specific integrated circuits, special-purpose CPUs, special-purpose memory, special-purpose components, etc. Generally, any function performed by a computer program can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be diverse, such as analog circuits, digital circuits, or special-purpose circuits. However, for this application, software program implementation is more often the preferred implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a readable storage medium, such as a computer floppy disk, USB flash drive, mobile hard disk, ROM, RAM, magnetic disk, or optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, training equipment, or network device, etc.) to execute the methods of the various embodiments of this application.
[0177] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product.
[0178] A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this application is generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions may be transmitted from one website, computer, training device, or data center to another website, computer, training device, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a training device or data center that integrates one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state drives (SSDs)).
[0179] The various embodiments in this specification are described in a related manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the apparatus embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions of the method embodiments.
[0180] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.
[0181] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A method for estimating road slope, characterized in that, The methods for estimating the road slope include: Calculate the estimated current slope of the vehicle using at least two slope estimation models; The initial weights of each slope estimation model are determined based on the current operating conditions of the vehicle. Based on the stability of slope calculation of each slope estimation model within the current slope estimation period, the initial weights of each slope estimation model are adjusted to obtain the fusion weight of each slope estimation model. The slope within the current slope estimation period is calculated based on the fusion weights of each slope estimation model and the estimated slope calculated by each slope estimation model.
2. The method for estimating road slope according to claim 1, characterized in that, Also includes: The slope is filtered, and the filtered result is used as the slope within the current slope estimation period.
3. The method for estimating road slope according to claim 1, characterized in that, The process of adjusting the initial weights of each slope estimation model based on the stability of slope calculation within the current slope estimation period to obtain the fusion weights of the various slope estimation models includes: Calculate the slope residuals of each slope estimation model at each time point in the current slope estimation period, and calculate the residual variance of each slope estimation model based on the slope residuals at each time point. Based on the residual variance of each slope estimation model, calculate the correction weights for each slope estimation model. The summation results of each slope estimation model are obtained by calculating the weighted summation of the corrected weights of each slope estimation model and the initial weights of each slope estimation model. The summation results of each slope estimation model are weighted and normalized to obtain the fusion weight of each slope estimation model within the current slope estimation period.
4. The method for estimating road slope according to claim 1, characterized in that, Identify the current operating condition of the vehicle, including: Construct the operating condition feature vector of the vehicle; The operating condition feature vector is classified to obtain the category of the operating condition feature vector, and the category is used as the current operating condition of the vehicle.
5. The method for estimating road slope according to claim 4, characterized in that, The step of classifying the operating condition feature vector to obtain the category of the operating condition feature vector, and using the category as the current operating condition of the vehicle, includes: Based on the values of each working condition feature parameter in the working condition feature vector and the value range of each working condition feature parameter corresponding to each preset working condition, the current operating condition of the vehicle is determined.
6. The method for estimating road slope according to claim 5, characterized in that, Determining the current operating condition of the vehicle based on the values of each operating condition feature parameter in the operating condition feature vector and the value range of each operating condition feature parameter corresponding to each preset operating condition includes: If the values of each of the operating condition characteristic parameters satisfy the value range of each of the operating condition characteristic parameters in the target operating condition, and the value satisfies that the time is not less than the time threshold, then the current operating condition of the vehicle is determined to be the target operating condition, and the target operating condition is one of the preset operating conditions.
7. The method for estimating road slope according to claim 1, characterized in that, The step of determining the initial weights of each gradient estimation model based on the current operating conditions of the vehicle includes: Based on the current operating conditions, query the preset operating condition-weight base value mapping table to determine the initial weights of each slope estimation model.
8. The method for estimating road slope according to claim 1, characterized in that, The process of calculating the estimated slope of the vehicle using at least two slope estimation models includes: Collect slope correlation data required for each slope estimation model; the slope correlation data required for each slope estimation model is different. Each slope estimation model calculates the estimated slope based on the required slope correlation data.
9. The method for estimating road slope according to claim 8, characterized in that, Before each slope estimation model calculates the estimated slope based on the required slope correlation data, the method further includes: Data preprocessing and time alignment are performed on the slope correlation data required for each slope estimation model.
10. A vehicle, characterized in that, It includes a memory and a processor, wherein the memory stores executable program code, and the processor is used to call and execute the executable program code to perform the road slope estimation method as described in any one of claims 1 to 9.