Information Processing Method and Device Compatible with Multiple Asynchronous Satellite Receivers

By compatible with multiple asynchronous satellite receiver information processing methods, the problem of poor compatibility and maintainability of satellite receivers in train-controlled vehicle-mounted systems is solved, and compatibility processing of receivers of different brands and frequency are achieved, ensuring real-time and security of positioning data, and reducing development costs and time.

CN114280646BActive Publication Date: 2025-07-29CASCO SIGNAL LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111616535.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-27
Publication Date
2025-07-29
Estimated Expiration
2041-12-27

AI Technical Summary

Technical Problem

In the existing train-controlled vehicle-mounted systems, the redundant configuration of satellite receivers increases development costs and cycles, and it is difficult to replace new receivers, resulting in poor system compatibility and maintainability.

Method used

It provides an information processing method that is compatible with multiple asynchronous satellite receivers. Through timer management, cross-checking and data frame processing, it ensures that the train control vehicle-mounted system can be compatible with satellite receivers of different brands and working frequencies, extracts and cross-checking positioning data, and provides it to the vehicle-mounted master control software.

Benefits of technology

It improves the compatibility and maintainability of the train-controlled vehicle-mounted system to satellite receivers, ensures real-time and security of positioning data, reduces development costs and time, and improves the availability and stability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114280646B_ABST
    Figure CN114280646B_ABST
Patent Text Reader

Abstract

An information processing method compatible with multiple asynchronous satellite receivers, comprising the steps of: S1. Clear the first array; S2. Initialize a timer, the vehicle-mounted main control software enters a new operation cycle, and start the timer; S3. When the timing duration of the timer > TC, enter S4, TC = max{T1, …, TN}, T1, …, TN are the working cycles of N asynchronous satellite receivers; when the timing duration of the timer ≤ TC, receive the data frames sent by the N satellite receivers, extract the positioning data therefrom and update the corresponding elements in the first array; if there are N positioning data stored in the first array, enter S5; otherwise, repeat S3; S4. If there are at least two positioning data stored in the first array, enter S5; if less than two, turn off the timer and enter S2; S5. Cross-check the positioning data in the first array; provide the two positioning data that pass the cross-check to the vehicle-mounted main control software, turn off the timer, and enter S1; otherwise, turn off the timer and enter S2. The present invention also provides an information processing device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of satellite signal processing in train control on-vehicle systems, and particularly relates to an information processing method and device compatible with multiple asynchronous satellite receivers. Background Art

[0002] At present, the application of the global navigation satellite system (GNSS) in the autonomous positioning of train control on-vehicle systems is becoming more and more common. The on-vehicle satellite receiver can receive navigation signals and differential signals of satellites such as Beidou / GPS, enabling the train control on-vehicle system to obtain real-time high-precision positioning information and achieve autonomous positioning. In order to ensure the safety integrity of the satellite positioning function of the train control on-vehicle system, the satellite receiver needs to be redundantly configured. Therefore, the on-vehicle main control software of the train control on-vehicle system needs to have the ability to process multiple redundant satellite positioning information.

[0003] The traditional processing method is to select satellite signal receivers with specific operating frequencies and specific data protocols, or to conduct unified customized development on the receiving frequencies and data protocols of different brands of satellite signal receivers. This increases the development cost and development cycle of the train control on-vehicle system, and also reduces the maintainability. When the performance of a certain type of satellite receiver cannot meet the requirements, it is difficult to replace it with a new model of receiver. Summary of the Invention

[0004] The purpose of the present invention is to provide an information processing method and device compatible with multiple asynchronous satellite receivers, which can be compatible with multiple asynchronous satellite receivers and perform cross-verification based on the received multiple satellite positioning information, ensuring that the main control software in the train control on-vehicle control system provides stable and reliable positioning data, and is not limited by the operating frequency and data protocol of the satellite receiver.

[0005] To achieve the above purpose, the present invention provides an information processing method compatible with multiple asynchronous satellite receivers. The multiple asynchronous satellite receivers include the first to the Nth satellite receivers. The method includes the steps:

[0006] S1. Clear the first array, where the first array is a one-dimensional N-element array;

[0007] S2. Initialize the timer; when the on-vehicle main control software enters a new operating cycle, start the timer;

[0008] S3. Receive data frames sent by the first to the Nth satellite receivers, extract positioning data from the received data frames in real time, and update the corresponding elements in the first array with the positioning data from different satellite receivers;

[0009] When the timing duration of the timer > T C, enter S4;

[0010] When the timing duration of the timer ≤ T C and the first array stores N positioning data, enter S5;

[0011] When the timing duration of the timer ≤ T C and the number of positioning data stored in the first array is less than N, repeat S3;

[0012] where T C is the set duration, T C > T, and T is the operating cycle of the vehicle-mounted main control software;

[0013] S4. If the first array stores at least two positioning data from different satellite receivers, enter S5; otherwise, turn off the timer and enter S2;

[0014] S5. Cross-check the positioning data in the first array; if there are two positioning data passing the cross-check, provide the two positioning data to the vehicle-mounted main control software, turn off the timer, and enter S1; otherwise, turn off the timer and enter S2.

[0015] Optionally, T ≤ T′, T′ = min{T1, …, T N}; T1, …, T N are the data frame transmission cycles of the first to the Nth satellite receivers respectively.

[0016] Optionally, T C = max{T1, …, T N}.

[0017] Optionally, the extraction of positioning data described in step S3 includes:

[0018] Interpret the corresponding data frame through the data protocol corresponding to the satellite receiver; the fields at fixed positions in the data frame specified in the data protocol are used as positioning data.

[0019] Optionally, the update of the corresponding element in the first array described in step S3 includes:

[0020] When the data frame of the ith satellite receiver is received, the positioning data extracted from the data frame is used to update A[i - 1]; A[i - 1] is the ith element in the first array; i ∈ [1, N].

[0021] Optionally, the data frame also includes an integrity check code for the positioning data; step S3 also includes performing an integrity check on the extracted positioning data through the integrity check code; when the integrity check fails, discard the extracted positioning data.

[0022] Optionally, the integrity verification code is generated by any one of CRC, MD5, and SHA1 algorithms.

[0023] Optionally, the cross-verification in step S5 includes:

[0024] Based on the corresponding longitude information and latitude information in the two positioning data, calculate the longitude difference and latitude difference between the two positioning data; when the longitude difference is less than the set longitude difference threshold and the latitude difference is less than the set latitude difference threshold, the two positioning data pass the cross-verification.

[0025] Optionally, before step S1, it further includes:

[0026] Step S0: Establish a second array and initialize the second array; the second array includes two elements B[0] and B[1], which are respectively used to store the two positioning data that pass the cross-verification.

[0027] Optionally, if there is no positioning data stored in the second array, step S5 includes:

[0028] S51: Each time, select two positioning data stored in the first array for cross-verification; when there are two positioning data in the first array that pass the cross-verification, stop the cross-verification and enter step S52; otherwise, enter step S53;

[0029] S52: Update B[0] and B[1] with the two positioning data that pass the cross-verification in step S51 respectively; provide B[0] and B[1] to the vehicle-mounted main control software and enter step S1;

[0030] S53: Turn off the timer and enter step S2.

[0031] Optionally, if there are already two positioning data stored in the second array, step S5 further includes:

[0032] S51′: Determine whether the positioning data stored in B[0] and B[1] respectively belong to the data frames sent by the i′-th and j′-th satellite receivers;

[0033] If both A[i′ - 1] and A[j′ - 1] have positioning data, enter S52′; where A[i′ - 1] and A[j′ - 1] are the i′-th and j′-th elements in the first array respectively, i′, j′ ∈ [1, N], and i′ ≠ j′;

[0034] If A[i′ - 1] has positioning data and A[j′ - 1] does not have positioning data, enter S53′;

[0035] If A[i′ - 1] does not have positioning data and A[j′ - 1] has positioning data, enter S54′;

[0036] If neither A[i′ - 1] nor A[j′ - 1] stores positioning data, enter S55′;

[0037] S52′. Cross - check A[i′ - 1] and A[j′ - 1]; if A[i′ - 1] and A[j′ - 1] pass the cross - check, update B[0] and B[1] with A[i′ - 1] and A[j′ - 1], provide B[0] and B[1] to the vehicle main control software, and enter step S1; if A[i′ - 1] and A[j′ - 1] do not pass the cross - check, enter S55′;

[0038] S53′. Cross - check the other positioning data in the first array except A[i′ - 1] and A[j′ - 1] with A[i′ - 1] in sequence; if there is positioning data A[k] in the first array that satisfies A[i′ - 1] and A[k] passing the cross - check, stop the cross - check, update B[0] and B[1] with A[i′ - 1] and A[k] respectively, provide B[0] and B[1] to the vehicle main control software, and enter step S1; if the other positioning data in the first array except A[i′ - 1] and A[j′ - 1] do not pass the cross - check with A[i′ - 1], enter S55′; where k ∈ [0, N - 1], k ≠ i′ - 1, j′ - 1;

[0039] S54′. Cross - check the other positioning data in the first array except A[i′ - 1] and A[j′ - 1] with A[j′ - 1] in sequence; if there is positioning data A[k′] in the first array that satisfies A[k′] and A[j′ - 1] passing the cross - check, stop the cross - check, update B[0] and B[1] with A[k′] and A[j′ - 1] respectively, provide B[0] and B[1] to the vehicle main control software, and enter step S1; if the other positioning data in the first array except A[i′ - 1] and A[j′ - 1] do not pass the cross - check with A[j′ - 1], enter S55′; where k′ ∈ [0, N - 1], k′ ≠ i′ - 1, j′ - 1;

[0040] S55′. Cross - check the other positioning data in the first array except A[i′ - 1] and A[j′ - 1]; if there are two positioning data in the first array that pass the cross - check, stop the cross - check, update B[0] and B[1] with these two positioning data respectively, provide the positioning data stored in B[0] and B[1] to the vehicle main control software, and enter step S1; if there are no two positioning data that pass the cross - check among the other positioning data in the first array except A[i′ - 1] and A[j′ - 1], turn off the timer and enter step S2.

[0041] The present invention also provides an information processing device compatible with multiple asynchronous satellite receivers for implementing the information processing method as described in the present invention. The information processing device includes:

[0042] A data extraction unit for extracting positioning data in the corresponding data frames of N asynchronous satellite receivers in real time;

[0043] A first storage unit for storing the extracted positioning data;

[0044] A timer for timing;

[0045] A data processing unit, which is communicatively connected to the vehicle-mounted main control software and the first storage unit, and the data processing unit is signal-connected to the timer;

[0046] When the timing time of the timer ≤ T C and there are N positioning data stored in the first storage unit:

[0047] The data processing unit performs cross-checking on the positioning data stored in the first storage unit; if two positioning data in the first storage unit pass the cross-check, the data processing unit stops the cross-checking and provides the two positioning data to the vehicle-mounted main control software, and then the data processing unit clears the first storage unit and drives the timer to re-time; if any two positioning data in the first storage unit do not pass the cross-check, the data processing unit drives the timer to re-time.

[0048] Optionally, the information processing device compatible with multiple asynchronous satellite receivers further includes a second storage unit, and the data processing unit updates the second storage unit with the two positioning data that pass the cross-check and provides the two positioning data stored in the second storage unit to the vehicle-mounted main control software.

[0049] Optionally, the data processing unit performing cross-checking on the positioning data stored in the first storage unit includes: the data processing unit further determines that the two positioning data stored in the second storage unit respectively belong to the data frames sent by the i'-th and j'-th satellite receivers; the data processing unit preferentially selects the positioning data from the i'-th and j'-th satellite receivers in the first storage unit for cross-checking.

[0050] Optionally, when the timing time of the timer > T C and there are m positioning data stored in the first storage unit:

[0051] The data processing unit performs cross-checking on the m positioning data; where m ∈ [2, N - 1]; if two positioning data in the m positioning data pass the cross-check, the data processing unit updates the second storage unit with the two positioning data and provides the two positioning data in the second storage unit to the vehicle-mounted main control software, and then the data processing unit clears the first storage unit and drives the timer to re-time.

[0052] Optionally, when the timing time of the timer > TC And the positioning data in the first storage unit is less than two: The data processing unit drives the timer to restart timing.

[0053] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0054] 1) The information processing method and device compatible with multiple asynchronous satellite receivers of the present invention can compatibly process data frames from satellite receivers with multiple different operating frequencies, extract positioning data therefrom and provide it to the vehicle-mounted main control software of the train control on-vehicle system; the compatibility of the train control on-vehicle system with satellite receivers is greatly improved through the present invention, meeting the maintainability of the train control on-vehicle system. The train control on-vehicle system can use off-the-shelf satellite receivers of various brands without custom-developing satellite positioning receivers, reducing the development cost and development time.

[0055] 2) The present invention performs asynchronous processing and updating on the positioning data from satellite receivers with different operating frequencies to ensure the real-time nature of the positioning data used, and the old positioning data will not be reused.

[0056] 3) The present invention performs cross-checking on the data from satellite receivers with different operating frequencies to improve the security of the data.

[0057] 4) When performing cross-checking, the present invention preferentially selects the current positioning data of the preselected satellite receiver (the satellite receiver that provided positioning data to the vehicle-mounted main control software last time) for cross-checking; if the current positioning data of the preselected satellite receiver passes the cross-check, it is used as the positioning data provided to the vehicle-mounted main control software this time; the stability of the satellite positioning data output to the vehicle-mounted main control software is improved through the present invention.

[0058] 5) By setting a timer, the present invention does not need to wait until all data frames of satellite receivers are received before performing a series of processes (including: extracting positioning data from the data frames, cross-checking, and providing positioning data to the vehicle-mounted main control software); when a satellite receiver fails, it will be judged whether the timer timing exceeds the set duration T C , and directly perform cross-checking on the positioning data of the existing received satellite receivers (not less than two), avoiding long waiting of the vehicle-mounted main control software and improving the availability of the train control on-vehicle system. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] In order to more clearly illustrate the technical solution of the present invention, the drawings required for description will be briefly introduced below. Obviously, the drawings in the following description are an embodiment of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts:

[0060] Figure 1 Flow chart of the information processing method compatible with multiple asynchronous satellite receivers of the present invention;

[0061] Figure 2 Flow chart of storing positioning data into the first array in the embodiment of the present invention;

[0062] Figure 3 Schematic diagram of the communication connection between three satellite receivers and the vehicle-mounted main control software in the embodiment of the present invention;

[0063] Figure 4 Flow chart of the information processing method of the present invention in the embodiment;

[0064] Figure 5 Schematic diagram of the information processing device compatible with multiple asynchronous satellite receivers of the present invention.

[0065] In the figure: 1. Data extraction unit; 2. First storage unit; 3. Timer; 4. Data processing unit; 5. Second storage unit. Detailed implementation manners

[0066] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0067] It should be understood that when used in this specification and the appended claims, the term "comprising" indicates the presence of the described features, wholes, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or their combinations.

[0068] It should also be understood that the terms used in the specification of this application are only for the purpose of describing specific embodiments and are not intended to limit this application. As used in the specification of this application and the appended claims, unless the context clearly indicates otherwise, the singular forms of "a", "an" and "the" are intended to include the plural forms.

[0069] It should be further understood that the term " / and / " used in the specification of this application and the appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0070] As used in this specification and the appended claims, the term "if" may be construed contextually as "when" or "once" or "in response to determining" or "in response to detecting". Similarly, the phrase "if determined" or "if [the described condition or event] is detected" may be construed contextually to mean "once determined" or "in response to determining" or "once [the described condition or event] is detected" or "in response to detecting [the described condition or event]".

[0071] In addition, in the description of this application, the terms "first", "second", "third", etc. are used only for distinguishing descriptions and cannot be construed as indicating or implying relative importance.

[0072] The present invention provides an information processing method compatible with multiple asynchronous satellite receivers, and provides positioning data for the vehicle-mounted main control software based on the received data frames of the first to the Nth satellite receivers.

[0073] Let T be the operating cycle of the vehicle-mounted main control software, and T1, …, T N be the data frame transmission cycles of the first to the Nth satellite receivers respectively. In the present invention, T ≤ T′, where T′ = min{T1, …, T N}.

[0074] As Figure 1 shown, the information processing method compatible with multiple asynchronous satellite receivers of the present invention includes the steps:

[0075] S0. Establish a second array and initialize the second array; the second array includes two elements B[0] and B[1]. In this embodiment, the initialization can define B[0] and B[1] as Null.

[0076] S1. Clear the first array, the first array is a one-dimensional N-element array, and the first array is denoted as A;

[0077] S2. Initialize the timer; when the vehicle-mounted main control software enters a new operating cycle, start the timer;

[0078] S3. Receive the data frames sent by the first to the Nth satellite receivers, extract the positioning data from the received data frames in real time, and update the corresponding elements in the first array with the extracted positioning data;

[0079] The extraction of the positioning data in step S3 includes:

[0080] Interpret the corresponding data frames through the data protocol corresponding to the satellite receiver; the fields at fixed positions in the data frames are specified as the positioning data in the data protocol. The set field of the data frame header is the code of the data protocol adopted.

[0081] The update of the corresponding element in the first array described in step S3 includes:

[0082] When receiving the data frame of the i-th satellite receiver, the positioning data extracted from the data frame is used to update A[i - 1]; A[i - 1] is the i-th element in the first array; i ∈ [1, N].

[0083] In another embodiment, three satellite receivers are included. As Figure 2 shown, the received different positioning data can also be sequentially stored into the first array. M represents the number of positioning data in the first array. For example, at time t, the positioning data of the second satellite receiver is received and stored into A[0]; at time t + t0, the positioning data of the third satellite receiver is received and stored into A[1]; and the subsequently received positioning data of the second and third satellite receivers are used to update A[0] and A[1] respectively.

[0084] In another embodiment, the data frame further includes an integrity check code for the positioning data; step S3 further includes performing an integrity check on the extracted positioning data through the integrity check code; when the integrity check fails, the extracted positioning data is discarded. The integrity check code can be generated by any one of the algorithms of CRC, MD5, and SHA1.

[0085] When the timing duration of the timer > T C , enter S4;

[0086] When the timing duration of the timer ≤ T C and N positioning data are stored in the first array, enter S5;

[0087] When the timing duration of the timer ≤ T C and the number of positioning data stored in the first array is less than N, repeat S3;

[0088] where T C is a set duration, T C > T. In the embodiments of the present invention, T C = max{T1,..., T N}.

[0089] S4. If at least two positioning data are stored in the first array, enter S5; otherwise, turn off the timer and enter S2;

[0090] S5. Cross-check the positioning data in the first array; if there are two positioning data passing the cross-check, provide the two positioning data to the vehicle-mounted main control software, turn off the timer, and enter S1; otherwise, turn off the timer and enter S2.

[0091] The cross-check includes:

[0092] Based on the corresponding longitude information and latitude information in the two positioning data, calculate the longitude difference and latitude difference between the two positioning data; when the longitude difference is less than the set longitude difference threshold and the latitude difference is less than the set latitude difference threshold, the two positioning data pass the cross-check.

[0093] In order to ensure the stability of providing positioning data to the vehicle-mounted main control software, reduce the switching between different satellite receivers, and preferably provide positioning data to the vehicle-mounted main control software through the preselected positioning receiver. In the present invention, the positioning data of the preselected satellite receiver is preferentially selected during cross-checking.

[0094] The second array is used to store the two positioning data that pass the cross-check. If there is no positioning data stored in the second array (indicating that no positioning data has been provided to the vehicle-mounted main control software before), step S5 specifically includes:

[0095] S51. Each time, select two positioning data stored in the first array for cross-checking; when two positioning data in the first array pass the cross-check, stop the cross-check and enter step S52; otherwise, enter step S53;

[0096] S52. Update B[0] and B[1] with the two positioning data that pass the cross-check in step S51 respectively; select one positioning data from B[0] and B[1] to provide to the vehicle-mounted main control software, and enter step S1;

[0097] S53. Turn off the timer and enter step S2.

[0098] If two positioning data have been stored in the second array (indicating that positioning data has been provided to the vehicle-mounted main control software before), step S5 specifically includes:

[0099] S51′. Determine whether the positioning data stored in B[0] and B[1] respectively belong to the data frames sent by the i′-th and j′-th satellite receivers (that is, both the i′-th and j′-th satellite receivers are preselected satellite receivers);

[0100] If both A[i′ - 1] and A[j′ - 1] store positioning data, enter S52′; where A[i′ - 1] and A[j′ - 1] are the i′-th and j′-th elements in the first array respectively, i′, j′ ∈ [1, N], i′ ≠ j′;

[0101] If A[i′ - 1] stores positioning data and A[j′ - 1] does not store positioning data, enter S53′;

[0102] If A[i′ - 1] does not store positioning data and A[j′ - 1] stores positioning data, enter S54′;

[0103] If neither A[i′ - 1] nor A[j′ - 1] stores positioning data, enter S55′;

[0104] S52′. Cross - check A[i′ - 1] and A[j′ - 1]; if A[i′ - 1] and A[j′ - 1] pass the cross - check, update B[0] and B[1] with A[i′ - 1] and A[j′ - 1], select one of B[0] and B[1] to provide to the vehicle main control software, and enter step S1; if A[i′ - 1] and A[j′ - 1] do not pass the cross - check, enter S55′;

[0105] S53′. Cross - check the positioning data in the first array other than A[i′ - 1] and A[j′ - 1] with A[i′ - 1] in sequence; if there is positioning data A[k] in the first array that satisfies A[i′ - 1] and A[k] passing the cross - check, stop the cross - check, update B[0] and B[1] with A[i′ - 1] and A[k] respectively, provide B[0] to the vehicle main control software, and enter step S1; if the positioning data in the first array other than A[i′ - 1] and A[j′ - 1] do not pass the cross - check with A[i′ - 1], enter S55′; where k ∈ [0, N - 1], k ≠ i′ - 1, j′ - 1;

[0106] S54′. Cross - check the positioning data in the first array other than A[i′ - 1] and A[j′ - 1] with A[j′ - 1] in sequence; if there is positioning data A[k′] in the first array that satisfies A[k′] and A[j′ - 1] passing the cross - check, stop the cross - check, update B[0] and B[1] with A[k′] and A[j′ - 1] respectively, provide B[1] to the vehicle main control software, and enter step S1; if the positioning data in the first array other than A[i′ - 1] and A[j′ - 1] do not pass the cross - check with A[j′ - 1], enter S55′; where k′ ∈ [0, N - 1], k′ ≠ i′ - 1, j′ - 1;

[0107] S55′. Cross - check the positioning data in the first array other than A[i′ - 1] and A[j′ - 1]; if there are two positioning data in the first array passing the cross - check, stop the cross - check, update B[0] and B[1] with these two positioning data respectively, provide the positioning data stored in B[0] and B[1] to the vehicle main control software, and enter step S1; if there are no two positioning data passing the cross - check among the positioning data in the first array other than A[i′ - 1] and A[j′ - 1], turn off the timer and enter step S2.

[0108] Embodiment 1

[0109] In this embodiment, as Figure 3As shown, the first to third satellite receivers provide positioning data to the on-vehicle control software of the train control on-vehicle system through the RS422 serial port. In the present invention, since the operating cycle of the on-vehicle main control software is 50 ms, the data frame reception cycles of the first to third satellite receivers are 100 ms, 200 ms, and 300 ms respectively, and the set duration of the timer is 300 ms. The first array is used to store the positioning data of the first to third satellite receivers. The second array is used to store two positioning data that pass the cross-check. Since the operating cycle of the on-vehicle main control software is less than the data frame reception cycle of any satellite receiver, it is possible to receive positioning data from 0, 1, 2, or 3 satellite receivers within the operating cycle of the on-vehicle main control software. In this embodiment, the first element of the first array stores the positioning data of the first satellite receiver, the second element of the first array stores the positioning data of the second satellite receiver, and the third element of the first array stores the positioning data of the third satellite receiver.

[0110] In the present invention, when the on-vehicle main control software enters a new operating cycle, the timer is started. Within the set duration of 300 ms, if the positioning data of all satellite receivers (the first to third satellite receivers in this embodiment) are received, even if the timing duration of the timer has not reached 300 ms, the timer will be turned off and the timing of the timer will be initialized to 0, and subsequent cross-checks will be performed. In one embodiment, within the set duration of 300 ms, the first satellite receiver may receive 3 data frames. Each time the first satellite receiver receives a new data frame, the latest positioning data is extracted from the newly received data frame to update the content of the first element in the first array. If the positioning data of at least one satellite receiver is not received, the first array continues to be updated until the timer reaches 300 ms, at which point the timer will be turned off and the timing of the timer will be initialized to 0, and it will be determined whether subsequent cross-checks are required. The main function of the timer is to set a time limit to prevent the time for waiting to receive the positioning data of all satellite receivers from being too long. As long as this time limit is reached, subsequent steps can be performed.

[0111] After the timer is turned off in the present invention, the number of positioning data in the first array is judged. If there are at least two positioning data in the first array, cross-checks are performed; when two positioning data pass the cross-checks, the positioning data is output to the on-vehicle main control software, and the first array is cleared. If the number of positioning data in the first array is less than or equal to 1 and cross-checks cannot be performed, or the positioning data in the first array does not pass the cross-checks, the positioning data cannot be output to the on-vehicle main control software, and the first array will not be cleared at this time.

[0112] For example, when the timer is turned on for the p-th time and the timing duration of the timer is 120 ms, the positioning data of the first to third satellite receivers (the positioning data of all satellite receivers have been received) are stored in the first array. At this time, there is no need to continue waiting and the timer can be directly turned off to perform cross-checking on the positioning data in the first array. Among them, the positioning data of the previous satellite receiver (the satellite receiver that provided positioning data to the vehicle-mounted main control software last time) is preferentially selected for cross-checking. If two positioning data pass the cross-check, the cross-checking can be stopped (it is not necessary to check all the positioning data), and the two positioning data that pass the cross-check are selected and provided to the vehicle-mounted main control software. After providing the positioning data to the vehicle-mounted main control software, the first array is also cleared at the same time, so the old positioning data will not be reused. However, if the positioning data in the first array do not pass the cross-check, the first array will not be cleared. When the vehicle-mounted main control software enters a new operation cycle, the timer is restarted, and the received positioning data will continue to be stored in the corresponding elements of the first array.

[0113] It is also possible that when the timer is turned on for the q-th time, the timing duration of the timer reaches 300 ms, and only the positioning data of the first and third satellite receivers (only part of the satellite receivers' positioning data have been received) are stored in the first array. At this time, there is no need to continue waiting to receive the positioning data of all satellite receivers, but the timer is turned off, and cross-checking is performed on the positioning data of the first and third satellite receivers in the first array. If the cross-check is passed, the two positioning data are provided to the vehicle-mounted main control software. After providing the positioning data to the vehicle-mounted main control software, the first array is also cleared at the same time. However, if the positioning data of the first and third satellite receivers do not pass the cross-check, the first array will not be cleared. When the vehicle-mounted main control software enters a new operation cycle, the timer is restarted, and the received positioning data will continue to be stored in the corresponding elements of the first array.

[0114] It is also possible that when the timer is turned on for the r-th time, the timing duration of the timer reaches 300 ms, and only the positioning data of the first satellite receiver or no positioning data is stored in the first array. At this time, cross-checking cannot be performed. Therefore, only the timer is turned off and the timing of the timer is reset to 0. However, the first array will not be cleared. When the vehicle-mounted main control software enters a new operation cycle, the timer is restarted, and the received positioning data will continue to be stored in the corresponding elements of the first array.

[0115] As Figure 4 shown, in this embodiment, positioning data is provided to the vehicle-mounted main control software by 3 satellite receivers. The positioning data from M satellite receivers are stored in the first array A.

[0116] When M = 0 or M = 1. When T ≤ T cWhen this occurs, the value of M remains unchanged and the timer continues to count. The vehicle-mounted main control software autonomously enters the next operating cycle without being interfered by the outside world. When T > T c When this occurs, the value of M remains unchanged and the timer is turned off, then it enters the next operating cycle of the vehicle-mounted main control software.

[0117] When M = 2. When T ≤ T c When this occurs, M = 2 is maintained and the timer continues to count. The vehicle-mounted main control software autonomously enters the next operating cycle. When T > T c When this occurs, cross-checking is performed on the data of two different satellite positioning receivers that have been received. The two positioning data are placed in A[0] and A[1]. If the cross-check passes, they are written into B[0] and B[1], then the value of M is cleared to 0, the timer is turned off, the first array A is emptied, and it enters the next operating cycle of the vehicle-mounted main control software; if the cross-check fails, M = 2 is maintained (the first array is not emptied) and the timer is turned off, then it enters the next cycle of the vehicle-mounted main control software;

[0118] When M = 3. This indicates that the positioning data of three different satellite positioning receivers have been received after the timer was last turned on. It is determined which satellite receiver was used first for the positioning data stored in B[0] and B[1], and the positioning data of this first-used satellite receiver in the first array A is preferentially used for cross-checking (here, it is possible that A[0] and A[1], A[1] and A[2], or A[0] and A[2]). If the cross-check fails, then the other two combinations are selected for cross-checking. As long as the cross-check passes once, the two positioning data that passed the cross-check are written into B[0] and B[1], then the value of M is cleared to 0 (the first array is emptied), the timer is turned off, and the array A is emptied, and it enters the next cycle of the vehicle-mounted main control software. If all cross-checks fail, the timer is turned off, M = 3 is maintained, and then it enters the next cycle of the vehicle-mounted main control software.

[0119] The present invention also provides an information processing device compatible with multiple asynchronous satellite receivers for implementing the information processing method described in the present invention, such as Figure 5 As shown, the device includes: a data extraction unit 1, a first storage unit 2, a timer 3, a data processing unit 4, and a second storage unit 5.

[0120] The data extraction unit 1 is used to extract the positioning data in the data frames corresponding to N asynchronous satellite receivers. The data extraction unit 1 always keeps working without being affected by the outside world.

[0121] The first storage unit 2 stores the extracted positioning data in real time.

[0122] The timer 3 is used for timing.

[0123] The data processing unit 4 is communicatively connected to the vehicle-mounted main control software and the first storage unit, and is signal-connected to the timer 3.

[0124] When the timing time of the timer 3 ≤ T C and there are N positioning data stored in the first storage unit 2:

[0125] The data processing unit 4 performs cross-checking on the positioning data stored in the first storage unit 2; a) If there are two positioning data in the first storage unit 2 that pass the cross-check, the data processing unit 4 stops the cross-checking and uses these two positioning data to update the second storage unit 5, and provides the two positioning data in the second storage unit 5 to the vehicle-mounted main control software. Then the data processing unit 4 clears the first storage unit 2 and drives the timer 3 to re-time. b) If any two positioning data in the first storage unit 2 do not pass the cross-check, the data processing unit 4 drives the timer 3 to re-time.

[0126] When the timing time of the timer 3 > T C and there are m positioning data stored in the first storage unit 2: The data processing unit 4 performs cross-checking on the m positioning data; where m ∈ [2, N - 1]; if there are two positioning data among the m positioning data that pass the cross-check, the data processing unit 4 uses these two positioning data to update the second storage unit 5, and provides the two positioning data in the second storage unit 5 to the vehicle-mounted main control software, and then the data processing unit 4 clears the first storage unit 2 and drives the timer 3 to re-time.

[0127] When the timing time of the timer 3 > T C and the number of positioning data in the first storage unit 2 is less than two: The data processing unit 4 drives the timer 3 to re-time.

[0128] The information processing method and device compatible with multiple asynchronous satellite receivers of the present invention can compatibly process data frames from satellite receivers of various different operating frequencies and various brand finished products, greatly improving the compatibility of the train control on-vehicle system with satellite receivers and the maintainability of the train control on-vehicle system. There is no need to customize the development of satellite receivers, reducing the development cost and development time.

[0129] The present invention performs asynchronous processing and updating on the positioning data from satellite receivers of different operating frequencies to ensure the real-time nature of the positioning data used, and the old positioning data will not be reused. The present invention improves the security of the positioning data by performing cross-checking on the positioning data from different satellite receivers.

[0130] When performing cross-checking, the present invention preferentially selects the positioning data of the preselected satellite receiver for cross-checking; and preferentially provides the positioning data of the preselected satellite receiver to the vehicle-mounted main control software, reducing the switching of the positioning data output to the vehicle-mounted main control software between different satellite receivers and improving the stability of the output data.

[0131] By setting a timer, the present invention does not need to wait until all the data frames of the satellite receivers are received before performing a series of processes; when the timer times out after exceeding the set duration T C , as long as no less than two satellite receivers receive positioning data (it is not necessary for all satellite receivers to receive positioning data), cross-checking can be performed, avoiding the long waiting of the vehicle-mounted main control software and improving the availability of the train control on-vehicle system.

[0132] It should be understood that the magnitudes of the sequence numbers of the steps in the above embodiments do not mean the order of execution. The order of execution of each process should be determined by its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.

[0133] The above is only the specific implementation manner of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present invention can easily think of various equivalent modifications or substitutions, and these modifications or substitutions should be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention should be subject to the protection scope of the claims.

Claims

1. An information processing method compatible with multiple asynchronous satellite receivers, where the multiple asynchronous satellite receivers include a first to an Nth satellite receiver, characterized in that, The method includes the steps: S1. Clear the first array, where the first array is a one-dimensional N-element array; S2. Initialize the timer; when the vehicle-mounted main control software enters a new operation cycle, start the timer; S3. Receive data frames sent by the first to the Nth satellite receivers, and extract positioning data from the received data frames in real time; and use the positioning data from different satellite receivers to update the corresponding elements in the first array respectively; When the timing duration of the timer > T C , enter S4; When the timing duration of the timer ≤ T C and there are N positioning data stored in the first array, enter S5; When the timing duration of the timer ≤ T C and the number of positioning data stored in the first array is less than N, repeat S3; where T C is the set duration, T C >T, and T is the operating cycle of the vehicle-mounted main control software; S4. If there are at least two positioning data from different satellite receivers stored in the first array, enter S5; Otherwise, turn off the timer and enter S2; S5. Cross-check the positioning data in the first array; if there are two positioning data that pass the cross-check, provide the two positioning data to the vehicle-mounted main control software, turn off the timer, and enter S1; otherwise, turn off the timer and enter S2.

2. The information processing method for a multi-compatible asynchronous satellite receiver according to claim 1, wherein T ≤ T′, where T′ = min{T1, …, T N}; T1, …, T N are the data frame transmission periods of the first to the Nth satellite receivers, respectively.

3. The information processing method for compatible with multiple asynchronous satellite receivers according to claim 1, characterized in that, T C = max{T1, …, T N}}。 4. The information processing method compatible with multiple asynchronous satellite receivers according to claim 1, characterized in that, The extraction of the positioning data in step S3 includes: Interpret the corresponding data frame through the data protocol corresponding to the satellite receiver; the fields at fixed positions in the data frame are specified as the positioning data in the data protocol.

5. The information processing method compatible with multiple asynchronous satellite receivers according to claim 1, characterized in that, The update of the corresponding elements in the first array in step S3 includes: When the data frame of the ith satellite receiver is received, use the positioning data extracted from the data frame to update A[i - 1]; A[i - 1] is the ith element in the first array; i ∈ [1, N].

6. The information processing method compatible with multiple asynchronous satellite receivers according to claim 1, characterized in that, The data frame also includes an integrity check code for the positioning data; step S3 also includes performing an integrity check on the extracted positioning data through the integrity check code; when the integrity check fails, discard the extracted positioning data.

7. The information processing method for a multi-compatible asynchronous satellite receiver according to claim 6, wherein The integrity check code is generated by any one of the algorithms of CRC, MD5, and SHA1.

8. The information processing method for a multi-compatible asynchronous satellite receiver according to claim 1, wherein The cross-check in step S5 includes: Based on the corresponding longitude information and latitude information in the two positioning data, calculate the longitude difference and latitude difference between the two positioning data; when the longitude difference is less than the set longitude difference threshold and the latitude difference is less than the set latitude difference threshold, the two positioning data pass the cross-check.

9. The information processing method for compatible with multiple asynchronous satellite receivers according to claim 4, characterized in that, Before step S1, it also includes: Step S0. Establish a second array and initialize the second array; the second array includes two elements B[0] and B[1], which are respectively used to store the two positioning data that pass the cross-check.

10. The information processing method for a multi - compatible asynchronous satellite receiver according to claim 8, characterized in that, If there is no positioning data stored in the second array, step S5 includes: S51. Each time, select two positioning data stored in the first array for cross-check; when there are two positioning data in the first array that pass the cross-check, stop the cross-check and enter step S52; otherwise, enter step S53; S52. Use the two positioning data that pass the cross-check in step S51 to update B[0] and B[1] respectively; provide B[0] and B[1] to the vehicle-mounted main control software and enter step S1; S53. Turn off the timer and enter step S2.

11. The information processing method compatible with multiple asynchronous satellite receivers according to claim 8, characterized in that, If the second array has already stored two positioning data, step S5 also includes: S51′. Judge whether the positioning data stored in B[0] and B[1] respectively belong to the data frames sent by the i′th and j′th satellite receivers; If both A[i′ - 1] and A[j′ - 1] store positioning data, enter S52′; where A[i′ - 1] and A[j′ - 1] are the i′-th and j′-th elements in the first array respectively, i′, j′ ∈ [1, N], and i′ ≠ j′; If A[i′ - 1] stores positioning data and A[j′ - 1] does not store positioning data, enter S53′; If A[i′ - 1] does not store positioning data and A[j′ - 1] stores positioning data, enter S54′; If both A[i′ - 1] and A[j′ - 1] do not store positioning data, enter S55′; S52′. Cross-check A[i′ - 1] and A[j′ - 1]; if A[i′ - 1] and A[j′ - 1] pass the cross-check, update B[0] and B[1] with A[i′ - 1] and A[j′ - 1], provide B[0] and B[1] to the vehicle-mounted main control software, and enter step S1; if A[i′ - 1] and A[j′ - 1] do not pass the cross-check, enter S55′; S53′. Cross-check the other positioning data in the first array except A[i′ - 1] and A[j′ - 1] with A[i′ - 1] in sequence; if there is positioning data A[k] in the first array that satisfies A[i′ - 1] and A[k] passing the cross-check, stop the cross-check, update B[0] and B[1] with A[i′ - 1] and A[k] respectively, provide B[0] and B[1] to the vehicle-mounted main control software, and enter step S1; if the other positioning data in the first array except A[i′ - 1] and A[j′ - 1] do not pass the cross-check with A[i′ - 1], enter S55′; where k ∈ [0, N - 1], k ≠ i′ - 1, j′ - 1; S54′. Cross-check the other positioning data in the first array except A[i′ - 1] and A[j′ - 1] with A[j′ - 1] in sequence; if there is positioning data A[k′] in the first array that satisfies A[k′] and A[j′ - 1] passing the cross-check, stop the cross-check, update B[0] and B[1] with A[k′] and A[j′ - 1] respectively, provide B[0] and B[1] to the vehicle-mounted main control software, and enter step S1; if the other positioning data in the first array except A[i′ - 1] and A[j′ - 1] do not pass the cross-check with A[j′ - 1], enter S55′; where k′ ∈ [0, N - 1], k′ ≠ i′ - 1, j′ - 1; S55′. Cross-check the other positioning data in the first array except A[i′ - 1] and A[j′ - 1]; if there are two positioning data in the first array passing the cross-check, stop the cross-check, update B[0] and B[1] with the two positioning data respectively, provide the positioning data stored in B[0] and B[1] to the vehicle-mounted main control software, and enter step S1; if there are no two positioning data passing the cross-check among the other positioning data in the first array except A[i′ - 1] and A[j′ - 1], turn off the timer and enter step S2.

12. An information processing device compatible with multiple asynchronous satellite receivers, for implementing the information processing method according to any one of claims 1 to 11, characterized in that, Includes: A data extraction unit for extracting positioning data in the corresponding data frames of N asynchronous satellite receivers in real time; A first storage unit for storing the extracted positioning data; A timer for timing; A data processing unit, communicatively connected to the vehicle-mounted main control software and the first storage unit, and the data processing unit is signal-connected to the timer; When the timing time of the timer ≤ T C and the first storage unit stores N positioning data: The data processing unit performs cross-checking on the positioning data stored in the first storage unit; if there are two positioning data in the first storage unit that pass the cross-check, the data processing unit stops the cross-checking and provides the two positioning data to the vehicle-mounted main control software, and then the data processing unit clears the first storage unit and drives the timer to re-time; If any two positioning data in the first storage unit do not pass the cross-check, the data processing unit drives the timer to re-time.

13. The information processing device compatible with multiple asynchronous satellite receivers according to claim 12, characterized in that, It further includes a second storage unit, and the data processing unit updates the second storage unit with the two positioning data that pass the cross-check and provides the two positioning data stored in the second storage unit to the vehicle-mounted main control software.

14. The information processing device compatible with multiple asynchronous satellite receivers according to claim 13, characterized in that The data processing unit performing cross-checking on the positioning data stored in the first storage unit includes: the data processing unit also determines that the two positioning data stored in the second storage unit respectively belong to the data frames sent by the i'-th and j'-th satellite receivers; the data processing unit preferentially selects the positioning data from the i'-th and j'-th satellite receivers in the first storage unit for cross-checking.

15. The information processing device compatible with multiple asynchronous satellite receivers according to claim 13, characterized in that, When the timing time of the timer > T C and there are m positioning data stored in the first storage unit: The data processing unit performs cross-checking on the m positioning data; where m ∈ [2, N - 1]; if there are two positioning data among the m positioning data that pass the cross-check, the data processing unit updates the second storage unit with the two positioning data and provides the two positioning data in the second storage unit to the vehicle-mounted main control software, and then the data processing unit clears the first storage unit and drives the timer to re-time.

16. The information processing device compatible with multiple asynchronous satellite receivers according to claim 12, characterized in that, When the timing time of the timer > T C and the positioning data in the first storage unit is less than two: the data processing unit drives the timer to re-time.

Citation Information

Patent Citations

  • Timing signal output device, electronic apparatus and mobile body

    CN108508454A

  • Position identification system with multiple cross-checks

    US20140324300A1