CN108732592A - GPS software receiver based on GNU Radio - Google Patents
GPS software receiver based on GNU Radio Download PDFInfo
- Publication number
- CN108732592A CN108732592A CN201810440877.0A CN201810440877A CN108732592A CN 108732592 A CN108732592 A CN 108732592A CN 201810440877 A CN201810440877 A CN 201810440877A CN 108732592 A CN108732592 A CN 108732592A
- Authority
- CN
- China
- Prior art keywords
- code
- signal
- value
- gps
- radio
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
- G01S19/29—Acquisition or tracking or demodulation of signals transmitted by the system carrier including Doppler, related
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
- G01S19/30—Acquisition or tracking or demodulation of signals transmitted by the system code related
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
The present invention relates to the GPS software receivers based on GNU Radio, belong to technical field of satellite navigation.The present invention includes the first step:After GPS antenna module receives GPS signal, radio-frequency module is output to by low noise amplifier and bandpass filter;Second step:Radio-frequency module handles signal:According to nyquist sampling theorem, bandpass sampling is carried out to 2 times of GPS C/A bandwidth, data can be carried out local preserve to post-process by the signal after sampling after carrying out A/D conversions using the USRP hardware drivings UHD that GNU Radio are provided;The present invention utilizes GNU Radio software architectures, using the programming idea of object-oriented, the signal processing module provided in conjunction with GNU Radio, the capture of signal, tracking and subsequent navigation calculation are programmed into realization on aageneral-purposeaprocessor, the scheduler provided using GNU Radio is carried out multithread scheduling management and realizes that band-wise processing can reach real-time performance, and compared to hardware receiver, can carry out algorithm upgrading, convenient for software development, there is prodigious flexibility and scalability.
Description
Technical field
The present invention relates to the GPS software receivers based on GNU Radio, belong to technical field of satellite navigation.
Background technology
GPS is US Global Position Fixing Navigation System, is had a very wide distribution, and number of satellite is more, provides Global coverage, round-the-clock
Three-dimensional localization is that positioning system is most improved in current service.GNU Radio belong to open source software radio software, provide it is a large amount of but
It is signal processing module to realize soft radio applications, in recent years, has in GNU Radio software radio projects extensive
Using.
Traditional commercial GPS receivers are generally made of four parts:GPS antenna, radio-frequency front-end, correlator, microprocessor.
Wherein antenna is responsible for receiving GPS signal, and radio-frequency front-end is responsible for GPS signal being converted to low frequency signal and carries out A/D conversions, related
Device is responsible for the capture of signal, tracking, and pseudo-code, carrier wave and observation etc. are passed to microprocessor, belongs to the hard of receiver
Part part, microprocessor is responsible for navigation calculation, according to the transmitting of satellite position information and satellite-signal in navigation message
The time of time and local reception signal, the position for completing receiver resolve.The core of hardware receiver is exactly correlator, subsequently
The data of processor are from correlator, and general correlator is all GPS chip.
The a large amount of related operations occurred in traditional receivers base band signal process, especially tracking the relevant operation of process needs
Application-specific integrated circuit (Application Specific Integrated Circuit, ASIC) is wanted to be handled, compared to
It is of high cost for software, and respective chip can only be handled for single frequency range, it is difficult to it extends, underaction.
Invention content
To solve the above-mentioned problems, the present invention provides a kind of GPS software receiver based on GNU Radio.The present invention adopts
The technical solution taken is as follows:
GPS software receiver based on GNU Radio, includes the following steps:
The first step:After GPS antenna module receives GPS signal, it is output to and penetrates with bandpass filter by low noise amplifier
Frequency module;
Second step:Radio-frequency module handles signal:According to nyquist sampling theorem, band is carried out to 2 times of GPS C/A bandwidth
Logical sampling, the signal after sampling can utilize the USRP hardware drivings UHD that GNU Radio are provided by data after carrying out A/D conversions
Local preservation is carried out to be post-processed, can also in real time be handled according to sample streams;
Third walks:Base band signal process:It needs to judge which is satellite-signal in the signal of acquisition, needs to first pass through and catch
It obtains, obtains the rough Doppler frequency and code phase of satellite, obtained information is passed into tracking module, then obtain Doppler's frequency
It moves with the exact value of code phase to demodulate navigation message, including following trapping module is handled with tracking module:
Trapping module processing method:GPS L1C/A signal captures are a two-dimensional processes, need the code phase for obtaining signal
Position and carrier frequency, trapping module sample the code phase search algorithm based on FFT, and algorithm is as follows:
A. being based on the parallel code phase acquisition algorithms of FFT will in the same direction be divided first acquiring signal and be multiplied respectively with local carrier
I is measured, quadrature component Q is obtained with 90 ° of carrier multiplications of phase shift, obtains baseband complex signal I+jQ, FFT changes are carried out to obtained complex signal
It changes;
B. the pseudo-code generated to local pseudo- code generator carries out FFT transform, converts it to frequency domain, and take complex conjugate;
C. it is multiplied with the result of b to a, and carries out IFFT transformation and be transformed into time domain;
D. by the correlation of square the expression input signal and PRN code of the value of the output after IFFT.If deposited in correlation
In peak value, then the coordinate of the peak value just corresponds to the code phase and carrier frequency of input signal;If not over thresholding, need again
Setting local carrier searches again for;
Tracking module processing method:One coarse value of code phase and Doppler frequency shift that trapping module obtains, due to receiving
The relative motion of machine and satellite, code phase and Doppler frequency shift are real-time changes, so needing to obtain real-time update signal frequency
Rate, code phase variation are to demodulate navigation message;Tracking module uses the track algorithm that carrier tracking loop and code tracking are combined,
The algorithmic procedure is:In carrier tracking loop, first according to the carrier frequency value exported in acquisition procedure in the same frequency of local replica
The carrier wave of rate.Local replica carrier wave is mixed with input signal, to remove the carrier wave in input signal.And according to carrier wave
Peeling effect further adjusts the parameter of local replica carrier wave, to reach best carrier track effect.Carrier tracking loop is usual
Using the form of phased lock loop (PLL), in code tracking loop, it will usually which the C/A codes for replicating 3 parts of outs of phase are referred to as
Advanced code (early), i.e. time-code (prompt) and lag code (late), and indicated respectively with letter e, P and L.Not by this 3 parts
The C/A codes of same-phase carry out relevant operation with input signal respectively, and by the correlated results of i.e. time-code and advanced code and lag code
Correlated results be compared, so that it may to be more accurately determined the maximum value of correlated results.
4th step:Navigation message is demodulated to be calculated with position, and method is as follows:
Navigation message demodulation method is as follows:
The data of the output of track loop are a string of 01 binary data, need according to GPS signal format demodulate extensive
Again at navigation message, demodulation step therein includes bit synchronization, frame synchronization, even-odd check, the several steps of navigation message reading;Its
Middle bit synchronization needs to obtain the jump position of navigation message, and the navigation message period of each is 20ms, and C/A codes are per the chip periods
For 1ms, each includes 20 C/A codes to navigation message, and when some C/A code changes, 20 grid are corresponding in histogram
Value add one, until some grid in histogram value more than predetermined value think bit synchronization success, to corresponding jump position into
, there is one-shot change and just adds one in row statistics, is more than setting thresholding identification and detects successfully;Synchronizing sub-frame:It can be with after bit synchronization success
The navigation message of 50bps is obtained, in order to obtain navigation information, needs to obtain each subframe specific in 50bps navigation messages
Position, period of sub-frame 6s, since Costas is insensitive to loop saltus step, originate 8 lead codes may be 10001011 or
01110100, so synchronizing sub-frame needs to scan for lead code and its radix-minus-one complement, but what is searched meets lead code and its
Radix-minus-one complement format is also likely to be numeric data code, also needs to carry out even-odd check to follow-up 22bit, and carry out several subframe preamble positions
Confirm.Even-odd check:Assuming that it is d1, d2, d3 that receive the 30bit obtained, which be data, ... d30, according to parity check algorithm,
Corresponding each calculated value D1, D2, D3 can be calculated ... D30, if the calibration position received and knot is calculated
Fruit is identical, then it represents that data are errorless;Navigation message is read:Navigation information is carried out according to fixed format after even-odd check success
Extraction, if the 8bit data of 197 startings of subframe 1 are ionospheric delay parameter Tgd;
Position calculation method is as follows:Using pseudorange positioning principle, the location information for obtaining four satellites can the place's of clearing use
Family location information,
Wherein (xi,yi,zi) be i-th satellite three-dimensional coordinate, (xu,yu,zu) it is user location, tuFor receiver user
Clocking error and satellite atomic clocks clock clock correction, to (1) carry out the differential equation obtain:
Whereinδxu, δ yu, δ zu, δ tuIt is unknown quantity, (2) is defined as
Matrix form
Solution can obtain:
The equation is unable to direct solution, this software is iterated solution using least square method, and specific implementation step is:
1. given user location (xu,yu,zu) and clock jitter tuInitial value is set, one group of (δ x can be solvedu,δyu,δzu,δ
tu), original value is modified using these values, new value is seen as known quantity;
2. it repeats 1. to operate, ifMore than predetermined threshold, by δ xu,δyu,δzu,δtu
And xu,yu,zu,tuInitial value be added, obtain one group and be newly worth, using new value as the initial value next calculated;
3. repeating 1. 2. to operate, until Δ ν is less than threshold value, identification at this time acquires solution xu,yu,zu,tu。
Beneficial effects of the present invention:GPS software receiver based on GNU Radio is then to utilize GNU Radio software framves
Structure, using the programming idea of object-oriented, in conjunction with the signal processing module that GNU Radio are provided, by the capture of signal, tracking with
And subsequent navigation calculation programs realization on aageneral-purposeaprocessor, and multithreading is carried out using the scheduler that GNU Radio are provided
Management and running realize that band-wise processing can reach real-time performance, and compared to hardware receiver, can carry out algorithm upgrading,
Convenient for software development, there is prodigious flexibility and scalability.
Description of the drawings
Fig. 1 is based on the parallel code phase acquisition algorithm principles of FFT as schemed.
Fig. 2 is the track algorithm that code tracking loop is combined with carrier tracking loop.
Specific implementation mode
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete
Site preparation describes, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on
Embodiment in the present invention, it is obtained by those of ordinary skill in the art without making creative efforts every other
Embodiment shall fall within the protection scope of the present invention.
GPS software receiver based on GNU Radio, includes the following steps:
The first step:After GPS antenna module receives GPS signal, it is output to and penetrates with bandpass filter by low noise amplifier
Frequency module;
Second step:Radio-frequency module handles signal:According to nyquist sampling theorem, band is carried out to 2 times of GPS C/A bandwidth
Logical sampling, the signal after sampling can utilize the USRP hardware drivings UHD that GNU Radio are provided by data after carrying out A/D conversions
Local preservation is carried out to be post-processed, can also in real time be handled according to sample streams;
Third walks:Base band signal process:It needs to judge which is satellite-signal in the signal of acquisition, needs to first pass through and catch
It obtains, obtains the rough Doppler frequency and code phase of satellite, obtained information is passed into tracking module, then obtain Doppler's frequency
It moves with the exact value of code phase to demodulate navigation message, including following trapping module is handled with tracking module:
Trapping module processing method:GPS L1C/A signal captures are a two-dimensional processes, need the code phase for obtaining signal
Position and carrier frequency, trapping module sample the code phase search algorithm based on FFT, and algorithm is as follows:
A. being based on the parallel code phase acquisition algorithms of FFT will in the same direction be divided first acquiring signal and be multiplied respectively with local carrier
I is measured, quadrature component Q is obtained with 90 ° of carrier multiplications of phase shift, obtains baseband complex signal I+jQ, FFT changes are carried out to obtained complex signal
It changes;
B. the pseudo-code generated to local pseudo- code generator carries out FFT transform, converts it to frequency domain, and take complex conjugate;
C. it is multiplied with the result of b to a, and carries out IFFT transformation and be transformed into time domain;
D. by the correlation of square the expression input signal and PRN code of the value of the output after IFFT.If deposited in correlation
In peak value, then the coordinate of the peak value just corresponds to the code phase and carrier frequency of input signal;If not over thresholding, need again
Setting local carrier searches again for;It is as shown in Figure 1 based on the parallel code phase acquisition algorithm principles of FFT.
Tracking module processing method:One coarse value of code phase and Doppler frequency shift that trapping module obtains, due to receiving
The relative motion of machine and satellite, code phase and Doppler frequency shift are real-time changes, so needing to obtain real-time update signal frequency
Rate, code phase variation are to demodulate navigation message;Tracking module uses the track algorithm that carrier tracking loop and code tracking are combined,
Fig. 2 is the GPS signal following principle figure that code tracking loop is combined with carrier tracking loop.Shown in Fig. 2:Trapping module by code phase with
The coarse value of Doppler frequency shift passes to tracking module, and carrier wave phase discriminator calculates real-time change in tracking signal in carrier loop
Carrier phase to generate local carrier, realized by calculating the integral result on tri- tunnel E, P, L to code phase by code tracking loop
Dynamic adjusts, and ensures to be that time-code correlation intergal remains maximum value, just can guarantee I in this wayEExport navigation message.
The track algorithm that tracking module is combined using carrier tracking loop and code tracking, the algorithmic procedure are:Carrier track
In ring, first according to the carrier frequency value exported in acquisition procedure the same frequency of local replica carrier wave.Local replica is carried
Wave is mixed with input signal, to remove the carrier wave in input signal.And this is further adjusted according to the peeling effect of carrier wave
Ground replicates the parameter of carrier wave, to reach best carrier track effect.Carrier tracking loop generally use phased lock loop (PLL)
Form, in code tracking loop, it will usually which the C/A codes for replicating 3 parts of outs of phase are referred to as advanced code (early), i.e. time-code
(prompt) and code (late) is lagged, and is indicated respectively with letter e, P and L.By the C/A codes of this 3 parts of outs of phase respectively with
Input signal carries out relevant operation, and the correlated results of i.e. time-code is compared with the correlated results of advanced code and lag code,
The maximum value of correlated results can be more accurately determined.I in Fig. 2E、QE、IP、QP、IL、QLIt indicates locally to reappear respectively
Advanced code, i.e. time-code and lag code and input signal carry out relevant operation, the in-phase component of the correlated results obtained after operation with
Quadrature component.
4th step:Navigation message is demodulated to be calculated with position, and method is as follows:
Navigation message four steps of demodulation point:Bit synchronization, synchronizing sub-frame, even-odd check, navigation message extract (Tian Ping Li, Ning Chun
Woods, fourth wind and thunder, research [J] the communication technologys for waiting .GPS software receiver navigation messages to extract, 2009,42 (3):212-
214.).Bit synchronization:(Zhang Wei, Chen Ping, Tan Min are strong, and multimodes GNSS system bit is same for bit synchronization generally use " histogram " algorithm 0
Walk histogram optimization algorithm [C] //International Conference on Broadcast Technology&
Multimedia Communication.2010.), 20 calculators of setting, 20 C/A cycle phases pair corresponding with navigation message
It answers, the navigation data of the roads tracking module I output is detected, just adds 1 in corresponding counter if changing, when counter is more than
Other positions and more than thresholding when assert sync bit detect successfully.
Synchronizing sub-frame:The navigation message that 50bps can be obtained after bit synchronization success needs to obtain to obtain navigation information
Specific location of each subframe in 50bps navigation messages is taken, period of sub-frame 6s is known by 2.3.3 sections, since Costas is to loop
Saltus step is insensitive, and it may be 10001011 or 01110100 to originate 8 lead codes, thus synchronizing sub-frame need to lead code and
Its radix-minus-one complement scans for, but the meet lead code and its radix-minus-one complement format that search are also likely to be numeric data code, are also needed to follow-up
22bit carries out even-odd check, and confirms to several subframe preamble positions.
Even-odd check:Assuming that it is d that the 30bit for receiving acquisition, which is data,1,d2,d3....d30, can be with according to certain algorithm
Corresponding each calculated value D is calculated1,D2,D3....D30If the calibration position received is identical with result is calculated,
Indicate that data are errorless, i.e.,:D25=d25, D26=d26, D27=d27, D28=d28, D29=d29, D30=d30。
The data of the output of track loop are a string of 01 binary data, need according to GPS signal format demodulate extensive
Again at navigation message, demodulation step therein includes bit synchronization, frame synchronization, even-odd check, the several steps of navigation message reading;Its
Middle bit synchronization needs to obtain the jump position of navigation message, and the navigation message period of each is 20ms, and C/A codes are per the chip periods
For 1ms, each includes 20 C/A codes to navigation message, and when some C/A code changes, 20 grid are corresponding in histogram
Value add one, until some grid in histogram value more than predetermined value think bit synchronization success, to corresponding jump position into
, there is one-shot change and just adds one in row statistics, is more than setting thresholding identification and detects successfully;Synchronizing sub-frame:It can be with after bit synchronization success
The navigation message of 50bps is obtained, in order to obtain navigation information, needs to obtain each subframe specific in 50bps navigation messages
Position, period of sub-frame 6s, since Costas is insensitive to loop saltus step, originate 8 lead codes may be 10001011 or
01110100, so synchronizing sub-frame needs to scan for lead code and its radix-minus-one complement, but what is searched meets lead code and its
Radix-minus-one complement format is also likely to be numeric data code, also needs to carry out even-odd check to follow-up 22bit, and carry out several subframe preamble positions
Confirm.Even-odd check:Assuming that it is d1, d2, d3 that receive the 30bit obtained, which be data, ... d30, according to parity check algorithm,
Corresponding each calculated value D1, D2, D3 can be calculated ... D30, if the calibration position received and knot is calculated
Fruit is identical, then it represents that data are errorless;Navigation message is read:Navigation information is carried out according to fixed format after even-odd check success
Extraction, if the 8bit data of 197 startings of subframe 1 are ionospheric delay parameter Tgd;
Position calculation method is as follows:Using pseudorange positioning principle, the location information for obtaining four satellites can the place's of clearing use
Family location information,
Wherein (xi,yi,zi) be i-th satellite three-dimensional coordinate, (xu,yu,zu) it is user location, tuFor receiver user
Clocking error and satellite atomic clocks clock clock correction, to (1) carry out the differential equation obtain:
Whereinδxu, δ yu, δ zu, δ tuIt is unknown quantity, (2) is defined as
Matrix form
Solution can obtain:
The equation is unable to direct solution, this software is iterated solution using least square method, and specific implementation step is:
1. given user location (xu,yu,zu) and clock jitter tuInitial value is set, one group of (δ x can be solvedu,δyu,δzu,δ
tu), original value is modified using these values, new value is seen as known quantity;
2. it repeats 1. to operate, ifMore than predetermined threshold, by δ xu,δyu,δzu,δtu
And xu,yu,zu,tuInitial value be added, obtain one group and be newly worth, using new value as the initial value next calculated;
3. repeating 1. 2. to operate, until Δ ν is less than threshold value, identification at this time acquires solution xu,yu,zu,tu。
It although an embodiment of the present invention has been shown and described, for the ordinary skill in the art, can be with
Understanding without departing from the principles and spirit of the present invention can carry out these embodiments a variety of variations, modification, replace
And modification, the scope of the present invention is defined by the appended.
Claims (2)
1. the GPS software receiver based on GNU Radio, it is characterised in that:Include the following steps:
The first step:After GPS antenna module receives GPS signal, radio frequency mould is output to by low noise amplifier and bandpass filter
Block;
Second step:Radio-frequency module handles signal:According to nyquist sampling theorem, 2 times of progress band logicals of GPS C/A bandwidth are adopted
Sample, the signal after sampling can be carried out data using the GNU Radio USRP hardware drivings UHD provided after carrying out A/D conversions
It is local to preserve to be post-processed;
Third walks:Base band signal process:It needs to judge which is satellite-signal in the signal of acquisition, needs to first pass through capture, obtain
To the rough Doppler frequency and code phase of satellite, obtained information is passed into tracking module, then obtain Doppler frequency shift with
The exact value of code phase is to demodulate navigation message, including following trapping module is handled with tracking module:
Trapping module processing method:GPS L1 C/A signal captures are a two-dimensional processes, need the code phase for obtaining signal
And carrier frequency, trapping module sample the code phase search algorithm based on FFT, algorithm is as follows:
A. being based on the parallel code phase acquisition algorithms of FFT will be multiplied to obtain component I in the same direction respectively with local carrier in acquisition signal first,
Quadrature component Q is obtained with 90 ° of carrier multiplications of phase shift, obtains baseband complex signal I+jQ, FFT transform is carried out to obtained complex signal;
B. the pseudo-code generated to local pseudo- code generator carries out FFT transform, converts it to frequency domain, and take complex conjugate;
C. it is multiplied with the result of b to a, and carries out IFFT transformation and be transformed into time domain;
D. by the correlation of square the expression input signal and PRN code of the value of the output after IFFT;If there are peaks in correlation
Value, then the coordinate of the peak value just corresponds to the code phase and carrier frequency of input signal;If not over thresholding, need to reset
Local carrier searches again for;
Tracking module processing method:One coarse value of code phase and Doppler frequency shift that trapping module obtains, due to receiver and
The relative motion of satellite, code phase and Doppler frequency shift are real-time changes, so needing to obtain real-time update signal frequency, code
Phase change is to demodulate navigation message;Tracking module uses the track algorithm that carrier tracking loop and code tracking are combined, algorithm
Process is:First according to the carrier frequency value exported in acquisition procedure the same frequency of local replica carrier wave, by local replica
Carrier wave is mixed with input signal, to remove the carrier wave in input signal, and is further adjusted according to the peeling effect of carrier wave
The parameter of local replica carrier wave, to reach best carrier track effect;Carrier tracking loop generally use phased lock loop
Form in code tracking loop, can replicate the C/A codes of 3 parts of outs of phase, be referred to as advanced code, i.e. time-code and lag code, and respectively
It is indicated with letter e, P and L;The C/A codes of this 3 parts of outs of phase are subjected to relevant operation with input signal respectively, and will be instant
The correlated results of code is compared with the correlated results of advanced code and lag code, so that it may to be accurately determined the maximum of correlated results
Value;
4th step:Navigation message is demodulated to be calculated with position, and method is as follows:
Navigation message demodulation method is as follows:
The data of the output of track loop are a string of 01 binary data, need according to GPS signal format demodulate to revert to
Navigation message, demodulation step therein include bit synchronization, frame synchronization, even-odd check, the several steps of navigation message reading;Wherein position
The jump position for needing to obtain navigation message is synchronized, the navigation message period of each is 20ms, and C/A codes are per the chip periods
1ms, each includes 20 C/A codes to navigation message, and when some C/A code changes, 20 grid are corresponding in histogram
Value plus one, until the value of some grid in histogram thinks that bit synchronization successfully, carries out corresponding jump position more than predetermined value
, there is one-shot change and just adds one in statistics, is more than setting thresholding identification and detects successfully;Synchronizing sub-frame:It can be obtained after bit synchronization success
To the navigation message of 50bps, in order to obtain navigation information, need to obtain specific position of each subframe in 50bps navigation messages
Set, period of sub-frame 6s, since Costas is insensitive to loop saltus step, originate 8 lead codes may be 10001011 or
01110100, so synchronizing sub-frame needs to scan for lead code and its radix-minus-one complement, but what is searched meets lead code and its
Radix-minus-one complement format is also likely to be numeric data code, also needs to carry out even-odd check to follow-up 22bit, and carry out several subframe preamble positions
Confirm;Even-odd check:Assuming that it is d1, d2, d3 that receive the 30bit obtained, which be data, ... d30, according to parity check algorithm,
Corresponding each calculated value D1, D2, D3 can be calculated ... D30, if the calibration position received and knot is calculated
Fruit is identical, then it represents that data are errorless;Navigation message is read:Navigation information is carried out according to fixed format after even-odd check success
Extraction, if the 8bit data of 197 startings of subframe 1 are ionospheric delay parameter Tgd;
Position calculation method is as follows:Using pseudorange positioning principle, place user position can be settled accounts by obtaining the location information of four satellites
Confidence ceases,
Wherein (xi,yi,zi) be i-th satellite three-dimensional coordinate, (xu,yu,zu) it is user location, tuFor receiver user when
The clock clock correction of clock error and satellite atomic clocks carries out the differential equation to (1) and obtains:
Whereinδxu, δ yu, δ zu, δ tuIt is unknown quantity, (2) is defined as matrix
Form
Solution can obtain:
The equation is unable to direct solution, is iterated solution using least square method, specific implementation step is:
1. given user location (xu,yu,zu) and clock jitter tuInitial value is set, one group of (δ x can be solvedu,δyu,δzu,δtu), profit
Original value is modified with these values, new value is seen as known quantity;
2. it repeats 1. to operate, ifMore than predetermined threshold, by δ xu,δyu,δzu,δtuAnd xu,
yu,zu,tuInitial value be added, obtain one group and be newly worth, using new value as the initial value next calculated;
3. repeating 1. 2. to operate, until Δ ν is less than threshold value, identification at this time acquires solution xu,yu,zu,tu。
2. the GPS software receiver according to claim 1 based on GNU Radio, it is characterised in that:Described in second step
Signal after sampling can be carried out data locally using the USRP hardware drivings UHD that GNU Radio are provided after carrying out A/D conversions
It preserves can also in real time be handled according to sample streams after carrying out.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810440877.0A CN108732592B (en) | 2018-05-10 | 2018-05-10 | GPS software receiver based on GNU Radio |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810440877.0A CN108732592B (en) | 2018-05-10 | 2018-05-10 | GPS software receiver based on GNU Radio |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108732592A true CN108732592A (en) | 2018-11-02 |
CN108732592B CN108732592B (en) | 2022-04-15 |
Family
ID=63938050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810440877.0A Active CN108732592B (en) | 2018-05-10 | 2018-05-10 | GPS software receiver based on GNU Radio |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108732592B (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100304686A1 (en) * | 2009-05-27 | 2010-12-02 | Kennedy Joseph P | Wireless transceiver test bed system and method |
CN103441807A (en) * | 2013-08-20 | 2013-12-11 | 南昌大学 | Software frequency spectrum analyzer based on GNU Radio and USRP |
US8843126B1 (en) * | 2012-08-03 | 2014-09-23 | The United States Of America As Represented By The Secretary Of The Navy | System for isolation testing of RF transmitters and receivers |
CN104735649A (en) * | 2015-03-25 | 2015-06-24 | 江苏物联网研究发展中心 | Wireless link signature extraction method based on Gnu Radio |
CN104883204A (en) * | 2015-05-26 | 2015-09-02 | 南昌大学 | Short-wave frequency hopping communication system based on general software radio platform |
-
2018
- 2018-05-10 CN CN201810440877.0A patent/CN108732592B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100304686A1 (en) * | 2009-05-27 | 2010-12-02 | Kennedy Joseph P | Wireless transceiver test bed system and method |
US8843126B1 (en) * | 2012-08-03 | 2014-09-23 | The United States Of America As Represented By The Secretary Of The Navy | System for isolation testing of RF transmitters and receivers |
CN103441807A (en) * | 2013-08-20 | 2013-12-11 | 南昌大学 | Software frequency spectrum analyzer based on GNU Radio and USRP |
CN104735649A (en) * | 2015-03-25 | 2015-06-24 | 江苏物联网研究发展中心 | Wireless link signature extraction method based on Gnu Radio |
CN104883204A (en) * | 2015-05-26 | 2015-09-02 | 南昌大学 | Short-wave frequency hopping communication system based on general software radio platform |
Non-Patent Citations (3)
Title |
---|
冯准 等: "基于GNSS-SDR低成本GPS软件接收机的涉及与实现", 《信息通信》 * |
张鹏 等: "基于USRP平台的GPS软件接收机涉及与实现", 《测绘通报》 * |
徐亚明 等: "USRP平台下GPS软件接收机高精度定位的实现", 《测绘通报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN108732592B (en) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106646546B (en) | A kind of satellite-signal multidimensional quick capturing method and system | |
CN106772455B (en) | A kind of GNSS anti-spoofing loop tracks methods based on Inertia information auxiliary with parameter Estimation | |
US6483867B1 (en) | Tracking loop realization with adaptive filters | |
CN106291614B (en) | Device for the tracking satellite radio navigation signal in multi-path environment | |
WO2014089988A1 (en) | High-sensitivity beidou auxiliary timing device, timing receiver and timing method | |
CN101132191A (en) | Baseband signal processing method for GNSS receiver | |
CN111090108B (en) | Deception signal generation method and device | |
WO2018149076A1 (en) | Auxiliary navigation and positioning method and system | |
CN104536016A (en) | GNSS new-system signal capturing device and method | |
CN104765052B (en) | GEO navigation satellite high-sensitivity carrier tracking method | |
CN102141774A (en) | Quick time service device and method for Beidou watch | |
CN114095070A (en) | Rocket body information returning device based on Beidou satellite navigation | |
CN106597490A (en) | Method for L1 assisting L2P (Y) of dual-frequency GPS receiver | |
KR101475036B1 (en) | Satellite signal multipass tracking system using mainpeak quality of gps and galileo satellite signal | |
CN111399006B (en) | High-sensitivity GNSS carrier tracking loop optimization method | |
CN104931980B (en) | Carrier phase measurement half cycle obscures release method | |
CN117214926A (en) | Broadband composite navigation signal tracking method | |
CN103760578B (en) | A kind of GNSS satellite navigation signal without fuzzy tracking method | |
CN102176028A (en) | Multipath signal baseband processing method for global navigation satellite system (GNSS) receiver | |
CN105372678B (en) | A kind of sine BOC modulated signal without fuzzy tracking method | |
CN107820212B (en) | Positioning method and positioning terminal realized based on mobile multimedia broadcasting system | |
CN106896383B (en) | A kind of receiver tracking device and the method for realizing receiver tracking | |
CN104614742B (en) | Beidou space-based high-precision differential information receiving implementation method | |
CN105044742B (en) | Baseband processing unit capable of simultaneously receiving pseudo satellite and satellite signal and method thereof | |
CN103941251A (en) | Pseudo-code ranging system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |