Society of Robots - Robot Forum

Electronics => Electronics => Topic started by: airman00 on August 11, 2007, 07:34:06 PM

Title: Track a person
Post by: airman00 on August 11, 2007, 07:34:06 PM
I need my robot to go to a person so I thought of using this:http://www.toysrus.com/product/index.jsp?productId=2318153&cp=&view=all&f=Taxonomy%2FTRUS%2F2254197&sr=1&origkw=spy&kw=spy&parentPage=search (http://www.toysrus.com/product/index.jsp?productId=2318153&cp=&view=all&f=Taxonomy%2FTRUS%2F2254197&sr=1&origkw=spy&kw=spy&parentPage=search)
A bug put in a persons pocket transmits an RF signal and the receiver is able to visually show, using LEDs, the distance from the object. This is obviously not accurate for ranging but I think it would be good for a robot to know when it is too far from its master.( and to then act appropriately by moving) I was checking online for about a half hour now and I cannot find anyone who has hacked this tracker. I also cannot even find the circuit for the tracker itself. :'(

Does anyone know of a product that does the same thing as this tracker and  is cheaper?? Or better yet has anyone taken a different approach to a robot finding it's master?



P.S. If not, I will buy the tracker from toys r us and post the circuit on the forum.   :P
Title: Re: Track a person
Post by: Admin on August 12, 2007, 09:26:35 AM
Hmmm I havent seen this toy in like 15 years . . .

The problem you will have with it is that it might give a rough range, but gives no direction at all.

If you were going to hack it, just break it up and start measureing pins with a multimeter. You will find a few pins that change with the distance between both devices.

Just connect those pins to your microcontroller.
Title: Re: Track a person
Post by: airman00 on August 12, 2007, 06:50:14 PM
I dont need direction, i only want it to be "near" me so I have easy access to the mini fridge and so i'm in range of giving voice commands
Title: Re: Track a person
Post by: Admin on August 12, 2007, 07:41:00 PM
But . . . what if the robot knows you are far away? It couldnt do anything about it . . . so why have the sensor?
Title: Re: Track a person
Post by: airman00 on August 12, 2007, 07:44:00 PM
Yes it could.
Think of a person using the device .. He moves around while watching the lights to how far he is. Think of it as a game of Hot or Cold. The person will be moving around and the lights will provide hotter or colder( closer or farther).
Substitute the person with a robot, and the robot will move so that he is relatively close to the person.
Title: Re: Track a person
Post by: Admin on August 12, 2007, 07:51:39 PM
Hmmmm Im not sure what the resolution on that device is . . . but might look silly if your robot must move around in a big circle every few seconds to know where you are . . .

Perhaps you can get three of them and triangulate the signals?
Title: Re: Track a person
Post by: airman00 on August 13, 2007, 05:09:54 AM
I was thinking of it working like a beacon (two trackers) and then compare which one has more than the other( with a small fudge factor of course)
After I get one and take it  apart I will just buy those parts online or I might just buy another tracker.
Title: Re: Track a person
Post by: airman00 on August 13, 2007, 05:29:24 AM
Hey admin,
I was reading your tutorial about the $50 Robot with Sharp IR and I was wondering if that robot can follow people around like it followed the block.
The robot was scanning for where there is an object and going to it. That is exactly what I need... BUT I think that once I'm in a room with a lot of obstacles the robot will no longer follow me around and instead go to the nearest object. What if I use the IR scanner and the tracker?
I'm not sure if that will be better because I see so much things that could go wrong with it. What do you think? Stick with buying the trackers or switch to IR????
Title: Re: Track a person
Post by: Admin on August 13, 2007, 06:43:34 AM
Hmmm well even if you have the trackers working perfectly, you still need sensors to detect objects in the way. (the best signal might lead your robot through a wall)

My Sharp IR scanner alone will not work, as it only generates a map of objects in front of it - it cannot identify those objects. I think if you combine both it will work. You will need to do a simple triangulation algorithm as a comparison alone wont work. Its just highschool trig, nothing hard.


Another option:
The method I think is best is to get a CMUcam or AVRcam, tell it to track the color red, and you should wear a bright red shirt. Ive done this before and it works. You can combine that with a sharp IR to verify range from target.
Title: Re: Track a person
Post by: Ro-Bot-X on August 13, 2007, 01:54:56 PM
You might use an Eltec PIR sensor mounted above the Sharp sensor like in Admin's Sharp IR scaner. The PIR sensor detects heat surces like humans and animals and fire. The Sharp sensor will give you the distance to the object and the PIR sensor will let you know if it is an object or a human.

Edit: I am also working (verrrrry slowwwwly) on a robot somewhat like your butler, and I am using a webcam mounted on a pan/tilt head, together with an Eltec sensor and an Ultrasonic sensor. The US sensor will let me know the distance to the object so the arm can grab the object if it is in the right range. The Eltec sensor comes in handy when the robot wants to shake hands with a human for instance or hand him an object.
Title: Re: Track a person
Post by: airman00 on August 13, 2007, 02:41:26 PM
I like the PIR idea.

BUT I need the robot to find me. Can I use two of them and compare them to see exactly where I am?
Title: Re: Track a person
Post by: Soeren on August 13, 2007, 03:07:29 PM
Hi,

Perhaps you can get three of them and triangulate the signals?
Why three ? For triangulation, only one transmitter and, at most 2 receivers should be used (and 1 rx should be plenty if used correctly).
Title: Re: Track a person
Post by: dunk on August 13, 2007, 04:19:48 PM
this is all very off topic but...
Quote
Why three ? For triangulation, only one transmitter and, at most 2 receivers should be used (and 1 rx should be plenty if used correctly).
with 2 receivers you always get 2 possible solutions.
to take a trivial example, let us say the transmitter was an equal distance from 2 receivers, you would need a 3rd to be able to tell if the transmitter was in front or behind the receivers.

with only 2 receivers the only set of solutions where you would know exactly where the transmitter is would be when it is exactly in line with the 2 receivers.

i presume your method for only one receiver involves a directional aerial?
this would work but i *think* the size of the back plate of such an aerial is dictated by the wavelength of the RF signal.
it should measure half the wavelength in size if i remember correctly.
so without building your own high frequency (and there for short wavelength) transmitter you would end up with a very large solution.

i get the impression airman00 is looking for a solution that is a little simpler to implement.

back on topic now...
airman00: have you considered using one of the PIR sensors from a burglar alarm?
narrow it's field of view by putting a plate with a slot in it over the front and mount it on a servo so it scans left and right.
this would only detect things that are a different temperature from the place it looked last so you would get some false positives from warm radiators/cold windows/cats/etc.

dunk.
Title: Re: Track a person
Post by: airman00 on August 13, 2007, 05:43:42 PM
does the PIR sensor give a analog signal to the micro based on distance away from warm object?
Title: Re: Track a person
Post by: airman00 on August 14, 2007, 05:28:19 AM
What about using this http://www.rev-ed.co.uk/picaxe/forum/topic.asp?topic_id=7198&forum_id=31&Topic_Title=Nesbit+Solution+%28Really%29&forum_title=PICAXE+Forum&M=False&S=True
Title: Re: Track a person
Post by: Soeren on August 14, 2007, 05:32:29 PM
Hi,

with 2 receivers you always get 2 possible solutions.
to take a trivial example, let us say the transmitter was an equal distance from 2 receivers, you would need a 3rd to be able to tell if the transmitter was in front or behind the receivers.

with only 2 receivers the only set of solutions where you would know exactly where the transmitter is would be when it is exactly in line with the 2 receivers.

i presume your method for only one receiver involves a directional aerial?
Nope... 1 (switched) receiver and nothing but whips. You seem to be locked to the thought, that a receiver can only handle a single input?

Using more than one receiver will give inter-receiver interference, drift, unbalance and all sorts of bad stuff (I don't even believe you could get it to work persistently to point out a transmitter without constant recalibration), which is eliminated by function in a single receiver set-up.

And your example: "when it is exactly in line with the 2 receivers" wouldn't give an unambiguous reading either, with the method that you seem to suggest.
Title: Re: Track a person
Post by: airman00 on August 14, 2007, 06:36:25 PM
does the PIR sensor give a analog signal to the micro based on distance away from warm object?

DOES IT?
Title: Re: Track a person
Post by: Ro-Bot-X on August 15, 2007, 12:33:51 AM
The answer to your question lies here:
http://www.acroname.com/examples/10020/10020.html (http://www.acroname.com/examples/10020/10020.html)
Title: Re: Track a person
Post by: dunk on August 15, 2007, 02:20:14 AM
Soren,
you were the one who specified triangulation not me:
Quote
Why three ? For triangulation, only one transmitter and, at most 2 receivers should be used (and 1 rx should be plenty if used correctly).
you appear to be changing you mind about triangulation being possible with 2 receivers too...
Quote
And your example: "when it is exactly in line with the 2 receivers" wouldn't give an unambiguous reading either, with the method that you seem to suggest.

dunk.
Title: Re: Track a person
Post by: Soeren on August 15, 2007, 11:17:31 PM
Hi,

Soren,
you were the one who specified triangulation not me:
I never specified it, just commented on it.


Quote
Quote
Why three ? For triangulation, only one transmitter and, at most 2 receivers should be used (and 1 rx should be plenty if used correctly).

you appear to be changing you mind about triangulation being possible with 2 receivers too...
Changing my mind how?? Please reread and tell me where you think I changed what I said!
And what part of "1 (ONE) receiver" is causing you trouble - yes, you could use 2 as well (as I said), but you would have lots of problems aligning, synching and balancing them.

I think you are a bit blocked by your apparent issue dealing with the understanding that 1 (ONE) receiver can receive from several mux'd antenna whips, to give the direction (and if made clever, approximated distance could be had as well).

But for all I care, do waste time on 3 receivers - won't work for any extended time though.
Title: Re: Track a person
Post by: JesseWelling on August 16, 2007, 12:51:39 AM
So you would just cycle through the mux'd antennas and take a reading at each one and triangulate from that then... clever...

Not that I doubt it can be done but where is the bottle neck in the sampling rate? is it wavelength limited or more the speed of the muxing?
Title: Re: Track a person
Post by: Soeren on August 16, 2007, 10:46:22 PM
Hi,

Not that I doubt it can be done but where is the bottle neck in the sampling rate? is it wavelength limited or more the speed of the muxing?
The mux'ing will be the limiting factor, since the radio frequency is way above that. However, I don't think anybody would have problems with it, since we're talking relatively low mux speeds here.

To put things in perspective:
Moving eg. 10m/s (36km/h) getting a reading for each 1cm will need 1000 full samples a second, ie. 333us to read each of the 3 whips.
With eg. a low frequency beacon of 10MHz, more than 3000 full waves will get through on each read.

There will of course be a bit of overhead in the switching etc., but most robots go substantially slower and usually a much higher frequency is used, so the numbers were just taken as a kind of worst case example.