Positioning system, method, apparatus, electronic device, and vehicle
Patent Information
- Application Number
- CN202510567228.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-30
- Publication Date
- 2026-10-30
AI Technical Summary
[0005]本申请提供一种定位系统、方法、装置、电子设备及车辆,本申请的目的是为了至少解决相关技术中在对车辆的位置进行定位时,所确定的车辆的定位数据的准确度较低的技术问题
[0018]根据上述技术手段,本申请可以通过MCU获取定位模组输出的用于传输原始观测数据的秒脉冲PPS信号,并基于PPS信号对MCU本地的第二系统时钟进行校时。以及向终端设备发送PPS信号,以使得终端设备基于PPS信号对本地的系统时钟进行校时。如此,通过对MPU本地的第一系统时钟进行校时、MCU本地的第二系统时钟进行校时、终端设备本地的系统时钟进行校时,可以使得MPU、MCU和终端设备三者的时间同步,从而进一步的避免定位位置信息受到不准确的系统时钟的影响,而导致定位位置信息不准确,以提高确定的定位位置信息的准确度。
Smart Images

Figure CN123010004A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of positioning and navigation technology, specifically to a positioning system, method, device, electronic device, and vehicle. Background Technology
[0002] With the rapid development of intelligent transportation applications such as autonomous driving and assisted driving, vehicles need to acquire real-time, high-precision location information to achieve safe autonomous driving and precise vehicle navigation control. Currently, the global navigation satellite system is constantly improving, providing more satellite signals and richer observation data, laying the foundation for vehicle positioning and navigation.
[0003] In related technologies, raw positioning data is obtained through the positioning module of a Global Navigation Satellite System (GNSS), and then first coordinate information is derived based on the raw positioning data. Furthermore, second coordinate information of the vehicle is acquired to obtain the vehicle's positioning data based on the first and second coordinate information. This technology uses single-frequency positioning to determine the vehicle's location, resulting in relatively low accuracy of the determined vehicle positioning data.
[0004] Another related technology receives satellite ephemeris time, pulse signals output from the satellite baseband module, and MIMU data transmitted by a Miniature Inertial Measurement Unit (MIMU) system. The pulse signals are then counted to determine the time difference between the MIMU data acquisition time and the satellite ephemeris time. A time stamp is then generated for the MIMU data based on this time difference to synchronize the MIMU system with the satellite system. This technology synchronizes the MIMU system using satellite ephemeris time, but it is not related to vehicle positioning and navigation. Therefore, the accuracy of the vehicle's current positioning data is relatively low. Summary of the Invention
[0005] This application provides a positioning system, method, apparatus, electronic device, and vehicle. The purpose of this application is to at least solve the technical problem of low accuracy of vehicle positioning data when locating the vehicle's position in related technologies.
[0006] To achieve the above objectives, the technical solution adopted in this application is as follows:
[0007] According to a first aspect of this application, a positioning system is provided, comprising: a positioning module, a communication module, a controller, and a terminal device; the positioning module is used to acquire positioning information via satellite signals at at least two frequencies, the positioning information including: plaintext data and raw observation data; the positioning module is further used to send plaintext data to the communication module and send raw observation data to the controller; the communication module is used to display positioning location information on the terminal device based on the received plaintext data; the controller is used to verify the positioning location information based on the received raw observation data.
[0008] Based on the aforementioned technical means, this application can acquire positioning information, including plaintext data and raw observation data, through satellite signals at at least two frequencies, using a positioning module included in the positioning system. Thus, multi-frequency positioning information can be obtained through satellite signals at at least two frequencies. Then, the positioning module sends plaintext data to the communication module and raw observation data to the controller. The communication module can then display the positioning location information on the terminal device based on the received plaintext data; and the controller can also verify the positioning location information based on the received raw observation data to determine whether the positioning location information displayed on the terminal device is accurate. Therefore, by acquiring multi-frequency positioning information through satellite signals at at least two frequencies, the multi-frequency positioning information can complement and verify each other, thereby improving the accuracy of the determined positioning location information.
[0009] In one possible implementation, the communication module includes an encryption module and a communication module; the encryption module is used to perform a first security verification on the received plaintext data, wherein the first security verification is to verify the data received by the communication module; the communication module is used to determine the location information based on the plaintext data if the plaintext data passes the verification.
[0010] Based on the aforementioned technical means, this application can perform a first security verification on the plaintext data received by the communication module through the encryption module included in the communication module. If the plaintext data passes the verification, the location information can be determined based on the plaintext data through the communication module included in the communication module. Thus, verifying the received data through the encryption module ensures the security of the received data.
[0011] In one possible implementation, the encryption module is further configured to perform a second security verification on the location information, wherein the second security verification is to verify the data sent by the communication module; the communication module is further configured to send the location information to the terminal device if the location information passes the verification, so as to display the location information on the terminal device.
[0012] Based on the aforementioned technical means, this application can perform a second security verification on the location information to be sent via an encryption module included in the communication module. If the location information passes the verification, it can be sent to the terminal device via the communication module included in the communication module for display on the terminal device. Thus, by verifying the data to be sent through the encryption module, the security of the transmitted data can be guaranteed.
[0013] In one possible implementation, the encryption module is specifically used to latch the plaintext data if the plaintext data fails the first security check; the encryption module is specifically used to perform a first security check on the latched plaintext data a preset number of times.
[0014] Based on the aforementioned technical means, this application can latch plaintext data even if the plaintext data fails the first security check. Furthermore, the latched plaintext data is subjected to a preset number of first security checks via an encryption module. Thus, through multiple security checks, erroneous check results can be avoided, preventing data verification errors.
[0015] In one possible implementation, the controller includes: a microprocessor unit (MPU), and the positioning information also includes an ephemeris clock; a positioning module, further configured to send the acquired ephemeris clock to the MPU; and the MPU, configured to synchronize a first system clock based on the received ephemeris clock, wherein the first system clock is the MPU's local system clock.
[0016] Based on the aforementioned technical means, this application can synchronize the local first system clock of the MPU with the ephemeris clock included in the positioning information, thereby ensuring the accuracy of the MPU's system clock. Thus, based on an accurate system clock, when determining positioning information, the influence of an inaccurate system clock can be avoided, preventing inaccurate positioning information and further improving the accuracy of the determined positioning information.
[0017] In one possible implementation, the controller further includes: a microcontroller unit (MCU); the MCU is used to acquire the pulse per second (PPS) signal output by the positioning module and to synchronize the second system clock based on the PPS signal, the second system clock being the local system clock of the MCU, and the PPS signal being used to transmit raw observation data; the MCU is also used to send the PPS signal to the terminal device, the PPS signal being used by the terminal device to synchronize its local system clock.
[0018] Based on the aforementioned technical means, this application can acquire the second pulse (PPS) signal output by the positioning module for transmitting raw observation data via the MCU, and synchronize the MCU's local second system clock based on the PPS signal. It also sends the PPS signal to the terminal device, enabling the terminal device to synchronize its local system clock based on the PPS signal. Thus, by synchronizing the MPU's local first system clock, the MCU's local second system clock, and the terminal device's local system clock, the time of the MPU, MCU, and terminal device can be synchronized. This further avoids the positioning information being affected by inaccurate system clocks, thereby improving the accuracy of the determined positioning information.
[0019] In one possible implementation, the MPU is specifically used to adjust the frequency and phase of the local system clock based on the ephemeris clock when the time difference between the ephemeris clock and the first system clock is greater than a preset time difference.
[0020] Based on the aforementioned technical means, this application can adjust the frequency and phase of the MPU's local first system clock based on the ephemeris clock when the time difference between the ephemeris clock and the MPU's local first system clock is greater than a preset time difference, thereby synchronizing the MPU's local first system clock. This ensures accurate adjustment of the MPU's local first system clock and avoids inaccurate positioning information due to inaccurate MPU local first system clock.
[0021] In one possible implementation, the raw observation data includes: position, velocity, and time (PVT) data, differential data (Radio Technical Commission for Maritime Services, RTCM), longitude, latitude, and altitude.
[0022] Based on the aforementioned technical means, this application can verify the positioning information based on the original observation data, including: Position Velocity and Time (PVT) data, Differential Data RTCM, longitude, latitude, and altitude, so as to accurately determine whether the positioning information displayed on the terminal device is accurate.
[0023] According to a second aspect provided in this application, a positioning method is provided, the method comprising: acquiring positioning information via satellite signals at at least two frequencies, the positioning information comprising: plaintext data and raw observation data; sending plaintext data to a communication module and sending raw observation data to a controller; displaying positioning location information on a terminal device based on the plaintext data; and verifying the positioning location information based on the raw observation data.
[0024] In one possible implementation, the above-mentioned display of location information on a terminal device based on plaintext data includes: performing a first security check on the received plaintext data, wherein the first security check is to check the data received by the communication module; and determining the location information based on the plaintext data if the plaintext data passes the check.
[0025] In one possible implementation, the above-mentioned display of location information on a terminal device based on plaintext data includes: performing a second security verification on the location information, wherein the second security verification is to verify the data sent by the communication module; and if the location information passes the verification, sending the location information to the terminal device to display the location information on the terminal device.
[0026] In one possible implementation, the method further includes: latching the plaintext data if the plaintext data fails the first security check; and performing a first security check on the latched plaintext data a preset number of times.
[0027] In one possible implementation, the controller includes a microprocessor (MPU), and the positioning information also includes an ephemeris clock; the method further includes: sending the acquired ephemeris clock to the MPU; and synchronizing a first system clock based on the received ephemeris clock, wherein the first system clock is the local system clock of the MPU.
[0028] In one possible implementation, the controller further includes a microcontroller (MCU); the method further includes: acquiring the second pulse (PPS) signal output by the positioning module, and calibrating the second system clock based on the PPS signal, wherein the second system clock is the local system clock of the MCU, and the PPS signal is used to transmit the original observation data; and sending the PPS signal to the terminal device, wherein the PPS signal is used by the terminal device to calibrate the local system clock.
[0029] In one possible implementation, the above-mentioned time synchronization of the first system clock based on the received ephemeris clock includes: adjusting the frequency and phase of the local system clock based on the ephemeris clock when the time difference between the ephemeris clock and the first system clock is greater than a preset time difference.
[0030] In one possible implementation, the raw observation data includes: position, velocity, and time (PVT) data, differential data (RTCM), longitude, latitude, and altitude.
[0031] According to a third aspect provided in this application, a positioning device is provided, comprising: an acquisition module, a transmission module, a display module, and a processing module; the acquisition module is used to acquire positioning information through satellite signals at at least two frequencies, the positioning information including: plaintext data and raw observation data; the transmission module is used to transmit plaintext data to a communication module and transmit raw observation data to a controller; the display module is used to display positioning location information on a terminal device based on the plaintext data; and the processing module is used to verify the positioning location information based on the raw observation data.
[0032] According to a fourth aspect provided in this application, an electronic device is provided, comprising: a processor; a memory for storing processor-executable instructions; wherein the processor is configured to execute instructions to implement the method of the second aspect described above and any possible implementation thereof.
[0033] According to the fifth aspect provided in this application, a computer-readable storage medium is provided that, when computer-executable instructions stored in the computer-readable storage medium are executed by a processor of an electronic device, causes the electronic device to perform the method described in the second aspect and any possible implementation thereof.
[0034] According to the sixth aspect provided in this application, a computer program product is provided, the computer program product including computer instructions that, when executed on an electronic device, cause the electronic device to perform the method described in the second aspect and any possible implementation thereof.
[0035] According to the seventh aspect provided in this application, a vehicle is provided, the vehicle including the positioning system as described in the first aspect, the vehicle being used to implement the methods of the second aspect and any possible implementation thereof.
[0036] It should be noted that the technical effects of any of the implementation methods in aspects two through seven can be found in the technical effects of the corresponding implementation methods in aspect one, and will not be repeated here.
[0037] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description
[0038] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application, and do not constitute an undue limitation of this application.
[0039] Figure 1 This is a schematic diagram of the structure of a positioning system according to an exemplary embodiment;
[0040] Figure 2This is a schematic diagram of the structure of yet another positioning system according to an exemplary embodiment;
[0041] Figure 3 This is a flowchart illustrating a positioning method according to an exemplary embodiment;
[0042] Figure 4 This is a flowchart illustrating yet another positioning method according to an exemplary embodiment;
[0043] Figure 5 This is a flowchart illustrating yet another positioning method according to an exemplary embodiment;
[0044] Figure 6 This is a block diagram illustrating a positioning device according to an exemplary embodiment;
[0045] Figure 7 This is a block diagram illustrating an electronic device according to an exemplary embodiment. Detailed Implementation
[0046] To enable those skilled in the art to better understand the technical solutions of this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.
[0047] It should be noted that 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 data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0048] Differential positioning technology, by comparing observation data from a base station and a rover station, calculates differential correction values and broadcasts them to the user receiver to improve positioning accuracy, providing a technical approach for high-precision positioning in dual-frequency Global Navigation Satellite System (GNSS). The integrated application of multiple satellite navigation systems is becoming a trend; dual-frequency signals from multiple systems can complement and verify each other, improving positioning accuracy, reliability, and availability. With the continuous advancement of integrated circuit technology and signal processing technology, the performance of dual-frequency GNSS receivers is constantly improving, enabling faster and more accurate acquisition and processing of dual-frequency signals, while costs are gradually decreasing, providing hardware support for the widespread application of dual-frequency GNSS high-precision positioning.
[0049] The positioning method provided in this application can be applied to positioning systems. For example... Figure 1 As shown, the positioning system 10 includes a positioning module 11, a communication module 12, a controller 13, and a terminal device 14. The positioning module 11 is connected to the communication module 12 and the controller 13, respectively, and the terminal device 14 is also connected to the communication module 12 and the controller 13, respectively.
[0050] In some embodiments, the positioning module 11 is used to acquire positioning information via satellite signals at at least two frequencies, the positioning information including plaintext data and raw observation data.
[0051] Optionally, the positioning module 11 can be a GNSS positioning module.
[0052] In some embodiments, the raw observation data includes: position velocity and time (PVT) data, differential data (RTCM), longitude, latitude, and altitude.
[0053] In some embodiments, the positioning module 11 is also used to send plaintext data to the communication module 12 and raw observation data to the controller 13.
[0054] In some embodiments, the communication module 12 is used to display location information on the terminal device 14 based on received plaintext data.
[0055] In some embodiments, the controller 13 is configured to verify the location information based on the received raw observation data.
[0056] In one possible implementation, such as Figure 2 As shown, in addition to the positioning module 11, communication module 12, controller 13 and terminal device 14, the positioning system 10 may also include the power supply module 15, antenna module 16, first PPS module 17 and gateway communication module 18.
[0057] Optionally, the positioning module 11 can support dual-frequency positioning between L1, L2 and L5 for satellite signal reception, signal acquisition, signal tracking, positioning information calculation and transmission, including plaintext data of satellite signals (NME data and raw observation data).
[0058] In some embodiments, such as Figure 2 As shown, the communication module 12 may specifically include an encryption module 121 and a communication module 122. The encryption module 121 is used to perform security verification of data transmission, while the communication module 12 mainly performs data interaction and precise collaboration functions, and realizes remote OTA upgrade functions.
[0059] The encryption module 121 is used to perform a first security check on the received plaintext data. The first security check is to check the data received by the communication module 12.
[0060] The communication module 122 is used to determine the location information based on the plaintext data when the plaintext data passes the verification.
[0061] In some embodiments, the encryption module 121 is further configured to perform a second security check on the location information, wherein the second security check is to check the data sent by the communication module 12.
[0062] The communication module 122 is also used to send the location information to the terminal device 14 when the location information passes the verification, so as to display the location information on the terminal device 14.
[0063] In some embodiments, the encryption module 121 is specifically used to latch the plaintext data if the plaintext data fails the first security check.
[0064] The encryption module 121 is specifically used to perform a first security check on the latched plaintext data a preset number of times.
[0065] Optionally, the communication module 12 may further include: a real-time clock (RTC) module 123 and an embedded multi-media card (EMMC) module 124. The RTC module 123 provides a real-time system clock, and the EMMC module 124 handles data storage.
[0066] In some embodiments, such as Figure 2 As shown, the controller 13 specifically includes a microprocessor MPU131, and the positioning information also includes an ephemeris clock.
[0067] Optionally, the positioning module 11 includes a positioning module 111 and a second PPS module 112, the second PPS module 112 being used to send the acquired ephemeris clock to the MPU 131.
[0068] MPU131 is used to synchronize the first system clock based on the received ephemeris clock. The first system clock is the local system clock of MPU131.
[0069] In some embodiments, such as Figure 2 As shown, controller 13 also includes a microcontroller MCU132.
[0070] MCU132 is used to acquire the second pulse PPS signal output by positioning module 11 and to synchronize the second system clock based on the PPS signal. The second system clock is the local system clock of MCU132. The PPS signal is used to transmit the raw observation data.
[0071] MCU132 is also used to send a PPS signal to terminal device 14, which is used by terminal device 14 to synchronize the local system clock.
[0072] In some embodiments, MPU131 is specifically used to adjust the frequency and phase of the local system clock based on the ephemeris clock when the time difference between the ephemeris clock and the first system clock is greater than a preset time difference.
[0073] Optionally, the controller 13 may also include a FLASH module 133, which is used to store data, algorithm programs and other storage functions. The controller 13 is used to perform overall control of the entire system and share the responsibility of parsing and transmitting the plaintext data and raw observation data transmitted by the positioning module 11.
[0074] Optionally, a power supply module 15 is used to supply power to the different components (modules) of the entire positioning system.
[0075] Specifically, the power supply module 15 may include a main power supply module 151 and an auxiliary power supply module 152. The main power supply module 151 supplies power to the positioning system through the output voltage of the system base chip (SBC). The auxiliary power supply module 152 can independently supply power to the positioning system (positioning module 11, communication module 12, and controller 13) when the positioning system is in sleep mode or when the main power supply module 151 is malfunctioning, so as to ensure that the controller 13 can achieve real-time positioning function.
[0076] It is understandable that when the main power supply module 151 malfunctions, the positioning system can be powered by the auxiliary power supply module 152.
[0077] Optionally, the antenna module 16 may include a communication antenna 161 and a positioning antenna 162. The antenna module 16 is used to transmit communication and satellite positioning data, and can also realize the diagnostic function of the antenna.
[0078] Optionally, the positioning antenna 162 is used to interact with satellite 19 to obtain positioning information.
[0079] Optionally, the first PPS module 17 is used to output the PPS second pulse output of the positioning module 11 to an external interface through a control signal to complete the PPS time synchronization and clock synchronization of the external controller. At the same time, the controller 13 collects the PPS second pulse output by the positioning module 11 through the interrupt function to complete the accurate time synchronization verification between the controller 13 and the external controller.
[0080] Optionally, the gateway communication module 18 may include a gigabit switch port 181 (supporting T1 and TX interfaces). The gateway communication module 18 can be connected to an external controller device and complete data interaction.
[0081] Optionally, terminal device 14 can connect to positioning system 10 through external interface of positioning system 10. External interface of positioning system 10 can connect to other terminal devices and achieve data interaction to enrich the functions of positioning system 10.
[0082] To facilitate understanding, the positioning method provided in this application will be described in detail below with reference to the accompanying drawings. Figure 3 As shown, the positioning method includes S301-S304:
[0083] S301. Obtain positioning information through satellite signals at at least two frequencies.
[0084] The location information includes plaintext data and raw observation data.
[0085] In this application embodiment, the positioning system provided by the above embodiment can realize the redundancy function design of single frequency, dual frequency, and multi frequency, which can make up for the problem of low positioning longitude of the communication module.
[0086] Optionally, when the positioning system does not require high positioning accuracy, the positioning system can use single-frequency positioning to achieve the positioning function. When using single-frequency positioning, the positioning module in the positioning system can be disabled (cancelled), and the positioning information (satellite data) acquired by the communication module based on the single-frequency satellite signal can be uploaded to the processor (host computer) through the gigabit switch module to complete the positioning function.
[0087] It should be noted that the positioning system provided in this application embodiment also has a single-frequency positioning function in its communication module. Furthermore, high-precision dual-frequency / multi-frequency positioning can be achieved by using an external positioning module. When the positioning accuracy requirement is not high, positioning can be achieved directly by modifying the hardware and using the functions of the communication module.
[0088] In some embodiments, the raw observation data includes: position velocity and time (PVT) data, differential data (RTCM), longitude, latitude, and altitude.
[0089] Optionally, when the positioning system requires high-precision positioning, a dual-frequency / multi-frequency positioning module can be used to complete the positioning. The acquired positioning information (satellite data) is then uploaded to the controller and communication module via serial ports 1 and 2. The controller then uploads the positioning information to the host computer via a gigabit network port, and the communication module can also upload the received positioning information to the host computer.
[0090] In one possible implementation, when the controller receives a positioning function request, it can trigger the positioning module to pre-start, so that the positioning module can obtain positioning information through satellite signals of at least two frequencies.
[0091] Optionally, the positioning module can capture satellite data, such as L1 and L5 dual-frequency positioning information.
[0092] S302. Send plaintext data to the communication module and send raw observation data to the controller.
[0093] Optionally, the positioning module can transmit plaintext data to the communication module via a Universal Asynchronous Receiver / Transmitter (UART) 1, and the communication module can store the plaintext data in a temporary storage file.
[0094] Optionally, the positioning module can transmit raw observation data (such as RTCM / PVT raw observation data) to the controller (such as MCU) via UART2. The controller can store the received data in the EMMC for subsequent parsing via the Ethernet Transmission Control Protocol (TCP), and at the same time transmit the raw observation data to other modules (such as intelligent driving function modules) via the TCP protocol.
[0095] S303. Based on plaintext data, display location information on the terminal device.
[0096] Optionally, the communication module can perform data analysis on the plaintext data to determine the location information based on the plaintext data, and send the location information to the terminal device for display.
[0097] In some embodiments, a first security verification is performed on the received plaintext data, wherein the first security verification is to verify the data received by the communication module; if the plaintext data passes the verification, the location information is determined based on the plaintext data.
[0098] Optionally, the encryption module in the communication module can perform a first security verification on the positioning information (plaintext data) output by the positioning module in order to send the verified data to the terminal device.
[0099] In this embodiment, the communication module can perform a first security verification on the plaintext data received by the communication module. If the plaintext data passes the verification, the communication module can determine the location information based on the plaintext data. Thus, verifying the received data through the encryption module ensures the security of the received data.
[0100] In some embodiments, a second security verification is performed on the location information, which is to verify the data sent by the communication module; if the location information passes the verification, the location information is sent to the terminal device so as to display the location information on the terminal device.
[0101] Optionally, data sent by the communication module to other modules (modules) needs to undergo a second security verification, and can only be sent to other modules (such as terminal devices) after the second security verification is passed.
[0102] Understandably, for a communication module, when external data is input, the received data needs to undergo a first security check via an encryption module. Only after the received data passes the first security check can it be transmitted. Similarly, when data is output, a second security check must be performed via an encryption module. Only after the data passes the second security check can it be output to other modules, thus ensuring the security of data transmission.
[0103] In this embodiment, the application can perform a second security verification on the location information to be sent using an encryption module included in the communication module. If the location information passes the verification, it can be sent to the terminal device via the communication module included in the communication module for display on the terminal device. Thus, by verifying the data to be sent using an encryption module, the security of the sent data can be guaranteed.
[0104] In some embodiments, if the plaintext data fails the first security check, the plaintext data is latched; the latched plaintext data is subjected to the first security check a preset number of times.
[0105] Optionally, if the data fails the first security check, the latched data can be checked multiple times (e.g., 3 times) to ensure the security of data transmission.
[0106] It is understandable that when the encryption module fails the second security check on the data output by the communication module, it can also latch the output data and perform a preset number of second security checks on the latched data.
[0107] In this embodiment, the plaintext data can be latched even if it fails the first security check. Furthermore, the latched plaintext data is subjected to a preset number of first security checks via an encryption module. Thus, through multiple security checks, erroneous check results can be avoided, preventing data verification errors.
[0108] S304. Verify the location information based on the original observation data.
[0109] In one possible implementation, the controller can analyze the raw observation data to verify the positioning information based on the raw observation data.
[0110] It should be noted that, through the embodiments of this application, an open-field positioning accuracy SPP-24-hour test can be achieved based on the positioning system, and the positioning accuracy in the horizontal direction reaches the effect of single point (RSM) ≤ 1.5m, and in the vertical direction reaches the effect of single point (RSM) ≤ 5.0m.
[0111] In this embodiment, the application can acquire positioning information, including plaintext data and raw observation data, using satellite signals at at least two frequencies, based on a positioning module included in the positioning system. This allows for the acquisition of multi-frequency positioning information. The positioning module then sends plaintext data to a communication module and raw observation data to a controller. The communication module can then display the positioning location information on a terminal device based on the received plaintext data; and the controller can verify the positioning location information based on the received raw observation data to determine the accuracy of the displayed location information on the terminal device. Thus, by acquiring multi-frequency positioning information using satellite signals at at least two frequencies, the multi-frequency positioning information can complement and verify each other, thereby improving the accuracy of the determined positioning location information.
[0112] In a complete embodiment, such as Figure 4 As shown, when the mobile terminal enables its location function, it can send a location command to the communication module. Upon receiving the location command, the communication module can trigger pre-start of the location module. The location module can then acquire location information and send it to the communication module. The communication module performs a first security check on the received data (plaintext data). If the first security check fails, the data is locked, and multiple first security checks are performed. If multiple first security checks fail, the location module stops acquiring location information. If the data passes the first security check, the location module sends plaintext data to the communication module and raw observation data to the controller.
[0113] Furthermore, after receiving plaintext data, the communication module can overwrite the previously stored data and save the plaintext data to a temporary file. The communication module can also parse the plaintext data to obtain location information and perform a second security check on the location information. If the location information passes the second security check, it is sent to the terminal device; if the location information fails the second security check, it is locked and multiple second security checks are performed. If all second security checks fail, the positioning module stops acquiring location information.
[0114] Simultaneously, the controller performs TCP transmission based on the received raw observation data and determines whether the storage space exceeds the storage limit. If the storage space does not exceed the limit, the raw observation data is stored in EMMC. If the storage space exceeds the limit, the specified files can be cleaned up before storing the raw observation data in EMMC. Furthermore, the raw observation data transmitted via TCP can also be transmitted to the corresponding modules for intelligent driving functions to enable these functions.
[0115] In some embodiments, the controller includes a microprocessor (MPU), and the positioning information further includes an ephemeris clock; the method further includes: sending the acquired ephemeris clock to the MPU; and synchronizing a first system clock based on the received ephemeris clock, wherein the first system clock is the local system clock of the MPU.
[0116] It should be noted that the controller, including the microprocessor MPU and microcontroller MCU, as well as the external terminal device (such as the vehicle system), need to be precisely synchronized in time. With precise time synchronization among the three, more accurate positioning can be achieved to determine the accurate location information.
[0117] It is understandable that the controller's system clock is updated by the MPU. After the MPU completes the update, it can trigger the MCU to update the system clock in order to achieve time synchronization of the entire system.
[0118] Optionally, the MPU's system clock T1 can be provided by the local RTC module. After the positioning module obtains the positioning information, the MPU can receive the ephemeris clock T2 sent by the positioning module to synchronize the first system clock based on the received ephemeris clock.
[0119] Optionally, the MPU can perform a first security check on the received data information (ephemeris clock T2) to determine that the received data information is valid after the data information passes the first security check.
[0120] In this embodiment, the local first system clock of the MPU can be synchronized based on the ephemeris clock included in the positioning information, thereby ensuring the accuracy of the MPU's system clock. Thus, based on an accurate system clock, when determining the positioning location information, the influence of an inaccurate system clock can be avoided, preventing inaccurate positioning information from being obtained. This further improves the accuracy of the determined positioning location information.
[0121] In some embodiments, if the time difference between the ephemeris clock and the first system clock is greater than a preset time difference, the frequency and phase of the local system clock are adjusted based on the ephemeris clock.
[0122] Optionally, the time difference ΔT1 = |T1-T2| between the ephemeris clock and the first system clock can be calculated. When ΔT1 is greater than the preset time difference T0, the system clock T1 of the MPU is synchronized.
[0123] In this embodiment, when the time difference between the ephemeris clock and the MPU's local first system clock is greater than a preset time difference, the frequency and phase of the MPU's local first system clock are adjusted based on the ephemeris clock, thereby synchronizing the MPU's local first system clock. This ensures accurate adjustment of the MPU's local first system clock and avoids inaccurate positioning information due to inaccurate MPU local first system clock.
[0124] In some embodiments, the controller further includes: a microcontroller (MCU); the method further includes: acquiring the second pulse (PPS) signal output by the positioning module, and calibrating the second system clock based on the PPS signal, wherein the second system clock is the local system clock of the MCU, and the PPS signal is used to transmit the original observation data; sending the PPS signal to the terminal device, wherein the PPS signal is used by the terminal device to calibrate the local system clock.
[0125] Optionally, after the MPU's system clock has completed synchronization, if a wake-up request from the MCU is received, the MPU's system clock can be synchronized to the MCU. At the same time, the MCU acquires the second pulse PPS signal through an interrupt. Starting from the rising edge of the second pulse PPS signal, it receives the raw observation data sent by the positioning module every 1Hz and calculates the time difference ΔT2 between the MCU's system clock and the second pulse PPS signal. When ΔT2 is greater than the preset time difference T0, the MCU adjusts the frequency and phase of the system clock to achieve time synchronization.
[0126] Optionally, the PPS signal is also transmitted to the terminal device (such as an external vehicle-mounted system) through the PPS module, and the terminal device performs time synchronization based on the PPS signal.
[0127] It is understood that by achieving time synchronization among the MCU, MPU, and terminal device, this application can ultimately achieve second pulse time synchronization accuracy, resulting in PPS signal synchronization accuracy of less than 20ns, time synchronization system accuracy of less than 1ms, positioning time synchronization accuracy of less than 1ms, and time difference between the message timestamp delivered to the module and the PPS signal seconds alignment of less than 1ms.
[0128] In this embodiment, the application can acquire the second pulse (PPS) signal output by the positioning module for transmitting raw observation data through the MCU, and synchronize the MCU's local second system clock based on the PPS signal. It also sends the PPS signal to the terminal device, enabling the terminal device to synchronize its local system clock based on the PPS signal. Thus, by synchronizing the MPU's local first system clock, the MCU's local second system clock, and the terminal device's local system clock, the time of the MPU, MCU, and terminal device can be synchronized. This further avoids the positioning location information being affected by inaccurate system clocks, thereby improving the accuracy of the determined positioning location information.
[0129] In a complete embodiment, such as Figure 5 As shown, after the positioning module acquires the ephemeris clock, it can send the acquired ephemeris clock to the MPU. The MPU then determines whether the received ephemeris clock is valid. If the received ephemeris clock is valid, it determines the time difference between the received ephemeris clock and the local first system clock, and checks if this time difference is greater than a preset time difference. If the time difference between the ephemeris clock and the first system clock is greater than the preset time difference, the frequency and phase of the MPU's local system clock are adjusted based on the ephemeris clock to complete the time synchronization of the MPU's system clock. If the time difference between the ephemeris clock and the first system clock is less than or equal to the preset time difference, no adjustment of the MPU's local system clock is required. Conversely, if the MPU determines that the received ephemeris clock is invalid, the positioning module needs to acquire the ephemeris clock again and then send the newly acquired ephemeris clock to the MPU.
[0130] Furthermore, it is determined whether the MPU has received a wake-up request from the MCU. If the MPU has not received a wake-up request from the MCU, it continues to listen for the MCU's wake-up request. When the MPU receives the MCU's wake-up request, it sends its system clock to the MCU. Based on the MPU's system clock, the MCU determines whether to update its local second system clock. If it is determined that the local second system clock should not be updated, it continuously acquires the updated system clock from the MPU. When it is determined that the local second system clock needs to be updated, the MCU's system time is synchronized, and the MCU acquires the second pulse (PPS) signal from the positioning module. The MCU receives the raw observation data by acquiring the PPS signal through an interrupt timing mechanism and determines whether the raw observation data is valid. If the raw observation data is valid, the time difference between the MCU's second system clock and the PPS signal is determined. If the time difference between the MCU's second system clock and the PPS signal is greater than a preset time difference, the frequency and phase of the MCU's local system clock are adjusted to complete the time synchronization of the MCU's system clock. If the raw observation data is determined to be invalid, the MCU's system time is continuously synchronized.
[0131] This application embodiment effectively improves the integration of the controller and reduces the hardware and software development costs by integrating the communication module, positioning module, and Ethernet gateway. Based on the high integration of the smart gateway, communication, and positioning modules, hardware and software costs can be saved while achieving high-precision dual-frequency / multi-frequency positioning. Simultaneously, the positioning information acquired by the positioning system can be transmitted to the communication module via serial port 1, and the positioning data can be transmitted to the MCU via serial port 2.
[0132] Meanwhile, to ensure data synchronization during reception and transmission, a combination of hardware and software is used to synchronize the time of the MCU, MPU, and terminal device. This effectively improves the controller's integration and cost reduction, enhances dual-frequency positioning accuracy, and improves time synchronization between different controllers in a full group.
[0133] The foregoing mainly describes the solutions provided by the embodiments of this application from a methodological perspective. To achieve the above functions, the positioning device or electronic device includes hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art should readily recognize that, based on the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0134] This application embodiment can, according to the above method, exemplarily divide a positioning device or electronic device into functional modules. For example, the positioning device or electronic device may include functional modules corresponding to each functional division, or two or more functions may be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. It should be noted that the module division in this application embodiment is illustrative and only represents one logical functional division; in actual implementation, there may be other division methods.
[0135] Reference Figure 6 The positioning device 600 includes: an acquisition module 601, a transmission module 602, a display module 603, and a processing module 604; the acquisition module 601 is used to acquire positioning information through satellite signals of at least two frequencies, the positioning information including: plaintext data and raw observation data; the transmission module 602 is used to send plaintext data to a communication module and send raw observation data to a controller; the display module 603 is used to display the positioning location information on a terminal device based on the plaintext data; and the processing module 604 is used to verify the positioning location information based on the raw observation data.
[0136] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.
[0137] like Figure 7 As shown, the electronic device 700 includes, but is not limited to, a processor 701 and a memory 702.
[0138] The memory 702 described above is used to store the executable instructions of the processor 701. It is understood that the processor 701 is configured to execute instructions to implement the positioning method in the above embodiments.
[0139] It should be noted that those skilled in the art will understand that Figure 7 The electronic device structure shown does not constitute a limitation on the electronic device; the electronic device may include, but is not limited to, other electronic devices. Figure 7 This may indicate more or fewer components, or combinations of certain components, or different component arrangements.
[0140] Processor 701 is the control center of the electronic device. It connects various parts of the electronic device via various interfaces and lines. By running or executing software programs and / or modules stored in memory 702, and by calling data stored in memory 702, it performs various functions and processes data, thereby providing overall monitoring of the electronic device. Processor 701 may include one or more processing units. Optionally, processor 701 may integrate an application processor and a modem processor. The application processor mainly handles the operating system, user interface, and applications, while the modem processor mainly handles wireless communication. It is understood that the modem processor may not be integrated into processor 701.
[0141] The memory 702 can be used to store software programs and various data. The memory 702 may primarily include a program storage area and a data storage area. The program storage area may store the operating system, application programs required by at least one functional module (such as processing module 703), etc. Furthermore, the memory 702 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device.
[0142] In an exemplary embodiment, a computer-readable storage medium including instructions is also provided, such as a memory 702 including instructions, which can be executed by a processor 701 of an electronic device 700 to implement the positioning method in the above embodiments.
[0143] In actual implementation, Figure 6 The functions of the acquisition module 601, the sending module 602, the display module 603, and the processing module 604 can be derived by... Figure 7 The processor 701 calls the computer program stored in the memory 702 to implement the process. The specific execution process can be found in the description of the positioning method section in the previous embodiment, and will not be repeated here.
[0144] Optionally, the computer-readable storage medium may be a non-transitory computer-readable storage medium, such as a read-only memory (ROM), random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device.
[0145] In an exemplary embodiment, this application also provides a computer program product including one or more instructions, which can be executed by the processor 701 of the electronic device 700 to complete the positioning method in the above embodiments.
[0146] It should be noted that when one or more instructions in the computer-readable storage medium or computer program product are executed by the processor of the electronic device, they implement the various processes of the above-described positioning method embodiments and achieve the same technical effect as the above-described positioning method. To avoid repetition, they will not be described again here.
[0147] Through the above description of the embodiments, those skilled in the art can clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0148] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another apparatus, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0149] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the classified units can be selected to achieve the purpose of this embodiment, depending on actual needs.
[0150] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0151] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of the embodiments of this application, essentially, or the part that contributes to the prior art, or a complete or partial classification of the technical solution, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.
[0152] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A positioning system, characterized in that, The positioning system includes: a positioning module, a communication module, a controller, and a terminal device; The positioning module is used to acquire positioning information through satellite signals at at least two frequencies, and the positioning information includes: plaintext data and raw observation data; The positioning module is also used to send the plaintext data to the communication module and the raw observation data to the controller; The communication module is used to display location information on the terminal device based on the received plaintext data; The controller is used to verify the positioning information based on the received raw observation data.
2. The positioning system according to claim 1, characterized in that, The communication module includes an encryption module and a communication module; The encryption module is used to perform a first security check on the received plaintext data, wherein the first security check is to check the data received by the communication module; The communication module is used to determine the location information based on the plaintext data if the plaintext data passes verification.
3. The positioning system according to claim 2, characterized in that, The encryption module is also used to perform a second security check on the location information, wherein the second security check is to check the data sent by the communication module; The communication module is further configured to send the location information to the terminal device when the location information passes verification, so as to display the location information on the terminal device.
4. The positioning system according to claim 2, characterized in that, The encryption module is specifically used to latch the plaintext data when the plaintext data fails the first security check. The encryption module is specifically used to perform the first security check on the latched plaintext data a preset number of times.
5. The positioning system according to claim 1, characterized in that, The controller includes a microprocessor (MPU), and the positioning information also includes an ephemeris clock. The positioning module is also used to send the acquired ephemeris clock to the MPU; The MPU is used to synchronize the first system clock based on the received ephemeris clock, wherein the first system clock is the local system clock of the MPU.
6. The positioning system according to claim 5, characterized in that, The controller also includes: a microcontroller (MCU); The MCU is used to acquire the second pulse (PPS) signal output by the positioning module and to synchronize the second system clock based on the PPS signal. The second system clock is the local system clock of the MCU. The PPS signal is used to transmit the original observation data. The MCU is also used to send the PPS signal to the terminal device, and the PPS signal is used by the terminal device to synchronize the local system clock.
7. The positioning system according to claim 5, characterized in that, The MPU is specifically used to adjust the frequency and phase of the local system clock based on the ephemeris clock when the time difference between the ephemeris clock and the first system clock is greater than a preset time difference.
8. The positioning system according to claim 1, characterized in that, The raw observation data includes: position, velocity, and time (PVT) data, differential data (RTCM), longitude, latitude, and altitude.
9. A positioning method, characterized in that, Applied to a positioning system, the method includes: Positioning information is obtained by using satellite signals at at least two frequencies, and the positioning information includes: plaintext data and raw observation data; The plaintext data is sent to the communication module, and the raw observation data is sent to the controller; Based on the plaintext data, the location information is displayed on the terminal device; The location information is verified based on the original observation data.
10. A positioning device, characterized in that, The positioning device includes: an acquisition module, a transmission module, a display module, and a processing module; The acquisition module is used to acquire positioning information through satellite signals at at least two frequencies, the positioning information including: plaintext data and raw observation data; The sending module is used to send the plaintext data to the communication module and the raw observation data to the controller; The display module is used to display location information on the terminal device based on the plaintext data; The processing module is used to verify the positioning information based on the original observation data.
11. An electronic device, characterized in that, include: processor; Memory used to store the processor's executable instructions; The processor is configured to execute the instructions to implement the positioning method as described in claim 9.
12. A vehicle, characterized in that, The vehicle includes a positioning system as described in any one of claims 1-8, and the vehicle is used to implement the positioning method as described in claim 9.