A navigation data synchronization method for a vehicle terminal, a vehicle, and related devices
By storing the inertial navigation delay time in the vehicle system and using the system timestamp to restore the valid timestamp of the inertial navigation data, the problem of inaccurate navigation data caused by the loss of GPS timestamps is solved, and the time alignment and positioning calibration of navigation data are achieved, thus improving the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- GREAT WALL MOTOR CO LTD
- Filing Date
- 2026-05-08
- Publication Date
- 2026-06-19
AI Technical Summary
The loss of GPS timestamps results in inertial navigation data lacking timestamps, making it impossible to provide a stable and reliable time reference for the interconnection module. This leads to uncertain timestamps in the mobile terminal navigation data, causing errors in the alignment of positioning data with timestamps, thus reducing navigation accuracy and user experience.
By pre-storing the inertial navigation delay time, the system timestamp of the vehicle system is used to accurately restore the valid timestamp of the inertial navigation data when the timestamp of the positioning data is missing, ensuring the time alignment and positioning calibration of the inertial navigation data with the positioning data on the user terminal side.
It effectively reduces the deviation between the vehicle position displayed on the user terminal and the actual driving position of the vehicle, improves the navigation user experience, and ensures the accuracy of navigation data time alignment and positioning calibration.
Smart Images

Figure CN122247548A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of navigation technology, and in particular to a method for synchronizing navigation data on a vehicle-mounted system, a vehicle, and related devices. Background Technology
[0002] In the navigation linkage solution between the vehicle infotainment system and the mobile terminal, the vehicle's local navigation module obtains raw data containing latitude, longitude and GPS timestamps from the vehicle's GPS chip. After processing by the internal inertial navigation algorithm, it generates smoother and more stable inertial navigation data and transmits the inertial navigation data to the vehicle's interconnection and interaction module.
[0003] The inertial navigation data transmitted from the local navigation module to the interconnectivity module only contains latitude and longitude information, not timestamps. After receiving the inertial navigation data, the interconnectivity module also directly obtains real-time raw GPS data from the vehicle's GPS chip. However, due to the issue of GPS timestamp loss during data transmission, the inertial navigation data itself lacks timestamps, and the real-time raw GPS data may also be missing timestamps. Neither set of data can provide a stable and reliable time reference for the interconnectivity module, resulting in uncertainty in the timestamp of the navigation data sent from the interconnectivity module to the mobile terminal.
[0004] Because the local navigation module has an inherent data processing delay when processing the raw GPS data using inertial navigation algorithms, if the interconnection module cannot obtain a stable and valid timestamp, the alignment of the positioning data and the timestamp in the final navigation data assembled for the mobile terminal will be incorrect. This will result in a significant deviation between the vehicle position displayed on the mobile terminal navigation and the actual driving position of the vehicle, reducing navigation accuracy and user experience. Summary of the Invention
[0005] In view of the above problems, this application provides a method for synchronizing navigation data on a vehicle-mounted system, a vehicle, and related devices. By pre-storing the inertial navigation delay time, when the positioning data timestamp is missing, the effective timestamp of the inertial navigation data can be accurately restored based on the system timestamp and the inertial navigation delay time. This allows the user terminal to achieve time alignment and positioning calibration between the inertial navigation data and the user terminal's positioning data based on the effective timestamp of the inertial navigation data. The specific solution is as follows:
[0006] The first aspect of this application provides a method for synchronizing navigation data on a vehicle-mounted system, including:
[0007] Upon receiving inertial navigation data, the system timestamp of the current vehicle system is obtained. The inertial navigation data is generated by smoothing the positioning data.
[0008] The effective timestamp of the inertial navigation data is determined based on the system timestamp and the pre-stored inertial navigation delay time, wherein the inertial navigation delay time is the processing time required to generate the inertial navigation data;
[0009] Navigation data is sent to the user terminal, the navigation data including: the inertial navigation data and the valid timestamp of the inertial navigation data.
[0010] In one possible implementation, the positioning data includes at least one of GPS data and BeiDou positioning data.
[0011] In one possible implementation, the positioning data includes GPS data and BeiDou positioning data. A method for smoothing the positioning data to generate inertial navigation data and determining the inertial navigation delay time includes:
[0012] The GPS data is smoothed to generate first inertial navigation data, and the difference between the time of generating the first inertial navigation data and the timestamp of the GPS data is determined as the first inertial navigation delay time.
[0013] The BeiDou positioning data is smoothed to generate second inertial navigation data. The difference between the time of generating the second inertial navigation data and the timestamp of the BeiDou positioning data is determined as the second inertial navigation delay time.
[0014] The inertial navigation data with the largest delay time is removed from the first inertial navigation data and the second inertial navigation data.
[0015] In one possible implementation, the method for storing the inertial navigation delay time includes:
[0016] Determine whether the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within a preset range;
[0017] If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within a preset range, the inertial navigation data is determined to be valid inertial navigation data. The difference between the time of generating the inertial navigation data and the timestamp of the positioning data is determined as the inertial navigation delay time, and the inertial navigation delay time is stored.
[0018] In one possible implementation, the vehicle-mounted navigation data synchronization method further includes:
[0019] If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is not within a preset range, the inertial navigation data is determined to be invalid and is discarded.
[0020] In one possible implementation, the vehicle-mounted navigation data synchronization method further includes:
[0021] If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is not within a preset range, the inertial navigation data is determined to be invalid inertial navigation data, and the valid inertial navigation data for the current sampling period is predicted based on the valid inertial navigation data of the previous sampling period and the vehicle's motion parameters.
[0022] A second aspect of this application provides a vehicle-mounted controller, including at least one processor and a memory connected to the processor, wherein:
[0023] The memory is used to store computer programs;
[0024] The processor is used to execute the computer program so that the vehicle-mounted controller can implement the vehicle-mounted navigation data synchronization method of the first aspect or any implementation thereof.
[0025] A third aspect of this application provides a vehicle including the vehicle-mounted controller described in the second aspect above.
[0026] The fourth aspect of this application provides a computer program product, including computer-readable instructions, which, when executed on a vehicle-mounted controller, cause the vehicle-mounted controller to implement the vehicle-mounted navigation data synchronization method of the first aspect or any implementation thereof.
[0027] The fifth aspect of this application provides a computer storage medium carrying one or more computer programs, which, when executed by a vehicle-mounted controller, enable the vehicle-mounted controller to implement the vehicle-mounted navigation data synchronization method described in the first aspect or any implementation thereof.
[0028] By employing the above technical solution, this application provides a vehicle-mounted navigation data synchronization method. After smoothing the positioning data to generate inertial navigation data, the processing delay time of the inertial navigation data is accurately quantified and stored. Since the system timestamp of the current vehicle system is a stable time reference that can be obtained within the vehicle, the system timestamp of the current vehicle system can be stably obtained regardless of whether the timestamp of the positioning data is lost. By combining the system timestamp of the current vehicle system with the pre-stored inertial delay time, the effective timestamp of the inertial navigation data can be accurately determined when the timestamp of the positioning data is missing. After sending the navigation data, including the inertial navigation data and its effective timestamp, to the user terminal, the user terminal can achieve time alignment and positioning calibration between the inertial navigation data and the positioning data on the user terminal side based on the effective timestamp of the inertial navigation data. This effectively reduces the deviation between the vehicle position displayed on the user terminal and the actual driving position of the vehicle, thereby improving the user's navigation experience. Attached Figure Description
[0029] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0030] Figure 1 A system architecture diagram provided for an embodiment of this application;
[0031] Figure 2 A flowchart illustrating a method for synchronizing navigation data on a vehicle-mounted system, as provided in an embodiment of this application;
[0032] Figure 3 This is a partial flowchart illustrating a method for synchronizing navigation data on a vehicle-mounted system, as provided in an embodiment of this application.
[0033] Figure 4 A partial flowchart illustrating another method for synchronizing vehicle-mounted navigation data provided in this application embodiment;
[0034] Figure 5 A schematic diagram of a vehicle-mounted terminal provided in an embodiment of this application;
[0035] Figure 6 This is a schematic diagram of a vehicle-mounted controller provided in an embodiment of this application. Detailed Implementation
[0036] The embodiments of this application are described below with reference to the accompanying drawings. The terminology used in the implementation section of this application is for explaining specific embodiments only and is not intended to limit the scope of this application.
[0037] The embodiments of this application will now be described with reference to the accompanying drawings. Those skilled in the art will recognize that, with technological advancements and the emergence of new scenarios, the technical solutions provided in the embodiments of this application are equally applicable to similar technical problems.
[0038] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such terms are interchangeable where appropriate; this is merely a way of distinguishing objects with the same attributes in the embodiments of this application. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion, so that a process, method, system, product, or apparatus that comprises a series of elements is not necessarily limited to those elements, but may include other elements not explicitly listed or inherent to those processes, methods, products, or apparatuses.
[0039] This application can be applied to the field of vehicle-to-vehicle and mobile terminal interconnection. The following will introduce several application scenarios that have been implemented in products, taking the vehicle-to-vehicle and vehicle-to-vehicle interconnection navigation scenario as an example.
[0040] The vehicle navigation data synchronization method provided in this application can be applied to the daily use scenario of vehicle-to-vehicle navigation and mobile phone (iOS / Android system) interconnection in mainstream family passenger vehicles. This scenario is a high-frequency application scenario for in-vehicle navigation, covering conventional driving scenarios such as urban road driving, long-distance highway driving, and suburban road driving. It is compatible with vehicle-to-mobile phone interconnection forms such as iOS CarPlay and Android vehicle-to-vehicle interconnection (such as HiCar and Carlife). The vehicle-to-vehicle terminal has GPS positioning, inertial navigation algorithm processing, and vehicle-to-mobile phone data interaction functions.
[0041] During vehicle operation, the vehicle's local navigation module obtains positioning data, including latitude, longitude, and timestamps, from the vehicle's GPS chip. This data is then smoothed using an internal inertial navigation algorithm to generate more stable inertial navigation data. The latency of this processed positioning data is precisely quantified and stored. Even when the vehicle is traveling on urban elevated roads, tunnels, roundabouts, or other areas where GPS signals are susceptible to interference, and when the positioning data timestamp is missing, the vehicle-to-everything (V2X) interconnection module, after receiving the inertial navigation data from the local navigation module, simultaneously obtains the current vehicle system's system timestamp. Combined with the pre-stored inertial latency, it calculates the valid timestamp for the inertial navigation data and then sends the navigation data, carrying the inertial navigation data and its corresponding valid timestamp, to the user's mobile phone via a wireless or wired connection.
[0042] After receiving the navigation data, the mobile navigation application quickly completes the time alignment and positioning calibration of the inertial navigation data on the vehicle's side and the positioning data on the mobile phone based on the valid timestamp. This ensures that the vehicle's position displayed by the mobile navigation application is highly consistent with the actual driving position. Users do not need to frequently check the navigation position, achieving a smooth and accurate vehicle-to-mobile interconnected navigation experience, while avoiding driving misjudgment problems caused by positioning deviations.
[0043] See Figure 1 , Figure 1 A schematic diagram of a system architecture is shown. The system may include a user terminal 100 and a vehicle-mounted controller 200. The vehicle-mounted controller 200 can provide the vehicle-mounted navigation data synchronization method provided in the embodiments of this application to one or more user terminals.
[0044] The user terminal 100 can be a mobile terminal based on the iOS operating system or a mobile terminal based on the Android operating system; this embodiment does not impose a specific limitation. A navigation application can be installed on the user terminal 100. The user terminal 100 is interconnected with the vehicle-mounted controller 200. The vehicle-mounted controller 200 smooths the vehicle-mounted positioning data, generates inertial navigation data, determines the valid timestamp of the inertial navigation data, and sends the navigation data, including the inertial navigation data and the valid timestamp, to the user terminal 100. This ensures that the valid timestamp of the inertial navigation data on the user terminal 100 achieves time alignment and positioning calibration between the inertial navigation data and the positioning data on the user terminal side, and projects the navigation interface onto the vehicle-mounted display.
[0045] The following description Figure 1 The product form of the middle user terminal 100;
[0046] The user terminal 100 in this application embodiment can be a smartphone, tablet computer, etc., and this application embodiment does not impose any restrictions on it.
[0047] User terminal 100 may include a radio frequency unit, memory, input unit, display unit, camera (optional), audio circuit (optional), speaker (optional), microphone (optional), headphone jack (optional), processor, external interface, power supply, and other components. Those skilled in the art will understand that the above-mentioned components are merely examples and do not constitute a limitation on user terminal 100; it may include more or fewer components, or combine certain components, or use different components.
[0048] The input unit can be used to receive input numeric or character information, and to generate key signal inputs related to user settings and function control of the user terminal 100. Specifically, the input unit may include a touch screen (optional) and / or other input devices. Specifically, other input devices may include, but are not limited to, one or more of the following: physical keyboard, function keys (such as volume control buttons, power buttons, etc.), trackball, mouse, joystick, etc.
[0049] Among them, the input device can receive input data, etc.
[0050] The display unit can be used to display information input by the user or information provided to the user, various menus of the terminal, interactive interfaces, file display, and / or playback of any multimedia file. In the embodiments of this application, the display unit can be used to display the interface of a navigation application, etc.
[0051] The memory can be used to store software code related to the vehicle-to-vehicle navigation data synchronization method. The processor can execute the relevant steps of the vehicle-to-vehicle navigation data synchronization method, and can also schedule other units (such as the above-mentioned input unit and display unit) to achieve corresponding functions, such as realizing time alignment and positioning calibration of inertial navigation data and user terminal side positioning data according to the valid timestamp of the inertial navigation data sent by the vehicle-to-vehicle controller 200, and projecting the navigation interface onto the vehicle-to-vehicle display.
[0052] This radio frequency unit (optional) can be used to receive and send signals during information transmission or calls.
[0053] In this embodiment of the application, the radio frequency unit can receive navigation data sent by the vehicle-mounted controller 200, which includes inertial navigation data and a valid timestamp of the inertial navigation data.
[0054] It should be understood that this radio frequency unit is optional and can be replaced with other communication interfaces, such as a network port.
[0055] The user terminal 100 also includes a power source (such as a battery) that supplies power to the various components.
[0056] The user terminal 100 also includes an external interface, which can be a standard Micro USB interface or a multi-pin connector, which can be used to connect the user terminal 100 to other devices for communication, or to connect a charger to charge the user terminal 100.
[0057] The vehicle-mounted controller 200 includes a bus, a processor, a communication interface, and a memory. The processor, memory, and communication interface communicate with each other via the bus.
[0058] The memory can be used to store software code related to the vehicle-to-vehicle navigation data synchronization method, and the processor can execute the steps of the chip's vehicle-to-vehicle navigation data synchronization method, or schedule other units to achieve the corresponding functions.
[0059] This application provides a method for synchronizing navigation data on a vehicle-mounted system, applied to the vehicle-mounted controller 200 in the above embodiments. The method for synchronizing navigation data on a vehicle-mounted system according to this application will be described in detail below with reference to the accompanying drawings.
[0060] Reference Figure 2 , Figure 2 This is a flowchart illustrating a method for synchronizing navigation data on a vehicle-mounted system, as provided in an embodiment of this application. Figure 2 As shown in the embodiment of this application, a method for synchronizing navigation data on a vehicle-mounted system may include steps 201 to 203, which are described in detail below.
[0061] 201: Upon receiving inertial navigation data, obtain the current system timestamp of the vehicle system. The inertial navigation data is generated by smoothing the positioning data.
[0062] For example, the in-vehicle infotainment system includes a local navigation module and an interconnection module. After the system starts up, the local navigation module initializes normally and obtains the first frame of positioning data from the system's positioning chip. Subsequent positioning data obtained from the chip may have missing timestamps, so the timestamp from the first frame is used as the reference. The local navigation module receives positioning data including timestamps (hereinafter referred to as...). In the case of [missing information], the positioning data will be smoothed to generate inertial navigation data, and the system timestamp of the current vehicle system will be recorded when the inertial navigation data is generated. That is, the time to generate inertial navigation data. By adjusting the time of generating inertial navigation data Subtract timestamp The delay time of the inertial navigation data is obtained and stored as the inertial navigation delay time ΔT, which represents the processing time required to generate the inertial navigation data. Storing the inertial navigation time ΔT allows for the restoration of the valid time corresponding to the inertial navigation data in scenarios such as tunnels where the timestamp of the positioning data cannot be obtained.
[0063] Subsequently, the local navigation module acquires the positioning data, smooths it, generates inertial navigation data, and sends the inertial navigation data to the interconnection module. In one possible implementation, if the positioning data includes a timestamp, the local navigation module can calculate the inertial navigation delay in real time based on the time of generating the inertial navigation data and the timestamp in the positioning data, and then package the inertial navigation data and the inertial delay together before sending them to the interconnection module.
[0064] While receiving inertial navigation data from the local navigation module, the interconnection module records the current system timestamp of the vehicle's infotainment system, denoted as . It should be noted that, Indicates the time when inertial navigation data is generated. This indicates that the interconnectivity module, while receiving the inertial navigation data and latency from the local navigation module, records the current system timestamp of the vehicle's infotainment system. Not equivalent to .
[0065] In another possible implementation, the interconnection module will also receive real-time positioning data output by the positioning chip, and match the latitude and longitude data in the real-time positioning data with the data in the inertial navigation data. The difference between the timestamp of the original positioning data corresponding to the inertial navigation data and the timestamp of the real-time positioning data can also be used to obtain △T (that is, the time taken by the inertial navigation algorithm to calculate and generate the inertial navigation data).
[0066] It is understandable that the current vehicle system's system timestamp is a stable time reference that can be obtained within the vehicle system. Regardless of whether the timestamp of the location data is lost, the current vehicle system's system timestamp can still be obtained.
[0067] 202: Determine the valid timestamp of the inertial navigation data based on the system timestamp and the delay time of the pre-stored inertial navigation data.
[0068] Record the system timestamp as The valid timestamp of the inertial navigation data is recorded as ,but .
[0069] The timestamp of the positioning data represents the initial time of inertial navigation data processing. However, the inertial navigation data generated after smoothing by the internal inertial navigation algorithm has an inherent processing delay. At this point, the inertial navigation data has deviated from the original time anchor point and cannot be directly used as a valid positioning time reference. The current vehicle system's system timestamp... This provides a stable time base for the vehicle's internal systems, ensuring that the system's current timestamp can be reliably obtained regardless of whether the location data's timestamp is lost. This is achieved by using the current system timestamp... By subtracting the delay time ΔT, the valid timestamp of the inertial navigation data can be reconstructed regardless of whether the timestamp of the positioning data is lost. This accurately represents the time when the vehicle's position corresponding to the inertial navigation data occurred, ensuring that the user terminal can use this valid timestamp. Achieve precise alignment between positioning data and time, eliminating positioning offset.
[0070] 203: Send navigation data to the user terminal. The navigation data includes: inertial navigation data and a valid timestamp of the inertial navigation data.
[0071] The vehicle-mounted controller sends navigation data to the user terminal based on the interconnection and communication architecture between the vehicle-mounted controller and the user terminal. For example, the vehicle-mounted controller packages the inertial navigation data and the valid timestamp of the inertial navigation data into a standardized package to generate a transmission data packet with a fixed structure that can be recognized by the user terminal, and sends the data packet to the user terminal in accordance with the interconnection and communication protocol between the vehicle-mounted controller and the user terminal.
[0072] After receiving the inertial navigation data and its valid timestamp, the user terminal can time-align the inertial navigation data with the positioning data on the user terminal side based on the valid timestamp, complete the positioning calibration, thereby eliminating navigation positioning offset and ensuring that the navigation position displayed on the user terminal is consistent with the actual position of the vehicle.
[0073] This embodiment provides a method for synchronizing navigation data on a vehicle-mounted system. After smoothing the positioning data to generate inertial navigation data, the processing delay time of the inertial navigation data is accurately quantified and stored. Since the system timestamp of the current vehicle-mounted system is a stable time reference that can be obtained internally, the system timestamp of the current vehicle-mounted system can be stably obtained regardless of whether the timestamp of the positioning data is lost. By combining the system timestamp of the current vehicle-mounted system with the pre-stored inertial delay time, the effective timestamp of the inertial navigation data can be accurately determined when the timestamp of the positioning data is missing. After sending the navigation data, including the inertial navigation data and its effective timestamp, to the user terminal, the user terminal can achieve time alignment and positioning calibration between the inertial navigation data and the positioning data on the user terminal side based on the effective timestamp of the inertial navigation data. This effectively reduces the deviation between the vehicle position displayed on the user terminal and the actual driving position of the vehicle, thereby improving the user's navigation experience.
[0074] In the above embodiments, the positioning data includes at least one of GPS data and BeiDou positioning data.
[0075] When the vehicle's infotainment system is equipped with a GPS chip, GPS data is obtained from the chip. This GPS data includes the vehicle's latitude and longitude information and the corresponding timestamp. .
[0076] When the vehicle's infotainment system is equipped with a BeiDou positioning chip, BeiDou positioning data is obtained from the chip. This data includes the vehicle's latitude and longitude information and the corresponding timestamp. .
[0077] The timestamp T1 is the accurate time when the latitude and longitude information in the positioning data was obtained, and it belongs to the time system of the positioning chip.
[0078] Specifically, the positioning data is smoothed using an internal inertial navigation algorithm to generate inertial navigation data.
[0079] Taking GPS data as an example, the acquired location data (latitude and longitude information, timestamp) As an observation, motion sensing data (including vehicle angular velocity, acceleration, heading angle, speed, and direction) from the vehicle's IMU (Inertial Measurement Unit) is simultaneously collected as state variables. Based on the motion characteristics of the vehicle navigation system, the core model of the Kalman filter is initialized, defining the state equation and observation equation. The state equation, based on the vehicle motion state variables collected by the IMU, establishes a dynamic prediction model for the vehicle's position, predicting the vehicle's latitude and longitude position and motion trend at the next moment, reflecting the actual trajectory changes. The observation equation, based on the latitude and longitude observations of GPS data, establishes a position observation model, serving as the actual verification basis for the prediction results of the state equation. Initial filter parameters (such as the state covariance matrix and observation noise covariance matrix) are also set. In normal scenarios, default parameters are adapted to urban / highway driving. Under high load on the vehicle navigation system, the weight of motion state variables is dynamically increased, reducing the proportion of static smoothing to ensure computational efficiency. Based on the state equation of the Kalman filter and combined with the preprocessed IMU motion data, the vehicle's position at the timestamp is predicted. The latitude and longitude positions within a short period are used to obtain a priori estimate of the vehicle's position (i.e., a theoretical position derived solely from motion data). Simultaneously, the error covariance of the prior estimate is calculated to reflect the error range of the prediction result. The latitude and longitude observations from the GPS data are substituted into the observation equation, and the prior estimate obtained in the above steps is compared to calculate the Kalman gain. The prior estimate is then corrected using the Kalman gain to obtain the posterior optimal estimate of the vehicle's position. This value integrates the precise positioning information from GPS and the continuous motion information from the IMU, preserving the positioning accuracy of GPS while compensating for the susceptibility to interference and discontinuous sampling of GPS data. The Kalman-filtered corrected posterior optimal estimate is used as the final inertial navigation data output; that is, the inertial navigation data includes the latitude and longitude information corresponding to the Kalman-filtered corrected posterior optimal estimate. The inertial navigation algorithm only smooths the GPS data; the latitude and longitude in the GPS data itself remain unchanged.
[0080] In one possible implementation, the positioning data includes GPS data and BeiDou positioning data; please refer to [link / reference]. Figure 3 The method for smoothing positioning data, generating inertial navigation data, and determining the inertial navigation delay time in the above embodiments specifically includes the following steps 301-303:
[0081] 301: Smooth the GPS data to generate the first inertial navigation data, and determine the difference between the time of generating the first inertial navigation data and the timestamp of the GPS data as the first inertial delay time.
[0082] 302: Smooth the BeiDou positioning data to generate second inertial navigation data. The difference between the time of generating the second inertial navigation data and the timestamp of the BeiDou positioning data is determined as the second inertial navigation delay time.
[0083] 303: Remove the inertial navigation data with the largest delay time from the first and second inertial navigation data.
[0084] That is, the inertial navigation data with the smallest delay time between the first inertial navigation data and the second inertial navigation data is retained as the inertial navigation delay time.
[0085] This embodiment, based on positioning data including GPS and BeiDou positioning data, smooths both types of positioning data to generate corresponding inertial navigation data and quantifies their respective delay times. Then, it removes the inertial navigation data with the longest delay, as a larger delay indicates a higher degree of obsolescence and a greater time deviation from the actual positioning. Removing this type of data directly discards the navigation data with the worst time accuracy. This leads to the derivation of inertial navigation data with more accurate time dimensions and a higher degree of matching with actual positioning, serving as the basis for subsequent processing. This effectively avoids the time calibration deviation problem caused by single high-latency positioning data, improving the time accuracy and reliability of the inertial navigation data itself. Simultaneously, this processing method makes the obtained inertial delay time more accurate, making the subsequent calculation basis for determining the effective timestamp by combining it with the current vehicle system's system timestamp more precise. This further lays a high-quality data foundation for the user terminal to complete time alignment and positioning calibration. Ultimately, it leads to a greater reduction in the error between the user terminal's navigation display position and the vehicle's actual driving position, significantly improving the positioning accuracy and user navigation experience in scenarios involving vehicle-to-everything (V2X) navigation linkage.
[0086] In one possible implementation, please refer to Figure 4 One implementation of storing the inertial navigation delay time in the above embodiments includes the following steps 401-403:
[0087] 401: Determine whether the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within the preset range.
[0088] The difference between the time of generating the inertial navigation data and the timestamp of the positioning data can be calculated based on steps 301-303 in the above embodiments.
[0089] The preset range is set based on historical or experimental data.
[0090] For example, the latency of each inertial navigation data processing step during actual driving is recorded. After removing abnormal data, valid historical data is obtained. The mean and standard deviation of the latency of the inertial navigation data in the valid historical data are calculated. The mean ± N times the standard deviation is used as a preset range. Taking the mean latency of the inertial navigation data in the valid historical data as 75ms, the standard deviation as 5ms, and N=2 as an example, the preset range is 65ms~85ms. By continuously iterating and optimizing the preset range through the historical operation data of the vehicle's actual driving, the threshold is made to better match the actual usage habits and operating conditions of the vehicle.
[0091] 402: If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within a preset range, the inertial navigation data is determined to be valid inertial navigation data. The difference between the time of generating the inertial navigation data and the timestamp of the positioning data is determined as the inertial navigation delay time and stored.
[0092] 403: If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is not within the preset range, the inertial navigation data is determined to be invalid.
[0093] This embodiment first determines the validity of the inertial navigation data delay time within a preset range, identifying only inertial navigation data with compliant delay times as valid data. Then, based on the delay time of this valid data, the inertial delay time is determined. This, combined with the difference between the inertial delay time and the system timestamp, determines the valid timestamp. This process first filters out invalid data with excessive delay times from the data source, avoiding the calculation of large deviations in valid timestamps due to abnormal delay data, ensuring the reliability and rationality of the calculation basis for the valid timestamp. Secondly, deriving the valid timestamp from the compliant delay time combined with the system timestamp allows the valid timestamp to accurately match the actual time point corresponding to the inertial navigation data, achieving precise anchoring between the inertial navigation data and the positioning time. Finally, it provides a precise and effective time reference for the user terminal to complete time alignment and positioning calibration between the inertial navigation data and the terminal-side positioning data based on this valid timestamp, fundamentally ensuring the accuracy of time alignment. This effectively reduces the error between the location displayed in the user terminal's navigation application and the actual driving location of the vehicle, improving the positioning accuracy in scenarios where vehicle-mounted and mobile terminal navigation systems are linked.
[0094] In one possible implementation, after determining that the inertial navigation data is invalid, the invalid inertial navigation data is discarded. This implementation, after calculating the delay time of the inertial navigation data, first determines the validity of the delay time within a preset range. If the delay time exceeds the preset range, the corresponding invalid inertial navigation data is directly discarded. Since inertial navigation data with excessive delay times will have severe time deviations, the corresponding valid timestamp calculation results will also deviate from reality. Directly discarding this type of invalid data avoids positioning errors caused by high-latency invalid data participating in subsequent timestamp calculations and positioning calibration from the data source. This prevents erroneous data from being transmitted to the user terminal, causing navigation position deviations. Simultaneously, it simplifies subsequent data processing, reduces the computation and transmission costs of invalid data on the vehicle's system, and ensures that the navigation data used for subsequent time alignment is valid data with compliant delay times and meeting time accuracy standards. This provides reliable data support for the user terminal to complete accurate time alignment and positioning calibration, ensuring the positioning accuracy of the navigation linkage between the vehicle's system and the user terminal.
[0095] In another possible implementation, after determining that the inertial navigation data is invalid, the valid inertial navigation data for the current sampling period is predicted based on the valid inertial navigation data of the previous sampling period and the vehicle's motion parameters.
[0096] For example, read the valid inertial navigation data (including latitude and longitude information and valid timestamp) from the previous sampling period.
[0097] Real-time vehicle motion parameters, including vehicle speed v, heading angle θ, lateral acceleration, longitudinal acceleration, and angular velocity, are read from the vehicle's built-in inertial measurement unit (IMU), vehicle speed sensor, and heading sensor. Using a short-time kinematics model, the effective inertial navigation data for the current sampling period is calculated based on the latitude and longitude information from the previous sampling period's effective data, vehicle motion parameters, and the time interval Δt between adjacent sampling periods. Specifically, based on the heading angle θ and speed v, the changes in longitude and latitude per unit time are calculated. Combined with the time interval Δt, the predicted latitude and longitude coordinates of the vehicle in the current sampling period are estimated. Acceleration can also be used to correct the predicted latitude and longitude coordinates, making them more closely match the vehicle's actual driving trajectory. The predicted latitude and longitude coordinates are then used as the effective inertial navigation data for the current sampling period.
[0098] This implementation, after determining and excluding invalid inertial navigation data, does not directly interrupt the output of navigation data. Instead, it relies on the valid inertial navigation data from the previous sampling period combined with vehicle motion parameters (angular velocity, acceleration, speed, etc.) to predict the valid inertial navigation data for the current sampling period, thereby determining the accurate inertial delay time. This method avoids the positioning deviation problem caused by invalid data with excessive delay time and compensates for the navigation data gap problem that may occur after directly removing invalid data, ensuring the continuity and integrity of inertial navigation data. At the same time, the prediction logic based on the actual vehicle motion parameters allows the predicted data for the current period to closely match the actual driving state of the vehicle, minimizing the deviation between the predicted data and the actual position. This ensures that the vehicle's infotainment system continuously outputs usable navigation data to the user terminal, avoiding navigation position jumps and stuttering on the user terminal due to data gaps. While ensuring positioning accuracy, it also takes into account the continuity of navigation data and the smoothness of the navigation experience. Even if there is invalid inertial navigation data in a single period, the navigation linkage between the vehicle's infotainment system and the user terminal remains stable.
[0099] The method for synchronizing vehicle navigation data provided in this application embodiment will be described below with reference to a specific example.
[0100] Please see Figure 5 The in-vehicle infotainment system shown includes: a positioning chip, a local navigation module, and an in-vehicle infotainment module. The positioning chip includes at least one of a GPS chip and a Beidou positioning chip. If the user terminal is an iOS system, the in-vehicle infotainment module can be a CarPlay module.
[0101] Taking a GPS chip as the positioning chip and a CarPlay module as the vehicle-to-everything (V2X) interconnection module as an example, when the vehicle is driving on a main urban road with a good, unobstructed GPS signal and normal V2X load (only navigation-related programs are running in the background), the method for synchronizing navigation data on the V2X includes the following steps:
[0102] 1. After the vehicle's infotainment system starts up, the local navigation module obtains raw GPS data from the GPS chip: latitude and longitude 116.3974°E, 39.9086°N, GPS timestamp. ;
[0103] 2. The local navigation module processes the data using a Kalman filter algorithm to generate inertial navigation data: latitude and longitude of 116.3975°E, 39.9087°N, and records the system timestamp when the data was generated. Calculation processing delay And store it as the inertial navigation delay time;
[0104] 3. The local navigation module sends the inertial navigation data and ΔT=80ms together to the CarPlay module;
[0105] 4. The CarPlay module stores ΔT and retrieves the current system timestamp of the vehicle's infotainment system. According to the formula The valid timestamp is calculated. ;
[0106] 5. The Carplay module will integrate inertial navigation data, Send to the mobile device, and the mobile navigation application will then... Complete time alignment and positioning calibration.
[0107] Test results show that the location displayed on the mobile phone navigation app is completely consistent with the actual location of the vehicle, with no positioning offset and smooth navigation.
[0108] This application also provides a vehicle-mounted controller in its embodiments. (See reference...) Figure 6 As shown, it illustrates a structural schematic diagram suitable for implementing the vehicle-mounted controller in the embodiments of this application. Figure 6 The vehicle-mounted controller shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0109] like Figure 6 As shown, the vehicle-mounted controller may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage device 608 into a random access memory (RAM) 603. When the vehicle-mounted controller is powered on, the RAM 603 also stores various programs and data required for the operation of the vehicle-mounted controller. The processing unit 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0110] Typically, the following devices can be connected to I / O interface 605: input devices 606 including, for example, a touchscreen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; output devices 607 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage devices 608 including, for example, memory card, hard disk, etc.; and communication devices 609. Communication device 609 allows the vehicle-mounted controller to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 6 The vehicle-mounted controller shown has various devices; however, it should be understood that implementation or possession of all the devices shown is not required. More or fewer devices may be implemented alternatively.
[0111] This application also provides a vehicle, including the vehicle-side controller provided in the above embodiments. The vehicle can be a gasoline-powered vehicle, a pure electric vehicle, a hybrid electric vehicle, and can also cover various types of motor vehicles with in-vehicle navigation and vehicle-to-machine interconnection functions, such as range-extended electric vehicles and fuel cell vehicles. This embodiment does not specifically limit the vehicle's power type.
[0112] This application also provides a computer program product including computer-readable instructions. When the computer-readable instructions are executed on the vehicle-mounted controller, the vehicle-mounted controller enables the vehicle-mounted navigation data synchronization method provided in this application:
[0113] Upon receiving inertial navigation data, the system timestamp of the current vehicle system is obtained. The inertial navigation data is generated by smoothing the positioning data.
[0114] The effective timestamp of the inertial navigation data is determined based on the system timestamp and the pre-stored inertial navigation delay time, wherein the inertial navigation delay time is the processing time required to generate the inertial navigation data;
[0115] Navigation data is sent to the user terminal, the navigation data including: the inertial navigation data and the valid timestamp of the inertial navigation data.
[0116] Furthermore, the positioning data includes at least one of GPS data and BeiDou positioning data.
[0117] Furthermore, the positioning data includes GPS data and BeiDou positioning data. A method for smoothing the positioning data to generate inertial navigation data and determining the delay time of the inertial navigation data includes:
[0118] The GPS data is smoothed to generate first inertial navigation data, and the difference between the time of generating the first inertial navigation data and the timestamp of the GPS data is determined as the first inertial navigation delay time.
[0119] The BeiDou positioning data is smoothed to generate second inertial navigation data. The difference between the time of generating the second inertial navigation data and the timestamp of the BeiDou positioning data is determined as the second inertial navigation delay time.
[0120] The inertial navigation data with the largest delay time is removed from the first inertial navigation data and the second inertial navigation data.
[0121] Furthermore, the method for storing the inertial navigation delay time includes:
[0122] Determine whether the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within a preset range;
[0123] If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within a preset range, the inertial navigation data is determined to be valid inertial navigation data. The difference between the time of generating the inertial navigation data and the timestamp of the positioning data is determined as the inertial navigation delay time, and the inertial navigation delay time is stored.
[0124] Furthermore, the vehicle-mounted navigation data synchronization method also includes:
[0125] If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is not within a preset range, the inertial navigation data is determined to be invalid and is discarded.
[0126] Furthermore, the vehicle-mounted navigation data synchronization method also includes:
[0127] If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is not within a preset range, the inertial navigation data is determined to be invalid inertial navigation data, and the valid inertial navigation data for the current sampling period is predicted based on the valid inertial navigation data of the previous sampling period and the vehicle's motion parameters.
[0128] This application also provides a computer-readable storage medium carrying one or more computer programs. When the one or more computer programs are executed by the vehicle-mounted controller, the vehicle-mounted controller can implement the following vehicle-mounted navigation data synchronization method provided in this application:
[0129] Upon receiving inertial navigation data, the system timestamp of the current vehicle system is obtained. The inertial navigation data is generated by smoothing the positioning data.
[0130] The effective timestamp of the inertial navigation data is determined based on the system timestamp and the pre-stored inertial navigation delay time, wherein the inertial navigation delay time is the processing time required to generate the inertial navigation data;
[0131] Navigation data is sent to the user terminal, the navigation data including: the inertial navigation data and the valid timestamp of the inertial navigation data.
[0132] Furthermore, the positioning data includes at least one of GPS data and BeiDou positioning data.
[0133] Furthermore, the positioning data includes GPS data and BeiDou positioning data. A method for smoothing the positioning data to generate inertial navigation data and determining the delay time of the inertial navigation data includes:
[0134] The GPS data is smoothed to generate first inertial navigation data, and the difference between the time of generating the first inertial navigation data and the timestamp of the GPS data is determined as the first inertial navigation delay time.
[0135] The BeiDou positioning data is smoothed to generate second inertial navigation data. The difference between the time of generating the second inertial navigation data and the timestamp of the BeiDou positioning data is determined as the second inertial navigation delay time.
[0136] The inertial navigation data with the largest delay time is removed from the first inertial navigation data and the second inertial navigation data.
[0137] Furthermore, the method for storing the inertial navigation delay time includes:
[0138] Determine whether the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within a preset range;
[0139] If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within a preset range, the inertial navigation data is determined to be valid inertial navigation data. The difference between the time of generating the inertial navigation data and the timestamp of the positioning data is determined as the inertial navigation delay time, and the inertial navigation delay time is stored.
[0140] Furthermore, the vehicle-mounted navigation data synchronization method also includes:
[0141] If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is not within a preset range, the inertial navigation data is determined to be invalid and is discarded.
[0142] Furthermore, the vehicle-mounted navigation data synchronization method also includes:
[0143] If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is not within a preset range, the inertial navigation data is determined to be invalid inertial navigation data, and the valid inertial navigation data for the current sampling period is predicted based on the valid inertial navigation data of the previous sampling period and the vehicle's motion parameters.
[0144] It should also be noted that the device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. In addition, in the device embodiment drawings provided in this application, the connection relationship between modules indicates that they have a communication connection, which can be implemented as one or more communication buses or signal lines.
[0145] Through the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general-purpose hardware, or it can be implemented by special-purpose hardware including application-specific integrated circuits, special-purpose CPUs, special-purpose memory, special-purpose components, etc. Generally, any function performed by a computer program can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be diverse, such as analog circuits, digital circuits, or special-purpose circuits. However, for this application, software program implementation is more often the preferred implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a readable storage medium, such as a computer floppy disk, USB flash drive, mobile hard disk, ROM, RAM, magnetic disk, or optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, training equipment, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0146] In the above embodiments, the implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, in the form of a computer program product.
[0147] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions may be transmitted from one website, computer, training device, or data center to another website, computer, training device, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a training device or data center that integrates one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state drives (SSDs)).
Claims
1. A method for synchronizing navigation data on a vehicle-mounted system, characterized in that, include: Upon receiving inertial navigation data, the system timestamp of the current vehicle system is obtained. The inertial navigation data is generated by smoothing the positioning data. The effective timestamp of the inertial navigation data is determined based on the system timestamp and the pre-stored inertial navigation delay time, wherein the inertial navigation delay time is the processing time required to generate the inertial navigation data; Navigation data is sent to the user terminal, the navigation data including: the inertial navigation data and the valid timestamp of the inertial navigation data.
2. The vehicle-mounted navigation data synchronization method according to claim 1, characterized in that, The positioning data includes at least one of GPS data and BeiDou positioning data.
3. The vehicle-mounted navigation data synchronization method according to claim 1, characterized in that, The positioning data includes GPS data and BeiDou positioning data. A method for smoothing the positioning data to generate the inertial navigation data and determining the inertial navigation delay time includes: The GPS data is smoothed to generate first inertial navigation data, and the difference between the time of generating the first inertial navigation data and the timestamp of the GPS data is determined as the first inertial navigation delay time. The BeiDou positioning data is smoothed to generate second inertial navigation data. The difference between the time of generating the second inertial navigation data and the timestamp of the BeiDou positioning data is determined as the second inertial navigation delay time. The inertial navigation data with the largest delay time is removed from the first inertial navigation data and the second inertial navigation data.
4. The vehicle-mounted navigation data synchronization method according to any one of claims 1-3, characterized in that, The method for storing the inertial navigation delay time includes: Determine whether the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within a preset range; If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is within a preset range, the inertial navigation data is determined to be valid inertial navigation data. The difference between the time of generating the inertial navigation data and the timestamp of the positioning data is determined as the inertial navigation delay time, and the inertial navigation delay time is stored.
5. The vehicle-mounted navigation data synchronization method according to claim 4, characterized in that, Also includes: If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is not within a preset range, the inertial navigation data is determined to be invalid and is discarded.
6. The vehicle-mounted navigation data synchronization method according to claim 4, characterized in that, Also includes: If the difference between the time of generating the inertial navigation data and the timestamp of the positioning data is not within a preset range, the inertial navigation data is determined to be invalid inertial navigation data, and the valid inertial navigation data for the current sampling period is predicted based on the valid inertial navigation data of the previous sampling period and the vehicle's motion parameters.
7. A vehicle-mounted controller, characterized in that, It includes at least one processor and a memory connected to the processor, wherein: The memory is used to store computer programs; The processor is used to execute the computer program so that the vehicle-mounted controller can implement the vehicle-mounted navigation data synchronization method as described in any one of claims 1 to 6.
8. A vehicle, characterized in that, Includes the vehicle-mounted controller as described in claim 7.
9. A computer program product, characterized in that, It includes computer-readable instructions that, when executed on the vehicle-mounted controller, cause the vehicle-mounted controller to implement the vehicle-mounted navigation data synchronization method as described in any one of claims 1 to 6.
10. A computer storage medium, characterized in that, The storage medium carries one or more computer programs, which, when executed by the vehicle-mounted controller, enable the vehicle-mounted controller to implement the vehicle-mounted navigation data synchronization method as described in any one of claims 1 to 6.