A multi-mode high-precision PPS timing test system and method
Through the high-precision PPS timing test system in multiple modes, combined with external and internal time systems, the comprehensiveness and accuracy issues of synchronization testing in satellite-borne single-machine ground testing are solved, and high-precision and reliable time synchronization and position information output are achieved.
Patent Information
- Application Number
- CN202411765420.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-04
- Publication Date
- 2025-09-26
- Estimated Expiration
- 2044-12-04
AI Technical Summary
Existing technologies make it difficult to conduct comprehensive time synchronization tests on single satellite-borne devices in a ground environment, cannot meet the requirements of high precision and high reliability at the same time, and lack the ability to simulate the complex environment on board.
A multi-mode high-precision PPS timing test system is designed. It includes a GNSS receiver module, a SoC system-on-chip, a power management module, and a differential output module. It combines external and internal time systems to achieve time synchronization of satellite-borne units. Four transmission modes are used to ensure the comprehensiveness and accuracy of the test.
It provides a time synchronization system with high integration and high time accuracy, which can stably output time information in multiple modes, provide reliable time synchronization support for ground testing of satellite-borne single units, eliminate crystal oscillator errors and obtain accurate position information.
Smart Images

Figure CN119535947B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of time synchronization of satellite systems, and in particular to a multi-mode high-precision PPS timing test system and method. Background Art
[0002] High-precision time synchronization is crucial for onboard systems. It ensures that individual satellite units work in coordination with other systems (such as the inertial navigation system), improves measurement accuracy, and ensures stable operation of spacecraft in complex environments. Therefore, ground testing of satellite-borne units requires strict time synchronization to verify their time accuracy and correlate data with other systems.
[0003] The Global Navigation Satellite System, or GNSS, uses multiple satellites to transmit signals to the ground. Receivers then perform triangulation to determine their own latitude and longitude. GNSS positioning signals can provide highly accurate time and location information for these applications.
[0004] When conducting time synchronization ground testing on a single satellite-borne instrument, it is necessary to provide highly accurate and reliable time information while also simulating various possible scenarios on board. This requires the ground test system to ensure the reliability and accuracy of the output information while also designing for multiple error scenarios. However, existing technologies lack the ability to simultaneously meet both requirements. Summary of the Invention
[0005] To address the existing difficulty in conducting comprehensive time synchronization tests on single satellite-based devices in terrestrial environments, this invention provides a multi-mode, high-precision PPS timing test system and method. The test system utilizes both external and internal time systems, enabling simultaneous reception of external GNSS signals and internal timing, ensuring both time accuracy and time signal stability. Furthermore, the invention incorporates four transmission modes to comprehensively test the time synchronization accuracy of single satellite-based devices.
[0006] A multi-mode high-precision PPS timing test system, comprising a GNSS receiver module, a SoC system-on-chip, a power management module, and a differential output module; the power management module supplies power to each module; the SoC system-on-chip comprises a pulse-per-second generation module, a PPS output module, a message input module, a latitude and longitude reading module, a UTC time update module, and a message output module;
[0007] The GNSS receiving module acquires a GNSS signal, where the GNSS signal includes an external PPS pulse per second and satellite positioning information;
[0008] The second pulse generation module uses the external constant temperature crystal oscillator of the SoC system on chip to generate second pulses, and at the same time receives the external PPS second pulses, and uses the external PPS second pulses as the absolute time reference of the test system; the second pulse generation module transmits the generated second pulses to the PPS output module, the UTC time update module and the message output module;
[0009] The PPS output module expands the received second pulse to multiple channels for synchronous timing testing of multiple devices, and selects whether to send a PPS signal according to the output mode of the current PPS output module;
[0010] The message input module receives the satellite positioning information in the GNSS signal, and parses the longitude and latitude information and the UTC time information and transmits them to the longitude and latitude reading module and the UTC time updating module respectively;
[0011] The latitude and longitude reading module obtains the latitude and longitude information and transmits it to the message output module;
[0012] The UTC time update module simultaneously implements local timing and message time updates; the UTC time update module is activated when a rising edge of a second pulse from a second pulse generation module is received; it is determined whether the UTC time information received from the message input module is valid; if the UTC time information is valid, the read UTC time information is used to overwrite the local UTC time of the system; if the UTC time information is invalid, the internal time system is activated;
[0013] The message output module sends the current latitude and longitude information and UTC time information to the differential output module according to the current output mode and the communication protocol;
[0014] The differential output module outputs UTC time information and PPS pulses per second through multiple communication methods.
[0015] The present invention also provides a multi-mode high-precision PPS timing test method, which is implemented by the multi-mode high-precision PPS timing test system. The method is implemented by the following steps:
[0016] Step 1: Connect the GNSS receiver module, differential output module, and the SOC chip system interface correctly; initialize the system;
[0017] Step 2: The message input module of the SOC system-on-chip determines whether the message data is received. If not, it continues to wait; if the message data is received, it stores the message data in a buffer row by row and reads the UTC time information and the longitude and latitude information;
[0018] The SOC system-on-chip also determines whether an F2P interrupt is generated. If so, it executes step 3; otherwise, it continues to wait for the F2P interrupt.
[0019] Step 3: Delay 100ms and proceed to step 4; at the same time, determine the PPS output mode of the PPS output module; proceed to step 5;
[0020] Step 4: After the delay is completed, determine the output mode of the message output module. If the output mode is send, send the UTC time information and latitude and longitude information. Otherwise, continue to determine.
[0021] Step 5: If the PPS output mode is send, the PPS output module sends information; otherwise, continue to judge.
[0022] Beneficial effects of the present invention:
[0023] The test system of the present invention includes a complete hardware system for satellite signal reception, data processing and synchronous time output. The system has high system integration, high time accuracy, is easy to program, and can be set in multiple modes. It can provide time synchronization information to multiple satellite-borne units at the same time, providing a simple and reliable time synchronization system for ground testing of satellite-borne units.
[0024] The test equipment of the present invention includes two time systems: an external time system and an internal time system. The external time system relies on GNSS satellite signals to obtain accurate full-second pulse timing and current time and position information, which is used to align the internal time system. The internal time system uses an oven-controlled crystal oscillator to generate precise second information. Even if the external time system is unavailable, the device can still stably output PPS pulse-second information and time information. When the external time system is available and the information is valid, the internal time system is aligned, eliminating the crystal oscillator's time error and obtaining accurate position information. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] Figure 1 This is a schematic diagram of a multi-mode high-precision PPS timing test system according to the present invention.
[0026] Figure 2 This is the schematic diagram of the SoC system on chip;
[0027] Figure 3 This is a flow chart of a high-precision PPS timing test method under multiple modes described in the present invention. DETAILED DESCRIPTION
[0028] Specific implementation method 1. Combination Figure 1 and Figure 2 This embodiment describes a multi-mode high-precision PPS timing test system, which includes a GNSS receiver module, a SoC system-on-chip, a power management module, a differential output module, a button group, and an LED light group;
[0029] In this embodiment, the SoC system-on-chip, power management module, differential output module, button group and LED group are integrated on a set of circuit boards, and the GNSS receiving module is connected to the circuit boards via a connection interface.
[0030] The GNSS receiving module includes an antenna and a GNSS receiver chip, which is used to obtain external PPS pulses and satellite positioning information of the NMEA-0183 protocol. The obtained external PPS second pulses are used as the absolute time reference of this system;
[0031] The differential output module includes a CAN differential output chip, an RS422 differential output chip and a PPS differential output chip;
[0032] The SoC system-on-chip refers to a fully programmable system-on-chip (APSoC), which integrates an ARM processor and programmable logic (FPGA) to achieve programmable integration of software and hardware. The SoC system-on-chip mainly consists of two parts: an ARM processor core (PS) module and a programmable FPGA (PL) module, where:
[0033] The FPGA module includes a pulse-per-second generation module and a PPS output module;
[0034] The ARM module includes a message input module, a latitude and longitude reading module, a UTC time update module and a message output module;
[0035] In this embodiment, the GNSS receiving module used is configured to output only RMA sentences, and the data output mode is asynchronous receiver and transmitter, i.e., UART;
[0036] The SoC system-on-chip uses a UART to connect to the GNSS receiver module to obtain GNSS positioning information. The SoC system-on-chip uses CAN and another UART to connect to the CAN differential signal output chip and the RS422 differential output chip respectively. The SoC system-on-chip uses GPIO to connect to the PPS differential output chip. At the same time, the SoC system-on-chip FPGA is connected to the PPS pulse output interface of the GNSS receiver chip through an interface configured as an input pin to capture the rising edge of the PPS pulse. The SoC system-on-chip is connected to the key group through a GPIO port configured as an input to capture the signal of the key being pressed or released. The SoC system-on-chip is connected to the LED light group through a GPIO port configured as an output to control the on and off of the LED lights.
[0037] In this embodiment, the power management module uses the TPS7A7001 chip. There are two power supply methods: one is to connect to a 5V DC power supply through the DE socket on the circuit board, and then step down the DC power to 3.3V through the power management chip; the other is to connect to a 5V DC power supply through the Type-C port of the SoC system-on-chip.
[0038] In this embodiment, the GNSS receiving module is used to obtain GNSS signals, including receiving satellite positioning information and external PPS second pulses. The indicator light on the GNSS receiver indicates whether the signal is received. When there is no signal, the external PPS second pulse and satellite positioning information are not output; when a signal is received, the rising edge of the second pulse is used to represent the whole second, and the satellite positioning information encoded in the NMEA-0183 protocol is output through the serial port TX interface.
[0039] The SoC system-on-chip is used to receive GNSS signals, obtain and update UTC time information and latitude and longitude information by processing the received signals, update the time data within the system, generate a timestamp for the current time information, and package and send the synchronization information according to the protocol to achieve time synchronization; specifically including:
[0040] To ensure the high precision of the PPS, the pulse-per-second generation module is implemented in an FPGA. The FPGA counts one second using an external, temperature-controlled 50MHz crystal oscillator. At the end of one second, the FPGA generates a high-level pulse edge, which serves as the stable output for the entire system. Simultaneously, the FPGA receives the external PPS pulse-per-second signal from the GNSS receiver module. This external PPS pulse-per-second signal is used solely for aligning the internal time system. The specific process is as follows: when an external PPS pulse-per-second signal is captured, the pulse-per-second generation module stops counting and generates a pulse-per-second signal at that moment, achieving synchronization between the internal and external PPS pulses. The crystal oscillator then restarts counting, maintaining stable pulse-per-second generation.
[0041] The message input module receives the satellite positioning information sent by the GNSS receiving module through the serial port. The positioning information is encoded in a fixed pattern. Each message starts with the character "$" and ends with a newline character. By identifying the first and last characters of the message, the complete message is stored in the system buffer, and each field of the message is parsed to read the latitude and longitude and UTC time information (UTC time and date data) in the corresponding field.
[0042] The latitude and longitude reading module reads the character data read in the message input module, including east / west longitude, south / north latitude and specific longitude and latitude data, wherein the specific longitude and latitude values need to be changed from the format specified by the NMEA-0183 protocol to decimal floating point numbers, and the current east / west longitude and south / north latitude information is represented by the specified values.
[0043] The UTC time update module simultaneously updates local timekeeping and message time. The UTC time update module activates upon receiving a rising edge pulse from the second pulse generation module, indicating the arrival of a full second. Upon activation, the module first checks the validity of the UTC and date data obtained by the message input module using the received flag. If valid, the read time information overwrites the system's local UTC and date. If invalid, indicating GNSS signal unavailability, the internal time system must be used. This adds 1 to the internal UTC, indicating an increment of 1 second. Each time update is followed by a timestamp.
[0044] The message output module also needs to receive a rising edge from the pulse-per-second generation module, signaling the arrival of a full second and the need for the system to transmit information, activating the message output module. Upon activation, the module first checks whether the receive flag in the latitude and longitude reading module is valid. If so, the latitude and longitude information is packaged and transmitted via RS422 and CAN bus multiplexes according to the communication protocol. If the data is invalid, the latitude and longitude information is not transmitted. Because the system can consistently count data in all circumstances and generate the current timestamp, the message output module retrieves the current timestamp information from the UTC time update module and packages it according to the communication protocol for multiplex transmission via RS422 and CAN bus multiplexes. This module transmits this information in message output mode and does not transmit it in non-message output mode.
[0045] The PPS output module replicates the pulses per second (PPS) generated by the PPS generation module in the FPGA into three channels and connects them to the PPS differential output chip, enabling multi-channel PPS output with low latency. This module can be used for timing testing of multiple satellite-based standalone devices. In PPS output mode, the module transmits PPS; in non-PPS mode, it does not transmit PPS.
[0046] The differential output module includes a PPS differential output chip, a CAN differential output chip, and an RS422 differential output chip, and outputs UCT time information and PPS pulses through multiple communication modes to improve the signal anti-interference ability.
[0047] This embodiment can simulate four conditions through the key group: sending a message signal and sending a PPS pulse, sending a message signal and not sending a PPS pulse, not sending a message signal and sending a PPS pulse, and not sending a message signal and not sending a PPS pulse.
[0048] In this embodiment, the power management module is used to convert the power voltage to supply power to the system;
[0049] The button group is used to switch the system between four modes: sending message signal / not sending message signal mode / sending PPS pulse / not sending PPS pulse; the LED light group is used to indicate the current system mode.
[0050] Specific implementation method 2: Figure 3 This embodiment is described as a test method for a high-precision PPS timing test system in multiple modes as described in Specific Implementation 1. The method is implemented by the following steps:
[0051] Step 1. Correctly connect the GNSS receiver module, differential output module, and the SOC system-on-chip interface; turn on the system, the system enters initialization, the FPGA starts counting, and the LED light group is in the preset state, that is, the indicator light when not sending PPS pulses and messages is on, and the indicator light when sending PPS pulses and messages is off; wait for the GNSS receiver chip to enter the normal receiving state, that is, both LED lights on the GNSS receiver chip are on.
[0052] Step 2: The SoC system-on-chip starts to determine whether the serial port has received the message data. If no message data is received, it waits for the message data. When the serial port RX port receives the message data, it stores the message information in the buffer row by row, reads each field, finds and stores the UTC time information and latitude and longitude information, and determines whether the data is valid. If the data is valid, the receive flag is set to 1; if the data is invalid, the receive flag is set to 0.
[0053] The system also checks whether an F2P interrupt has occurred, which is the rising edge of the second pulse generated by the FPGA. Determining the F2P interrupt and receiving the serial port signal are two simultaneous and independent steps. If the rising edge of the second pulse is not received, it means the full second has not arrived, and the system waits for the F2P interrupt. If a rising edge pulse is captured, the next step is taken.
[0054] Step 3: When the system generates an F2P interrupt, the FPGA copies and expands the pulse signal into three channels, and then determines the output mode of the PPS output module at this time. If the output mode is to send, it is output through the PPS differential output chip; otherwise, the PPS pulse is not sent.
[0055] When the system generates an F2P interrupt, indicating the arrival of a full second, the system first delays for 100ms to wait for the GNSS receiver to send a message and process the internal data of the SoC system on chip.
[0056] The system delay of 100ms and the determination of the PPS output mode are two simultaneous and independent steps.
[0057] Step 4: After the delay is completed, the system starts to judge the message output mode, that is, whether the send signal button is pressed. If the button is not pressed, continue to judge; if the button is pressed to start sending information, execute step 5;
[0058] Step 5: The system sends UTC time information and longitude and latitude information;
[0059] In this embodiment, when sending UTC time information, it is necessary to determine whether the receiving flag is 1. If it is 1, the UTC time received externally is output, the current time is timestamped and packaged; if it is 0, the internal time system is enabled, that is, the internal UTC time + 1, and the updated time is timestamped and packaged and sent.
[0060] When sending latitude and longitude, it is also necessary to judge the receiving flag. If the receiving flag of the latitude and longitude signal is 1, it means that a valid position signal is received and the current latitude and longitude information is packaged and sent; if the receiving flag is 0, there is no valid position information and the current latitude and longitude information is empty.
[0061] In this embodiment, when the system is in output mode, the PPS differential output chip outputs three differential second pulses; the RS422 differential output chip outputs multiple differential serial port data that comply with the communication protocol; and the CAN differential output chip outputs multiple CAN bus data that comply with the communication protocol.
[0062] The technical features of the above-mentioned embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above-mentioned embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0063] The above-described embodiments merely illustrate several implementations of the present invention, and while their descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the patent. It should be noted that a person skilled in the art would be able to make numerous variations and improvements without departing from the spirit of the present invention, all of which fall within the scope of protection of the present invention. Therefore, the scope of protection of the patent for this invention shall be determined by the appended claims.
Claims
1. A high-precision PPS timing test system in multiple modes, characterized by: The test system includes a GNSS receiving module, a SoC system-on-chip, a power management module, and a differential output module; the power management module supplies power to each module; the SoC system-on-chip includes a pulse-per-second generation module, a PPS output module, a message input module, a latitude and longitude reading module, a UTC time update module, and a message output module; The GNSS receiving module acquires a GNSS signal, where the GNSS signal includes an external PPS pulse per second and satellite positioning information; The second pulse generation module uses the external constant temperature crystal oscillator of the SoC system on chip to generate second pulses, and at the same time receives the external PPS second pulses, and uses the external PPS second pulses as the absolute time reference of the test system; the second pulse generation module transmits the generated second pulses to the PPS output module, the UTC time update module and the message output module; The PPS output module expands the received second pulse to multiple channels for synchronous timing testing of multiple devices, and selects whether to send a PPS signal according to the output mode of the current PPS output module; The message input module receives the satellite positioning information in the GNSS signal, and parses the longitude and latitude information and the UTC time information and transmits them to the longitude and latitude reading module and the UTC time updating module respectively; The latitude and longitude reading module obtains the latitude and longitude information and transmits it to the message output module; The UTC time update module simultaneously implements local timing and message time updates; the UTC time update module is activated when a rising edge of a second pulse from a second pulse generation module is received; it is determined whether the UTC time information received from the message input module is valid; if the UTC time information is valid, the read UTC time information is used to overwrite the local UTC time of the system; if the UTC time information is invalid, the internal time system is activated; The message output module sends the current latitude and longitude information and UTC time information to the differential output module according to the current output mode and the communication protocol; The differential output module outputs UTC time information and PPS pulses per second through multiple communication methods.
2. A multi-mode high-precision PPS timing test system according to claim 1, characterized in that: The test system also includes a button group and an LED light group; the button group is used to switch the test system between four modes: sending message signals or not sending message signals, sending PPS pulses or not sending PPS pulses; the LED light group is used to indicate the current system mode.
3. A multi-mode high-precision PPS timing test system according to claim 1, characterized in that: The message output module generates the rising edge of the second pulse of the second pulse generation module according to the received second pulse, indicating that the whole second has arrived. The message output module determines whether the data in the longitude and latitude reading module is valid. If the data is valid, the longitude and latitude information is sent in the output message mode using RS422 and CAN bus in accordance with the communication protocol. If the data is invalid, the latitude and longitude information will not be sent; the message output module obtains the current timestamp information in the UTC time update module, packages it according to the communication protocol, and sends it in the output message mode using RS422 and CAN bus.
4. A multi-mode high-precision PPS timing test system according to claim 1, characterized in that: The GNSS receiving module includes an antenna and a GNSS receiver chip, which is used to obtain external PPS pulses and satellite positioning information of the NMEA-0183 protocol, and uses the obtained external PPS second pulses as the absolute time reference of the test system.
5. A multi-mode high-precision PPS timing test system according to claim 1, characterized in that: The PPS output module replicates the second pulse generated by the second pulse generation module into three channels and connects them to the PPS differential output chip, thereby outputting multiple second pulses with low latency for timing testing of multiple satellite-borne single-machines. The PPS output module sends second pulses in the output PPS mode. In the non-PPS output mode, no second pulse is sent.
6. A multi-mode high-precision PPS timing test system according to claim 1, characterized in that: The differential output module includes a CAN differential output chip, an RS422 differential output chip and a PPS differential output chip; When the system is in output mode, the PPS differential output chip outputs three differential second pulses; The RS422 differential output chip outputs multiple channels of differential serial port data that comply with the communication protocol; The CAN differential output chip outputs multiple channels of CAN bus data that comply with the communication protocol.
7. A high-precision PPS timing test method in multiple modes, characterized by: The method is implemented by a multi-mode high-precision PPS timing test system according to claims 1-6, and the specific process of the method is as follows: Step 1: Connect the GNSS receiver module, differential output module, and the SOC chip system interface correctly; initialize the system; Step 2: The message input module of the SOC system-on-chip determines whether the message data is received. If not, it continues to wait; if the message data is received, it stores the message data in a buffer row by row and reads the UTC time information and the longitude and latitude information; The SOC system-on-chip also determines whether an F2P interrupt is generated. If so, it executes step 3; otherwise, it continues to wait for the F2P interrupt. Step 3: Delay 100ms and proceed to step 4; at the same time, determine the PPS output mode of the PPS output module; proceed to step 5; Step 4: After the delay is completed, determine the output mode of the message output module. If the output mode is send, send the UTC time information and latitude and longitude information. Otherwise, continue to determine. Step 5: If the PPS output mode is send, the PPS output module sends information; otherwise, continue to judge.
8. A multi-mode high-precision PPS timing test method according to claim 7, characterized in that: In step 2, after receiving the message data, it is determined whether the data is valid. If the data is valid, the reception flag is set to 1; if the data is invalid, the reception flag is set to 0.
9. A multi-mode high-precision PPS timing test method according to claim 7, characterized in that: In step 2, when an F2P interrupt occurs, the FPGA copies and expands the second pulse into three channels, and then determines the output mode of the PPS output module at this time. If the output mode is to send, it is output through the PPS differential output chip; otherwise, the PPS pulse is not sent.
10. A multi-mode high-precision PPS timing test method according to claim 7, characterized in that: In step 4, when the message output module sends UTC time information, it needs to determine whether the reception flag of the received UTC time information is 1. If it is 1, the UTC time information received from the outside is output, the current UTC time information is timestamped and packaged; if it is 0, the internal time system is enabled, that is, the internal UTC time + 1, and the updated time is timestamped and packaged for sending; When the message output module sends longitude and latitude information, it is necessary to judge the information reception flag. If the reception flag of the longitude and latitude information is 1, a valid position signal is received and the current longitude and latitude information is packaged and sent; if the reception information flag is 0, there is no valid position information and the current longitude and latitude information is empty.
Citation Information
Patent Citations
Pulse per second (PPS) generating method and device
CN104808480A
Time-keeping and timing precision test device, time-keeping precision test method and timing precision test method based on satellite timing system
CN106656451A