Method, device and electronic equipment for optimizing pose of autonomous vehicle
Patent Information
- Application Number
- CN202211356553.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-01
- Publication Date
- 2026-10-23
- Estimated Expiration
- 2042-11-01
AI Technical Summary
[0004]然而,车辆在运动状态下,离线标定得到的RTK定位设备的标定参数可能会发生变化,导致RTK的航向角误差无法被有效补偿,进而影响了后续的融合定位精度和稳定性
[0043]本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:本申请实施例的自动驾驶车辆的姿态优化方法,先获取自动驾驶车辆的当前状态数据,并根据当前状态数据确定自动驾驶车辆是否满足预设标定条件;然后在自动驾驶车辆满足预设标定条件的情况下,按照预设距离条件计算基准姿态数据;之后获取基准姿态数据对应的原始姿态数据,并根据基准姿态数据和对应的原始姿态数据确定原始姿态误差;最后根据原始姿态误差确定姿态观测数据,并利用预设融合算法对姿态观测数据进行观测融合,得到自动驾驶车辆的姿态融合结果。本申请实施例的自动驾驶车辆的姿态优化方法通过设置预设标定条件,在特定情况下进行姿态误差的在线标定,提高了标定结果的准确性,进而提高了自动驾驶车辆姿态融合的精度和稳定性。
Smart Images

Figure CN115685280B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of autonomous driving technology, and in particular to a method, apparatus and electronic device for optimizing the posture of an autonomous vehicle. Background Technology
[0002] Multiple modules in an autonomous vehicle typically use the vehicle's attitude information, especially its heading angle, when performing their respective functions. A fusion positioning system composed of multiple sensors, such as GNSS (Global Navigation Satellite System) / RTK (Real-time kinematic) + IMU (Inertial Measurement Unit), can provide the vehicle's attitude information.
[0003] In real-world fusion positioning scenarios, the heading angle output by the original RTK may have some error due to various factors. Currently, the calibration parameters of the RTK positioning device are usually obtained through offline calibration after the RTK positioning device is installed on the autonomous vehicle to compensate for the error and thus ensure the accuracy of subsequent fusion positioning.
[0004] However, when the vehicle is in motion, the calibration parameters of the RTK positioning device obtained through offline calibration may change, which may cause the RTK heading angle error to be unable to be effectively compensated, thus affecting the accuracy and stability of subsequent fusion positioning. Summary of the Invention
[0005] This application provides a method, apparatus, and electronic device for attitude optimization of autonomous vehicles, so as to realize online calibration of attitude errors of autonomous vehicles and improve fusion accuracy and stability.
[0006] The embodiments of this application adopt the following technical solutions:
[0007] In a first aspect, embodiments of this application provide a method for attitude optimization of an autonomous vehicle, wherein the method includes:
[0008] Acquire the current state data of the autonomous vehicle, and determine whether the autonomous vehicle meets the preset calibration conditions based on the current state data;
[0009] When the autonomous vehicle meets the preset calibration conditions, the reference attitude data is calculated according to the preset distance conditions;
[0010] Obtain the original attitude data corresponding to the reference attitude data, and determine the original attitude error based on the reference attitude data and the corresponding original attitude data;
[0011] The attitude observation data is determined based on the original attitude error, and the attitude observation data is fused using a preset fusion algorithm to obtain the attitude fusion result of the autonomous vehicle.
[0012] Optionally, determining whether the autonomous vehicle meets the preset calibration conditions based on the current state data includes:
[0013] Acquire the current speed, RTK positioning data, and IMU raw data of the autonomous vehicle;
[0014] The system determines whether the autonomous vehicle is in motion based on the current speed and / or the raw IMU data, whether the RTK positioning state is a fixed solution state based on the RTK positioning data, and whether the autonomous vehicle is in a straight-line state based on the raw IMU data.
[0015] When the autonomous vehicle is in motion, the RTK positioning state is a fixed solution state, and the autonomous vehicle is in a straight-line state, it is determined that the autonomous vehicle meets the preset calibration conditions.
[0016] Otherwise, it is determined that the autonomous vehicle does not meet the preset calibration conditions.
[0017] Optionally, the step of calculating the reference attitude data according to the preset distance condition when the autonomous vehicle meets the preset calibration conditions includes:
[0018] Determine whether the preset distance condition is met at the current moment;
[0019] If the preset distance condition is met at the current time, obtain the RTK positioning position at the current time and the RTK positioning position at the previous time.
[0020] Based on the current RTK positioning position and the previous RTK positioning position, determine the Euclidean distance between the current time and the previous time.
[0021] Calculate the reference attitude data for the current moment based on the Euclidean distance between the current moment and the previous moment.
[0022] Optionally, the original attitude error includes multiple factors, and the step of obtaining the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data includes:
[0023] The original attitude errors are fitted to obtain fitted original attitude errors, and the attitude observation data are determined based on the fitted original attitude errors.
[0024] Optionally, determining the attitude observation data based on the original attitude error includes:
[0025] Obtain the raw attitude data at the current moment;
[0026] The original attitude error is used to compensate for the original attitude data at the current moment to obtain the attitude observation data at the current moment.
[0027] Optionally, after obtaining the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data, the method further includes:
[0028] Determine the current driving status of the autonomous vehicle;
[0029] When the current driving state of the autonomous vehicle changes from a moving state to a stationary state, the timer for the stationary state is started;
[0030] If the timer in the static state reaches a preset time threshold, the filter is restarted.
[0031] Optionally, after obtaining the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data, the method further includes:
[0032] Determine whether the original attitude error triggers the cloud reporting condition;
[0033] When the original attitude error triggers the cloud reporting condition, the original attitude error is reported to the cloud so that the cloud can determine whether the RTK positioning device of the autonomous vehicle needs to be recalibrated based on the original attitude error.
[0034] Secondly, embodiments of this application also provide an attitude optimization device for an autonomous vehicle, wherein the device includes:
[0035] The acquisition unit is used to acquire the current state data of the autonomous vehicle and determine whether the autonomous vehicle meets the preset calibration conditions based on the current state data.
[0036] The calculation unit is used to calculate the reference attitude data according to the preset distance conditions when the autonomous vehicle meets the preset calibration conditions;
[0037] The first determining unit is used to acquire the original attitude data corresponding to the reference attitude data, and to determine the original attitude error based on the reference attitude data and the corresponding original attitude data.
[0038] The fusion unit is used to determine the attitude observation data based on the original attitude error, and to perform observation fusion on the attitude observation data using a preset fusion algorithm to obtain the attitude fusion result of the autonomous vehicle.
[0039] Thirdly, embodiments of this application also provide an electronic device, including:
[0040] Processor; and
[0041] A memory configured to store computer-executable instructions, which, when executed, cause the processor to perform any of the methods described above.
[0042] Fourthly, embodiments of this application also provide a computer-readable storage medium that stores one or more programs, which, when executed by an electronic device including multiple applications, cause the electronic device to perform any of the methods described above.
[0043] The above-mentioned at least one technical solution adopted in the embodiments of this application can achieve the following beneficial effects: The attitude optimization method for autonomous vehicles in the embodiments of this application first obtains the current state data of the autonomous vehicle and determines whether the autonomous vehicle meets the preset calibration conditions based on the current state data; then, if the autonomous vehicle meets the preset calibration conditions, it calculates the reference attitude data according to the preset distance conditions; then, it obtains the original attitude data corresponding to the reference attitude data and determines the original attitude error based on the reference attitude data and the corresponding original attitude data; finally, it determines the attitude observation data based on the original attitude error and uses a preset fusion algorithm to perform observation fusion on the attitude observation data to obtain the attitude fusion result of the autonomous vehicle. The attitude optimization method for autonomous vehicles in the embodiments of this application improves the accuracy of the calibration results by setting preset calibration conditions and performing online calibration of attitude errors under specific conditions, thereby improving the accuracy and stability of the attitude fusion of autonomous vehicles. Attached Figure Description
[0044] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0045] Figure 1 This is a flowchart illustrating an attitude optimization method for an autonomous vehicle according to an embodiment of this application.
[0046] Figure 2 This is a schematic diagram of the posture optimization device for an autonomous vehicle according to an embodiment of this application;
[0047] Figure 3This is a schematic diagram of the structure of an electronic device according to an embodiment of this application. Detailed Implementation
[0048] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0049] The technical solutions provided by the various embodiments of this application are described in detail below with reference to the accompanying drawings.
[0050] This application provides a method for attitude optimization of autonomous vehicles, such as... Figure 1 The diagram shows a flowchart of an attitude optimization method for an autonomous vehicle according to an embodiment of this application. The method includes at least the following steps S110 to S140:
[0051] Step S110: Obtain the current state data of the autonomous vehicle, and determine whether the autonomous vehicle meets the preset calibration conditions based on the current state data.
[0052] The attitude optimization method for autonomous vehicles in this application embodiment can be executed by the vehicle. When optimizing the attitude of an autonomous vehicle, it is necessary to first obtain the current state data of the autonomous vehicle. The current state data can reflect the current driving state, positioning state and other information of the autonomous vehicle, and then it can be used to determine whether the autonomous vehicle currently meets the preset calibration conditions.
[0053] One of the core aspects of the attitude optimization method for autonomous vehicles in this application is to perform online calibration of the heading angle error output by the RTK positioning device. The calibration result can then be used as the basis for subsequent heading angle optimization. Therefore, the preset calibration conditions set here are mainly to constrain the autonomous vehicle to be in a better state, so as to calibrate a more accurate heading angle error online.
[0054] Step S120: If the autonomous vehicle meets the preset calibration conditions, calculate the reference attitude data according to the preset distance conditions.
[0055] If the autonomous vehicle currently meets the preset calibration conditions, the reference heading angle data can be calculated further according to the defined preset distance conditions. The calculation of the reference heading angle data can be based on existing heading angle calculation methods, such as calculating the heading angle size based on the conversion of angle radians and the Euclidean distance between two points.
[0056] Since the calculation of the heading angle is related to the distance between two points, if the distance is too small or too large, the heading angle calculation will be inaccurate. Therefore, the embodiments of this application define a preset distance condition. The preset distance condition represents how far apart a reference heading angle data is calculated, which is used to constrain the calculation of the reference heading angle data. For example, it can be set to calculate a reference heading angle data every 3 to 5 meters, thereby ensuring the accuracy of the reference heading angle data calculation, and thus serving as a benchmark for subsequent measurement of RTK heading angle deviation.
[0057] Step S130: Obtain the original attitude data corresponding to the reference attitude data, and determine the original attitude error based on the reference attitude data and the corresponding original attitude data.
[0058] Based on each calculated reference heading angle data, the corresponding raw attitude data can be obtained. The raw attitude data can be understood as the original heading angle data output by RTK. The difference between the reference heading angle data and the original heading angle data output by RTK can be used to obtain the heading angle error of RTK.
[0059] Since a reference heading angle data is output at regular intervals in the aforementioned steps, multiple heading angle errors can be calculated based on this. Finally, by comprehensively processing the multiple heading angle errors, the final heading angle error can be calibrated, which serves as the basis for subsequent heading angle optimization.
[0060] Step S140: Determine the attitude observation data based on the original attitude error, and perform observation fusion on the attitude observation data using a preset fusion algorithm to obtain the attitude fusion result of the autonomous vehicle.
[0061] The heading angle error calibrated online can be used to optimize the heading angle data of the subsequent raw RTK output, thereby obtaining optimized attitude observation data. Finally, fusion algorithms such as Kalman filtering or extended Kalman filtering are used to fuse the optimized attitude observation data with other sensor data such as IMU data, thereby obtaining a more accurate fused positioning result, which may include fused position and attitude data.
[0062] The attitude optimization method for autonomous vehicles in this application improves the accuracy of the calibration results by setting preset calibration conditions and performing online calibration of attitude errors under specific conditions, thereby improving the accuracy and stability of attitude fusion for autonomous vehicles.
[0063] In some embodiments of this application, determining whether the autonomous vehicle meets the preset calibration conditions based on the current state data includes: acquiring the current speed, RTK positioning data, and IMU raw data of the autonomous vehicle; determining whether the autonomous vehicle is in motion based on the current speed and / or the IMU raw data, determining whether the RTK positioning state is a fixed solution state based on the RTK positioning data, and determining whether the autonomous vehicle is in a straight-line state based on the IMU raw data; if the autonomous vehicle is in motion, the RTK positioning state is a fixed solution state, and the autonomous vehicle is in a straight-line state, then the autonomous vehicle meets the preset calibration conditions; otherwise, the autonomous vehicle does not meet the preset calibration conditions.
[0064] In determining whether an autonomous vehicle meets preset calibration conditions, the embodiments of this application can make the determination from the following aspects:
[0065] The first aspect is the determination of the driving state of the autonomous vehicle. This can be determined by obtaining the current chassis speed of the autonomous vehicle. If the chassis speed is greater than a preset speed threshold, the vehicle is considered to be in normal motion. Otherwise, it may be in a stationary state or have just entered a moving state from a stationary state. The reason for distinguishing between the situation of entering a moving state from a stationary state and the normal moving state is that the heading angle error optimization logic when the vehicle has just entered a moving state is different from the heading angle error optimization logic when it has officially entered a relatively stable moving state. The embodiments of this application mainly target the calibration of the heading angle error when the vehicle has officially entered a relatively stable moving state. Therefore, the above-mentioned preset speed threshold can be set to a value greater than 0, such as 1 m / s, rather than using 0 to distinguish between the moving state and the stationary state.
[0066] In addition, it should be noted that in some cases, it may be impossible to obtain the current speed of the autonomous vehicle. In such cases, the raw IMU data can be used to determine the motion state. Of course, the current speed and the raw IMU data can also be combined for a comprehensive judgment.
[0067] The second aspect is determining the RTK positioning status of autonomous vehicles. Since the reference heading angle data needs to be calculated based on preset distance conditions, and the calculation of both the preset distance conditions and the reference heading angle data is related to the point's location, it is crucial to ensure the accuracy of the RTK positioning position. This is essential to guarantee the accuracy of the preset distance condition determination and the reference heading angle data calculation. Therefore, we can determine the usability of the current RTK positioning position by checking if it is a fixed solution. If it is a fixed solution, it indicates that the RTK positioning position can achieve centimeter-level accuracy, meaning the position is sufficiently accurate.
[0068] The third aspect is determining whether the autonomous vehicle is traveling in a straight line. If the autonomous vehicle is not traveling in a straight line, such as when turning, it will affect the accuracy of the heading angle error calibration results and reduce the reliability of the calibration results. Therefore, it is necessary to perform subsequent online calibration when the vehicle is traveling in a straight line to ensure the accuracy of the heading angle error calibration. The straight-line state can be determined based on the angular velocity and other data in the IMU data.
[0069] Based on the above three aspects, if it is determined that the autonomous vehicle is in a normal state of motion, the RTK positioning state is a fixed solution, and the autonomous vehicle is in a straight-line state, then the preset calibration conditions can be considered met; otherwise, they are not met. It should be noted that there is no strict order of these three aspects; they can be judged simultaneously or asynchronously.
[0070] In some embodiments of this application, the step of calculating the reference attitude data according to the preset distance condition when the autonomous vehicle meets the preset calibration condition includes: determining whether the preset distance condition is met at the current time; if the preset distance condition is met at the current time, obtaining the RTK positioning position at the current time and the RTK positioning position at the previous time; determining the Euclidean distance between the current time and the previous time based on the RTK positioning position at the current time and the RTK positioning position at the previous time; and calculating the reference attitude data at the current time based on the Euclidean distance between the current time and the previous time.
[0071] When calculating the reference heading angle data according to the preset distance conditions, it is possible to first determine whether the distance between the current position of the autonomous vehicle and the previous position meets the requirements of the preset distance conditions. Specifically, this can be determined by calculating the displacement of adjacent moments. If the requirements of the preset distance conditions are met, for example, the distance is between 3 and 5 meters, then the reference heading angle data at this time can be calculated.
[0072] When calculating the reference heading angle data, the current RTK positioning position and the previous RTK positioning position can be obtained first. Then, they can be transformed into the UTM (Universal Transverse Mercator Grid System) coordinate system to obtain the transformed current positioning position (px, py) and the previous positioning position (px_last, py_last). The Euclidean distance dpos between the two positions can then be calculated as follows:
[0073] dpos=|(sqrt((px-px_last)*(px-px_last)+(py-py_last)*(py-py_last)))|
[0074] Here, sqrt represents the square root.
[0075] Finally, based on the calculated Euclidean distance and the change in angular radians, the reference heading angle data for the current moment is calculated.
[0076] In some embodiments of this application, the original attitude error includes multiple errors. The step of obtaining the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data includes: fitting the multiple original attitude errors to obtain the fitted original attitude error, so as to determine the attitude observation data based on the fitted original attitude error.
[0077] Since the reference heading angle data is calculated every certain distance, multiple heading angle errors can be obtained. When the amount of heading angle error data reaches a certain requirement, such as 200, a certain fitting algorithm can be used to fit these heading angle errors, thereby obtaining a relatively stable and accurate final heading angle error, which serves as the basis for subsequent optimization of RTK heading angle.
[0078] When a new heading angle error is calculated later, the previously fitted results can be updated. That is, once the amount of heading angle error data has reached a certain requirement, each time a new heading angle error is calculated, the fitting can be performed again and the fitting results updated. As the amount of data increases, the fitted heading angle error will become more and more accurate.
[0079] In some embodiments of this application, determining the attitude observation data based on the original attitude error includes: acquiring the original attitude data at the current moment; and compensating the original attitude data at the current moment using the original attitude error to obtain the attitude observation data at the current moment.
[0080] Once the heading angle error is obtained after online calibration, it can be used to compensate for the subsequent RTK heading angle, thereby making up for the RTK heading angle error and improving the accuracy and stability of subsequent fusion positioning.
[0081] It should be noted that the calibration of the heading angle error in this embodiment is implemented when the vehicle is in normal motion. After compensating the RTK heading angle of the vehicle in motion using the calibrated heading angle error, the accuracy of the heading angle fusion in motion can be guaranteed. When the vehicle has just switched from motion to stationary state, it needs to switch to the attitude optimization logic in stationary state. However, since the heading angle of the vehicle does not change significantly when it first enters a stationary state, the attitude angle optimization logic adopted in stationary state uses the heading angle fused at the previous moment as the heading angle observation data at the current moment.
[0082] When the vehicle has just switched from a moving state to a stationary state, the heading angle fused at the previous moment is the same as the heading angle fused at the previous moment in the moving state. Since the RTK heading angle in the moving state has been compensated for by the heading angle error calibrated online, the accuracy of the heading angle fused in the moving state is improved, which in turn indirectly improves the accuracy of the heading angle fusion in the stationary state.
[0083] In some embodiments of this application, after obtaining the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data, the method further includes: determining the current driving state of the autonomous vehicle; when the current driving state of the autonomous vehicle changes from a moving state to a stationary state, timing the stationary state; and restarting the filter when the timing of the stationary state reaches a preset time threshold.
[0084] To improve the stability of the fusion positioning, this application embodiment can also introduce parking correction logic, that is, to judge the driving status of the autonomous vehicle in real time. When the autonomous vehicle is stationary for a preset time threshold, the stability of the filter fusion processing can be ensured by restarting the filter. The preset time threshold can be set to 15 seconds, for example. Of course, those skilled in the art can also adjust it flexibly according to actual needs, and no specific limitation is made here.
[0085] Furthermore, since the attitude optimization logic adopted in the stationary state uses the fused heading angle from the previous moment as the heading angle observation value at the current moment, the initial value of the filter can be set according to the fused heading angle from the previous moment after restarting the filter, thereby improving the stability of the filter.
[0086] In some embodiments of this application, after obtaining the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data, the method further includes: determining whether the original attitude error triggers a cloud reporting condition; and if the original attitude error triggers a cloud reporting condition, reporting the original attitude error to the cloud so that the cloud can determine whether the RTK positioning device of the autonomous vehicle needs to be recalibrated based on the original attitude error.
[0087] This embodiment of the application can also report the online calibration results of the heading angle error to the cloud for further analysis and processing. However, to avoid the pressure on cloud data processing caused by frequent reporting, it can first be determined whether the currently calibrated heading angle error meets the cloud reporting conditions. The cloud reporting conditions can constrain the reporting frequency or the number of reports. For example, in the aforementioned embodiment, a new heading angle error is refitted every 3 to 5 meters. Then, the cloud reporting conditions can be set to the number of times the heading angle error is calculated to be an integer multiple of 200, which is equivalent to reporting a fitted heading angle error to the cloud every 600 to 1000 meters. In this way, the cloud can monitor the heading angle error reported by the vehicle and can also determine whether offline calibration needs to be re-performed based on the magnitude of the heading angle error. Since the online calibration results also have a certain error, the cloud reporting conditions set above can also be flexibly adjusted based on the acceptable error level of the online calibration results.
[0088] This application also provides an attitude optimization device 200 for an autonomous vehicle, such as... Figure 2 The diagram shows a schematic representation of an attitude optimization device for an autonomous vehicle according to an embodiment of this application. The device 200 includes: an acquisition unit 210, a calculation unit 220, a first determination unit 230, and a fusion unit 240, wherein:
[0089] The acquisition unit 210 is used to acquire the current state data of the autonomous vehicle and determine whether the autonomous vehicle meets the preset calibration conditions based on the current state data.
[0090] The calculation unit 220 is used to calculate reference attitude data according to a preset distance condition when the autonomous vehicle meets the preset calibration conditions;
[0091] The first determining unit 230 is used to acquire the original attitude data corresponding to the reference attitude data, and determine the original attitude error based on the reference attitude data and the corresponding original attitude data.
[0092] The fusion unit 240 is used to determine the attitude observation data based on the original attitude error, and to perform observation fusion on the attitude observation data using a preset fusion algorithm to obtain the attitude fusion result of the autonomous vehicle.
[0093] In some embodiments of this application, the acquisition unit 210 is specifically used to: acquire the current speed, RTK positioning data, and IMU raw data of the autonomous vehicle; determine whether the autonomous vehicle is in motion based on the current speed and / or the IMU raw data, determine whether the RTK positioning state is a fixed solution state based on the RTK positioning data, and determine whether the autonomous vehicle is in a straight-line state based on the IMU raw data; if the autonomous vehicle is in motion, the RTK positioning state is a fixed solution state, and the autonomous vehicle is in a straight-line state, determine that the autonomous vehicle meets the preset calibration conditions; otherwise, determine that the autonomous vehicle does not meet the preset calibration conditions.
[0094] In some embodiments of this application, the calculation unit 220 is specifically used for: determining whether the preset distance condition is met at the current time; if the preset distance condition is met at the current time, obtaining the RTK positioning position at the current time and the RTK positioning position at the previous time; determining the Euclidean distance between the current time and the previous time based on the RTK positioning position at the current time and the RTK positioning position at the previous time; and calculating the reference attitude data at the current time based on the Euclidean distance between the current time and the previous time.
[0095] In some embodiments of this application, the original attitude error includes multiple errors, and the first determining unit 230 is specifically used to: fit the multiple original attitude errors to obtain the fitted original attitude error, so as to determine the attitude observation data based on the fitted original attitude error.
[0096] In some embodiments of this application, the fusion unit 240 is specifically used to: acquire the original attitude data at the current moment; and compensate the original attitude data at the current moment using the original attitude error to obtain the attitude observation data at the current moment.
[0097] In some embodiments of this application, the device further includes: a second determining unit for determining the current driving state of the autonomous vehicle; a timing unit for timing the stationary state when the current driving state of the autonomous vehicle changes from a moving state to a stationary state; and a restarting unit for restarting the filter when the timing in the stationary state reaches a preset time threshold.
[0098] In some embodiments of this application, the apparatus further includes: a third determining unit, configured to determine whether the original attitude error triggers a cloud reporting condition; and a reporting unit, configured to report the original attitude error to the cloud when the original attitude error triggers a cloud reporting condition, so that the cloud can determine whether the RTK positioning device of the autonomous vehicle needs to be recalibrated based on the original attitude error.
[0099] It is understood that the above-mentioned attitude optimization device for autonomous vehicles can implement each step of the attitude optimization method for autonomous vehicles provided in the foregoing embodiments. The relevant explanations of the attitude optimization method for autonomous vehicles are applicable to the attitude optimization device for autonomous vehicles, and will not be repeated here.
[0100] Figure 3 This is a schematic diagram of the structure of an electronic device according to an embodiment of this application. Please refer to it. Figure 3 At the hardware level, the electronic device includes a processor, and optionally also includes an internal bus, a network interface, and memory. The memory may include main memory, such as high-speed random-access memory (RAM), or non-volatile memory, such as at least one disk drive. Of course, the electronic device may also include other hardware required for other business operations.
[0101] The processor, network interface, and memory can be interconnected via an internal bus, which can be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus, etc. This bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 3 The symbol is represented by a single double-headed arrow, but this does not mean that there is only one bus or one type of bus.
[0102] Memory is used to store programs. Specifically, programs may include program code, which includes computer operation instructions. Memory may include main memory and non-volatile memory, and provides instructions and data to the processor.
[0103] The processor reads the corresponding computer program from non-volatile memory into main memory and then runs it, forming the attitude optimization device for the autonomous vehicle at the logical level. The processor executes the program stored in memory and specifically performs the following operations:
[0104] Acquire the current state data of the autonomous vehicle, and determine whether the autonomous vehicle meets the preset calibration conditions based on the current state data;
[0105] When the autonomous vehicle meets the preset calibration conditions, the reference attitude data is calculated according to the preset distance conditions;
[0106] Obtain the original attitude data corresponding to the reference attitude data, and determine the original attitude error based on the reference attitude data and the corresponding original attitude data;
[0107] The attitude observation data is determined based on the original attitude error, and the attitude observation data is fused using a preset fusion algorithm to obtain the attitude fusion result of the autonomous vehicle.
[0108] The above is as stated in this application. Figure 1 The method for optimizing the attitude of an autonomous vehicle disclosed in the illustrated embodiments can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software form. The processor can be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc.; it can also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software module can reside in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.
[0109] The electronic device can also perform Figure 1A method for implementing the attitude optimization device in an autonomous vehicle, and how to realize the attitude optimization device in an autonomous vehicle. Figure 1 The functions of the embodiments shown are not described again in this application.
[0110] This application also proposes a computer-readable storage medium that stores one or more programs, the programs including instructions that, when executed by an electronic device including multiple applications, enable the electronic device to perform... Figure 1 The method executed by the attitude optimization device of the autonomous vehicle in the illustrated embodiment is specifically used to perform:
[0111] Acquire the current state data of the autonomous vehicle, and determine whether the autonomous vehicle meets the preset calibration conditions based on the current state data;
[0112] When the autonomous vehicle meets the preset calibration conditions, the reference attitude data is calculated according to the preset distance conditions;
[0113] Obtain the original attitude data corresponding to the reference attitude data, and determine the original attitude error based on the reference attitude data and the corresponding original attitude data;
[0114] The attitude observation data is determined based on the original attitude error, and the attitude observation data is fused using a preset fusion algorithm to obtain the attitude fusion result of the autonomous vehicle.
[0115] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0116] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1A device that provides the functions specified in one or more boxes.
[0117] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0118] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0119] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0120] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0121] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0122] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0123] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0124] The above description is merely an embodiment of this application and is 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 scope of the claims of this application.
Claims
1. A posture optimization method for an autonomous vehicle, wherein, The method includes: Acquire the current state data of the autonomous vehicle, and determine whether the autonomous vehicle meets the preset calibration conditions based on the current state data; When the autonomous vehicle meets the preset calibration conditions, the reference attitude data is calculated according to the preset distance conditions; Obtain the original attitude data corresponding to the reference attitude data, and determine the original attitude error based on the reference attitude data and the corresponding original attitude data; The attitude observation data is determined based on the original attitude error, and the attitude observation data is fused using a preset fusion algorithm to obtain the attitude fusion result of the autonomous vehicle. The original attitude error includes multiple factors, and the step of obtaining the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data includes: The original attitude errors are fitted to obtain the fitted original attitude errors, and the attitude observation data are determined based on the fitted original attitude errors. The preset distance condition indicates that a reference attitude data is calculated at preset distances; After acquiring the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data, the method further includes: Determine the current driving status of the autonomous vehicle; When the current driving state of the autonomous vehicle changes from a moving state to a stationary state, the timer for the stationary state is started; If the timer in the static state reaches a preset time threshold, restart the filter; The attitude optimization logic adopted in the static state is to use the fused heading angle from the previous moment as the heading angle observation value at the current moment. The method also includes: After restarting the filter, set the initial value of the filter based on the fused heading angle from the previous moment.
2. The method as described in claim 1, wherein, Determining whether the autonomous vehicle meets the preset calibration conditions based on the current state data includes: Acquire the current speed, RTK positioning data, and IMU raw data of the autonomous vehicle; The system determines whether the autonomous vehicle is in motion based on the current speed and / or the raw IMU data, whether the RTK positioning state is a fixed solution state based on the RTK positioning data, and whether the autonomous vehicle is in a straight-line state based on the raw IMU data. When the autonomous vehicle is in motion, the RTK positioning state is a fixed solution state, and the autonomous vehicle is in a straight-line state, it is determined that the autonomous vehicle meets the preset calibration conditions. Otherwise, it is determined that the autonomous vehicle does not meet the preset calibration conditions.
3. The method as described in claim 1, wherein, The calculation of reference attitude data according to preset distance conditions when the autonomous vehicle meets the preset calibration conditions includes: Determine whether the preset distance condition is met at the current moment; If the preset distance condition is met at the current time, obtain the RTK positioning position at the current time and the RTK positioning position at the previous time. Based on the current RTK positioning position and the previous RTK positioning position, determine the Euclidean distance between the current time and the previous time. Calculate the reference attitude data for the current moment based on the Euclidean distance between the current moment and the previous moment.
4. The method as described in claim 1, wherein, The process of determining the attitude observation data based on the original attitude error includes: Obtain the raw attitude data at the current moment; The original attitude error is used to compensate for the original attitude data at the current moment to obtain the attitude observation data at the current moment.
5. The method as described in any one of claims 1 to 4, wherein, After acquiring the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data, the method further includes: Determine whether the original attitude error triggers the cloud reporting condition; When the original attitude error triggers the cloud reporting condition, the original attitude error is reported to the cloud so that the cloud can determine whether the RTK positioning device of the autonomous vehicle needs to be recalibrated based on the original attitude error.
6. An attitude optimization device for an autonomous vehicle, wherein, The device includes: The acquisition unit is used to acquire the current state data of the autonomous vehicle and determine whether the autonomous vehicle meets the preset calibration conditions based on the current state data. The calculation unit is used to calculate the reference attitude data according to the preset distance conditions when the autonomous vehicle meets the preset calibration conditions; The first determining unit is used to acquire the original attitude data corresponding to the reference attitude data, and to determine the original attitude error based on the reference attitude data and the corresponding original attitude data. The fusion unit is used to determine the attitude observation data based on the original attitude error, and to perform observation fusion on the attitude observation data using a preset fusion algorithm to obtain the attitude fusion result of the autonomous vehicle. The original attitude error includes multiple factors, and the first determining unit is specifically used for: The original attitude errors are fitted to obtain the fitted original attitude errors, and the attitude observation data are determined based on the fitted original attitude errors. The preset distance condition indicates that a reference attitude data is calculated at preset distances; The device further includes: The second determining unit is used to determine the current driving state of the autonomous vehicle after acquiring the original attitude data corresponding to the reference attitude data and determining the original attitude error based on the reference attitude data and the corresponding original attitude data. The timing unit is used to time the stationary state when the current driving state of the autonomous vehicle changes from a moving state to a stationary state. The restart unit is used to restart the filter when the timing in the static state reaches a preset time threshold; The attitude optimization logic adopted in the static state is to use the fused heading angle of the previous moment as the heading angle observation value of the current moment, and after restarting the filter, set the initial value of the filter according to the fused heading angle of the previous moment.
7. An electronic device, comprising: processor; as well as A memory configured to store computer-executable instructions, which, when executed, cause the processor to perform the method of any one of claims 1 to 5.
8. A computer-readable storage medium storing one or more programs, which, when executed by an electronic device including a plurality of applications, cause the electronic device to perform the method of any one of claims 1 to 5.
Citation Information
Patent Citations
Course angle error calibration method and automatic navigation driving system
CN106643800A
Vehicle course angle real-time calibration method and device for automatic driving
CN115014395A