Jump to content
Electronics-Lab.com Community

Local Positioning System (I need some help)


Recommended Posts

Long story short, I've been wanting to make a system to locate a 1/28 radio controlled car on my driveway and show its position on a chart/graph in a computer program. Its not really that complicated, but I need some help with the calculations, logic, etc.

At first, I decided I would put IR emmitters on the car and have IR receivers located around the driveway that would measure the strength of the IR signal, and calculate the position based on that using trilateration. I didn't think it would work well enough though, so I decided to change my plan.

Next, I thought I would do the same thing with RF transmitters and receivers, but this time I would place the transmitters around the driveway and have the receivers on the car so that in the future I could add the capability to track more than one car at a time, since each car would calculate its own position based on the strength of the RF signals it would receive from the transmitters located around the driveway.

BTW, I am only trying to calculate a 2d position. Z would always be 0, so there is no need to go for 3d.

I have a few questions, though:
1. Which would be the better way to go, IR or RF?
2. Trilateration uses fixed distances, which I can not provide since I don't have a way to calculate distance. I can only provide the difference between the strengths of the signals. I found something called multilateration. Multilateration uses relative signal strengths, so it should work,

Link to comment
Share on other sites

Hello CPW!

Its not really that complicated

My words: Its tooooooo complicated  ;D

decided I would put IR emmitters on the car and have IR receivers located around the driveway that would measure the strength of the IR signal, and calculate the position based on that using trilateration.




CPW have you considered this idea!

If you can go with RF then use the directional antennas in trilateral configuration. The antennas should receive signal from the car and each should try to track it. Hence from the angle positions of the three you can find the distance/position.
Link to comment
Share on other sites



CPW have you considered this idea!

I'm not sure what you meant, but it seems like you are saying it would be very hard. Can you explain a little more what you mean?

Anyway, thanks for the suggestion, but I really wanted to make it so each car had receivers and calculated its own position. Like I said earlier, then I can track multiple cars at the same time. Do you have any suggestions on how I could do what you said but have the antennas on the car?

Thanks for the help!  ;D
Link to comment
Share on other sites

How about ultrasonic transducers. You can have a couple on the car so you get 360 degree coverage. Place about 4 transducers around you driveway (one in each corner). If you can produce a timed pulse from the car you can measure the time it takes to be received at each of the recievers and be able to calculate the distance from each and the speed of travel.

Link to comment
Share on other sites

How about ultrasonic transducers. You can have a couple on the car so you get 360 degree coverage. Place about 4 transducers around you driveway (one in each corner). If you can produce a timed pulse from the car you can measure the time it takes to be received at each of the recievers and be able to calculate the distance from each and the speed of travel.
That's basically how GPS works, right? (except that its not ultrasonic) The only problem is that I could only track one car at a time. I would really like to make it like GPS, where the signals are sent to the cars, not from them. If its not possible to do it that way, then I guess I'll have to do it the other way. Thanks for the suggestion, we may be able to work it in somehow.
Link to comment
Share on other sites

I would assume you are going to do all this with some PC or micro. If this is the case then you could track as many cars as you would like. You would just have to give each one an ID number and poll the system to check for each car in turn. All this can be done in fractions of seconds.

The other advantage of ultrasonics is it is less suseptible to losing signal if the trancducer get dirty. If you got dirt on an IR diode it would be useless until you removed it.

Link to comment
Share on other sites

That's a good idea. I never thought about that. Maybe I'll try that.

How accurate do you think I could get this positioning system to be? It really needs to be accurate to less than a half of a foot if possible. Do you think I could achieve that?

BTW, I am going to use a PC for this, like you said.

Link to comment
Share on other sites

  • 2 weeks later...

The maximum distance from the car to a receiver would be about 20ft at any given time. So I should be able to achieve the accuracy I'm going for then, right?

I like the idea of using IDs and so that's how I'm going to do it. I have a question, though. How exactly would I assign different cars IDs? What I mean is, how would the cars send out their IDs? If it was part of the ultrasonic signal, how would that work?

Also, can you explain a little more about how I would calculate the distance. You said it would work if I used timed pulses, but what do you mean by that? Wouldn't it have to be measured in nanoseconds to be accurate? Can that be done?

Thanks so much for the help.  :) I'm hoping to start working on this project soon.

Link to comment
Share on other sites

I work with AGV’s a lot. They have many ways of finding themselves and one of them is quite easy to set up.

If you place 2 or 3 beacons around your driveway you can set up a nice system that will be fairly accurate.

The system works like this.
Beacon 1 sends out a 10khz IR signal.
Beacon 1 sends out a 20khz IR signal.
Beacon 1 sends out a 30khz IR signal.
Or any method that you find easy to set up.

On each car there needs to be a rotating mirror
That shines the beacon lights down (up?) onto
A sensor. (Look at an old rotating police lamp to see how)

The sensor is amplified then fed to 3 signal detectors.
(Or more if you need more beacons)

Each one outputs a pulse when it detects its signal.
(A signals Beacon 1)
(B signals Beacon 2)
(C Signals Beacon 3)
Ect.. for more if needed.

The last thing you need is a high speed timer.
The faster you motor spins the faster your timer needs to be.

You will need a sensor on the motor to detect 1 revolution.

When the motor makes contact with the sensor to signal the start of a rotation,
The timer starts.  As the mirror spins, when a signal comes in the value of the timer
Is copied into a register.
When the Motor makes contact with the Shaft sensor again the timer is stopped and copied into a 4th register that is used to calculate the time for 1 full turn (360*)

Then by looking at the 4 registers you now can calculate the angle between the car
And the 3 beacons.  If the Shaft ZERO point is aligned with the axis of the car then
You can say that the signal from Beacon B is 25% of the full time for 1 rev. therefore it is 90 Degrees off center.  Beacon A is 40% of the full time and therefore is 144 degrees off center, and Beacon C is 83% of the full time for 1 rev. therefore it is 298 Degrees off center.  Given these three angular measurements you can calculate the position of the
Car relative to a known stored position (Home base) or in relation to the known positions of the towers.

The process is actually called “Trilateration” .  It is not dependant on the time delays of a signal or a known measurement as much as it is a relative measurement of a known point and the differences.

It’s not super Easy to do, but it is another way to make it work.  This method works best if the car stops and takes a reading once and a while.  While it can work ‘ON THE FLY’ the spinner needs to be very fast and that requires a super fast processor.

-Mike

post-21534-14279143001309_thumb.jpg

Link to comment
Share on other sites

  • 4 months later...

Sorry about reviving such an old topic, but I just became interested in this again and would like to continue working on it.

I find some ultrasonic transducers here: http://www.sparkfun.com/commerce/product_info.php?products_id=253. Will these work? The are just under an inch in diameter, so they are definetely small enough. They are pretty cheap too, so if they will work then I am going to purchase some.

For right now I just want to be able to calculate distance using two circuits. One sends out a signal by ultrasonic means and waits for a response. We'll call this "A". Circuit "B" will wait for a signal and send a response of some kind. When "A" receives a response to its signal, it will calculate the distance based on how long it took to receive a response.

Can some please help me on some very simple circuit designs for this? In circuit "A", all I want to do is send a pulse from a microcontroller to the transducer, and then have the microcontroller wait for the response. In circuit "B", all I need to do is have a microcontroller wait for an ultrasonic signal from circuit "A", and then send a response. It should be very simple. I know how to write the code, I just need to know if there are any other parts I will need to use other than the microcontroller and transducer in each circuit. By the way, I will be using a PIC12F675 in each circuit, since that is all I have right now.

Thanks so much for the help.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
  • Create New...