[sci.electronics] How can you 'track' something back and forth?

jmasters@fxrs.intel.com (Justin Masters) (01/24/91)

I was wondering how one might go about tracking something back and forth.  I
intend to use either an IR transmitter or a FM transmitter as a source, but my
question is how do I track it?

Some ideas that I had...

IR.  Utilizing a diamond grid of two receptive elements (recessed, or shielded
from stray IR energy), I would use some kind logic to simulate the following
way a human centers his eyes on a light.  He sees some light from the right
side, and turns his head towards it, until the amount of light being received
in both eyes is equal (looking straight at it), and then stopping your head.

FM.  Somehow receive a pulsed signal on an FM signal to two different points,
and combining the signal to each other to see which pulse 'arrived' first.


How would you go about doing a comparison to see which receptor/receiver had
received its signal first or was closer to the point desired?

What kind of motor do you try to use (12v or less) to turn towards the
originating signal, and how do you control it?  How do you keep from
having constant 'over-compensation'?  In otherwords, how would you keep the
motor from going back and forth in slight increments while trying to center on
a stationary point?


Are there any really good articles on how to do this?


Any help would be appreciated.
-- 
"We are greatful for the dedication of the men and women serving in the gulf
and our prayers are with them.  Some say they are just doing their job, but it
goes beyond that.  They are serving this country and us, and they are serving
what we believe in." - Glenn Ballard.          |  jmasters@fws136.intel.com

henry@zoo.toronto.edu (Henry Spencer) (01/27/91)

In article <304@fxrs.intel.com> jmasters@fxrs.intel.com (Justin Masters) writes:
>I was wondering how one might go about tracking something back and forth...
>IR.  Utilizing a diamond grid of two receptive elements (recessed, or shielded
>from stray IR energy), I would use some kind logic to simulate the following
>way a human centers his eyes on a light...

Barring expensive things like imaging sensors, you're going to have to move
the sensor somehow.  One slightly eccentric way to do this is the way used
in satellite sun sensors.  You use one sensor behind two intersecting slits
(usually forming a V shape together), and rotate the whole assembly on the
vertical axis ("vertical" with the V standing upright, so to speak).  The
light source is visible to the sensor twice during a rotation, once through
each slit, so you get two pulses per rotation.  The spacing between the
pulses gives you vertical direction of the light source, while the position
of the pulses with respect to the rotation gives you horizontal direction.

>FM.  Somehow receive a pulsed signal on an FM signal to two different points,
>and combining the signal to each other to see which pulse 'arrived' first.

At the speed of light, you're going to have to measure fractional nanoseconds
to get any useful accuracy with this.  Also, unless you observe certain
somewhat troublesome restrictions, your FM transmitter will need to be
licensed.  This sounds like more trouble than it is worth, if IR is suitable.

>How would you go about doing a comparison to see which receptor/receiver had
>received its signal first or was closer to the point desired?

One way of getting a pointing system with optical sensors is to put a baffle
between the two -- a "nose", to speak -- and just use a differential
amplifier to compare the outputs of the two sensors.  The "nose" will partly
shadow one of the sensors, reducing that sensor's output, unless the whole
assembly is pointing directly at the light source.

Note that there is a fundamental contradiction between being able to acquire
your light source over a wide range of starting angles and being well shielded
against stray light, unless your IR emitter is doing something distinctive
like pulsing at a known frequency.

>What kind of motor do you try to use (12v or less) to turn towards the
>originating signal, and how do you control it?

Almost any kind of motor can be used.  Far more information is needed to
answer this question.  How rapidly does it have to track?  How heavy is
the tracking assembly?  Does it have to track in one axis (horizontal
only) or two?  What other requirements are present?

>How do you keep from
>having constant 'over-compensation'?  In otherwords, how would you keep the
>motor from going back and forth in slight increments while trying to center on
>a stationary point?

Add a bit of hysteresis ("snap action") or a central "dead band", so that
it takes a substantial deviation to make the tracking assembly move.
-- 
If the Space Shuttle was the answer,   | Henry Spencer at U of Toronto Zoology
what was the question?                 |  henry@zoo.toronto.edu   utzoo!henry

jmasters@fxrs.intel.com (Justin Masters) (01/29/91)

In article <1991Jan27.023401.22157@zoo.toronto.edu> henry@zoo.toronto.edu (Henry Spencer) writes:
|In article <304@fxrs.intel.com> jmasters@fxrs.intel.com (Justin Masters) writes:
|>I was wondering how one might go about tracking something back and forth...
|>IR.  Utilizing a diamond grid of two receptive elements (recessed, or shielded
|>from stray IR energy), I would use some kind logic to simulate the following
|>way a human centers his eyes on a light...
|
|Barring expensive things like imaging sensors, you're going to have to move
|the sensor somehow.  One slightly eccentric way to do this is the way used
|in satellite sun sensors.  You use one sensor behind two intersecting slits
|(usually forming a V shape together), and rotate the whole assembly on the
|vertical axis ("vertical" with the V standing upright, so to speak).  The
|light source is visible to the sensor twice during a rotation, once through
|each slit, so you get two pulses per rotation.  The spacing between the
|pulses gives you vertical direction of the light source, while the position
|of the pulses with respect to the rotation gives you horizontal direction.
|
|>FM.  Somehow receive a pulsed signal on an FM signal to two different points,
|>and combining the signal to each other to see which pulse 'arrived' first.
|
|At the speed of light, you're going to have to measure fractional nanoseconds
|to get any useful accuracy with this.  Also, unless you observe certain
|somewhat troublesome restrictions, your FM transmitter will need to be
|licensed.  This sounds like more trouble than it is worth, if IR is suitable.
|
|>How would you go about doing a comparison to see which receptor/receiver had
|>received its signal first or was closer to the point desired?
|
|One way of getting a pointing system with optical sensors is to put a baffle
|between the two -- a "nose", to speak -- and just use a differential
|amplifier to compare the outputs of the two sensors.  The "nose" will partly
|shadow one of the sensors, reducing that sensor's output, unless the whole
|assembly is pointing directly at the light source.
|
|Note that there is a fundamental contradiction between being able to acquire
|your light source over a wide range of starting angles and being well shielded
|against stray light, unless your IR emitter is doing something distinctive
|like pulsing at a known frequency.
|
|>What kind of motor do you try to use (12v or less) to turn towards the
|>originating signal, and how do you control it?
|
|Almost any kind of motor can be used.  Far more information is needed to
|answer this question.  How rapidly does it have to track?  How heavy is
|the tracking assembly?  Does it have to track in one axis (horizontal
|only) or two?  What other requirements are present?
|
|>How do you keep from
|>having constant 'over-compensation'?  In otherwords, how would you keep the
|>motor from going back and forth in slight increments while trying to center on
|>a stationary point?
|
|Add a bit of hysteresis ("snap action") or a central "dead band", so that
|it takes a substantial deviation to make the tracking assembly move.
|-- 
|If the Space Shuttle was the answer,   | Henry Spencer at U of Toronto Zoology
|what was the question?                 |  henry@zoo.toronto.edu   utzoo!henry


-- 
"We are greatful for the dedication of the men and women serving in the gulf
and our prayers are with them.  Some say they are just doing their job, but it
goes beyond that.  They are serving this country and us, and they are serving
what we believe in." - Glenn Ballard.          |  jmasters@fws136.intel.com

jmasters@fxrs.intel.com (Justin Masters) (01/29/91)

Well, I screwed up my last posting, which went out without no additions on my
part.  Here is what I meant to post:


In article <1991Jan27.023401.22157@zoo.toronto.edu> henry@zoo.toronto.edu (Henry Spencer) writes:
|In article <304@fxrs.intel.com> jmasters@fxrs.intel.com (Justin Masters) writes:
|>I was wondering how one might go about tracking something back and forth...
|>IR.  Utilizing a diamond grid of two receptive elements (recessed, or shielded
|>from stray IR energy), I would use some kind logic to simulate the following
|>way a human centers his eyes on a light...
|
|Barring expensive things like imaging sensors, you're going to have to move
|the sensor somehow.  One slightly eccentric way to do this is the way used

Yes it is being made to move.  This would be a used for moving a video camera
back and forth on a tripod.  I hate being left out on a family outing when I'm
video taping.

|in satellite sun sensors.  You use one sensor behind two intersecting slits
|(usually forming a V shape together), and rotate the whole assembly on the
|vertical axis ("vertical" with the V standing upright, so to speak).  The
|light source is visible to the sensor twice during a rotation, once through
|each slit, so you get two pulses per rotation.  The spacing between the
|pulses gives you vertical direction of the light source, while the position
|of the pulses with respect to the rotation gives you horizontal direction.

I'm not sure if I understood your instructions completely, but let me see if I
have this right.
      axle ->I
  ___________I___________
 |        \     /        |
 |         \   /         |
 |          \ /  o       |<--- rotating drum
 |___________V___^_______|
			 I   |
             I   |---- sensor

Do I have this right?

|
|>FM.  Somehow receive a pulsed signal on an FM signal to two different points,
|>and combining the signal to each other to see which pulse 'arrived' first.
|
|At the speed of light, you're going to have to measure fractional nanoseconds
|to get any useful accuracy with this.  Also, unless you observe certain
|somewhat troublesome restrictions, your FM transmitter will need to be
|licensed.  This sounds like more trouble than it is worth, if IR is suitable.

Well, it wouldn't be long range.  I suppose that it could work on the same
freq band that those little kiddie wireless microphones could work.  Same low
power, and make it adjustable so as not to get any interference from local
radio stations.  The speed factor alone of measuring differences might present
a problem.

|
|>How would you go about doing a comparison to see which receptor/receiver had
|>received its signal first or was closer to the point desired?
|
|One way of getting a pointing system with optical sensors is to put a baffle
|between the two -- a "nose", to speak -- and just use a differential
|amplifier to compare the outputs of the two sensors.  The "nose" will partly
|shadow one of the sensors, reducing that sensor's output, unless the whole
|assembly is pointing directly at the light source.
|
|Note that there is a fundamental contradiction between being able to acquire
|your light source over a wide range of starting angles and being well shielded
|against stray light, unless your IR emitter is doing something distinctive
|like pulsing at a known frequency.

Even with pulsing though, reflections might be a problem (as evidenced with
playing with tv remote controls off the walls, or having my laser tag base
station hit my target by bouncing signals off walls and such. :-}  Who said
experimentation couldn't be fun.  Another problem would be ensuring that the
transmitter would be pointed in the general direction of the camera all of the
time.  That would be pretty hard to do if someone is walking back and forth.
I can just see it now.  An exoskeleton made of wiring leading to IR
transmitters all over the person's body. :-)
|
|>What kind of motor do you try to use (12v or less) to turn towards the
|>originating signal, and how do you control it?
|
|Almost any kind of motor can be used.  Far more information is needed to
|answer this question.  How rapidly does it have to track?  How heavy is
|the tracking assembly?  Does it have to track in one axis (horizontal
|only) or two?  What other requirements are present?

It wouldn't track very fast.  In having a video camera mounted on top of it,
speed needs to be smooth, not necessarily fast.  Although it might need to be
fast enough to track someone walking back and forth in front of a chalkboard
as they lectured.  One axis tracking would probably be sufficient (course, two
would make it more versatile, although not needed very often).  Weight would
be probably 10-15 lbs (full size VHS with battery and tracking assembly). It
would sit on a tripod, with the camera above it.

I suppose that it would probably eat up power fairly quickly, huh?  I would be
trying to perhaps make it usable off the same power as a video camera battery
(spare) or a video light battery. 
|
|>How do you keep from
|>having constant 'over-compensation'?  In otherwords, how would you keep the
|>motor from going back and forth in slight increments while trying to center on
|>a stationary point?
|
|Add a bit of hysteresis ("snap action") or a central "dead band", so that
|it takes a substantial deviation to make the tracking assembly move.
|-- 
|If the Space Shuttle was the answer,   | Henry Spencer at U of Toronto Zoology
|what was the question?                 |  henry@zoo.toronto.edu   utzoo!henry



-- 
"We are greatful for the dedication of the men and women serving in the gulf
and our prayers are with them.  Some say they are just doing their job, but it
goes beyond that.  They are serving this country and us, and they are serving
what we believe in." - Glenn Ballard.          |  jmasters@fws136.intel.com

henry@zoo.toronto.edu (Henry Spencer) (01/30/91)

In article <311@fxrs.intel.com> jmasters@fxrs.intel.com (Justin Masters) writes:
>I'm not sure if I understood your instructions completely, but let me see if I
>have this right...

Yup, looks about right.  (The satellite designs actually spin the whole
spacecraft, but just spinning the drum with the slits should work.)
-- 
If the Space Shuttle was the answer,   | Henry Spencer at U of Toronto Zoology
what was the question?                 |  henry@zoo.toronto.edu   utzoo!henry

martin@adpplz.UUCP (Martin Golding) (01/30/91)

In <304@fxrs.intel.com> jmasters@fxrs.intel.com (Justin Masters) writes:


>I was wondering how one might go about tracking something back and forth.  I
>intend to use either an IR transmitter or a FM transmitter as a source, but my
>question is how do I track it?

>Some ideas that I had...

>IR.  Utilizing a diamond grid of two receptive elements (recessed, or shielded
>from stray IR energy), I would use some kind logic to simulate the following
>way a human centers his eyes on a light.  He sees some light from the right
>side, and turns his head towards it, until the amount of light being received
>in both eyes is equal (looking straight at it), and then stopping your head.

>FM.  Somehow receive a pulsed signal on an FM signal to two different points,
>and combining the signal to each other to see which pulse 'arrived' first.


>How would you go about doing a comparison to see which receptor/receiver had
>received its signal first or was closer to the point desired?

>What kind of motor do you try to use (12v or less) to turn towards the
>originating signal, and how do you control it?  How do you keep from
>having constant 'over-compensation'?  In otherwords, how would you keep the
>motor from going back and forth in slight increments while trying to center on
>a stationary point?

I'm entirely unqualified to be reading this stuff, never mind replying to
it.
However,

Have you considered sound? High frequencies are reasonably directional
and hard to reflect. Then you could use tuned tubes at angles and check
volume, or measure phase differences, which at a few tens of khz would
be practically hours between pulses. Polaroid has an experimenters kit
for their ranging system, which of course is probably completely irrelevant.

Hey, whaddaya want, I' software, ok?

Martin Golding

whinery@hale.ifa.hawaii.edu (Alan Whinery) (01/31/91)

In <304@fxrs.intel.com> jmasters@fxrs.intel.com (Justin Masters) writes:
>
>What kind of motor do you try to use (12v or less) to turn towards the
>originating signal, and how do you control it?  How do you keep from
>having constant 'over-compensation'?  In otherwords, how would you keep the
>motor from going back and forth in slight increments while trying to center on
>a stationary point?

(Oh goodie -- all those servo loops and stabilized platforms I did in 
my LAST job might be useful.)

In a servo system, such as the loop you describe, the problem of "jitter"
or "popping" back and forth across the line where you want to be -- due
to the mechanical inertia of the motor and the electronic inertia of the
servo loop -- is kind of the whole problem. Once you get an acceptable
solution, you're there. 

First of all there's the loop gain, or how hard you drive the motor
towards target (assuming you know which way to go). If your target
(assuming only one axis of rotation for simplicity's sake) is
30 degrees away from your sensor, and you turn the motor full on, 
you will get there quickly, but probably overshoot. If your target 
is at 1 degree away, you certainly wouldn't want to go "balls to the 
wall" towards the target. There are two methods to use in slewing
(moving) the sensor at a proper rate to reach the target with minimum
jitter at the end -- damping and ramping. Damping is simply good ol' 
servo loop theory, the alpha factor which determines how quickly the 
loop responds to a impluse change in feedback, or how perky/sluggish the 
loop's reaction is.  You can simply limit the maximum slew rate, or 
add a capacitve element to the drive voltage on the motor to damp the
motor's response, which will of course slow down the speed with which 
you acquire the target, but that will be the tradeoff -- loop response 
for jitter. 
	In "ramping", you simply drive the motor with a ramping voltage,
say, ramp up in the first 5 degrees (to avoid a jerk at the start),
and when you are within 5-10 degrees of the target, ramp down the speed,
minimizing the overshoot -- then drive back at a lower speed, until your 
target is aquired. It would be good to have as wide an "acquisition beam"
as possible, such as 5-10 degrees, so that there is a hysteresis effect,
allowing the target to wander slightly without your loop popping on and  
off constantly. You may need 3 sensors, the "acquired" sensor in the middle,
and leading and lagging sensors on the right and left, so that while doing
target acquistion the leading sensor can say "OK HERE IT COMES, SLOW DOWN",
and after acquisition, when the target is lost, the appropriate sensor 
will tell you which way the target went.

	Servoing around is a business of error management, not of 
error avoidance. You also might try the "rotating radar dish" effect, 
and just keep track of the position of the target in memory. 

Stepper motors would give you more precise control of overshoot and 
positioning, but they're basically just motors in the paradigm of the
servo loop.

Wake up, I'm done talking.
Alan
whinery@hale.ifa.hawaii.edu