IP Library Granted Patent US 8,040,276
Granted Patent B2
US 8,040,276 · App. 12/434,769 · Granted Oct 18, 2011

Generation of multi-satellite GPS signals in software

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,040,276
App. No.
12/434,769
Granted
Oct 18, 2011
Kind
B2
Abstract

A method for testing GPS receivers may read GPS files with data for a plurality of GPS satellites, and two or more GPS satellites may be selected from that data. The method may receive parameters for a GPS receiver to be tested. The method may generate two or more GPS signals for the two or more selected GPS satellites. The method may operate on the two or more GPS signals using the received parameters for the GPS receiver to generate two or more calculated GPS signals. These two or more calculated GPS signals may be re-sampled to a common rate. The two or more re-sampled GPS signals may be added together to create a composite GPS signal. The composite GPS signal may be generated using a hardware signal generator, where the composite GPS signal used to test the GPS receiver.

Claims (93)

1. A computer-implemented method for testing a GPS receiver, the method comprising:

reading one or more GPS files from a computer memory, wherein each of the one or more GPS files contains data for a plurality of GPS satellites;

receiving parameters for a GPS receiver;

selecting two or more GPS satellites out of the plurality of GPS satellites;

generating two or more GPS signals for the two or more GPS satellites, wherein each of the two or more GPS signals contains data for a respective GPS satellite of the two or more selected GPS satellites;

operating on the two or more GPS signals using the received parameters for the GPS receiver to generate two or more calculated GPS signals;

re-sampling each of the two or more calculated GPS signals to a common rate, wherein said re-sampling each of the calculated two or more GPS signals to the common rate comprises aligning each of the calculated two or more GPS signals to the common rate;

adding the two or more re-sampled GPS signals together to create a composite GPS signal;

generating the composite GPS signal using a hardware signal generator, wherein the composite GPS signal is operable to test the GPS receiver; and

repeating said re-sampling, adding, and generating the composite GPS signal multiple times in an iterative manner to test the GPS receiver.

2. The method of claim 1 , further comprising:

receiving user input specifying one or more conditions for the one or more GPS signals, wherein the one or more conditions comprise at least one of:

power level for the one or more GPS satellites;

initial Doppler level;

initial pseudorange;

urban canyon effects;

atmospheric parameters;

solar activity; or

weather.

3. The method of claim 1 ,

wherein said selecting the two or more GPS satellites receiving additional user input selecting the two or more GPS satellites.

4. The method of claim 1 ,

wherein said selecting the two or more GPS satellites comprises automatically selecting the two or more GPS satellites.

5. The method of claim 1 ,

wherein the parameters of the GPS receiver comprise one or more of:

location of the GPS receiver; or

movement characteristics of the GPS receiver.

6. The method of claim 1 , wherein said operating comprises one or more of:

calculating an offset for a carrier frequency for each of the two or more GPS signals;

calculating a rate change due to a Doppler shift for each of the two or more GPS signals; or

scaling an amplitude of each of the two or more GPS signals.

7. The method of claim 1 ,

wherein said selecting the two or more satellites comprises selecting using one or more factors, wherein the one or more factors include at least one of:

a pseudorandom check;

a Doppler frequency check;

a satellite elevation check;

a satellite health check; or

a fit interval check.

8. The method of claim 1 , wherein said calculating comprises calculating one or more of:

delay for each of the one or more GPS signals;

doppler shift;

doppler spreading;

clock bias;

clock drift; or

power attenuation.

9. The method of claim 1 , further comprising:

reading test results back from the GPS receiver; and

displaying the test results.

10. The method of claim 1 , further comprising:

executing a graphical program, wherein the graphical program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical program;

wherein the graphical program is executable to perform to said operating.

11. The method of claim 10 , further comprising:

creating the graphical program, wherein said creating the graphical program comprises:

arranging a plurality of nodes on a display; and

interconnecting the plurality of nodes in response to user input.

12. The method of claim 10 ,

wherein the graphical program comprises a block diagram portion and a user interface portion.

13. The method of claim 10 ,

wherein the graphical program comprises a graphical data flow program.

14. The method of claim 10 ,

wherein, during execution of the graphical program, the graphical user interface is displayed on a display of a first computer system and the block diagram executes on a second computer system.

15. The method of claim 10 , further comprising:

reading test results back from the GPS receiver; and

displaying the test results in the graphical user interface.

16. A non-transitory computer accessible memory medium which stores program instructions for simulating GPS signals to test a GPS receiver, wherein the program instructions are executable by a processor to perform:

reading one or more GPS files, wherein each of the one or more GPS files contains data for a plurality of GPS satellites;

receiving parameters for the GPS receiver;

selecting two or more GPS satellites out of the plurality of GPS satellites;

generating two or more GPS signals for the two or more GPS satellites, wherein each of the two or more GPS signals contains data for a respective GPS satellite of the two or more selected GPS satellites;

operating on the two or more GPS signals using the received parameters for the GPS receiver to generate two or more calculated GPS signals;

re-sampling each of the two or more calculated GPS signals to a common rate, wherein said re-sampling each of the calculated two or more GPS signals to the common rate comprises aligning each of the calculated two or more GPS signals to the common rate;

adding the two or more re-sampled GPS signals together to create a composite GPS signal, wherein the composite GPS signal is operable to be generated using a hardware signal generator, wherein the composite GPS signal is operable to test the GPS receiver; and

repeating said re-sampling, adding, and generating the composite GPS signal multiple times in an iterative manner to test the GPS receiver.

17. The non-transitory memory medium of claim 16 , wherein the program instructions are executable by a processor to further perform:

executing a graphical program, wherein the graphical program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical program;

wherein the graphical program is executable to perform to said operating.

18. The non-transitory memory medium of claim 17 , wherein the program instructions are executable by a processor to further perform:

reading test results back from the GPS receiver; and

displaying the test results in the graphical user interface.

19. A system for testing a GPS receiver, the system comprising:

a processor;

a memory medium coupled to the processor;

a hardware RF generator coupled to a GPS receiver;

wherein the memory medium stores program instructions which are executable by the processor to:

read one or more GPS files, wherein each of the one or more GPS files contains data for a plurality of GPS satellites;

receive parameters for a GPS receiver;

select two or more GPS satellites out of the plurality of GPS satellites;

generate two or more GPS signals for the two or more GPS satellites, wherein each of the two or more GPS signals contains data for a respective GPS satellite of the two or more selected GPS satellites;

operate on the two or more GPS signals using the received parameters for the GPS receiver to generate two or more calculated GPS signals;

re-sample each of the two or more calculated GPS signals to a common rate, wherein said re-sampling each of the calculated two or more GPS signals to the common rate comprises aligning each of the calculated two or more GPS signals to the common rate; and

add the two or more re-sampled GPS signals together to create a composite GPS signal;

repeat said re-sampling and adding the composite GPS signal multiple times in an iterative manner;

wherein the hardware RF generator is configured to generate the composite GPS signal for each iteration, wherein the composite GPS signal is used to test the GPS receiver.

Assignments (4)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →