How do you make sure that the autonomous truck you’re building arrives where it’s supposed to? Or ensure that your autonomous robotaxi goes past lampposts instead of through them?
The answer, of course, is that you build a navigation engine that lets the vehicle process geospatial data that tells it exactly where it, and other things, are on the earth. To make a navigation engine that can operate successfully anywhere on the earth (or at the very least in the areas you’d like to sell your autonomous platform), there are lots of variables and challenges to account for.
In this article, we’re going to focus on the challenges presented by the shape of the earth.
What do I need to consider?
In summary, the key things you need to be aware of are:
- There are different systems for describing the shape of the earth.
- There are different models that use those systems to map out parts of, or the whole, earth.
- Not all of the hardware in your autonomous platform will use the same systems, or models.
If your navigation engine doesn’t account for these things, then you run the risk of your platform not going where it’s meant to. Which could be difference between a passenger being successfully transported where they are going, and your robotaxi making dents in the road furniture unless it’s operating on your test track.
To help you understand why this all matters, let’s start with the shape of the earth.
The earth is not a sphere
There’s a great factoid running around the internet somewhere about how, despite how bumpy the earth is, it’s still smoother than a billiard ball would be if it was the size of the earth. And, despite the fact that nobody plays billiards any more, you could be forgiven for thinking that this means the earth is relatively smooth. Unfortunately, when it comes to surveying the earth so that you can make a map an autonomous platform can use to navigate, the analogy falls down like a pool cue leant up on the side of a pool table.
Firstly, the earth is not a perfect sphere, but an ellipsoid – a very bumpy one. In geodetic terms, the closest we get to mapping the actual surface of the earth a shape known as the geoid – a theoretical shape based on the mean sea level (if the sea ran under the land). But even that is too complex for mapping purposes. When scientists first started trying to create a global coordinate system for the earth, they quickly realised that they would need to create a theoretical ellipsoid that was flat as a starting point. Over time, multiple ellipsoids came into being.
Why is there more than one ellipsoid?
The aim of any geodetic ellipsoid is to be as close to the geoid as possible – but it’s not quite that simple. There are a few different reasons why we have multiple ellipsoids in use at the same time:
- Some ellipsoids are designed to be a best fit for the whole geoid. Currently, the two most popular global ellipsoids are WGS84 (World Geodetic System 84) and GRS80 (Geodetic Reference System 1980). They give you the best results if you’re trying to map large parts of the planet, or all of it.
- Some ellipsoids give a best fit for a specific part of the geoid (such as a country), making them more accurate in those areas than a global ellipsoid but less accurate anywhere else. For instance, in the UK we use the Airy 1830 ellipsoid (this OS article shows you how Airy 1830 gets you closer to the geoid than GRS80).
- Ellipsoids are occasionally updated when technological advances enable us to recalculate the ellipsoid to get closer to the geoid (or if the geoid changes, such as due to tectonic activity)
So, what’s a datum?
A datum is a key part of a geographic coordinate system. Think of it this way:
- The geographic coordinate system tells you how to describe the location of something on the earth.
- The datum gives you a fixed point on the earth from which you can build your coordinate system.
There are two different kinds of datums – horizontal and vertical.
Horizontal datums tie your latitude and longitude to the real world. They’re based on specific ellipsoids – and, as with ellipsoids, there are global horizontal datums that are designed to give the best overall accuracy across the globe, and local datums that are designed to give best accuracy in a specific area.
However, a local datum isn’t always created from a local ellipsoid. In Britain, we use the OSGB36 datum, which is based on the Airy 1830 local ellipsoid, but in North American they use NAD 83, which is based on the GRS80 global ellipsoid. Datums are also updated periodically, accounting for tectonic shift or technological improvements (or sometimes based on a new ellipsoid that fits better). Local datums could also be updated due to tectonic activity – the JGD2011 datum used in Japan, for instance, was created to replace JGD2000 in the wake of the Tohoku earthquake, which affected the local geology enough to make JGD2000 unreliable for precision measurements.
Vertical datums fix the height of your coordinate system to the real world. Some systems use the surface of an ellipsoid as the vertical datum (notably WGS84), but most others use a specific point where the sea level is equal to the average sea level (and so closest to the geoid). Vertical datums are arguably not as important for land-based autonomous vehicles – but for aquatic or airborne craft, they are of course hugely relevant.
Why does all this matter?
You’ll have realised that, because there are a bunch of different datums out there based on different ellipsoids, three things are true:
- A set of coordinates can refer to multiple locations, depending on which datum you are using.
- A single location can have different coordinates in different datums.
- That location can also be at different heights, depending on whether you’re measuring height from sea level/the geoid, or from the surface of your ellipsoid.
Often, the differences in distance aren’t that great (the difference between WGS84 and ITRF, for instance, is generally less than 10mm). However, they can be massive. For instance, in Australia the most current datum, GDA94, and its predecessor AGD84 differ by more than 200m in some places. To make matters worse, there is an older version called ADG66 – and data from all three is still in use in various places in Australia. In large countries such as Australia and the US, different states use different datums – so crossing state lines adds another layer of complexity to your mapping.
Datum issues can have two major consequences for your autonomous vehicle (three if you’re building a drone or a submarine):
- Objects aren’t where your vehicle thinks they are, meaning that it doesn’t go where it needs to, or it crashes into things that it doesn’t believe should be there.
- For a vehicle where height is relevant, your vehicle might estimate its height wrong – which could lead to it crashing into the ground, trying to land in mid-air (spoiler alert: that will also end up with it crashing into the ground), or thinking it’s on the surface of the water when it is still underwater (or vice versa).
- Your vehicle will find it almost impossible to convert the distance it’s travelled into lat/lon coordinates.
That third point is important because your IMU will be outputting data in metres, while your GNSS receiver will be giving you lat/lon coordinates – and your Kalman filter will be trying to evaluate the accuracy of your data. You have to ensure that your navigation engine can correctly scale up movement in metres to movement in lat/lon coordinates, otherwise your Kalman filter will start to reject at least one set of measurements as inaccurate, hamstringing your platform. On top of that, you have to remember that, the closer to the poles you go, the smaller your coordinate grid gets – so you don’t have to travel as many metres to change lat/lon coordinates. This is vital if you want your autonomous vehicle to perform properly anywhere other than your test track. And the amount by which that movement changes will vary depending on which datum you use, because each datum’s grid is aligned slightly differently.
The OxTS approach
We’ve built our INS devices to handle datum issues with as little fuss as possible. All OxTS inertial navigation systems can output position data in real time using the following datums:
If you need to use other datums for your work, users of our post-processing software, OxTS Georeferencer, can transform from data in any of these datums to any of the major datums used globally.
Hopefully, this article has given you an idea of how the shape of the earth impacts the way autonomous platforms have to be built. This article is, of course, only a starting point – if you want to learn more, you can check out the reference articles we’ve linked at the bottom, as well as other topics. And, of course, if you have a specific question about your automation project, our team would love to hear it and help – just click here to get in touch.