Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Cheap Centimeter-Precision GPS for Cars, Drones, Virtual Reality (ieee.org)
78 points by jonbaer on May 7, 2015 | hide | past | favorite | 25 comments


In 1999, prototype self-steering ag equipment could get the angle of the working implement (bulldozer blade) by having GPS antennae on the perimeter of the vehicle. The lack of OpenCV and such made full-automation imposisble without a driver in the cab at the time. But, a collision avoidance system that could handle autonomous AND piloted rigs together was already in an advanced prototype stage ( basically, an automated "aircraft" controller that would say to the driver "wait", "accelerate" or "turn")

Backgrounder on GPS tech at the time: accuracy was ~10 mm in the horizontal, ~1 m in the vertical when differential GPS was used. Differential GPS means a well-known, fixed base station (WAAS or your own) provides error-correcting deltas over a packet radio link. (This would also eliminate any SA injected error, so SA was pointless to all but stand-alone receivers.) TRMB's differential GPS was called "kinematic" because the differential calculations would be valid while receivers were in motion, whereas most others at the time would only be sufficiently accurate when base and receivers were stationary. Their receivers were extra accurate because of the, at the time, expensive pseudo-wavelength + relativistic measuring of the receiver-satellite distance.

With tech advances and scale, it makes sense that such tech becomes widely available.

(TRMB's founders designed GPS)


Hmm, so are they using laser transits as the input to adjust implement height when leveling fields? I always assumed it was dGPS, but 1m in the vertical isn't nearly enough.

Robots have been (helping) grow our food for quite a while now and we just don't think of it that way.


RTK GPS is quite common for levelling applications. It's closer to 25mm in the vertical when a local (~10km) base station is used. Lasers are used but have line-of-sight and atmospheric distortion issues.

This [1] is a good overview of how RTK works.

[1] http://www.novatel.com/an-introduction-to-gnss/chapter-4-adv...


Yes, lasers. Even with the higher accuracy and more expensive real time dGPS systems the vertical accuracy isn't as good as horizontal. When you're looking for a very shallow gradient in a field for irrigation GPS just isn't as good as a laser level.

Much of the problem is geometry, while you're likely to have a good spread of satellites around your receiver horizontally they're all on one side of the vertical solution your receiver is calculating.


3 sats are needed for a two point fix, 4 for a one point fix, and 5+ help with accuracy if they're not clumped near each other (the constellation's always moving). At higher altitudes such as in a plane at FL 350 with sats below the receiver, vertical accuracy increases some compared to ground, which makes these obvious: http://www.gps.gov/applications/space/


Initially I was excited, because by coincidence I have to work on the exact same problem. Enhancing the precision, to enable gesture recognition without having to carry a device. My plan was to use WiFi and rebuild this project: http://www.washington.edu/news/2013/06/04/wi-fi-signals-enab...

We have built an Indoor-Navigation-System with a POI-Editor for OSM and Route-Planning algorithms and more.

The article is disappointing, because it doesn't tell much more than you already know by reading the title. Here's the original article: https://wncg.org/research/briefs/centimeter-accurate-low-pow...

Then there is also an even greater TED Talk by Todd Humphrey: http://www.ted.com/talks/todd_humphreys_how_to_fool_a_gps

You can find more about their plans for the VR-Application here: http://radionavlab.ae.utexas.edu/videos/280-precise-augmente...


C/DGPS has been around a long time. The US Coast Guard has DGPS transmitters all around the US and you can use it anytime with off the shelf receivers.

The main issue is getting the hardware into consumer devices - and as the team has said before it's going to take consumers demanding high precision geolocation before that happens. I think the state of mobile geolocation for 99% of users is "good enough" for them not to care about cm precision stuff.

My hope is that some of the new AR software coming to mobile (including our own) will drive consumers to want higher precision location.

edit: I should take note that I don't think high precision GPS will actually be the way AR wins - in fact I am almost 100% certain it isn't. The way mobile AR/VR wins is with large scale monocular SLAM, which is what our lab has implemented and is expanding on today.


High precision GPS will be really helpful for SLAM, though, because when you know where you are, you have much fewer features to sift through (pun intended).


I agree generally, especially if you are exterior but it fails completely with overhang or poor overhead coverage. Better to have a system that can do everything without the third reference as it will be less cumbersome.

The other thing is that a CDGPS doesn't initiate with high precision like a camera does so you will always have (arguably) a higher amount of correction you need to apply manually if you initiate from that reference as opposed to with visual odometry.


Piksi GPS (http://www.swiftnav.com/piksi.html) and the more recently Reach GPS (https://www.indiegogo.com/projects/reach-first-affordable-rt...) do offer this kind of functionality, but it is still tough to do, so props to the Texas team for democratizing $10,000 technology.

However, I wish some of these guys would show us the initialization procedures. In my experience trying to get an RTK level solution with an L1 only GPS receiver (read: cheap) is impractically hard. Then once you have it, you can lose it with the slightest change in the number of satellites available (i.e. if you go under a tree or next to a building). However, my experience is now over 3-4 years old, maybe we've come a long way.


I've been wondering how hard it would be to do "poor-man's-fixed-point-gps" with two android devices. Put the devices on top of each other on the ground. This is your fixed point (wathever gps reading their each have, is "local zero").

Now pick one up. The one on the ground is your fixed point, the other unit is what you use for measuring. I wonder if doing it like that (possibly with two or three "anchors") -- would give increased precision? I haven't really looked in to what makes cheap gps "unreliable".

The units could communicate via bluetooth/mesh wifi for low latency, or over the internet (wifi/gprs/4g/dial-up...) -- if one just needed "point-to-point" measurements. Eg measuring a foundation or something related for construction.

I wonder if it would be "repeatable" (possibly only with the same units). And if one might get cm precision that way.

[ed: Not sure which part is "hard". Maybe (just for science experiment fun) one could drop a phone at one end of a 100m running track, an another at the other end - to get an exact 100m baseline (+/- 10cm?). I wonder if that might be useful in order to calibrate two or more units to work in pairs -- if there is some kind of predicable source of error in addition to just gps/signal noise etc].


There are a bunch of factors. There are both correlated and uncorrelated errors that you need to correct. The main source of correlated error is ionospheric distortion, which will affect the two units mostly equally. At the low end (cheap cell phone GPS receivers), the measurement errors unique to each device will tend to dominate.

If you wanted to experiment, there's no need to do it online. If you log the output of the two receivers you can align the timestamps and try different ways of post-processing.


You have to be able to see the sky, and at least five satellites, to get that level of precision. Note that they test it on a rooftop.

Indoors, you'll need some local reference.


See also Piksi - "Low-cost RTK GPS receiver (centimeter level precision) with open source software and board design targeted at UAVs."

https://www.kickstarter.com/projects/swiftnav/piksi-the-rtk-...

http://gpsworld.com/what-happened-to-piksi-the-995-rtk-gnss-...


Also Reach, newer project with more features and half the price. Runs RTKLIB open-source software. https://www.indiegogo.com/projects/reach-first-affordable-rt...


What I find astonishing is that a satellite can be positioned to the centimeter.


Indeed, yes, it's astonishing. 5cm, for an object 20'000 km above ground.

http://ccar.colorado.edu/asen5050/projects/projects_2008/xia...

The satellite position and clock correction are similar in scale as shown in figure 1 and 3. However, as described in previous sections, the accuracy of the satellite position calculated from broadcast ephemeris is about 160 cm and 5cm for the precise ephemeris.


I don't think the initial positioning of satellites matter, I'd doubt they're carried with centimeter accuracy. What you need is to get very precise measurements of relative positions once you're in orbit. Then you get much more space for small errors in the original placement.


I've looked at this recently and just created a hn account to respond. GPS satellites broadcast their position by transmitting ephemeris parameters. You can compare the accuracy of these parameters with post-processed, high accuracy orbits from igs.org. For the last few months, the real-time ephemeris has had an RMS error of about 0.5 meters (95 percentile is about 1.3 meters). (This is the range error, which includes both satellite position error and satellite clock error)

Of course, these errors cancel out if you're doing differential GPS techniques. (Where all that matters is accuracy relative to the base station)

One thing that would be nice is to access IGS's real-time streaming orbit data over the internet and have the phone's GNSS chipset use that instead of the broadcast ephemeris. However, you might still want dGPS for single frequency receivers to help with ionospheric error.


Welcome. HN is a good place.


My bet is that they position the satellite in a stable orbit, or in an orbit for which they know the rate of drift. Then the satellite can adjust the position it emits to account for its variation in movement.

Then the question becomes, how to know exactly where a satellite is with precision. This can be done from a few fixed point on Earth with high accuracy, I guess using a technique like described here (using reflectors and the speed of light): https://youtu.be/dsRsap2_RAc?t=3m37s


I wish we would be leveraging more of the public RTK stations out there. at the very least, we would be able to get higher horizontal and vertical accuracy

http://gpsworld.com/finally-a-list-of-public-rtk-base-statio...


I read the title and assumed it would be some sort of sensor fusion with accelerometers. Anyone know what kind of price/accuracy you get with that? My experience says a good 9-axis IMU costs $1000 which is a lot more than they're aiming for, but for differential movement it seems to come down more to a high-frequency hardware integrator. I've seen some compelling things just using cellphone hardware.


I've delved into this question some time ago and it's hard to make it work. First of all, the IMU measures the second derivative of your position/orientation, so you get double integration error, which blows up really quickly. Second, since it is completely relative, your accuracy is only as good as the best static accuracy of your GPS. So the conclusion is it's usefulness would be limited to filling in gaps in the GPS while at movement, decreasing latency, and improving velocity measurement; nice, but not game changing. Lastly, I believe the greatest problem is the diversity of IMUs out there: you need a lot of consistency out of the IMU to get anything done at all (this may be solvable if you settle on a single manufacturer).

Lately I've put more faith in using cameras to get good positioning everywhere (as good as you can get your GPS accuracy, it's not going to work under a canopy or inside a building, and because of double drift IMU's just cannot solve it either for more than a short time span).


What's the strain on the device itself for something this accurate? What kind of impact would it have on battery life? Even if it was a buck for the chip, what other factors, e.g. processing power, would limit its applications in consumer-grade electronics?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: