Post Reply 
Where Am I ?
06-09-2016, 04:45 PM
Post: #1
Where Am I ?
[attachment=3635][attachment=3635]Here is an interesting problem. It may be fairly simple to solve but I am not having any luck with it so far. I am thinking of building a watering robot for my backyard garden. I want the robot to know where it is, so that it can avoid objects and add water to the right locations. I could use GPS but the resolution is just not good enough. I am thinking that if I were to place 3 beacons around the edge of the yard, the robot could be made to scan 360° and measure the angles between the beacons. Angles e,f and g.
By knowing the locations of the beacons (A,B and C), the robot should be able to calculate it's X and Y location from the Origin. The scanner will be able to differentiate between beacon A, B, and C by PWM frequency or Color.

I am sure this is not the only application where you would want to find a location by sighting 3 landmarks with know locations. Perhaps the surveyors do this all the time?

Special bonus brownie points, a hearty handshake, a pat on the back and the warm glow of victory if you can come up with a program to solve it. Say for the WP34S!

Any thoughts?
I welcome your comments.
I did include a diagram that should make the problem clearer.
Shawn


Attached File(s) Thumbnail(s)
   
Find all posts by this user
Quote this message in a reply
06-09-2016, 05:53 PM
Post: #2
RE: Where Am I ?
If my memory serves me well, this is exactly the Pothenot problem.

César - Information must flow.
Find all posts by this user
Quote this message in a reply
06-09-2016, 06:07 PM
Post: #3
RE: Where Am I ?
Alternatively, depending on how you want to make your robot, you COULD use GPS. You just need to use differential GPS. See the wikipedia article on this.

And, if that's still not good enough (i.e. 10 centimeters claimed in the article), you could use interferometric GPS. That would give you one cm or better accuracy - in 3D, not just 2D. This is how much surveying is done nowadays.
Find all posts by this user
Quote this message in a reply
06-09-2016, 08:17 PM
Post: #4
RE: Where Am I ?
(Look out, another reminisce from my Grandpa is coming)

I recall being told of a corn planter he had 'back in the day' that required a knotted wire to be strung across the field and moved every pass the tractor made across the field. As the planter was pulled across the field, the knot would trigger a single kernel to be dispensed in each of the 4 rows simultaneously.

The idea was, with all the corn stalks aligned in rows and their positions along the rows all synchronized, a cultivator could be pulled across the field twice in perpendicular directions to knock out more weeds.

IOW, the planter always 'knew' where it was relative to all the seeds already planted and maintained the alignment all the way across the field.

So, fast forward 70 years or so, and a new generation of engineering is being applied to this interesting challenge and I'm eager to see how this thread develops.

2speed HP41CX,int2XMEM+ZEN, HPIL+DEVEL, HPIL+X/IO, I/R, 82143, 82163, 82162 -25,35,45,55,65,67,70,80
Find all posts by this user
Quote this message in a reply
06-09-2016, 08:45 PM
Post: #5
RE: Where Am I ?
Thanks for the responses so far. I've looked at the algebraic/geometric answer/link that emece67 provided. I think this is what I was really looking for. I am sure I can get from there to an x,y Cartesian Coordinate answer from there. Dave's DGPS would probably be easier, cheaper and less site specific, but now I have this beacon thing stuck in my head.
I know others may have additional input about alternate ways of knowing my location or implementing the solutions already discussed.

Shawn
Find all posts by this user
Quote this message in a reply
06-10-2016, 01:13 AM (This post was last modified: 06-10-2016 01:31 AM by SlideRule.)
Post: #6
RE: Where Am I ?
(06-09-2016 04:45 PM)Shawn Gibson Wrote:  Special bonus brownie points, a hearty handshake, a pat on the back and the warm glow of victory if you can come up with a program to solve it. Say for the WP34S!

Howz abuts the 35s?
see attached Resection program, pg-2; case 1.

BEST!
SlideRule

[attachment=3638]
Find all posts by this user
Quote this message in a reply
06-10-2016, 11:06 AM (This post was last modified: 06-10-2016 01:38 PM by Maximilian Hohmann.)
Post: #7
RE: Where Am I ?
Hello!

With the kind of weather we have had around here during the last weeks and months I certainly don't have the problem of watering our back garden... But if I needed to design such a system, this is how I would do it. Buy two Arduino Nano boards and 4 ultrasonic distance sensors for Arduinos (eg like this one here: https://arduino-info.wikispaces.com/Ultr...nce+Sensor ). Less than 10$/Euros from eBay in China, shipping cost included.

Your fixed system (Arduino number 1 at position A) emits an ultrasonic pulse through emitter number 1 (also at position A) every second. The quartz clock of the Arduino is precise enough for that. Only the transmitters of the ultrasonic devices are required here. Then, in intervals of 1/10 of a second, emitters 1, 2 and 3 (at positions A, B and C) emit one pulse each ("One ping only, Vasili!" as captain Ramius would say.)

The mobile system, your robot, has Ardiuno number 2 connected to ultrasonic transducer number 4. It only uses the receiver part of the ultrasonic device and listens for the pulses coming from transmitters A, B and C. Every second it will get measurements for the time difference between the full-second measurement and the pulses coming from A, B and C with fixed known delays of 1/10 of a second each. The time differences give you the distance between stations A, B and C and your robot. As cheapish as it may seem, these Arduino things can resolve in the sub-centimeter range, with a bit of averaging, the ranging precision will be around 1 miilimeter over a distance of 5-10 metres or so.

The method for getting one's position from the distances to three known points is called trilateration (or multilateration for the more general case). The equations can be found all over the internet under these terms or looking for "hyperbolic naviation", "GPS" (because this is basically how it works) or "DME/DME naviation" (which is what the little aeroplane I fly at work falls back to when it loses the GPS signals). I'm afraid I can't provide a WP34s program (because I have no wp34s and even if, how is your robot supposed to type it's measured values into the calculator?) but I could provide the Arduino code (simple C and/or C++).

Measuring distances with good precision is a lot easier and cheaper than to measure angles. Additionally, it works day and night. If your robot needs to know it's orientation, adding a three-axis magnetic-field-sensor will increase the cost by another Dollar or Euro and should be good for resolving two or three degrees.

Regards
Max

NB: Just looked inside my tinkering box... all the required parts would be there :-)
For this picture I stuck all the required components into a single breadboard, the connections might not be complete.
To the left is the mobile part with microcontroller board (contains voltage regulator 5...20V supply is acceptable and USB connection for programming) ultrasonic receiver and a little LED display to show the position. To the right is the fixed part with controller and three ultrasound transmitters, longer cables would of course be required for stations B and C.

In case you like the DGPS solution, I placed two GPS receiver modules (10..15 $ / Euros each) in front. One would get connected to the fixed station A, the other to the mobile one. One ultrasonic device could then transmit the correction values from station A to the robot. Stations B and C would not be required then, unless as a backup in case of poor GPS reception.

[Image: _1080452_1920px.jpg]
Find all posts by this user
Quote this message in a reply
06-10-2016, 12:43 PM
Post: #8
RE: Where Am I ?
(06-09-2016 06:07 PM)Dave Shaffer Wrote:  And, if that's still not good enough (i.e. 10 centimeters claimed in the article), you could use interferometric GPS. That would give you one cm or better accuracy - in 3D, not just 2D. This is how much surveying is done nowadays.

Differential GPS isn't this accurate. The usual rule of thumb is GPS puts you in a room (10-20m), differential at a desk (1ish meters) and RTK right there (1-2cm).

RTK truly is an amazing piece of mathematics -- finding the diophantine solutions to the simultaneous equations counting the number of wavelengths to each satellite in view and using that to get your position. All this is possible because you've got a base station with an exact known position.


Pauli
Find all posts by this user
Quote this message in a reply
06-10-2016, 02:41 PM
Post: #9
RE: Where Am I ?
Shawn,

Your attached picture could be a model for the overhead camera setup used for video shots in football games. Perhaps some google searching on this topic may yield some help.

As I understand it, 3 winches with wire cable are mounted high in the stadium. The camera operator "flies" the camera to where he wants using an interface that tells the winches how much line each should give so that the camera is in the exact location needed. The math is probably a little more complicated than your application since camera height above the field, the diameter of the spooled cable on the winch drums and cable deflection would have to be accounted for.

Interesting project, I like it.

My solution is a little more low tech: I'm installing a drip irrigation kit for the shrubs next week.

Steve
In order of appearance: HP 41CV, CMT-MCGPS, HP 41CX, DM 41, DM 42
Find all posts by this user
Quote this message in a reply
06-10-2016, 06:16 PM
Post: #10
RE: Where Am I ?
You guys are awesome. Thanks again for the responses. Slide Rule you get the hearty handshake, the pat on the back and the warm glow of victory!. I printed off the HP35 program and I will see if I can get it to work (with modifications) on my WP34S. Thanks
Maximilian, Wow thanks. I am looking at both options you'd presented. I like the DGPS at a fixed station correcting the mobile station. It seems like it would work. Have you tried this before? Paul Dale, First thanks for the work you have done on the WP34S and I too, was finding about 2.5 Meters accuracy. Although for $500 and this link http://store.swiftnav.com/s.nl/it.A/id.4734/.f centimeter accuracy can be had. I am just not ready to spend that kind of money just yet. $500 buys a lot of garden hose. Which is probably the most practical solution as 4ster has pointed out. Thank you for your responses.
Shawn
Find all posts by this user
Quote this message in a reply
06-10-2016, 07:14 PM
Post: #11
RE: Where Am I ?
(06-09-2016 04:45 PM)Shawn Gibson Wrote:  I am thinking of building a watering robot for my backyard garden.

I feel myself like a dumb... Sad I just put some sprinkler into my garden...
But, if your robot will walk in the garden maybe useful if it will be go on an optimised path - I have a short Maple docs about a simple Steiner tree calculation - may it will give you an idea.

Simplest Steiner tree (Hungarian)

Csaba
Find all posts by this user
Quote this message in a reply
06-10-2016, 08:31 PM
Post: #12
RE: Where Am I ?
Csaba,
I will look at your paper. I tried the 1st paragraph or so in google translate and it looked like it did a good job of translating it.
Thanks
Shawn
Find all posts by this user
Quote this message in a reply
06-10-2016, 09:14 PM
Post: #13
RE: Where Am I ?
Pauli - RTK is basically radio interferometry, which is actually pretty straightforward (that's what paid my bills for 30 years as a radio astronomer). I did Very Long Baseline Interferometry, including some 20+ years for various NASA geodesy programs. We can now measure baselines and station locations all over the world with precisions of better than a cm, and approaching one or two mm. If there were no atmosphere, we would be sub-mm instantly on any length baseline.

Shawn - thanks for pointing out the Swift unit. Also, in regards to your original angular measurement idea, did you consider how accurately you need to measure the angles? For high precision, you may need sub-arcminute angular encoders.

And finally - is this a gedanken experiment or do you really need/want one of these?! (As I have learned over the years, "want" and "need" may or may not be the same!)

At any rate, the various schemes that could be applied are interesting to see.
Find all posts by this user
Quote this message in a reply
06-10-2016, 10:06 PM
Post: #14
RE: Where Am I ?
(06-10-2016 08:31 PM)Shawn Gibson Wrote:  Csaba,
I will look at your paper. I tried the 1st paragraph or so in google translate and it looked like it did a good job of translating it.
Thanks
Shawn
It's a classical report-style paper:
"lots of meaningless bla-bla-bla" + "some equation maybe important" + "valuable last figure at the end" Wink
Just look on the last figure of "Steiner-tree" only.

Csaba
Find all posts by this user
Quote this message in a reply
06-13-2016, 06:55 PM
Post: #15
RE: Where Am I ?
Dave, Based on the size of my back yard/garden the angular resolution i would need is sub-Minute. The longest distance between a possible robot location and a stationary beacon is aprox 108 feet. To get a 0.1 foot location resolution from this distance, I would need about 19 seconds of resolution. A further and more practical problem with the beacon idea is that the garden is in raised beds and fully grown plants can get quite tall. I think the plants could easily reach higher than the scanner on the top of the robot.
You were wondering if this was a Gedanken experiment or other. I had to look up Gedanken, and now i've learned an new word. I suppose that it is a thought experiment leading into an actual want type of experiment. Clearly the easy path would be to get some garden hose, sprinklers and timers. If it is do-able, I am going to try the robot approach just to satisfy an itch.

Csaba, I will take another look at the last figure/diagram in the report.

Shawn
Find all posts by this user
Quote this message in a reply
08-25-2017, 06:31 PM
Post: #16
RE: Where Am I ?
An approximate, very simple, derivative-free algorithm to find Steiner trees on TI-83Plus:
Steiner tree with Pattern search algorithm on TI-83Plus.

The solution is only approximate, because all steps are available only -x and -y directions (maybe the algorithm steps over the local extremum).

The circles' diameter is proportional to sum of distances.

Enjoy - and sorry for the music Big Grin
Csaba
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)