Pages: [1]   Go Down
Author Topic: Autonomous Lawn Mower Navigation  (Read 3376 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

My group is trying to navigate a lawn mower in an open field using one of two methods.

Having two GPS units and using what we are referring to as relative GPS:
Essentially we have one stationary GPS that assumes the first point it reads is the point it is at and all other data it receives has error in it. It calculates this error and sends it over to the "rover" so that it may calculate what the error is and subtract it from its own coordinates. We are assuming since the units will be in a 30 m radius the errors received by both GPS will be similar. Is this a correct assumption. Is there a way to get <1m accuracy using 2 GPS units?

The second method is using an accelerometer, gyroscope, and single GPS combined with a Kalman filter.
While there is information on combining the accelerometer and gyroscope, I'm not sure how to begin filtering the the GPS into this system.

Any advice is appreciated on how to waypoint navigate our lawn mower with a minimum of 1m of accuracy.
Logged

Offline Offline
Edison Member
*
Karma: 58
Posts: 2078
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You need marks in the ground to get 1 meter accuracy, or perhaps a IR detection system or a laser beam.

If you are going to use an accelerometer and gyro, perhaps you could add a magnetometer.
Logged

Massachusetts, USA
Offline Offline
Tesla Member
***
Karma: 208
Posts: 8858
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I have read that if you do the Differential / Real-Time Kinematic GPS right you should get accuracy of a few centimeters.  I would think that is more than sufficient.
Logged

Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

Dubuque, Iowa, USA
Offline Offline
Faraday Member
**
Karma: 47
Posts: 2520
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Essentially we have one stationary GPS that assumes the first point it reads is the point it is at and all other data it receives has error in it. It calculates this error and sends it over to the "rover" so that it may calculate what the error is and subtract it from its own coordinates.

After you try this please come back and tell us how well it worked. I'd considered trying it out myself but ... too many projects.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

So far it seems that the errors that each GPS gets are independent of each other. At about a foot apart our Due calculates the approximate distance between the two is anywhere between 9m and 90m which makes no sense. Worse case scenario is that they should read about 20m apart assuming each GPS has 10m accuracy and each is assumed to be right next to each other at first reading then eventually drifts to the farthest part away of its accuracy.
Logged

Massachusetts, USA
Offline Offline
Tesla Member
***
Karma: 208
Posts: 8858
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The first locations from a GPS might not be as precise as subsequent fixes.  They often give you a less accurate answer in order to give you a fast answer. 

What I think I would do is send the base station location to the mobile station and give an indication when the two agree within some reasonable margin (like 100 cm). Then switch to Differential GPS. 

A possible alternative is to get accuracy data from the base station GPS itself. Then you can throw out data until accuracy gets into the expected range.
Logged

Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

After being outside a while the readings went from about 9m to 0m when they were about 1m apart. I think it's safe to assume the two GPS receive different errors therefore making the an infeasible solution. You keep mentioning differential GPS but I don't know how that would work, is it significantly different than what I am trying to do?
Logged

Massachusetts, USA
Offline Offline
Tesla Member
***
Karma: 208
Posts: 8858
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You keep mentioning differential GPS but I don't know how that would work, is it significantly different than what I am trying to do?

Not if you are doing it right. "Differential GPS" uses a fixed ground station to provide error data to moving stations.

Are your two GPS modules the same make, model, and version?
Logged

Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Yes exactly the same. How long does a base station need to gather data before it has a known location?
Logged

USA
Offline Offline
Jr. Member
**
Karma: 4
Posts: 92
If you can't fix it with a hammer, it must be an electrical problem.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Don't you need a surveyed point for the GPS to compare with to do differential?
Logged


Massachusetts, USA
Offline Offline
Tesla Member
***
Karma: 208
Posts: 8858
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Don't you need a surveyed point for the GPS to compare with to do differential?
You should only need a surveyed position if you want absolute coordinates. If you just want relative coordinates ("Where am I relative to the lawn boundary?") I think you just need a fixed location that both agree on. I would think that once both units have current ephemeris data they would agree on where they are.

If the base station is going to be in the same place each time you could calculate a long-term median position to use as the 'known' position.
Logged

Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

johnwasser,

could you give a short explanation of the process you are describing.

Do we put the GPS units in the same location until they agree on a coordinate then start doing calculations? Or are we surveying for a set time until they have a good average location and then doing locations. Things are clearing up and we are doing a test today. Your advice is very helpful.
Logged

Massachusetts, USA
Offline Offline
Tesla Member
***
Karma: 208
Posts: 8858
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

RTK (Realtime Kinematics) is another way to get accurate positioning from a GPS.  It takes more computer power than an Arduino can supply but a Beagle Board (or maybe a Raspberry Pi) can run it:

http://blog.makezine.com/2009/11/12/diy-real-time-kinematic-gps/
Logged

Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

Offline Offline
Faraday Member
**
Karma: 62
Posts: 3031
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I don't think you can do "differential GPS"  just with two regular GPS modules.    You need a special device
which is in the thousand dollar ballpark  rather than the $50 ballpark.

I have done a bunch of experiments with two regular GPS modules to see if I got a more precise location
from them,  and the answer seems to me, to be no.   You do get some situations where one has a fix
and the other doesn't have a fix,   but in terms of precision,  not much improvement over the normal
position distribution noise.
Logged

Texas
Offline Offline
Jr. Member
**
Karma: 1
Posts: 97
Eso es lo que es
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Perhaps you could use one of these to cover the differential aspect.

https://www.sparkfun.com/products/10724

I would imagine with some basic calculus programming you could at least know fairly accurately your relationship
with your starting point or any other via you have exact coordinates of.

I read quite extensively about this IMU until I realized the accelerometer wasn't accurate enough for my project.  Seems like a pretty good product.
Logged

Pages: [1]   Go Up
Jump to: