Summary of the invention
For the speed of accelerating to locate after receiver starts, the invention provides localization method and the receiver of receiver in a kind of global navigation satellite system, to solve in prior art, adopt the mode of the frame synchronization of navigation message to carry out the location of receiver, cause positioning time longer, slow, the inefficient technical matters of locating speed.
The invention provides localization method and the receiver of receiver in a kind of global navigation satellite system, do not need to carry out the frame synchronization of navigation message, just can calculate the delivery time of navigation message, the process of resolving is linear a calculating, complexity is lower, calculated amount is little, and speed is located fast thereby realize GPS receiver.
For solving the problems of the technologies described above, the invention provides localization method and the receiver of receiver in a kind of global navigation satellite system, the invention provides following technical scheme:
A localization method for receiver in global navigation satellite system, the method comprises:
Obtain every first local zone time that satellite is corresponding in these at least 4 satellites that participate in described receiver location, described the first local zone time is the moment that receiver receives this navigation message sending while participating in described receiver location of satellite;
Determine the first local zone time that described every satellite is corresponding and the difference of the second local zone time, described the second local zone time is the moment of the navigation message that sends while participating in described receiver location last time of described satellite;
While participating in described receiver location last time according to described difference and described every satellite, send the moment of navigation message, determine this moment of launching navigation message while participating in location of every satellite;
The moment of launching navigation message when this participates in location according to described every satellite is determined the position of described receiver, to complete the location of receiver.
Preferably, after the first local zone time that described definite every satellite is corresponding and the difference of the second local zone time, also comprise:
The first local zone time corresponding to every satellite and the difference of the second local zone time are normalized, and normalization formula is:
(Trtc_cur-Tinner_20_cur)-(Trtc_last-Tinner_20_last),
Wherein, Trtc_cur is the first local zone time of satellite, time when Tinner_20_cur is this participation location of satellite within one navigation bit, time within a described navigation bit is the time within 20ms, Trtc_last is the second local zone time of satellite, and Tinner_20_last is that satellite participated in locating the time within a navigation bit last time;
Using the difference after normalization as the first local zone time corresponding to every satellite and the difference of the second local zone time.
Preferably, the difference after normalization, after the difference of the first local zone time corresponding to every satellite and the second local zone time, is also comprised:
Determine the navigation bit number that the difference after the normalization that every satellite is corresponding comprises, formula is:
nBits=floor(Trtc_span/20),
Wherein, nBits is navigation bit number, and floor represents to get the max-int that is less than Trtc_span/20, and Trtc_span is the difference after the normalization that every satellite is corresponding;
Described satellite this participate in when location and launch the moment that sends navigation message when navigation bit number that the navigation message moment specifically comprises according to the difference after normalization and satellite participated in described receiver location last time and determine.
Preferably, obtaining the error of considering receiver local clock when navigation bit is counted, definite navigation bit number is revised, the computing formula of described navigation bit number is:
NBits=floor((Trtc_span+a)/20), wherein a is the modified value of receiver local clock.
Preferably, the moment of launching navigation message when this participation location of satellite is Tsat_last-Tinner_20_last+nBits*20+Tinner_20_cur, and wherein Tsat_last is the moment that satellite participated in sending when described receiver is located navigation message last time.
The embodiment of the present invention also provides a kind of receiver, and described receiver comprises:
Acquisition module, the first local zone time corresponding to every satellite of at least 4 satellites that participates in described receiver location for obtaining this, described the first local zone time is the moment that receiver receives this navigation message sending while participating in described receiver location of satellite;
Difference determination module, for the first local zone time corresponding to definite described every satellite and the difference of the second local zone time, described the second local zone time is the moment that described satellite participated in the navigation message sending when described receiver is located last time;
Navigation message delivery time determination module, sends moment of navigation message when participating in described receiver location last time according to described difference and described every satellite, determines this moment of launching navigation message while participating in location of every satellite;
Locating module, for according to described every satellite, this participates in moment that when location launches navigation message and determines the position of described receiver, to complete the location of receiver.
Preferably, described receiver also comprises:
Normalization module, after determining the difference of the first local zone time that every satellite is corresponding and the second local zone time, is normalized the first local zone time corresponding to every satellite and the difference of the second local zone time, and normalization formula is:
(Trtc_cur-Tinner_20_cur)-(Trtc_last-Tinner_20_last),
Wherein, Trtc_cur is the first local zone time of satellite, time when Tinner_20_cur is this participation location of satellite within one navigation bit, time within a described navigation bit is the time within 20ms, Trtc_last is the second local zone time of satellite, and Tinner_20_last is that satellite participated in locating the time within a navigation bit last time;
Described difference determination module, specifically for using the difference after normalization as the first local zone time corresponding to every satellite and the difference of the second local zone time.
Preferably, described receiver also comprises:
Bit number determination module, for using the difference after normalization after the difference of the first local zone time corresponding to every satellite and the second local zone time, determine the navigation bit number that the difference after the normalization that every satellite is corresponding comprises, formula is:
nBits=floor(Trtc_span/20),
Wherein, nBits is navigation bit number, and floor represents to get the max-int that is less than Trtc_span/20, and Trtc_span is the difference after the normalization that every satellite is corresponding;
Described navigation message delivery time determination module, while participating in described receiver location last time specifically for the navigation bit number that comprises according to the difference after normalization and satellite, send the moment of navigation message, this is launched the navigation message moment while participating in location to determine satellite.
Preferably, bit number determination module also, for obtaining the error of considering receiver local clock when navigation bit is counted, is revised definite navigation bit number, and the computing formula of described navigation bit number is:
nBits=floor((Trtc_span+a)/20)
Wherein a is the modified value of receiver local clock.
The moment of launching navigation message when this participation location of the satellite that preferably, navigation message delivery time determination module obtains is:
Tsat_last-Tinner_20_last+nBits*20+Tinner_20_cur, wherein Tsat_last is the moment that satellite participated in sending when described receiver is located navigation message last time.
In technical scheme of the present invention, obtain every the first local zone time and second local zone time that satellite is corresponding in these at least 4 satellites that participate in described receiver location, described the first local zone time is the moment that receiver receives this navigation message sending while participating in described receiver location of satellite; Described the second local zone time is the moment that described satellite participated in the navigation message sending when described receiver is located last time; Then obtain the difference of the first local zone time and the second local zone time, described difference is satellite and sent navigation message and this last time and send the time interval of navigation message, send the moment of navigation message according to the satellite of preserving in receiver last time, can determine the moment of this transmission navigation message of satellite.According to satellite, this sends the moment of navigation message, and the effective almanac data of satellite of preserving, more just can determine the position of receiver in conjunction with the calculation method of receiver location, completes the location to receiver.In the whole position fixing process of receiver, only need to carry out the bit synchronization of navigation message, guarantee that Satellite Tracking is in good condition, then, the time interval that receives navigation message according to definite adjacent twice receiver of local clock is just passable, do not need navigation message to carry out frame synchronization, make receiver under warm start state, complete receiver and locate first (TTFF, Time to First Fix) can within 1s, complete, locating speed is fast, efficiency is high, can meet the performance requirement of receiver to warm start completely.
Embodiment
In order to make those skilled in the art person understand better the present invention program, below in conjunction with the accompanying drawing in the embodiment of the present invention, technical scheme in the embodiment of the present invention is clearly and completely described, obviously, described embodiment is only the present invention's part embodiment, instead of whole embodiment.Based on the embodiment in the present invention, those of ordinary skill in the art, not making the every other embodiment obtaining under creative work prerequisite, belong to the scope of protection of the invention.
For the ease of the description to embodiment of the present invention and the understanding to embodiment of the present invention, embodiment in the present invention all describes as an example of GPS receiver example, but technical scheme of the present invention is except being applied to gps satellite navigational system, can be applied to equally Beidou satellite navigation system (BDS), Galileo satellite navigation system and GLONASS satellite navigation system.
General GPS receiver can complete location must catch the signal of four satellites at least simultaneously, and certain, the satellite-signal capturing is more, and the location of receiver is more accurate.Before starting to introduce technical scheme of the present invention, the ultimate principle of GPS receiver location is simply introduced.Taking 4 satellites of receiver acquisition as example, shown in figure 3, be GPS receiver positioning principle schematic diagram, suppose that the rectangular space coordinate that GPS receiver is corresponding is (X, Y, Z), the rectangular space coordinate of its 4 satellites that capture is respectively (X1, Y1, Z1), (X2, Y2, Z2), (X3, Y3, and (X4 Z3), Y4, Z4), the computing formula of receiver location is as follows:
Wherein, c*t
i, (i=1,2,3,4) are the distance (pseudorange) between receiver and satellite, t
ifor navigation message arrives from satellite the time that receiver experiences, c is the light velocity, and Δ t is unknown, is the clock correction of receiver clock and satellite clock, and the position coordinates of described 4 satellites can obtain by inquiry satellite ephemeris, if t
iknown, can solve the position coordinates of receiver by above-mentioned 4 equations.
Below technical scheme of the present invention being described in detail, shown in figure 4, is the process flow diagram of the localization method embodiment 1 of receiver in a kind of global navigation satellite system provided by the invention, and the present embodiment specifically can comprise:
Step 401: obtain every first local zone time that satellite is corresponding in these at least 4 satellites that participate in described receiver location.
Described receiver acquisition participates in described receiver location at least 4 satellites to this refer to that receiver receives the navigation message that satellite sends, in receiver, there is local clock, when navigation message that receiver acquisition sends to satellite, record receives the local zone time of navigation message.In process receiver being positioned at this, remember that in these at least 4 satellites that participate in described receiver location, every local zone time corresponding to satellite is the first local zone time.
Step 402: determine the first local zone time that every satellite is corresponding and the difference of the second local zone time.
In actual applications, receiver can receive not only 4 navigation messages that satellite sends, the satellite of communicating by letter with it when the satellite of communicating by letter with it when receiver was located before shutdown starts again with receiver may be incomplete same, here the identical satellite that participates in location before selective receiver shutdown and after starting shooting, is as the reference satellite that calculates receiver location.
Described the second local zone time is the local zone time of satellite while participating in described receiver location last time, according to the first local zone time of record, the difference of the receiver local zone time when can determining this receiver local zone time while participating in described receiver location of satellite and participating in described receiver location described last time, the difference computation process that every satellite is corresponding is similar.
Step 403: send the moment of navigation message while participating in described receiver location last time according to described difference and described every satellite, determine this moment of launching navigation message while participating in location of every satellite.
The ultimate principle that this step adopts is that receiver is received to the time interval equivalence of navigation message for twice as the time interval of satellite transmission navigation message, if satellite sends the moment of navigation message while participating in described receiver location last time known, the first local zone time that satellite is corresponding and the difference of the second local zone time are exactly the time interval that receiver receives navigation message for twice in fact, so, the moment that sends navigation message when described satellite participated in described receiver location last time adds that local zone time interval that satellite is corresponding is this moment of launching navigation message while participating in location of satellite.According to foregoing description, each satellite that this is captured calculates respectively the moment of corresponding transmitting navigation message.
Step 404: the moment of launching navigation message when this participates in location according to described every satellite is determined the position of described receiver.
This participates in the moment of launching navigation message while location to have determined every satellite, the navigation message that just can obtain every satellite transmission arrives the time of receiver experience from satellite, can determine the position of receiver according to the calculation method of receiver location coordinate, complete the location of receiver.
It should be noted that, in practical operation, can in receiver, preserve the historic state information of the satellite that participates in location, preferred, be kept in nonvolatile memory, avoid the loss of data.Described historic state information can comprise that receiver when satellite last (before receiver shutdown) sends navigation message moment, satellite while participating in receiver location participate in receiver location for the last time receives the local zone time of navigation message, certainly, can in receiver, preserve according to actual needs corresponding satellite historic state information.
In the technical scheme of the present embodiment, obtain every the first local zone time and second local zone time that satellite is corresponding in these at least 4 satellites that participate in described receiver location, described the first local zone time is the moment that receiver receives this navigation message sending while participating in described receiver location of satellite; Described the second local zone time is the moment that described satellite participated in the navigation message sending when described receiver is located last time; Then obtain the difference of the first local zone time and the second local zone time, described difference is satellite and sent navigation message and this last time and send the time interval of navigation message, send the moment of navigation message according to the satellite of preserving in receiver last time, can determine the moment of this transmission navigation message of satellite.According to satellite, this sends the moment of navigation message, and the effective almanac data of satellite of preserving, more just can determine the position of receiver in conjunction with the calculation method of receiver location, completes the location to receiver.In the whole position fixing process of receiver, only need to carry out the bit synchronization of navigation message, guarantee that Satellite Tracking is in good condition, then, the time interval that receives navigation message according to definite adjacent twice receiver of local clock is just passable, do not need navigation message to carry out frame synchronization, make receiver under warm start state, complete receiver and locate first (TTFF, Time to First Fix) can within 1s, complete, locating speed is fast, efficiency is high, can meet the performance requirement of receiver to warm start completely.
In described embodiment 1, do not carry out the frame synchronization of navigation message, relative to existing technologies, shorten the time to receiver location, but also can there is certain error in the local zone time that satellite is corresponding, because be exactly not necessarily the moment that navigation message really arrives receiver navigation message time of reception of receiver record.Because in practical operation, the least unit of the local timing of general receiver is millisecond, it is not likely whole millisecond number that receiver receives the moment that navigation message is corresponding, such as, time within one navigation bit, calculate with microsecond, but receiver cannot be accurate to microsecond, and the time error of a microsecond can cause satellite to have the error of 300 meters to the pseudorange of receiver.In order to reduce the impact of local clock timing error on receiver location, the present invention also provides the localization method embodiment 2 of receiver in a kind of global navigation satellite system, the error margin to local zone time when introducing time normalization increases receiver location.
Concrete, shown in figure 5, for the process flow diagram of the localization method embodiment 2 of receiver in a kind of global navigation satellite system provided by the invention, the description that in the present embodiment, the implementation of the step identical with embodiment 1 can reference example 1, repeats no more here.The present embodiment specifically can comprise:
Step 501: obtain every first local zone time that satellite is corresponding in these at least 4 satellites that participate in described receiver location.
Step 502: determine the first local zone time that every satellite is corresponding and the difference of the second local zone time.
Step 503: the first local zone time corresponding to every satellite and the difference of the second local zone time are normalized.
Normalized herein, fundamental purpose is that local zone time is planned on the boundary position of navigation bit, and making the least unit of time is millisecond, and normalization formula is:
(Trtc_cur-Tinner_20_cur)-(Trtc_last-Tinner_20_last)
Wherein, Trtc_cur is the first local zone time of satellite, time when Tinner_20_cur is this participation location of satellite within one navigation bit, time within a described navigation bit refers to the time of not enough 20ms, tracking and bit synchronization can be determined via satellite, Trtc_last is the second local zone time of satellite, time when Tinner_20_last is satellite participation last time location within one navigation bit.
After being normalized, in difference, do not comprise other time value of Microsecond grade, using the difference after normalization as the first local zone time corresponding to every satellite and the difference of the second local zone time.
Step 504: send the moment of navigation message while participating in described receiver location last time according to the difference after normalization and described each satellite, determine this moment of launching navigation message while participating in location of every satellite.
Step 505: the moment of launching navigation message when this participates in location according to described every satellite is determined the position of described receiver.
The present embodiment, on the basis of embodiment 1, by introducing time normalization, further increases receiving machine local time error tolerance value, has improved the accuracy of calculating satellite-signal x time.Further, on the basis of embodiment 2, the present invention also provides the localization method embodiment 3 of receiver in a kind of global navigation satellite system, considers the timing error of local clock itself, and the character of introducing navigation bit further improves the accuracy of location.
Concrete, shown in figure 6, for the process flow diagram of the localization method embodiment 3 of receiver in a kind of global navigation satellite system provided by the invention, the description that in the present embodiment, the implementation of the step identical with embodiment 1,2 can reference example 1,2, repeats no more here.The present embodiment specifically can comprise:
Step 601: obtain every first local zone time that satellite is corresponding in these at least 4 satellites that participate in described receiver location.
Step 602: determine the first local zone time that every satellite is corresponding and the difference of the second local zone time.
Step 603: the first local zone time corresponding to every satellite and the difference of the second local zone time are normalized.
Step 604: determine the navigation bit number that every normalization difference corresponding to satellite comprises.
The time span of a navigation bit is 20ms, so the navigation bit number comprising in normalization difference is floor (Trtc_span/20), floor represents to get the max-int that is less than Trtc_span/20, and Trtc_span is the difference after the corresponding normalization of every satellite; Preferably, consider the timing error that local clock itself exists, navigation bit number is revised, the computing formula of described navigation bit number is modified to:
nBits=floor((Trtc_span+a)/20)
Wherein a is receiver local clock modified value.First, needing clear and definite a must be the time span that is less than a navigation bit of 20() nonnegative integer, because if a >=20, will certainly cause the error of a navigation bit.
For the ease of the description to a sampling process, here describe for example, the true value of supposing Trtc_span is 120ms, and the time span of a navigation bit is 20ms, so nBits value corresponding to 120ms is 6, if receiver local clock error is 0, the Trtc_span calculating is so identical with true value, now will obtain correct nBits value 6, so, Trtc_span+a can get from 120 to 139 value, and a gets arbitrary round values (comprising 0 and 19) of 0-19.Similarly, in the time that receiver local clock error is 1ms, due to the existence of error, the Trtc_span value of calculating may be just 119ms or 121ms, now, if Trtc_span+a can get from 120 to 139 value, a will get arbitrary round values (comprising 1 and 18) of 1-18 so.The like, can obtain the corresponding relation of receiver error and a span, shown in reference table 1, be the corresponding relation of receiver error and a span.
The corresponding relation of table 1 receiver error and a span
Local clock error (ms) |
The span (ms comprises boundary value) of modified value a |
0 |
0-19 |
1 |
1-18 |
2 |
2-17 |
3 |
3-16 |
4 |
4-15 |
5 |
5-14 |
6 |
6-13 |
7 |
7-12 |
8 |
8-11 |
9 |
9 or 10 |
In the time that a value is greater than 9, such as, the local zone time error of receiver is 10ms, and taking example above as card, the Trtc_span value of calculating may be 110ms or 130ms, and now, nBits value is 6 or 7; If a value is 11 and above value, can obtain equally different values, cannot determine which is correct.As can be seen from Table 1, for different local clock errors, there is lap in corresponding a span, and in order to make error margin maximum, preferred, a can value be 10 here.The present embodiment is not done concrete restriction to the value of a, in practical operation, can, according to the concrete condition of the receiver using, specifically be arranged by operating personnel.
Step 605: the moment that sends navigation message while participating in described receiver location last time according to described navigation bit number and satellite is determined satellite, and this is launched the navigation message moment while participating in location.
When this participation location of the satellite obtaining in this step, launching the computing formula in the moment of navigation message is:
Tsat_last-Tinner_20_last+nBits*20+Tinner_20_cur;
Wherein Tsat_last is the moment that satellite participated in sending when described receiver is located navigation message last time.
Step 606: the moment of launching navigation message when this participates in location according to described every satellite is determined the position of described receiver.
The present embodiment, on the basis of embodiment 1,2, is introduced local clock error and navigation bit number, reduces the positioning error that causes because of timing, can tolerate that 9ms is with interior local clock error, further improves the accuracy of location.
Corresponding to embodiment of the method, corresponding, the present invention also provides a kind of receiver, shown in figure 7, is the structural representation of a kind of receiver embodiment 1 provided by the invention, and described receiver comprises:
Acquisition module 701, the first local zone time corresponding to every satellite of at least 4 satellites that participates in described receiver location for obtaining this, described the first local zone time is the moment that receiver receives this navigation message sending while participating in described receiver location of satellite;
Difference determination module 702, for the first local zone time corresponding to definite described every satellite and the difference of the second local zone time, described the second local zone time is the moment that described satellite participated in the navigation message sending when described receiver is located last time;
Navigation message delivery time determination module 703, sends moment of navigation message when participating in described receiver location last time according to described difference and described every satellite, determines this moment of launching navigation message while participating in location of every satellite;
Locating module 704, for according to described every satellite, this participates in moment that when location launches navigation message and determines the position of described receiver, to complete the location of receiver.
Preferably, shown in figure 8, be the structural representation of a kind of receiver embodiment 2 provided by the invention, except the module shown in Fig. 7, described receiver can also comprise:
Normalization module 801, after determining the difference of the first local zone time that every satellite is corresponding and the second local zone time, is normalized the first local zone time corresponding to every satellite and the difference of the second local zone time, and normalization formula is:
(Trtc_cur-Tinner_20_cur)-(Trtc_last-Tinner_20_last)
Wherein, Trtc_cur is the first local zone time of satellite, time when Tinner_20_cur is this participation location of satellite within one navigation bit, time within a described navigation bit is the time within 20ms, Trtc_last is the second local zone time of satellite, and Tinner_20_last is that satellite participated in locating the time within a navigation bit last time;
Described difference determination module, specifically for using the difference after normalization as the first local zone time corresponding to every satellite and the difference of the second local zone time.
Preferably, shown in figure 9, be the structural representation of a kind of receiver embodiment 3 provided by the invention, except the module shown in Fig. 7, described receiver can also comprise:
Bit number determination module 901, for using the difference after normalization after the difference of the first local zone time corresponding to every satellite and the second local zone time, determine the navigation bit number that the difference after the normalization that every satellite is corresponding comprises, formula is:
nBits=floor(Trtc_span/20)
Wherein, nBits is navigation bit number, and floor represents to get the max-int that is less than Trtc_span/20, and Trtc_span is the difference after the corresponding normalization of every satellite;
Described navigation message delivery time determination module, while participating in described receiver location last time specifically for the navigation bit number that comprises according to the difference after normalization and satellite, send the moment of navigation message, this is launched the navigation message moment while participating in location to determine satellite.
Bit number determination module also, for obtaining the error of considering receiver local clock when navigation bit is counted, is revised definite navigation bit number, and the computing formula of described navigation bit number is:
nBits=floor((Trtc_span+a)/20)
Wherein a is the modified value of receiver local clock.
The moment of launching navigation message when this participation location of the satellite that navigation message delivery time determination module obtains is: Tsat_last-Tinner_20_last+nBits*20+Tinner_20_cur, wherein Tsat_last is the moment that satellite participated in sending when described receiver is located navigation message last time.
Shown in Figure 10, be the schematic diagram that is related to of time of using in the various embodiments described above, wherein the meaning of each time parameter is with reference to above-mentioned embodiment.
Definite method of navigation message x time that the various embodiments described above are described, is equally applicable to the situation of satellite after recapturing unlocked, and to accelerating satellite, to participate in the process of receiver positioning calculation significant.
The function that in receiver, each module realizes, with reference to operation steps corresponding in said method embodiment, repeats no more here.
It should be noted that, term " comprises ", " comprising " or its any other variant are intended to contain comprising of nonexcludability, thereby the process, method, article or the equipment that make to comprise a series of key elements not only comprise those key elements, but also comprise other key elements of clearly not listing, or be also included as the intrinsic key element of this process, method, article or equipment.The in the situation that of more restrictions not, the key element being limited by statement " comprising ... ", and be not precluded within process, method, article or the equipment that comprises described key element and also have other identical element.
For system embodiment, because it corresponds essentially to embodiment of the method, so relevant part is referring to the part explanation of embodiment of the method.System embodiment described above is only schematic, the wherein said unit as separating component explanation can or can not be also physically to separate, the parts that show as unit can be or can not be also physical locations, can be positioned at a place, or also can be distributed in multiple network element.Can select according to the actual needs some or all of module wherein to realize the object of the present embodiment scheme.Those of ordinary skill in the art, in the situation that not paying creative work, are appreciated that and implement.
The above is only the specific embodiment of the present invention; it should be pointed out that for those skilled in the art, under the premise without departing from the principles of the invention; can also make some improvements and modifications, these improvements and modifications also should be considered as protection scope of the present invention.