Robthebrit
Explorer
Its wrong in lots of ways. I really don’t like to point it out as the guy is well respected but an error is an error. Scott should have people proof read technical articles to ensure they are correct before they are printed; this is how myth becomes fact.
He is geometrically a dimension off and he repeats the common myth that the 4th satellite is for altitude. Below is how it really works, this is straight from the trenches as many years ago I did some contract work for Trimble and have also hacked around with Garmin units a little.
The signal travel time for a single satellite puts you on the surface of a sphere centered on that satellite. A second satellite does the same; the two spheres of possibility will intersect in a plane giving you a circle. The sphere of the third satellite will intersect that circle in two points. If you roughly know where you are you can reject one of the points, it’s probably behind the satellite or its derivative is giving an impossible velocity. The entire above math is calculated in unit-less Earth Centric Coordinates which is based on the center of the earth and is the origin for the satellite orbits. The Datum used on the receiver is the mathematical model used to convert these ECC positions into longitude/latitude based units that we understand, the major correction the model applies is for the none spherical shape of the earth.
What’s the 4th Satellite for, altitude is the obvious answer but that is wrong, the receiver always needs 4 spheres. The 4th satellite is really used to keep time but you happen to get altitude as a bonus. Mathematically there are 4 unknowns so you need 4 satellites to solve it. You need to compute X,Y,Z and Time in ECC coordinates. If there are only 3 satellites the GPS receiver has a trick up its sleeve, it uses a sphere which is centered at the ECC origin (center of the earth) and has a radius based on your last known altitude, if there is no known altitude one is derived from the Datum (if your GPS has a altimeter it will use that). Now it has 4 spheres and 4 unknowns so it can solve the equation but the fake sphere locks you to the surface of the fake sphere and therefore your altitude is not changing, this is what the receiver calls a 2D position. Mathematically this position is no different to any other except you know the solution is on the surface of a sphere.
Each satellite broadcasts a 1Mhz cyclic random stream of bits (0 and 1s), the stream from each satellite is different and known in advance and all the satellites broadcast in sync. The receiver computes its version of this stream based on what it thinks is the current time. Assuming the GPS receiver has the exact time, the shift between the received signal and the generated signal is the travel time in micro-seconds (typically about 50us). If the receiver doesn’t have the correct time the solution is way off and that’s where the 4th satellite comes in. The receiver will adjust its bit pattern and see if it gives a better solution, if it does the receivers time is off and it’s corrected. The best solution is the one that gives the smallest possible triangle and the size of this triangle is the position error. A nide side effect is the receiver ends up with the exact time to within 1us. How fast the solution converges is the Dilution of Precision, better geometry will converge quicker.
In reality it’s more complex than this because the signals might have been slowed down the atmosphere or bounced off buildings etc. Receivers will solve the basic geometry many times with different grouping of 4 satellites and it picks the best solution, a lot of receivers also solve for things like Doppler which requires more satellites to be in view. The final solution is an iterative process and within this process the receiver can remove the signals it thinks are bogus. Even more modern receivers will apply “What if’s” and try to solve the solution by guessing at what happened to the signal.
Because the solution is iterative is why there is a difference between warm and cold starts. If the receiver roughly knows where it is and roughly knows the time it can quickly derive the correct time and compute accurate positions (warm start). If the receiver knows nothing then it’s more complicated. It starts by getting the time from satellites, the time is in every data packet so it easy to obtain. However, the time is when the signal left the satellite so it adds 50 microseconds to it as an estimate of the current time at the receiver; this is accurate enough to start the search and is significantly more accurate than the user entering it. Now the unit literally searches for solutions, it does this by picking points around the earth, say every degree longitude/latitude on the surface of the Datum (the points it picks are in ECC). When it gets a solution that makes sense it tries to converge it by adjusting the time and resolving from another set of satellites to see if it gets a similar answer. There is only one solution it just takes a while to find. The engineers really need to understand how the signals converge to efficiently home on the correct solution. Blindly searching all positions and all altitudes will take hours. Modern receivers are really good at finding the initial solution but a cold start will always be slower than a warm start.
DGPS and WAAS work the equations backwards; they already know exactly where they are so they compute an error. This error is send to the GPS to be factored in. WAAS is clever because it makes a fake GPS signal that by itself is meaningless but when used as one of the 4 spheres you get a more accurate result (WAAS satellite is also geosynchronous so its position is more accurately known by radar monitoring stations on earth). A lot of older receivers were upgraded to WAAS by software; the receiver just needed to look for that extra satellite.
In the last couple of years somebody came up with a method of making standard receivers more accurate than WAAS without using actually it. The random bit stream that each satellite sends is a 1MHz signal that is modulated on a carrier frequency of just over 1GHz. The receiver demodulates the signal and regenerates the raw signal which is a bit stream, when it uses this for synchronization it will be within 1us. Somebody figured out that if the receiver modulated its locally generated bit stream back onto the same 1Ghz carrier the satellite uses, it can phase lock the two analog signals and in theory reduce the synchronization error to within a nano-second and accuracy should be within a few centimeters. These receivers are already on the market but as expensive.
Rob
He is geometrically a dimension off and he repeats the common myth that the 4th satellite is for altitude. Below is how it really works, this is straight from the trenches as many years ago I did some contract work for Trimble and have also hacked around with Garmin units a little.
The signal travel time for a single satellite puts you on the surface of a sphere centered on that satellite. A second satellite does the same; the two spheres of possibility will intersect in a plane giving you a circle. The sphere of the third satellite will intersect that circle in two points. If you roughly know where you are you can reject one of the points, it’s probably behind the satellite or its derivative is giving an impossible velocity. The entire above math is calculated in unit-less Earth Centric Coordinates which is based on the center of the earth and is the origin for the satellite orbits. The Datum used on the receiver is the mathematical model used to convert these ECC positions into longitude/latitude based units that we understand, the major correction the model applies is for the none spherical shape of the earth.
What’s the 4th Satellite for, altitude is the obvious answer but that is wrong, the receiver always needs 4 spheres. The 4th satellite is really used to keep time but you happen to get altitude as a bonus. Mathematically there are 4 unknowns so you need 4 satellites to solve it. You need to compute X,Y,Z and Time in ECC coordinates. If there are only 3 satellites the GPS receiver has a trick up its sleeve, it uses a sphere which is centered at the ECC origin (center of the earth) and has a radius based on your last known altitude, if there is no known altitude one is derived from the Datum (if your GPS has a altimeter it will use that). Now it has 4 spheres and 4 unknowns so it can solve the equation but the fake sphere locks you to the surface of the fake sphere and therefore your altitude is not changing, this is what the receiver calls a 2D position. Mathematically this position is no different to any other except you know the solution is on the surface of a sphere.
Each satellite broadcasts a 1Mhz cyclic random stream of bits (0 and 1s), the stream from each satellite is different and known in advance and all the satellites broadcast in sync. The receiver computes its version of this stream based on what it thinks is the current time. Assuming the GPS receiver has the exact time, the shift between the received signal and the generated signal is the travel time in micro-seconds (typically about 50us). If the receiver doesn’t have the correct time the solution is way off and that’s where the 4th satellite comes in. The receiver will adjust its bit pattern and see if it gives a better solution, if it does the receivers time is off and it’s corrected. The best solution is the one that gives the smallest possible triangle and the size of this triangle is the position error. A nide side effect is the receiver ends up with the exact time to within 1us. How fast the solution converges is the Dilution of Precision, better geometry will converge quicker.
In reality it’s more complex than this because the signals might have been slowed down the atmosphere or bounced off buildings etc. Receivers will solve the basic geometry many times with different grouping of 4 satellites and it picks the best solution, a lot of receivers also solve for things like Doppler which requires more satellites to be in view. The final solution is an iterative process and within this process the receiver can remove the signals it thinks are bogus. Even more modern receivers will apply “What if’s” and try to solve the solution by guessing at what happened to the signal.
Because the solution is iterative is why there is a difference between warm and cold starts. If the receiver roughly knows where it is and roughly knows the time it can quickly derive the correct time and compute accurate positions (warm start). If the receiver knows nothing then it’s more complicated. It starts by getting the time from satellites, the time is in every data packet so it easy to obtain. However, the time is when the signal left the satellite so it adds 50 microseconds to it as an estimate of the current time at the receiver; this is accurate enough to start the search and is significantly more accurate than the user entering it. Now the unit literally searches for solutions, it does this by picking points around the earth, say every degree longitude/latitude on the surface of the Datum (the points it picks are in ECC). When it gets a solution that makes sense it tries to converge it by adjusting the time and resolving from another set of satellites to see if it gets a similar answer. There is only one solution it just takes a while to find. The engineers really need to understand how the signals converge to efficiently home on the correct solution. Blindly searching all positions and all altitudes will take hours. Modern receivers are really good at finding the initial solution but a cold start will always be slower than a warm start.
DGPS and WAAS work the equations backwards; they already know exactly where they are so they compute an error. This error is send to the GPS to be factored in. WAAS is clever because it makes a fake GPS signal that by itself is meaningless but when used as one of the 4 spheres you get a more accurate result (WAAS satellite is also geosynchronous so its position is more accurately known by radar monitoring stations on earth). A lot of older receivers were upgraded to WAAS by software; the receiver just needed to look for that extra satellite.
In the last couple of years somebody came up with a method of making standard receivers more accurate than WAAS without using actually it. The random bit stream that each satellite sends is a 1MHz signal that is modulated on a carrier frequency of just over 1GHz. The receiver demodulates the signal and regenerates the raw signal which is a bit stream, when it uses this for synchronization it will be within 1us. Somebody figured out that if the receiver modulated its locally generated bit stream back onto the same 1Ghz carrier the satellite uses, it can phase lock the two analog signals and in theory reduce the synchronization error to within a nano-second and accuracy should be within a few centimeters. These receivers are already on the market but as expensive.
Rob