Inertial navigation-based device control method, apparatus, and computer device
Patent Information
- Application Number
- CN202310009823.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-01-05
- Publication Date
- 2026-09-11
- Estimated Expiration
- 2043-01-05
AI Technical Summary
因此,零速检测的准确度直接影响到零速修正的准确度,进而影响到设备基于惯性导航的设备控制的准确性
[0036] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps of the methods described in any of the embodiments above.
Smart Images

Figure CN116243631B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of inertial navigation technology, and in particular to an inertial navigation-based device control method, an inertial navigation-based device control apparatus, a computer device, a storage medium, and a computer program product. Background Technology
[0002] With the development of inertial navigation technology, inertial navigation systems utilize the three-axis acceleration and three-axis angular velocity information output by the IMU (Inertial Measurement Unit) to calculate the position, velocity, and attitude of the carrier at the next moment through steps such as attitude update, removal of harmful acceleration, velocity update, and position update. Therefore, it has been widely used in navigation, positioning, and other fields, such as in the navigation and positioning process of various mobile devices such as vehicles and mobile phones.
[0003] However, due to factors such as sensor model errors and noise in inertial navigation IMUs, the position / velocity / attitude errors of inertial navigation systems gradually increase over time, leading to increased errors in device control. To address this, zero-velocity update technology has emerged to effectively suppress this error growth. Zero-velocity update includes zero-velocity detection and zero-velocity correction. Zero-velocity detection determines whether the device is at zero velocity, while zero-velocity correction performs relevant corrections when zero velocity is determined. Therefore, the accuracy of zero-velocity detection directly affects the accuracy of zero-velocity correction, and consequently, the accuracy of device control based on inertial navigation. However, the inventors of this application have discovered that the accuracy of zero-velocity detection in conventional methods is low. Summary of the Invention
[0004] Therefore, it is necessary to provide a highly accurate inertial navigation-based device control method, inertial navigation-based device control apparatus, computer equipment, storage medium, and computer program product to address the aforementioned technical problems.
[0005] In a first aspect, this application provides a device control method based on inertial navigation, the method comprising:
[0006] Obtain the detection parameters for non-inertial components of the equipment;
[0007] When the device is determined to be stationary based on the detection parameters, the inertial navigation data of the device's inertial navigation device is acquired, and the inertial navigation data includes angular velocity and acceleration.
[0008] The inertial navigation data is subjected to low-pass filtering to obtain the filtered angular velocity and filtered acceleration.
[0009] Based on preset stationary angular velocity information and preset stationary acceleration information, the filtered angular velocity and filtered acceleration are analyzed to obtain analysis results, and it is determined whether the device is in a zero-speed stationary state based on the analysis results.
[0010] When the device is in a zero-speed stationary state, zero-speed correction is performed on the device.
[0011] In some embodiments, obtaining the detection parameters for non-inertial device detection of the device includes:
[0012] The wheel speed parameters measured by the wheel speed meter and the satellite speed parameters calculated by the GNSS receiver board are obtained. The detection parameters include the wheel speed parameters and the satellite speed parameters.
[0013] In some embodiments, the angular velocity includes the lateral angular velocity of the inertial navigation device, and the acceleration includes the longitudinal acceleration of the inertial navigation device.
[0014] In some embodiments, the step of analyzing the filtered angular velocity and filtered acceleration based on preset stationary angular velocity information and preset stationary acceleration information to obtain analysis results includes:
[0015] Discreteness calculations are performed on the filtered angular velocity and the filtered acceleration within a specified time window to obtain discrete information of the filtered angular velocity and the filtered acceleration.
[0016] The analysis results are obtained based on the relationship between the filtered discrete angular velocity information and the preset stationary angular velocity information, and the relationship between the filtered discrete acceleration information and the preset stationary acceleration information.
[0017] In some embodiments, obtaining the analysis results based on the relationship between the filtered discrete angular velocity information and the preset stationary angular velocity information, and the relationship between the filtered discrete acceleration information and the preset stationary acceleration information, includes:
[0018] The analysis results are obtained by determining whether the filtered discrete angular velocity information is less than a preset multiple of the preset stationary angular velocity information, and whether the filtered discrete acceleration information is less than a preset multiple of the preset stationary acceleration information.
[0019] In some embodiments, determining whether the device is in a zero-speed stationary state based on the analysis result includes:
[0020] If the analysis results show that the filtered discrete angular velocity information is less than the preset stationary angular velocity information by a preset multiple, and the filtered discrete acceleration information is less than the preset stationary acceleration information by a preset multiple, then the device is determined to be in a zero-speed stationary state.
[0021] In some embodiments, the filtered angular velocity discrete information includes the filtered angular velocity variance, and the filtered acceleration discrete information includes the filtered acceleration variance.
[0022] In some embodiments, performing zero-speed correction on the device when the device is in a zero-speed stationary state includes:
[0023] When the device is stationary at zero speed, the angular velocity of the inertial navigation device is estimated with zero bias to obtain the zero-bias estimated angular velocity.
[0024] The angular velocity output by the inertial navigation device is corrected based on the zero-bias estimation of the angular velocity.
[0025] In some embodiments, the method further includes:
[0026] The corrected angular velocity is low-pass filtered to obtain the filtered corrected angular velocity.
[0027] By combining the filtered corrected angular velocity and the filtered acceleration information, the preset stationary angular velocity information and the preset stationary acceleration information are updated respectively.
[0028] Secondly, this application also provides a device control apparatus based on inertial navigation, the apparatus comprising:
[0029] The detection parameter acquisition module is used to acquire the detection parameters for non-inertial device detection of the equipment;
[0030] An inertial data acquisition module is used to acquire inertial navigation data of the inertial navigation device of the device when the device is determined to be stationary based on the detection parameters. The inertial navigation data includes angular velocity and acceleration.
[0031] The filtering module performs low-pass filtering on the inertial navigation data to obtain the filtered angular velocity and filtered acceleration.
[0032] The zero-speed analysis module is used to analyze the filtered angular velocity and filtered acceleration based on preset stationary angular velocity information and preset stationary acceleration information, obtain analysis results, and determine whether the device is in a zero-speed stationary state based on the analysis results.
[0033] The correction module is used to perform zero-speed correction on the device when the device is in a zero-speed stationary state.
[0034] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps of the method described in any of the embodiments above.
[0035] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, implements the steps of the method described in any of the embodiments above.
[0036] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps of the methods described in any of the embodiments above.
[0037] The aforementioned device control method, apparatus, computer equipment, storage medium, and computer program product based on inertial navigation first make a preliminary determination of whether the device is stationary based on detection parameters detected by non-inertial devices. If the device is initially determined to be stationary, inertial navigation data from the device's inertial navigation device is then acquired to further determine whether the device is stationary. Furthermore, when using inertial navigation data for determination, the inertial navigation data undergoes low-pass filtering to obtain filtered angular velocity and filtered acceleration. Then, based on preset stationary angular velocity information and preset stationary acceleration information... The filtered angular velocity and acceleration are analyzed, and a comprehensive analysis is performed using the detection parameters from non-inertial devices and the inertial navigation data from inertial navigation devices. This comprehensive analysis takes into account the influence of both non-inertial devices and inertial navigation devices. When using the inertial navigation data, it is processed by low-pass filtering before analysis to remove the influence of external noise interference signals. Based on this, the analysis results of the zero-speed stationary state are more accurate, improving the accuracy of zero-speed detection. Zero-speed correction is then performed based on this, thereby improving the accuracy of control of inertial navigation-based equipment. Attached Figure Description
[0038] Figure 1 This is an application environment diagram of a device control method based on inertial navigation in one embodiment;
[0039] Figure 2 This is a flowchart illustrating a device control method based on inertial navigation in one embodiment;
[0040] Figure 3 This is a structural block diagram of a device control device based on inertial navigation in one embodiment;
[0041] Figure 4 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0042] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0043] The device control method based on inertial navigation provided in this application can be applied to, for example... Figure 1 In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104 or placed on a cloud or other network server. Terminal 102 is equipped with inertial navigation devices and non-inertial devices. The inertial navigation devices may include an IMU (Inertial Measurement Unit), and the non-inertial devices may include wheel speedometers, GNSS receiver boards, etc. During use, terminal 102 can perform inertial navigation in conjunction with the inertial navigation devices to achieve positioning, navigation, and other processing. Data related to inertial navigation and other data generated during use can be uploaded to server 104 for storage. To effectively suppress the impact of errors caused by the inertial navigation devices during use, terminal 102 analyzes the zero-velocity stationary state based on the detection parameters of the non-inertial devices and the inertial navigation data from the inertial navigation devices, combined with preset stationary angular velocity and acceleration information, and performs zero-velocity correction accordingly. The preset stationary angular velocity information and preset stationary acceleration information can be obtained locally from the terminal 102 or from the server 104. For example, the server 104 can obtain the data from the data storage system and provide it to the terminal 102, or the server 104 can determine the data in real time and provide it to the terminal 102.
[0044] The terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, and smart in-vehicle systems. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted devices. The server 104 can be implemented using a standalone server or a server cluster consisting of multiple servers.
[0045] In some embodiments, such as Figure 2 As shown, an inertial navigation-based device control method is provided, which can be applied to... Figure 1Taking terminal 102 as an example, the explanation includes the following steps S101 to S105.
[0046] Step S101: Obtain the detection parameters for non-inertial device detection of the equipment.
[0047] Non-inertial devices of a device refer to devices that are different from inertial navigation devices. In the embodiments of this application, non-inertial devices of a device refer to devices that are different from inertial navigation devices and are capable of monitoring the speed of device 102. In some embodiments of this application, non-inertial devices may include at least one of wheel speedometers and GNSS receiver boards.
[0048] Taking non-inertial devices, such as wheel speedometers and GNSS receiver boards, as an example, the detection parameters for obtaining the non-inertial device detection of the device mentioned above may include:
[0049] The wheel speed parameters measured by the wheel speed meter and the satellite speed parameters calculated by the GNSS receiver board are obtained. The detection parameters include the wheel speed parameters and the satellite speed parameters.
[0050] A wheel speed meter is a sensor used to obtain wheel parameters. In some embodiments, the wheel speed meter can obtain the rotational speed of its own wheel, and by combining the wheel's rotational speed with its radius / diameter, the forward speed of the device (e.g., a vehicle) can be calculated. In some embodiments, the wheel speed meter can obtain the rotational speed of its own wheel, and by combining the wheel's rotational speed with its radius / diameter, calculate and output the forward speed of the device (e.g., a vehicle). In the embodiments of this application, the wheel speed parameter measured by the wheel speed meter can be either the rotational speed of the wheel speed meter itself, or the forward speed of the device calculated by combining the rotational speed of the wheel speed meter. When a device with wheels (e.g., a vehicle) is moving, the wheel speed parameter measured by the wheel speed meter is relatively large, therefore, to a certain extent, the wheel speed parameter measured by the wheel speed meter can be used to determine whether the device is stationary.
[0051] A GNSS (Global Navigation Satellite System) receiver board is a device that calculates velocity parameters from satellite signals received by a GNSS antenna. These velocity parameters are referred to as satellite measured velocity parameters in this embodiment. In some embodiments, the satellite measured velocity parameter can be the combined eastward and northward velocities obtained after calculating the satellite signals received by the GNSS antenna. When the device housing the GNSS antenna (such as a vehicle) moves, the GNSS antenna also moves, and the velocity calculated by the GNSS receiver board is relatively large. Therefore, to a certain extent, the satellite measured velocity parameters obtained by the GNSS receiver board can be used to determine whether the device is stationary.
[0052] Step S102: When it is determined that the device is in a stationary state based on the detection parameters, the inertial navigation data of the device's inertial navigation device is acquired, and the inertial navigation data includes angular velocity and acceleration.
[0053] Determining that the equipment is stationary based on monitoring parameters means determining that the equipment is stationary based on the detection parameters detected by the aforementioned non-inertial devices.
[0054] Taking the aforementioned non-inertial devices, including both wheel speedometers and GNSS receiver boards, as an example, the device is considered stationary only if both the wheel speed parameters from the wheel speedometer and the satellite velocity parameters from the GNSS receiver board indicate that the device is stationary. It should be understood that determining the device to be stationary here is only a preliminary, rough assessment and does not confirm that the device is absolutely stationary. For example, if the device is a vehicle, and the vehicle is moving extremely slowly, the wheel speed parameters from the wheel speedometer and the satellite velocity parameters from the GNSS receiver board cannot accurately detect the vehicle's movement. Therefore, further determination is needed by combining inertial navigation data from inertial navigation devices.
[0055] In cases where non-inertial devices include both a wheel speed meter and a GNSS receiver board, the process of determining whether the equipment is stationary by combining the wheel speed parameters from the wheel speed meter and the satellite velocity parameters measured by the GNSS receiver board can be performed in any order or in a specified order. In some embodiments, the determination of whether the equipment is stationary can be made based on the wheel speed parameters from the wheel speed meter, followed by a further determination based on the satellite velocity parameters calculated by the GNSS receiver board.
[0056] When determining the stationary state by combining the wheel speed parameters from the wheel speed meter and the satellite speed parameters measured by the GNSS receiver board, the wheel speed parameter from the wheel speed meter can be less than a preset wheel speed parameter threshold, and the satellite speed parameter can be less than a satellite speed parameter threshold. The preset wheel speed parameter threshold and the satellite speed parameter threshold can be set according to actual technical needs. For example, in some embodiments, the preset wheel speed parameter threshold can be set to 1 m / s, and the satellite speed parameter threshold can be set to 0.1 m / s. Therefore, when the wheel speed parameter based on the wheel speed meter indicates that the device is stationary, and the judgment is made based on the satellite speed parameter obtained from the GNSS receiver board, we can first combine the wheel speed parameter to determine whether the device is in a high-speed motion state with a vehicle speed higher than 1m / s, and then determine whether the device is in a low-speed motion state with a GNSS antenna speed higher than 0.1m / s. This simultaneously considers the influence of high and low speeds. When the device is determined to be stationary in both high and low speed conditions, further judgment can be made by combining the inertial navigation data from the inertial navigation device, which helps to improve the detection accuracy.
[0057] The acquired inertial navigation data from the device's inertial navigation system can be inertial navigation data within a specified time window. It should be understood that the inertial navigation data within the specified time window refers to the inertial navigation data within a specified time window adjacent to the current time. The specified time window can be set according to actual technical needs; for example, in some embodiments, the specified time window can be set to 1 second.
[0058] Step S103: Perform low-pass filtering on the inertial navigation data to obtain the filtered angular velocity and filtered acceleration.
[0059] Low-pass filtering removes high-frequency signals from data, allowing low-frequency signals to pass while reducing the passage of signals with frequencies higher than the cutoff frequency. By applying low-pass filtering to inertial navigation data, the influence of external noise interference signals can be effectively mitigated.
[0060] Step S104: Based on the preset stationary angular velocity information and preset stationary acceleration information, analyze the filtered angular velocity and filtered acceleration to obtain the analysis results, and determine whether the device is in a zero-speed stationary state based on the analysis results.
[0061] Preset stationary angular velocity information and preset stationary acceleration information refer to information that can be used to help determine whether an inertial navigation device is in a zero-speed stationary state. These preset stationary angular velocity and acceleration information can be set according to actual technical needs.
[0062] In some embodiments, the acceleration and angular velocity information of the inertial navigation device when it is in a zero-speed stationary state can be collected in advance to determine the preset stationary angular velocity information and preset stationary acceleration information. In other embodiments, the preset stationary acceleration information and preset stationary acceleration information can be determined by combining the inertial navigation data of the inertial navigation device when it is in a zero-speed stationary state a certain number of times within a preset time period. For example, the preset stationary acceleration information can be determined based on the filtered acceleration of the inertial navigation device when it is in a zero-speed stationary state a certain number of times within a preset time period, and the preset stationary angular velocity information can be determined based on the filtered angular velocity of the inertial navigation device when it is in a zero-speed stationary state a certain number of times within a preset time period.
[0063] Step S105: When the device is in a zero-speed stationary state, perform zero-speed correction on the device.
[0064] If the analysis results above indicate that the equipment is in a zero-speed stationary state, it means that the zero-speed state of the equipment can be accurately confirmed, and the zero-speed correction of the equipment can be performed accordingly.
[0065] The aforementioned inertial navigation-based device control method first makes a preliminary determination of whether the device is stationary based on detection parameters from non-inertial devices. If the device is initially determined to be stationary, it then acquires inertial navigation data from the device's inertial navigation devices to further determine whether the device is in a zero-speed stationary state. When using inertial navigation data for this determination, the data undergoes low-pass filtering to obtain filtered angular velocity and acceleration. Then, based on preset stationary angular velocity and acceleration information, the filtered angular velocity and acceleration are further processed... The filtered acceleration is analyzed, and a comprehensive analysis is performed using the detection parameters from non-inertial devices and the inertial navigation data from inertial navigation devices. This comprehensive analysis takes into account the influence of both non-inertial devices and inertial navigation devices. Furthermore, when using the inertial navigation data, it is processed by low-pass filtering before analysis to remove the influence of external noise interference signals. Based on this, the analysis results of the zero-speed stationary state are more accurate, improving the accuracy of zero-speed detection. Zero-speed correction is then performed based on this, thereby improving the accuracy of control over inertial navigation-based equipment.
[0066] The angular velocity of the inertial navigation data from the inertial navigation device can include three-axis angular velocities, and the acceleration of the inertial navigation data can also include three-axis accelerations. In some embodiments of this application, the angular velocity includes the lateral angular velocity of the inertial navigation device, and the acceleration includes the longitudinal acceleration of the inertial navigation device. The lateral angular velocity of the inertial navigation device can refer to the angular velocity to the right of the device's forward direction; for example, if the device is a vehicle, it refers to the angular velocity to the right of the vehicle. The longitudinal acceleration of the inertial navigation device can refer to the acceleration in the device's forward direction; for example, if the device is a vehicle, it refers to the acceleration in the vehicle's forward direction.
[0067] When the device starts or stops, taking a vehicle as an example, the vehicle will sway longitudinally, causing a change in the acceleration in its forward direction. Simultaneously, the front of the vehicle will lift, causing a change in its lateral angular velocity. According to the right-hand rule and the vehicle's forward direction, the angular velocity in the right direction will change. Therefore, by using the lateral angular velocity and longitudinal acceleration from the inertial navigation device for subsequent zero-velocity stationary determination, unnecessary addition of accelerations and / or angular velocities in other directions is avoided, reducing the amount of data processed, improving processing efficiency and accuracy.
[0068] In some embodiments, performing low-pass filtering on the inertial navigation data to obtain filtered angular velocity and filtered acceleration includes:
[0069] Obtain the historical angular velocity, historical filtered angular velocity, historical acceleration, and historical filtered acceleration corresponding to each historical moment; where the historical filtered angular velocity is the angular velocity obtained by low-pass filtering the historical angular velocity, and the historical filtered acceleration is the acceleration obtained by low-pass filtering the historical acceleration;
[0070] The current angular velocity and the historical angular velocities corresponding to each historical moment are weighted to obtain the weighted angular velocity and each historical weighted angular velocity. The sum of the weighted angular velocity and each historical weighted angular velocity is then calculated to obtain the total target angular velocity.
[0071] The historical filtered angular velocities corresponding to each historical moment are weighted to obtain the weighted angular velocities of each historical filtered moment. The sum of the weighted angular velocities of each historical filtered moment is then calculated to obtain the sum of the target weighted angular velocities.
[0072] Calculate the difference between the sum of the target angular velocities and the sum of the target's filtered weighted angular velocities to obtain the filtered angular velocity;
[0073] The current acceleration and the historical accelerations corresponding to each historical moment are weighted to obtain the weighted acceleration and each historical weighted acceleration. The sum of the weighted acceleration and each historical weighted acceleration is calculated to obtain the target acceleration.
[0074] The historical filtered accelerations corresponding to each historical moment are weighted to obtain the weighted accelerations of each historical moment. The sum of the weighted accelerations of each historical moment is calculated to obtain the sum of the target weighted accelerations. The difference between the sum of the target accelerations and the sum of the target weighted accelerations is calculated to obtain the filtered acceleration.
[0075] In some embodiments, during the low-pass filtering process described above, a k-order IIR (Infinite Impulse Response) filter may be used to perform low-pass filtering on the inertial navigation data to obtain the filtered angular velocity and the filtered acceleration.
[0076] The filtering formula for a k-order IIR filter performing low-pass filtering can be expressed as:
[0077] a(1)*y(n) = b(1)*x(n) + b(2)*x(n-1) + ... + b(k+1)*x(nk) - a(2)*y(n-1) - ... - a(k+1)*y(nk);
[0078] Where a(1), b(1), b(2), b(k+1), a(2), and a(k+1) are all filter coefficients, which can be obtained through filter performance, and a(1) is coefficient 1;
[0079] k is the order of the filter;
[0080] a(1)*y(n) is the output value of the filter at time n, which is used as the current input data.
[0081] x(n), x(n-1), and x(nk) are the input values of the filter at time n, time n-1, and time nk, respectively, serving as historical input data. For example, if n is 6 and the filter order k is 3, then x(n), x(n-1), and x(nk) are x(6), x(5), and x(3), representing the input values of the filter at the 6th second, 5th second, and 3rd second, respectively.
[0082] y(n-1) and y(nk) are the output values of the filter at time n-1 and time nk, respectively, and are used as historical output data.
[0083] In this embodiment, the filtered output of the IIR depends on the current input data, historical input data, and historical output data. The current input data is adjusted by the difference between the historical input data and the historical output data to make the current input data closer to the historical output data. This removes noise interference signals from the current input data and obtains more accurate current output data, that is, more accurate filtered angular velocity and filtered acceleration. This makes the analysis of the zero-velocity stationary state based on this more accurate.
[0084] In some embodiments, the step of analyzing the filtered angular velocity and filtered acceleration based on preset stationary angular velocity information and preset stationary acceleration information to obtain analysis results includes:
[0085] Discreteness calculations are performed on the filtered angular velocity and the filtered acceleration within a specified time window to obtain discrete information of the filtered angular velocity and the filtered acceleration.
[0086] The analysis results are obtained based on the relationship between the filtered discrete angular velocity information and the preset stationary angular velocity information, and the relationship between the filtered discrete acceleration information and the preset stationary acceleration information.
[0087] The specified time window can be set according to actual needs. In some embodiments, the specified time window can be set to 1 second.
[0088] Specifically, the filtered angular velocity and filtered acceleration within a specified time window are subjected to discreteness calculations. This can be done by variance processing, for example, calculating the variance of the filtered angular velocity within the specified time window to obtain discrete information about the filtered angular velocity. In this case, the discrete information about the filtered angular velocity can also be referred to as the variance of the filtered angular velocity. Similarly, the variance of the filtered acceleration within the specified time window is calculated to obtain discrete information about the filtered acceleration. In this case, the discrete information about the filtered acceleration can also be referred to as the variance of the filtered acceleration.
[0089] In some embodiments, obtaining the analysis results based on the relationship between the filtered discrete angular velocity information and the preset stationary angular velocity information, and the relationship between the filtered discrete acceleration information and the preset stationary acceleration information, includes:
[0090] The analysis results are obtained by determining whether the filtered discrete angular velocity information is less than a preset multiple of the preset stationary angular velocity information, and whether the filtered discrete acceleration information is less than a preset multiple of the preset stationary acceleration information.
[0091] Accordingly, in some embodiments, determining whether the device is in a zero-speed stationary state based on the analysis result includes:
[0092] If the analysis results show that the filtered discrete angular velocity information is less than the preset stationary angular velocity information by a preset multiple, and the filtered discrete acceleration information is less than the preset stationary acceleration information by a preset multiple, then the device is determined to be in a zero-speed stationary state.
[0093] The preset multiplier can be set according to actual technical needs. For example, in some embodiments, the preset multiplier can be set to 3. In this case, when the filtered discrete angular velocity information does not exceed 3 times the preset stationary angular velocity information, and the filtered discrete acceleration information does not exceed 3 times the preset stationary acceleration information, it can be determined that the device is in a zero-speed stationary state at the current moment.
[0094] The expression formula can be Ca<3Ca0 and Cg<3Cg0, where Ca is the filtered acceleration discrete information, Ca0 is the preset stationary acceleration information, Cg is the filtered angular velocity discrete information, and Cg0 is the preset stationary angular velocity information.
[0095] In some embodiments, the above-mentioned zero-speed correction of the device when the device is in a zero-speed stationary state may specifically include:
[0096] When the device is stationary at zero speed, the angular velocity of the inertial navigation device is estimated with zero bias to obtain the zero-bias estimated angular velocity.
[0097] The angular velocity output by the inertial navigation device is corrected based on the zero-bias estimation of the angular velocity.
[0098] In estimating the angular velocity bias of inertial navigation devices, the Earth's rotation angular velocity can be used as the basis for estimation. In some embodiments, this can be expressed by the following formula:
[0099] / n
[0100] in, The zero-bias estimate of the angular velocity is the zero-bias value of the estimated angular velocity. Let be the angular velocity of the original output of the inertial navigation device (IMU) at time k; This represents the attitude matrix of the IMU at time k. A numerical value representing the Earth's angular velocity of rotation; This represents the Earth's rotational angular velocity at time k in the IMU's coordinate system.
[0101] In some embodiments, when correcting the angular velocity output by the inertial navigation device based on the zero-bias estimated angular velocity after obtaining the zero-bias estimated angular velocity, the following methods can be used:
[0102]
[0103] in, The angular velocity output by the IMU at time k is the angular velocity after zero bias and correction for Earth's rotation.
[0104] In some embodiments, after correcting the angular velocity output by the inertial navigation device based on the zero-bias estimated angular velocity, the method further includes:
[0105] The corrected angular velocity is low-pass filtered to obtain the filtered corrected angular velocity.
[0106] By combining the filtered corrected angular velocity and the filtered acceleration information, the preset stationary angular velocity information and the preset stationary acceleration information are updated respectively.
[0107] Therefore, when the device is determined to be in a zero-speed stationary state, the angular velocity output by the inertial navigation device is corrected, and the preset stationary angular velocity information and preset stationary acceleration information are updated respectively, which helps to improve the accuracy of subsequent detection.
[0108] Based on the embodiments described above, the following example illustrates one application scenario. In this embodiment, the device is a vehicle, the filtered discrete information of angular velocity is the filtered angular velocity variance, and the filtered discrete information of acceleration is the filtered acceleration variance.
[0109] First, obtain the wheel speed parameters detected by the vehicle's wheel speedometer at the current moment, and determine whether the wheel speed parameters are greater than 1 m / s. If the wheel speed parameters are greater than 1 m / s, it indicates that the vehicle is currently moving, and the system returns to obtain the wheel speed parameters corresponding to the next moment.
[0110] If the wheel speed parameter is less than 1 m / s, it indicates that the vehicle may be stationary. Further, the satellite speed parameter calculated by the vehicle's GNSS receiver board is obtained. When the satellite speed parameter is greater than 0.1 m / s, it indicates that the vehicle is currently moving, and the system returns to obtain the wheel speed parameter corresponding to the next moment.
[0111] When the satellite-measured velocity parameter is less than 0.1 m / s, the lateral angular velocity and longitudinal acceleration measured by the inertial navigation device at the current moment are obtained, and low-pass filtering is performed on the lateral angular velocity and longitudinal acceleration respectively to obtain the lateral filtered angular velocity and longitudinal filtered acceleration.
[0112] The lateral filtering angular velocity and longitudinal filtering acceleration of the vehicle in the previous 1 second are obtained. The lateral filtering angular velocity includes the current lateral filtering angular velocity and the historical lateral filtering angular velocity in the previous 1 second. The longitudinal filtering angular velocity includes the current longitudinal filtering angular velocity and the historical longitudinal filtering angular velocity in the previous 1 second. Then, the variances of the lateral filtering angular velocity and the longitudinal filtering acceleration are calculated to obtain the variance of the filtered lateral angular velocity and the variance of the filtered longitudinal acceleration.
[0113] When the variance of the filtered lateral angular velocity is greater than a preset multiple of the variance of the preset stationary angular velocity, and the variance of the filtered longitudinal acceleration is greater than a preset multiple of the variance of the preset stationary acceleration, it indicates that the vehicle is currently in motion, and the process returns to the step of obtaining the wheel speed parameters corresponding to the next moment.
[0114] When the variance of the filtered lateral angular velocity is less than a preset multiple of the variance of the preset stationary angular velocity, and the variance of the filtered longitudinal acceleration is less than a preset multiple of the variance of the preset stationary acceleration, it can be determined that the vehicle is in a zero-speed stationary state at the current moment.
[0115] When the equipment is determined to be in a zero-speed stationary state, zero-speed correction is performed on the equipment.
[0116] Among them, when performing zero-speed correction on the equipment, different corrections can be made according to actual needs.
[0117] For example, in some embodiments, the formula can be combined. / n performs zero-bias estimation of the angular velocity of the inertial navigation device to obtain the zero-bias estimated angular velocity. Then, the angular velocity is estimated based on zero bias. Combined with formula Correct the angular velocity output by the inertial navigation device.
[0118] After correcting the angular velocity output by the inertial navigation device, the corrected angular velocity can be low-pass filtered, and the preset stationary angular velocity information and preset stationary acceleration information can be updated respectively, which helps to improve the accuracy of detection in subsequent processes.
[0119] Based on the solutions described in the embodiments of this application above, in the control of inertial navigation-based devices, in addition to considering the inertial navigation device (IMU), detection data from non-inertial devices such as GNSS and wheel speedometers are also considered, improving the detection effect. Furthermore, by performing low-pass filtering on the inertial navigation data from the IMU, the interference of external high-frequency noise is effectively filtered out, improving detection accuracy. Moreover, by selecting the lateral angular velocity and longitudinal acceleration of the inertial navigation device for subsequent zero-velocity stationary determination, unnecessary addition of acceleration and / or angular velocity in other directions is avoided, reducing the amount of data involved in processing, improving processing efficiency and accuracy.
[0120] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0121] Based on the same inventive concept, this application also provides an inertial navigation-based device control apparatus for implementing the aforementioned inertial navigation-based device control method. The solution provided by this apparatus is similar to the implementation described in the above method; therefore, the specific limitations in one or more embodiments of the inertial navigation-based device control apparatus provided below can be found in the limitations of the inertial navigation-based device control method described above, and will not be repeated here.
[0122] In one embodiment, such as Figure 3 As shown, an inertial navigation-based device control apparatus is provided, comprising:
[0123] The detection parameter acquisition module 301 is used to acquire the detection parameters of the non-inertial device detection of the equipment;
[0124] The inertial data acquisition module 302 is used to acquire inertial navigation data of the inertial navigation device of the device when the device is determined to be stationary based on the detection parameters. The inertial navigation data includes angular velocity and acceleration.
[0125] The filtering module 303 performs low-pass filtering on the inertial navigation data to obtain the filtered angular velocity and filtered acceleration.
[0126] The zero-speed analysis module 304 is used to analyze the filtered angular velocity and filtered acceleration based on preset stationary angular velocity information and preset stationary acceleration information, obtain analysis results, and determine whether the device is in a zero-speed stationary state based on the analysis results.
[0127] The correction module 305 is used to perform zero-speed correction on the device when the device is in a zero-speed stationary state.
[0128] In some embodiments, the detection parameter acquisition module 301 is used to acquire wheel speed parameters measured by the wheel speed meter and satellite measurement speed parameters calculated by the GNSS receiver board. The detection parameters include the wheel speed parameters and the satellite measurement speed parameters.
[0129] In some embodiments: the angular velocity includes the lateral angular velocity of the inertial navigation device, and the acceleration includes the longitudinal acceleration of the inertial navigation device.
[0130] In some embodiments, the zero-velocity analysis module 304 is further configured to perform discreteness calculation processing on the filtered angular velocity and the filtered acceleration within a specified time window, respectively, to obtain discrete information of the filtered angular velocity and discrete information of the filtered acceleration; and to obtain analysis results based on the magnitude relationship between the discrete information of the filtered angular velocity and the preset stationary angular velocity information, and the magnitude relationship between the discrete information of the filtered acceleration and the preset stationary acceleration information.
[0131] In some embodiments, the zero-velocity analysis module 304 is further configured to determine whether the filtered discrete angular velocity information is less than a preset multiple of the preset stationary angular velocity information, and whether the filtered discrete acceleration information is less than a preset multiple of the preset stationary acceleration information, thereby obtaining the analysis result.
[0132] In some embodiments, the zero-speed analysis module 304 is further configured to determine that the device is in a zero-speed stationary state when the analysis result is that the filtered discrete angular velocity information is less than the preset stationary angular velocity information by a preset multiple, and the filtered discrete acceleration information is less than the preset stationary acceleration information by a preset multiple.
[0133] In some embodiments, the filtered angular velocity discrete information includes the filtered angular velocity variance, and the filtered acceleration discrete information includes the filtered acceleration variance.
[0134] In some embodiments, the correction module 305 is further configured to, when the device is in a zero-speed stationary state, estimate the angular velocity of the inertial navigation device with zero bias, obtain the zero-bias estimated angular velocity, and correct the angular velocity output by the inertial navigation device based on the zero-bias estimated angular velocity.
[0135] In some embodiments, it also includes:
[0136] The update module is used to obtain the filtered corrected angular velocity obtained by low-pass filtering the corrected angular velocity; and to update the preset stationary angular velocity information and the preset stationary acceleration information by combining the filtered corrected angular velocity and the filtered acceleration information.
[0137] The modules in the aforementioned inertial navigation-based device control unit can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.
[0138] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 4 As shown, the computer device includes a processor, memory, communication interface, display screen, and input devices connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements an inertial navigation-based device control method. The display screen can be an LCD screen or an e-ink screen. The input devices can be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the computer device casing, or an external keyboard, touchpad, or mouse.
[0139] Those skilled in the art will understand that Figure 4 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0140] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the method described in any of the embodiments above.
[0141] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described in any of the embodiments above.
[0142] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the method described in any of the embodiments above.
[0143] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties.
[0144] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0145] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0146] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A device control method based on inertial navigation, characterized by, The method includes: Obtain the detection parameters for non-inertial components of the equipment; When the device is determined to be stationary based on the detection parameters, the inertial navigation data of the device's inertial navigation device is acquired. The inertial navigation data includes angular velocity and acceleration, where the angular velocity is the lateral angular velocity of the inertial navigation device and the acceleration is the longitudinal acceleration of the inertial navigation device. The inertial navigation data is subjected to low-pass filtering to obtain the filtered angular velocity and filtered acceleration. Based on preset stationary angular velocity information and preset stationary acceleration information, the filtered angular velocity and filtered acceleration are analyzed to obtain analysis results, and it is determined whether the device is in a zero-speed stationary state based on the analysis results; wherein, the preset stationary angular velocity information is determined based on the filtered angular velocity of the inertial navigation device in a zero-speed stationary state a certain number of times within a preset time period, and the preset stationary acceleration information is determined based on the filtered acceleration of the inertial navigation device in a zero-speed stationary state a certain number of times within a preset time period; With the device at zero speed and stationary, combined with the Earth's rotational angular velocity, through... / n performs zero-bias estimation of the angular velocity of the inertial navigation device to obtain the zero-bias estimated angular velocity, wherein, To estimate the angular velocity with zero bias, Let be the initial angular velocity output by the inertial navigation device at time k. The attitude matrix of the inertial navigation device at time k is represented. Represents the Earth's rotational angular velocity. This represents the value of the Earth's rotational angular velocity at time k in the coordinate system of the inertial navigation device; Based on zero-bias estimation of angular velocity, through The angular velocity output by the inertial navigation device is corrected, wherein, This is the corrected angular velocity; The corrected angular velocity is low-pass filtered to obtain the filtered corrected angular velocity. The filtered corrected angular velocity and the filtered acceleration information are then combined to update the preset stationary angular velocity information and the preset stationary acceleration information, respectively.
2. The method according to claim 1, characterized in that, The acquisition of the detection parameters for non-inertial device detection of the device includes: The wheel speed parameters measured by the wheel speed meter and the satellite speed parameters calculated by the GNSS receiver board are obtained. The detection parameters include the wheel speed parameters and the satellite speed parameters.
3. The method according to any one of claims 1 or 2, characterized in that, The process involves analyzing the filtered angular velocity and filtered acceleration based on preset stationary angular velocity and preset stationary acceleration information to obtain analysis results, including: Discreteness calculations are performed on the filtered angular velocity and the filtered acceleration within a specified time window to obtain discrete information of the filtered angular velocity and the filtered acceleration. The analysis results are obtained based on the relationship between the filtered discrete angular velocity information and the preset stationary angular velocity information, and the relationship between the filtered discrete acceleration information and the preset stationary acceleration information.
4. The method according to claim 3, characterized in that, The step of obtaining analysis results based on the relationship between the filtered discrete angular velocity information and the preset stationary angular velocity information, and the relationship between the filtered discrete acceleration information and the preset stationary acceleration information, includes: The analysis results are obtained by determining whether the filtered discrete angular velocity information is less than a preset multiple of the preset stationary angular velocity information, and whether the filtered discrete acceleration information is less than a preset multiple of the preset stationary acceleration information.
5. The method according to claim 4, characterized in that, Determining whether the device is in a zero-speed stationary state based on the analysis results includes: If the analysis results show that the filtered discrete angular velocity information is less than the preset stationary angular velocity information by a preset multiple, and the filtered discrete acceleration information is less than the preset stationary acceleration information by a preset multiple, then the device is determined to be in a zero-speed stationary state.
6. The method according to claim 4, characterized in that, The filtered discrete information on angular velocity includes the filtered variance on angular velocity, and the filtered discrete information on acceleration includes the filtered variance on acceleration.
7. A device control apparatus based on inertial navigation, characterized in that, The device includes: The detection parameter acquisition module is used to acquire the detection parameters for non-inertial device detection of the equipment; An inertial data acquisition module is used to acquire inertial navigation data of the inertial navigation device of the device when the device is determined to be stationary based on the detection parameters. The inertial navigation data includes angular velocity and acceleration. The filtering module performs low-pass filtering on the inertial navigation data to obtain the filtered angular velocity and the filtered acceleration, wherein the angular velocity is the lateral angular velocity of the inertial navigation device and the acceleration is the longitudinal acceleration of the inertial navigation device. The zero-speed analysis module is used to analyze the filtered angular velocity and filtered acceleration based on preset stationary angular velocity information and preset stationary acceleration information, obtain analysis results, and determine whether the device is in a zero-speed stationary state based on the analysis results; wherein, the preset stationary angular velocity information is determined based on the filtered angular velocity of the inertial navigation device in a zero-speed stationary state a certain number of times within a preset time period, and the preset stationary acceleration information is determined based on the filtered acceleration of the inertial navigation device in a zero-speed stationary state a certain number of times within a preset time period; The correction module is used to, when the device is in a zero-speed stationary state, combine the Earth's rotational angular velocity and... / n performs zero-bias estimation of the angular velocity of the inertial navigation device to obtain the zero-bias estimated angular velocity, wherein, To estimate the angular velocity with zero bias, Let be the initial angular velocity output by the inertial navigation device at time k. The attitude matrix of the inertial navigation device at time k is represented. Represents the Earth's rotational angular velocity. This represents the Earth's rotational angular velocity at time k in the coordinate system of the inertial navigation device; the angular velocity is estimated based on zero bias, through... The angular velocity output by the inertial navigation device is corrected, wherein, The corrected angular velocity, The attitude matrix of the inertial navigation device at time k is represented. Represents the Earth's rotational angular velocity. This represents the value of the Earth's rotational angular velocity at time k in the coordinate system of the inertial navigation device. The angular velocity is estimated with zero bias; and the corrected angular velocity is low-pass filtered to obtain the filtered corrected angular velocity. The preset stationary angular velocity information and the preset stationary acceleration information are updated by combining the filtered corrected angular velocity and the filtered acceleration information.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Inertial navigation error correction method based on vehicle zero speed detection
CN110702104A
Zero-speed detection method and device, computer equipment and storage medium
CN114236166A