Train positioning method and positioning system
By periodically sending transponder data to VOBC, VOBC calculates the time and position of the train passing through the center point of the transponder, solving the problems of reduced positioning accuracy and increased emergency braking failure rate caused by VOBC data interference in the prior art, and achieving higher positioning accuracy and system availability.
Patent Information
- Application Number
- CN202111443539.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-30
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2041-11-30
Smart Images

Figure CN116198568B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to the field of transportation technology, and more particularly to a train positioning method and a positioning system. Background Art
[0002] With the development of rail transit technology, more and more people choose subways, high-speed trains and other trains as their means of travel. In order to ensure the orderly operation of trains, it is particularly important to locate the trains. The key to train positioning is to determine the position of the train when it passes the center point of the transponder.
[0003] The balise transmission module (BTM) on the train usually relies on data transmitted by the vehicle on-board controller (VOBC) when calculating the position of the train when it passes the balise center point. If the VOBC transmission data is interfered with, resulting in the failure of the BTM center point calculation, the BTM cannot correctly feedback the balise information. The VOBC may cause the loss of the balise to trigger emergency braking or reduce positioning accuracy, ultimately increasing the failure rate of emergency braking, and may also affect parking accuracy and reduce availability. Summary of the invention
[0004] In view of the above-mentioned defects or deficiencies in the prior art, it is desired to provide a train positioning method and a positioning system.
[0005] In a first aspect, a train positioning method is provided, comprising:
[0006] The transponder transmission unit BTM periodically sends transponder data to the on-board controller VOBC according to a preset rule, wherein the transponder data includes identification information of the transponder;
[0007] The VOBC periodically receives the transponder data sent by the BTM and periodically acquires a data frame; the data frame includes the current travel time tn, the current travel speed vn and the current travel distance sn of the train;
[0008] The VOBC determines the position of the train when it passes the center point of the balise based on the received balise data and the acquired data frame.
[0009] In a second aspect, a train positioning system is provided, comprising:
[0010] The transponder transmission unit BTM and the vehicle-mounted controller VOBC; wherein,
[0011] The BTM is used to periodically send transponder data to the VOBC according to a preset rule, wherein the transponder data includes identification information of the transponder;
[0012] The VOBC is also used to periodically receive the transponder data sent by the BTM, and is also used to periodically acquire a data frame; the data frame includes the current travel time tn, the current travel speed vn and the current travel distance sn of the train;
[0013] The VOBC is also used to determine the position of the train when it passes the center point of the balise based on the received balise data and the acquired data frame.
[0014] In a third aspect, a vehicle-mounted device is provided, including:
[0015] one or more processors;
[0016] a memory for storing one or more programs,
[0017] When one or more programs are executed by one or more processors, the one or more processors execute the train positioning method provided in each embodiment of the present application.
[0018] In a fourth aspect, a computer-readable storage medium storing a computer program is provided, and when the program is executed by a processor, the train positioning method provided in each embodiment of the present application is implemented.
[0019] According to the technical solution provided in the embodiment of the present application, VOBC does not need to send any information to BTM when calculating the position of the train when it passes the center point of the balise. BTM periodically sends balise data to VOBC according to preset rules. VOBC calculates the time t_balise when the train passes the center point of the balise based on the recorded time difference (the time difference between the balise data reception time and the data frame acquisition time of the train travel information). The position of the train when it passes the center point of the balise is further calculated based on the time t_balise of the balise center point and the list of train travel information. The train position is then accurately calibrated, with a low probability of data loss and high train positioning accuracy. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] Other features, objects and advantages of the present application will become more apparent by reading the detailed description of non-limiting embodiments made with reference to the following drawings:
[0021] Figure 1 An exemplary flow chart of a train positioning method provided in the prior art;
[0022] Figure 2 An exemplary flow chart of a train positioning method provided in an embodiment of the present application;
[0023] Figure 3 A schematic diagram of calculating the center point of an American standard transponder provided in an embodiment of the present application;
[0024] Figure 4 An exemplary structural diagram of a train positioning system provided in an embodiment of the present application;
[0025] Figure 5 A schematic diagram of the structure of a vehicle-mounted device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0026] In order to enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.
[0027] It should be noted that, in the absence of conflict, the embodiments and features in the embodiments of the present application can be combined with each other. The present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0028] When the existing balise calculates the location information of the train passing through the balise center point through the BTM end, it needs to rely on the ATP (Automatic Train Protection System) in the VOBC to periodically send speed and location information to the BTM. The BTM calculates the location of the balise center point based on the ATP location information, but there may be the following defects: Figure 1 As shown, VOBC includes FPGA (Field Programmable Gate Array) and APP (application) ends. When calculating the position of the center point of the balise, the BTM host needs to rely on data such as the train speed and positioning information transmitted by VOBC. If the transmitted data is interfered with and the center point calculation fails, the BTM cannot correctly feedback the balise information. ATP may cause the loss of the balise to trigger emergency braking or reduce positioning accuracy, which ultimately increases the failure rate of emergency braking and may also affect parking accuracy and reduce availability.
[0029] Please refer to Figure 2 , showing a train positioning method provided according to an embodiment of the present application, comprising the following steps:
[0030] S10: The transponder transmission unit BTM periodically sends transponder data to the vehicle-mounted controller VOBC according to a preset rule, wherein the transponder data includes identification information of the transponder;
[0031] S20: The VOBC periodically receives the transponder data sent by the BTM and periodically acquires a data frame; the data frame includes the current travel time tn, the current travel speed vn and the current travel distance sn of the train; wherein n is the number of data frame acquisition cycles;
[0032] S30: The VOBC determines the position of the train when it passes the center point of the balise according to the received balise data and the acquired data frame.
[0033] Specifically, in the train positioning method provided in this embodiment, when calculating the position of the train passing the center point of the balise, the VOBC does not need to send any information to the BTM. When the serial link is interfered, the calculation of the center point and the reception of the balise data will not be affected. The software and protocol have strong anti-interference capabilities, which improves usability. In the prior art, when calculating the position of the train passing the center point of the balise, the VOBC must send information such as the train speed and position to the BTM.
[0034] In the embodiment of the present application, the BTM periodically sends transponder data to the VOBC according to preset rules. The BTM host does not need a VOBC request to send transponder data to the VOBC, and can send it periodically and continuously. In the prior art, the BTM must receive a request from the VOBC before replying the transponder data. The prior art requires that both the sending and receiving are correct, and the probability of losing data increases when interference occurs.
[0035] In the embodiment of the present application, the calculation algorithm for the position of the train when it passes the center point of the balise is moved to VOBC, which can perform more accurate and detailed calculations based on the real-time speed of the train, thereby improving the accuracy of positioning and increasing the flexibility of the algorithm.
[0036] In one embodiment, step S10 includes the following sub-steps:
[0037] S101: If the BTM does not detect the transponder, the transponder data periodically sent to the VOBC is an idle frame;
[0038] S102: If the BTM detects a transponder, the transponder data periodically sent to the VOBC is a response frame, and the response frame includes identification information and energy flag parameters of the transponder.
[0039] In this embodiment, Figure 3 As shown in the figure, BTM periodically sends transponder data to VOBC, where t_b: is the interval time for BTM host to send transponder data to VOBC (sent at equal intervals each time), which is 50ms, and t_b is the response frame sending period. When the BTM antenna does not detect the transponder, it sends an idle frame to VOBC. Figure 3The idle in the frame indicates an idle frame. When a transponder is detected, a response frame is sent, and the response frame contains the transponder's ID information. Figure 3 (bid,0),(bid,1)...:bid is the transponder ID, the second natural number is the energy flag parameter, and different energy flag parameters are sent to VOBC according to the changes in the signal energy detected from the transponder.
[0040] In one embodiment, S102 specifically includes the following sub-steps:
[0041] When BTM detects that the signal energy of the balise reaches its peak value, the energy flag parameter in the response frame periodically sent to VOBC is a preset flag value; wherein, when BTM detects that the signal energy of the balise reaches its peak value, the position of the train when it passes the center point of the balise;
[0042] When the BTM detects that the signal energy of the transponder has reached a peak value, it periodically sends a response frame to the VOBC. As the number of response frame sending cycles increases, the energy flag parameter increases or decreases in sequence according to a preset interval ω.
[0043] It should be noted that the signal energy of the transponder detected by the BTM is related to the distance between the BTM and the transponder. The closer the distance between the BTM and the transponder, the greater the signal energy of the transponder detected. During the entire process of the train leaving the transponder, the distance between the BTM and the transponder first increases from far to near. When the BTM is located at the center point of the transponder, the distance between the BTM and the transponder is the shortest, and then the BTM gradually moves away from the center point of the transponder. Therefore, when the BTM detects that the signal energy of the transponder reaches its peak, the train is at the center point of the transponder.
[0044] In this embodiment, BTM sends different energy flag parameters to VOBC according to the change of the signal energy of the transponder detected. For example, before the signal energy of the transponder is detected to reach the peak value, the energy flag parameter sent to VOBC can adopt a preset flag value (such as -1). After the signal energy of the transponder is detected to reach the peak value, the energy flag parameter in the response frame can be increased in sequence according to the preset interval ω on the basis of the preset flag value. For example, the energy flag parameter in the response frame sent to VOBC is added by 1 and then sent. Each time it is sent, it is increased by 1 and keeps increasing. The energy flag parameter in the response frame is 0, 1, 2, 3... etc. as the number of response frame sending cycles increases (such as Figure 3As shown, the preset interval is 1 at this time), the energy flag parameter 0 represents the energy flag parameter in the first response frame sent by BTM to VOBC after the train passes the center point of the balise, and the energy flag is greater than or equal to 0, indicating that the train has passed the center point of the balise; for example, the energy flag parameter in the response frame is 0, 2, 4, 6, etc. as the number of response frame sending cycles increases, and the preset interval is 2 at this time.
[0045] Alternatively, when it is detected that the signal energy of the transponder has reached a peak value, the energy flag parameter in the response frame can be reduced in sequence according to the preset intervals based on the preset flag value. For example, if the preset flag value is 10, after the signal energy of the transponder has reached a peak value, the energy flag parameter in the response frame will be 8, 6, 4, 2... etc. as the number of response frame sending cycles increases.
[0046] It should be noted that the preset flag values in this embodiment are illustrated by using -1 and 10 as examples, and they can also be adjusted in actual applications, and the energy flag parameter value after the signal energy of the transponder reaches the peak value can be adjusted accordingly. When the signal energy of the transponder received by the BTM reaches the peak value, the energy flag parameter in the response frame periodically sent by the BTM to the VOBC increases or decreases in sequence according to the preset interval. The response frame sending period interval m between the first response frame sent by the BTM and the current response frame can be determined by the energy flag parameter in the first response frame sent after the train passes the center point of the transponder and the energy flag parameter in the current response frame sent, such as Figure 3 As shown, the energy flag parameter of the first response frame is 0. When the energy flag parameter in the current response frame is 3, the response frame sending cycle interval m between the BTM sending the current response frame and sending the first response frame is 3; when the energy flag parameter in the current response frame is 2, m is 2.
[0047] In the second embodiment, S102 specifically includes the following sub-steps:
[0048] When BTM detects that the signal energy of the balise reaches its peak value, the energy flag parameter in the response frame periodically sent to VOBC increases in sequence according to the preset interval as the number of response frame transmission cycles increases; among which, when BTM detects that the signal energy of the balise reaches its peak value, the position of the train when it passes the center point of the balise;
[0049] When the BTM detects that the signal energy of the transponder has reached a peak value, it periodically sends a response frame to the VOBC. As the number of response frame sending cycles increases, the energy flag parameter increases or decreases in sequence according to a preset interval.
[0050] In this embodiment, BTM sends different energy flag parameters to VOBC according to the change of the signal energy of the detected transponder. For example, before the signal energy of the detected transponder reaches a peak value, the energy flag parameter sent to VOBC increases in sequence according to preset intervals. For example, the energy flag parameter in the response frame is 0, 1, 2, 3... as the number of response frame sending cycles increases. When the signal energy of the detected transponder reaches a peak value, the energy flag parameter sent to VOBC increases in sequence according to preset intervals. For example, the energy flag parameter in the response frame is 15, 16, 17... as the number of response frame sending cycles increases. Among them, 15 is the energy flag parameter in the first response frame sent by BTM to VOBC after the train passes the center point of the transponder.
[0051] Or before the signal energy of the transponder is detected to have reached its peak value, the energy flag parameter sent to VOBC increases in sequence according to preset intervals, for example, the energy flag parameter in the response frame is 0, 2, 4, 6, etc. as the number of response frame sending cycles increases. When the signal energy of the transponder is detected to have reached its peak value, the energy flag parameter sent to VOBC decreases in sequence according to preset intervals, for example, the energy flag parameter in the response frame is 15, 14, 13, etc. as the number of response frame sending cycles increases. Among them, 15 is the energy flag parameter in the first response frame sent by BTM to VOBC after the train passes the center point of the transponder.
[0052] Similarly, when the signal energy of the transponder received by the BTM reaches its peak, the energy flag parameter in the response frame periodically sent by the BTM to the VOBC increases or decreases according to the preset interval. The response frame sending cycle interval m between the current response frame sent by the BTM and the first response frame can be determined by the change of the energy flag parameter. For example, when the energy flag parameter in the first response frame sent by the BTM to the VOBC is 15, the energy flag parameter of the current response frame is 13, and the preset interval is 1, then m is 2.
[0053] In the third embodiment, S102 specifically includes the following sub-steps:
[0054] When BTM detects that the signal energy of the balise reaches its peak value, the energy flag parameter is periodically sent to VOBC in the response frame. As the number of response frame transmission cycles increases, the energy flag parameter decreases in sequence according to the preset interval; among which, when BTM detects that the signal energy of the balise reaches its peak value, the train passes the center point of the balise;
[0055] When the BTM detects that the signal energy of the transponder has reached a peak value, it periodically sends a response frame to the VOBC. As the number of response frame sending cycles increases, the energy flag parameter increases or decreases in sequence according to a preset interval.
[0056] In this embodiment, BTM sends different energy flag parameters to VOBC according to the change of the signal energy of the detected transponder. For example, before the signal energy of the detected transponder reaches a peak value, the energy flag parameter sent to VOBC decreases in sequence according to preset intervals. For example, the energy flag parameter in the response frame increases with the number of response frame sending cycles, such as 18, 16, 14, 12..., etc.; and after the signal energy of the detected transponder reaches a peak value, the energy flag parameter sent to VOBC increases in sequence according to preset intervals. For example, the energy flag parameter in the response frame increases with the number of response frame sending cycles, such as 8, 9, 10..., etc., where 8 is the energy flag parameter in the first response frame sent by BTM to VOBC after the train passes the center point of the transponder.
[0057] Or before the signal energy of the transponder is detected to reach its peak value, the energy flag parameter sent to VOBC decreases according to the preset intervals. For example, the energy flag parameter in the response frame is 20, 19, 18, 17, etc. as the number of response frame sending cycles increases. When the signal energy of the transponder is detected to reach its peak value, the energy flag parameter sent to VOBC decreases according to the preset intervals. For example, the energy flag parameter in the response frame is 10, 9, 8, etc. as the number of response frame sending cycles increases. Among them, 10 is the energy flag parameter in the first response frame sent by BTM to VOBC after the train passes the center point of the transponder.
[0058] Similarly, when the signal energy of the transponder received by the BTM reaches its peak, the energy flag parameter in the response frame periodically sent by the BTM to the VOBC increases or decreases according to the preset interval. The change in the energy flag parameter can determine the response frame sending cycle interval m between the current response frame sent by the BTM and the first response frame sent.
[0059] Therefore, in the present application, before the signal energy of the transponder is detected to reach a peak value, the energy mark parameter sent to the VOBC is successively reduced or increased according to a preset interval, or a preset threshold is adopted, and the present application does not make specific restrictions on it. It only needs to ensure that when the signal energy of the transponder is detected to reach a peak value, the energy mark parameter in the response frame changes according to a certain rule according to the response frame sending cycle, so as to calculate the response frame sending cycle interval m=|E between the current response frame sent by the BTM and the first response frame sent after the train passes the center point of the transponder. b -E a | / ω, where E b is the energy flag parameter in the current response frame, E a is the energy flag parameter in the first response frame, and ω is the preset interval.
[0060] In step S20, VOBC periodically acquires a data frame including the current travel time, current travel speed and current travel distance of the train, such as Figure 3 As shown, t_atp is the processing cycle of VOBC, which is 200ms, that is, the data frame acquisition cycle; t1, t2, ... tn is the current system time (tn = t(n-1) + t_atp) sent by the APP end in VOBC to FPGA every cycle. When VOBC sends time tn, it will save the system time tn of this cycle, the current driving speed vn and the current cumulative driving distance sn into the list location_list[n], where location_list[n] = {{t1,v1,s1},{t2,v2,s2},{t3,v3,s3}, ...{tn,vn,sn}}, and the maximum length of the list can be 10. Figure 3 As shown, location_list[n] = {{t1, v1, s1}, {t2, v2, s2}, {t3, v3, s3}, {t4, v4, s4}}, that is, the list length is 4. Of course, the length of location_list can be increased to increase the reliability of the algorithm and improve the usability by increasing the space complexity. For example, in this application, the length of the list can be increased by shortening the processing cycle of VOBC.
[0061] In one embodiment, step S20 also includes: while the VOBC periodically acquires data frames, the acquired data frames are saved in a list location_list[n], wherein the list location_list[n] contains the current travel time tn, current travel speed vn and current travel distance sn of the train acquired in each data frame acquisition cycle, where n is the number of data frame acquisition cycles.
[0062] Specifically, the acquired data frame is saved to the list location_list[n], which enables quick search and comparison of the data in the list, and facilitates the subsequent calculation of the position of the train when it passes the center point of the balise.
[0063] In one embodiment, S30 specifically includes the following sub-steps:
[0064] S310: The VOBC determines the time t_balise when the train passes the center point of the balise according to the time difference between the response frame reception time and the data frame acquisition time;
[0065] S320: The VOBC calculates the position of the train when it passes the center point of the balise based on the time t_balise when the train passes the center point of the balise and the saved list location_list[n].
[0066] Specifically, the time t_balise when the train passes through the center point of the balise is calculated based on the transponder ID, energy flag parameters and time difference recorded by the FPGA in the VOBC sent by the BTM host, and the position of the train when it passes through the center point of the balise is further calculated based on the saved list location_list[n], and then the train position is accurately calibrated.
[0067] In one embodiment, S310 specifically includes the following sub-steps:
[0068] S311: According to the current data frame acquisition time ti, the VOBC searches for the current response frame reception time t_r=ti-t_di from the periodically received response frames, and the time difference between the current response frame reception time t_r and the current data frame acquisition time ti is the smallest; wherein, i∈[1, 2, ...n], t_di is the minimum time difference between the current data frame acquisition time ti and the current data frame reception time t_r;
[0069] S312: Determine the current response frame sending time t_s=t_r-t_delay of the BTM sending the response frame to the VOBC according to the current response frame receiving time t_r; wherein t_delay is the serial port data transmission delay of the response frame from the BTM to the VOBC, which is 5ms according to experimental statistics;
[0070] S313: Determine the sending time t_o of the first response frame after the train passes the center point of the balise according to the current response frame sending time t_s;
[0071] Step S313 includes the following sub-steps:
[0072] S3130: Based on the energy flag parameter E in the current response frame b and the energy indicator parameter E in the first response frame a , determine the response frame sending cycle interval m between the BTM sending the current response frame and sending the first response frame = |E b -E a | / ω, where ω is the preset interval;
[0073] S3131: Determine the sending time t_o=t_s-m(t_b) of the first response frame according to the current response frame sending time t_s, the response frame sending cycle interval m and the response frame sending cycle t_b.
[0074] S314: According to the sending time t_o of the first response frame and the interval time t_d from the train passing the center point of the balise to sending the first response frame, the time t_balise when the train passes the center point of the balise is determined as:
[0075] t_balise=t_o-t_d
[0076] =t_s-m(t_b)-t_d
[0077] =t_r-t_delay-m(t_b)-t_d
[0078] =ti-t_di-t_delay-m(t_b)-t_d.
[0079] Specifically, when the BTM determines that the train passes the center point of the balise, the timing starts, and it is assumed that the BTM sends the first response frame to the VOBC after a fixed time t_d after the train passes the center point of the balise.
[0080] like Figure 3 As shown, if VOBC receives a balise with an energy flag parameter of 0, the time t_balise when the train passes the center point of the balise is calculated as follows:
[0081] t_balise=t2-(t_d2)-(t_d)-t_delay
[0082] Among them, t_d2 is the time difference between the VOBC current data frame acquisition time t2 and the most recent response frame reception time.
[0083] like Figure 3 , VOBC receives a balise with an energy flag of 3, and the time t_balise when the train passes the centre point of the balise is calculated as follows:
[0084] t_balise=t4-(t_d4)-(3*t_b)-t_delay-(t_d)
[0085] Among them, t_d2 is the time difference between the VOBC current data frame acquisition time t4 and the most recent response frame reception time.
[0086] When VOBC receives a position mark parameter with other values, the algorithm can be deduced by analogy to calculate the time t_balise when the train passes the center point of the balise.
[0087] In one embodiment, step S320 specifically includes the following sub-steps:
[0088] S321: Compare the time t_balise when the train passes the center point of the balise with the current travel time of the train in the list location_list[n] one by one, find the time tn with the smallest time difference with the time t_balise in the list location_list[n], and record the absolute value of the time difference as △t;
[0089] S322: Determine the position s_balise of the train when passing through the center point of the balise based on the time difference △t, the current running speed vn of the train corresponding to the time tn, and the current running distance sn.
[0090] In this embodiment, by finding the time in the saved list location_list[n] that is closest to the time t_balise when the train passes through the center point of the balise to determine the position s_balise of the train when passing through the center point of the balise, the calculation of the position s_balise is more accurate.
[0091] In one embodiment, step S322 is specifically as follows:
[0092] If tn > t_balise, then the position s_balise of the train when passing through the center point of the balise = sn - (△t × vn);
[0093] If tn < t_balise, then the position s_balise of the train when passing through the center point of the balise = sn + (△t × vn).
[0094] In this embodiment, the train is positioned based on the position s_balise information of the train when passing through the center point of the balise calculated by the VOBC and the identification information of the balise, and the positioning accuracy is high.
[0095] In one embodiment, the BTM is a US standard BTM.
[0096] The cost of the European standard BTM - balise in the prior art is high. The prices of both the BTM reader and the balise are relatively expensive. The volume of the balise is relatively large, and the requirement for the track installation space is high. The train positioning method of the present invention is also applicable to the US standard BTM - balise. The cost of the US standard BTM - balise and the BTM host is lower. The volume of the US standard balise is much smaller than that of the European standard balise, and it is easier to install on site. Moreover, using the US standard BTM - balise can adapt to the lightweight installation of the cloud rail line and reduce the hardware cost, and accurately position the train.
[0097] It should be noted that although the operations of the method of the present invention are described in a specific order in the drawings, this does not require or imply that these operations must be performed in that specific order, or that all the operations shown must be performed to achieve the desired result. On the contrary, the order of the steps depicted in the flowchart can be changed. For example, S102 can be executed first and then S101.
[0098] Figure 4 The structural schematic diagram of a train positioning system provided according to an embodiment of the present application is shown.
[0099] As Figure 4As shown, in another aspect, the embodiment of the present application provides a train positioning system 400, a transponder transmission unit BTM 410 and a vehicle-mounted controller VOBC 420; wherein,
[0100] The BTM 410 is used to periodically send transponder data to the VOBC 420 according to a preset rule, wherein the transponder data includes identification information of the transponder;
[0101] The VOBC 420 is also used to periodically receive the transponder data sent by the BTM 41, and is also used to periodically acquire data frames; the data frames include the current travel time, current travel speed and current travel distance of the train;
[0102] The VOBC 420 is also used to determine the position of the train when it passes the center point of the balise based on the received balise data and the acquired data frame.
[0103] Specifically, in this embodiment, information can be exchanged between BTM 410, transponder and VOBC 420. BTM 410 includes a BTM host and a receiving antenna. BTM 410 and VOBC 420 are installed on the train, and the transponder is installed on the track on which the train travels. VOBC 420 does not need to send information to BTM 410. The BTM 410 host periodically sends transponder data to VOBC 420. The sending of transponder data does not rely on any input from VOBC 420. VOBC completes the calculation of the center position of the transponder, thereby improving reliability, reducing transmission errors caused by interference, and reducing the probability of transponder positioning failure. Figure 2-3 As shown, VOBC 420 includes VOBC_FPGA (secure computer platform) and VOBC_APP (ATP application), and the BTM host is connected to VOBC_FPGA through serial port 485. BTM is used to periodically send transponder data to VOBC_FPGA according to preset rules, and the transponder data includes the identification information of the transponder; VOBC_APP periodically obtains data frames and sends them to VOBC_FPGA, and the data frames include the current travel time, current travel speed and current travel distance of the train; VOBC_FPGA determines the position of the train when it passes the center point of the transponder according to the received transponder data and the obtained data frames.
[0104] In one embodiment, reference Figure 4 , the BTM 410 includes:
[0105] Idle frame sending module 412, used for sending the transponder data periodically to the VOBC as idle frames if the BTM does not detect the transponder;
[0106] The response frame sending module 411 is used for periodically sending the transponder data as a response frame to the VOBC if the BTM detects the transponder. The response frame includes the identification information and energy flag parameter of the transponder.
[0107] In one embodiment, the response frame sending module 411 is also used to periodically send a response frame to the VOBC 420 after the BTM 410 detects that the signal energy of the transponder has reached a peak value, and the energy flag parameter increases or decreases in sequence according to a preset interval as the number of response frame sending cycles increases.
[0108] In one embodiment, reference Figure 4 , the VOBC 420 includes:
[0109] A response frame receiving module 421, used to periodically receive the response frame sent by the response frame sending module 411;
[0110] The data frame acquisition module 422 is used to periodically acquire data frames; the data frames include the current travel time, current travel speed and current travel distance of the train;
[0111] The center point determination module 423 is used to determine the position of the train when it passes the center point of the balise according to the response frame received by the response frame receiving module 421 and the data frame acquired by the data frame acquisition module 422.
[0112] In one embodiment, reference Figure 4 The VOBC also includes a list saving module 424, which is used to save the data frame obtained by the data frame obtaining module 422 into the list location_list[n].
[0113] In one embodiment, reference Figure 4 , the center point determination module 423 includes:
[0114] A center point time determination unit 4231 is used to determine the time t_balise when the train passes the center point of the balise according to the time difference between the response frame receiving time obtained by the response frame receiving module 421 and the data frame obtaining time obtained by the data frame obtaining module 422;
[0115] The center point position determination unit 4232 is used to calculate the position of the train when it passes the center point of the balise based on the time t_balise when the train passes the center point of the balise determined by the center point time determination unit 4231 and the list location_list[n] saved by the list saving module 424.
[0116] In one embodiment, the central point time determination unit 4231 is further used to:
[0117] According to the current data frame acquisition time ti acquired by the data frame acquisition module 422, the current response frame receiving time t_r=ti-t_di with the smallest time difference with the current data frame acquisition time ti is found from the response frames periodically received by the response frame receiving module 421; wherein, i∈[1, 2, ...n], n is the number of data frame acquisition cycles; t_di is the minimum time difference between the current data frame acquisition time ti and the current data frame receiving time t_r;
[0118] According to the current response frame receiving time t_r, the current response frame sending time t_s=t_r-t_delay at which the response frame sending module 411 sends the response frame to the response frame receiving module 421 is determined; wherein t_delay is the serial port data transmission delay from the response frame sending module to the response frame receiving module;
[0119] Determine the sending time t_o of the first response frame after the train passes the center point of the balise according to the current response frame sending time t_s;
[0120] According to the sending time t_o of the first response frame and the interval time t_d from the train passing the center point of the balise to the sending of the first response frame, the time t_balise=t_o-t_d when the train passes the center point of the balise is determined.
[0121] In one embodiment, the central point time determination unit 4231 is further used to:
[0122] Determine a response frame sending period interval m between sending the current response frame and sending the first response frame according to an energy flag parameter in the current response frame and an energy flag parameter in the first response frame;
[0123] The sending time t_o=t_s-m(t_b) of the first response frame is determined according to the current response frame sending time t_s, the response frame sending cycle interval m and the response frame sending cycle t_b.
[0124] In one embodiment, the center point position determining unit 4232 is further used to:
[0125] Compare the time t_balise when the train passes the center point of the balise determined by the center point time determination unit 4231 with the current travel time of the train in the list location_list[n] saved in the list saving module 424 one by one, find the time tn in the list location_list[n] with the smallest time difference with the time t_balise, and record the absolute value of the time difference as △t;
[0126] The position s_balise of the train when passing through the center point of the balise is determined according to the time difference △t, the current running speed vn of the train corresponding to the time tn, and the current running distance sn, specifically as follows:
[0127] If tn > t_balise, the position s_balise of the train when passing through the center point of the balise = sn - (△t × vn);
[0128] If tn < t_balise, the position s_balise of the train when passing through the center point of the balise = sn + (△t × vn).
[0129] Figure 5 The structural schematic diagram of an on-vehicle device provided by an embodiment of the present application is shown.
[0130] As Figure 5 shown, on the other hand, the present application further provides an on-vehicle device 500, including one or more central processing modules (CPUs) 501, which can execute various appropriate actions and processes according to the programs stored in the read-only memory (ROM) 502 or the programs loaded from the storage part 508 into the random access memory (RAM) 503. In the RAM 503, various programs and data required for system operation are also stored. The CPU 501, ROM 502, and RAM 503 are connected to each other through a bus 504. The input / output (I / O) interface 505 is also connected to the bus 504.
[0131] The following components are connected to the I / O interface 505: an input part 506 including a keyboard, a mouse, etc.; an output part 507 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc. and a speaker, etc.; a storage part 508 including a hard disk, etc.; and a communication part 509 including a network interface card such as a LAN card, a modem, etc. The communication part 509 performs communication processing via a network such as the Internet. The drive 510 is also connected to the I / O interface 505 as required. A removable medium 511, such as a magnetic disk, an optical disc, a magneto-optical disc, a semiconductor memory, etc., is installed on the drive 510 as required, so that the computer program read from it can be installed into the storage part 508 as required.
[0132] Specifically, according to an embodiment of the present disclosure, the process described above with reference to Figure 2-3 can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program tangibly contained on a machine-readable medium, and the computer program includes program codes for executing the train positioning method. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 509, and / or installed from the removable medium 511.
[0133] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, program segment or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a different order from the order marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0134] As another aspect, the present application further provides a computer-readable storage medium, which may be a computer-readable storage medium included in the device described in the above embodiment; or a computer-readable storage medium that exists independently and is not assembled into the device. The computer-readable storage medium stores one or more programs, and the programs are used by one or more processors to execute the train positioning method described in the present application.
[0135] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be realized by a dedicated hardware-based system that performs a specified function or operation, or can be realized by a combination of dedicated hardware and computer instructions.
[0136] The modules or modules involved in the embodiments of the present application may be implemented in software or in hardware. The modules or modules described may also be set in a processor. For example, each of the modules may be a software program set in a computer or a mobile smart device, or may be a separately configured hardware device. The names of these modules or modules do not, in some cases, constitute limitations on the modules or modules themselves.
[0137] The above description is only a preferred embodiment of the present application and an explanation of the technical principles used. Those skilled in the art should understand that the scope of the invention involved in the present application is not limited to the technical solution formed by a specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the inventive concept. For example, the above features are replaced with the technical features with similar functions disclosed in this application (but not limited to) by each other.
Claims
1. A train positioning method, characterized in that: include: The transponder transmission unit BTM periodically sends the transponder data to the on-board controller VOBC according to preset rules; The VOBC periodically receives the transponder data sent by the BTM and periodically acquires a data frame; the data frame includes the current travel time tn, the current travel speed vn and the current travel distance sn of the train; The VOBC determines the position of the train when it passes the center point of the balise based on the received balise data and the acquired data frame; The VOBC periodically acquires data frames and saves the acquired data frames into a list location_list[n], wherein the list location_list[n] contains the current travel time tn, the current travel speed vn and the current travel distance sn of the train acquired in each data frame acquisition cycle; The VOBC determines the position of the train passing through the center point of the balise according to the received balise data and the acquired data frame, including: The VOBC determines the time t_balise when the train passes the center point of the balise according to the time difference between the response frame reception time and the data frame acquisition time; The VOBC calculates the location of the train when it passes the center point of the balise according to the time t_balise when the train passes the center point of the balise and the saved list location_list[n]; The VOBC determines the time t_balise when the train passes the center point of the balise according to the time difference between the response frame reception time and the data frame acquisition time, including: According to the current data frame acquisition time ti, the VOBC searches for the current response frame reception time t_r=ti-t_di from the periodically received response frames, and the time difference between the current response frame reception time t_r and the current data frame acquisition time ti is the smallest; wherein, i∈[1, 2, ...n], n is the number of data frame acquisition cycles; t_di is the minimum time difference between the current data frame acquisition time ti and the current response frame reception time t_r; Determine the current response frame sending time t_s=t_r-t_delay of the BTM sending the response frame to the VOBC according to the current response frame receiving time t_r; wherein t_delay is the serial port data transmission delay of the response frame from the BTM to the VOBC; Determine the sending time t_o of the first response frame after the train passes the center point of the balise according to the current response frame sending time t_s; According to the sending time t_o of the first response frame and the interval time t_d from the train passing the center point of the balise to sending the first response frame, determine the time t_balise=t_o-t_d when the train passes the center point of the balise; Determining the sending time t_o of the first response frame after the train passes the center point of the balise according to the current response frame sending time t_s includes: According to the energy flag parameter E in the current response frame b and the energy indicator parameter E in the first response frame a , determine the response frame sending cycle interval m between the BTM sending the current response frame and sending the first response frame = |E b -E a | / ω, where ω is the preset interval; The sending time t_o=t_s-m(t_b) of the first response frame is determined according to the current response frame sending time t_s, the response frame sending cycle interval m and the response frame sending cycle t_b.
2. The train positioning method according to claim 1, characterized in that: The transponder transmission unit BTM periodically sends transponder data to the vehicle on-board controller VOBC according to a preset rule, including: If the BTM does not detect a transponder, the transponder data periodically sent to the VOBC is an idle frame; If the BTM detects a transponder, the transponder data periodically sent to the VOBC is a response frame, and the response frame contains the identification information of the transponder and the energy flag parameter.
3. The train positioning method according to claim 2, characterized in that: The case where if the BTM detects a transponder, the transponder data periodically sent to the VOBC is a response frame includes: When the signal energy of the transponder detected by the BTM reaches the peak value, in the response frame periodically sent to the VOBC, as the number of response frame transmission cycles increases, the energy flag parameter increases or decreases sequentially at a preset interval.
4. The train positioning method according to claim 1, characterized in that: The time t_balise when the train passes through the center point of the transponder is t_balise = ti - t_di - m(t_b) - t_d - t_delay.
5. The train positioning method according to claim 1, characterized in that: The VOBC calculates the position of the train when passing through the center point of the transponder according to the time t_balise when the train passes through the center point of the transponder and the saved list location_list[n], including: Compare the time t_balise when the train passes through the center point of the transponder with the current running time of the train in the list location_list[n] one by one, find the time tn in the list location_list[n] with the smallest time difference from the time t_balise, and record the absolute value of this time difference as △t; Determine the position s_balise of the train when passing through the center point of the transponder according to the time difference △t, the current running speed vn of the train corresponding to the time tn, and the current running distance sn.
6. The train positioning method according to claim 5, characterized in that: The determination of the position s_balise of the train when passing through the center point of the transponder according to the time difference △t, the current running speed vn of the train corresponding to the time tn, and the current running distance sn includes: If tn > t_balise, the position s_balise of the train when passing through the center point of the transponder is s_balise = sn - (△t × vn); If tn < t_balise, the position s_balise of the train when passing through the center point of the transponder is s_balise = sn + (△t × vn).
7. A train positioning system, comprising: The transponder transmission unit BTM and the vehicle on-board controller VOBC; where The BTM is used to periodically send transponder data to the VOBC according to a preset rule, and the transponder data contains the identification information of the transponder; The VOBC is also used to periodically receive the transponder data sent by the BTM, and is also used to periodically obtain a data frame; the data frame contains the current running time tn, the current running speed vn, and the current running distance sn of the train; The VOBC is also used to determine the position of the train when passing through the center point of the transponder according to the received transponder data and the obtained data frame; The VOBC periodically acquires data frames and saves the acquired data frames into a list location_list[n], wherein the list location_list[n] contains the current travel time tn, the current travel speed vn and the current travel distance sn of the train acquired in each data frame acquisition cycle; The VOBC determines the position of the train passing through the center point of the balise according to the received balise data and the acquired data frame, including: The VOBC determines the time t_balise when the train passes the center point of the balise according to the time difference between the response frame reception time and the data frame acquisition time; The VOBC calculates the location of the train when it passes the center point of the balise according to the time t_balise when the train passes the center point of the balise and the saved list location_list[n]; The VOBC determines the time t_balise when the train passes the center point of the balise according to the time difference between the response frame reception time and the data frame acquisition time, including: According to the current data frame acquisition time ti, the VOBC searches for the current response frame reception time t_r=ti-t_di from the periodically received response frames, and the time difference between the current response frame reception time t_r and the current data frame acquisition time ti is the smallest; wherein, i∈[1, 2, ...n], n is the number of data frame acquisition cycles; t_di is the minimum time difference between the current data frame acquisition time ti and the current response frame reception time t_r; Determine the current response frame sending time t_s=t_r-t_delay of the BTM sending the response frame to the VOBC according to the current response frame receiving time t_r; wherein t_delay is the serial port data transmission delay of the response frame from the BTM to the VOBC; Determine the sending time t_o of the first response frame after the train passes the center point of the balise according to the current response frame sending time t_s; According to the sending time t_o of the first response frame and the interval time t_d from the train passing the center point of the balise to sending the first response frame, determine the time t_balise=t_o-t_d when the train passes the center point of the balise; Determining the sending time t_o of the first response frame after the train passes the center point of the balise according to the current response frame sending time t_s includes: According to the energy flag parameter E in the current response frame b and the energy indicator parameter E in the first response frame a , determine the response frame sending cycle interval m=E between the BTM sending the current response frame and sending the first response frame b -E a | / ω, where ω is the preset interval; The sending time t_o=t_s-m(t_b) of the first response frame is determined according to the current response frame sending time t_s, the response frame sending cycle interval m and the response frame sending cycle t_b.
Citation Information
Patent Citations
Correction method and device of train traveling distance and equipment
CN110281988A