Newsgroups: comp.robotics
Path: brunix!uunet!cs.utexas.edu!swrinde!news.dell.com!fenian!timd
From: timd@fenian.noname (Tim Deagan)
Subject: Re: /* Directional Gyros *\
Message-ID: <1992Dec8.203716.29250@raid.dell.com>
Sender: news@raid.dell.com (Net News Admin)
Nntp-Posting-Host: fenian.dell.com
Reply-To: timd@fenian.noname
Organization: SLAMDANZ CYBRNETX
References: <oe6DVB1w165w@inqmind.bison.mb.ca>
Date: Tue, 8 Dec 1992 20:37:16 GMT
Lines: 47

In article oe6DVB1w165w@inqmind.bison.mb.ca, baden@inqmind.bison.mb.ca (Baden de Bari) writes:
> 
>        I'm thinking of implimenting a VR/robotic symbiosis system, but I 
>am a bit curious as to what kind of X and Y directional devices I would 
>be better off using.  I was thinking about common model helicopter gyros, 
>however, I'm not sure how acurate they would be.  All I need is some sort 
>of system that I can interface with a digital system, not analog.  If the 
>output is analog, then it shouldn't be aproblem hooking up an A/D chip.
>        I was also thinking of using an ultrasonic X/Y/Z positioning 
>system, similar to the type used by the (ever popular) Nintendo Power 
>Glove, however, I do not want to limit the user to a certain space.
> 
>                Can anybody give me some suggestions please?
>             Thanks.
>        >>Baden<<
>
>baden@inqmind.bison.mb.ca
>The Inquiring Mind BBS, Winnipeg, Manitoba  204 488-1607


I have interfaced a helicopter gyro to my PC.  It is a digital 
signal, serial in nature.  It's format is very similar to servo
motors since it's purpose is to modify the control signal to the 
servo based upon angular velocity in an undesirable direction (that
is, the heli wants to spin in one direction or the other and the 
gyro adjusts the servo controlling the *desired* angular rotation an 
additional amount to compensate and only allow the rotation desired).

I brought the signal from the gyro into the ACK* line of LPT1
(port 379 bit 6, rising edge is the interrupt).
 Note: buffer all lines connecting to your PC, you do NOT need a 
specifically bidirectional parallel port for this since all PC 
parallel ports are at least 4-bit inputs on the control lines.
  I used a high speed timer routine in assembly to time the length 
of the ACK* inactive pulse (value 1, the line is active low).  
The time of this pulse represents the angular velocity. 

This interface is so simple that it could be implemented on any
microcontroller.  Different gyro/servo vendors use different pinouts
on their plugs, so be careful.

---
timd@fenian.dell.com-My employer is_not responsible for_this.
    / / | |     /  || \  / |  __  |  _ \  /  || \ | ||__ /
 ***\ \*| |___*/ /_||  \/  |*|__|*| |_) )/ /_|| |\| |*/ /_***
    /_/ |____//_/|_||_|\/|_|      |____//_/|_||_| \_|/____|

