Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Technical Discussion (http://www.chiefdelphi.com/forums/forumdisplay.php?f=22)
-   -   spherical positioning (http://www.chiefdelphi.com/forums/showthread.php?t=40364)

sciguy125 06-11-2005 22:36

spherical positioning
 
Let's say that I have a device that can suspend itself in the air. It's able to provide thrust in the x, y, and z axes, as well as the appropriate thrust to rotate about each axis. I want to be able to determine what direction is down.

I thought of using 3 accelerometers (one along each axis). You'd be able to calculate the direction of gravity by knowing the acceleration along each axis. The problem comes when you start to move. If you start to move in the +x direction, "gravity" will be biased toward the -x direction.

One thing I thought of was adding 3 gyros to the mix. If you determine gravity at start up, you can use the gyros thereafter. The problem with this is that there's no self-correction. After some time, there WILL be notable error in the measurements, so the system will have to be reoriented. So, how do you know that you're in a stationary state so that you can recalculate gravity?

Cuog 15-11-2005 20:19

Re: spherical positioning
 
a good gyro does 2 axis(left right forward backward) so u would only need 2 placed perpendiularly

no matter what u use it will be effected by acceleration because down and gravity is an acceleration(9.8m/s/s)

it is infact this acceleration that makes the gyro work just remember that


Also what are you planning to build here that may help to decide what to do

ahecht 16-11-2005 11:07

Re: spherical positioning
 
Quote:

Originally Posted by Cuog
a good gyro does 2 axis(left right forward backward) so u would only need 2 placed perpendiularly

Well, not quite. A gyro (or actually an Angular Rate Sensor) measures speed of rotation, not translational acceleration, so a 2 axis accelerometer would measure pitch and roll, yaw and pitch, or yaw and roll.

Quote:

Originally Posted by Cuog
no matter what u use it will be effected by acceleration because down and gravity is an acceleration(9.8m/s/s)

it is infact this acceleration that makes the gyro work just remember that

Umm, no. The gyros measure just your rate of rotation, using a tiny tuning-fork like device and the Coreolis effect. They are not affected in any way by gravity, and would work just as well in a zero-g environment.

Back to the original poster, a 3-axis gyro array would give you only orientation, not position. However, as you said, there is some drift (although over short periods of time, it's not too bad). 190s 2k5 robot used a rate gyro so that we could have field-oriented controls, and the drift over the 2 minute match was minimal. However, using a 3-axis accelerometer array in tandem with the gyro array would give you the ability to recalibrate which way is down while you are standing still.

KenWittlief 16-11-2005 11:44

Re: spherical positioning
 
I think we are getting lost in the terminology here.

Gyros: originally referred to mechanical devices that spin like a top, with very low friction bearings (gimbles). The gyros would be spun up with with the system on the ground, in a known orientation, and that was your reference point for the duration of the flight. From the angles on each gimble (or bearing axis) you could tell which way your vehicle was pointing, and by the change of those reading you could calculate rotational velocity and acceleration

For several years FIRST included yaw rate sensors in the kit of parts - referred to as 'solid state gyros'. This gets confusing because the yaw rate sensors measured the RATE at which you were turning on one given axis. To get the angle you have to integrate the reading over time, and to get the acceleration you had to measure the derivative (rate of change) of the sensor output.

Still with me?

There are also linear accelerometers available. These measure your acceleration in a linear direction. (thats why they are called accelerometers, they measure acceleration). To get velocity you have it integrate the reading over time, and to get position you have to integrate the velocity over time.

So an accelerometer will indicate gravity. But heres the problem with the original question. To find which way is up you must assume no other force is acting on the vehicle - no one is pushing you, there is no wind, and also, your vehicle is not spinning and causeing a centrifical force (that would feel like acceleration or artifical gravity).

Under a very limited set of conditions you could use a 'downward' pointing accelerometer to determine which way is up: very limited. If you are freefalling, or in orbit, or being moved by an outside force, or spinning, then you need much more information to know which way is up.

the amount of time it takes for your 'gimbal readings' to drift off was the measure of the quality of your navigation system. The error rate was measured in degrees per hour (drift). The better the system, the lower the drift rate.

For the Apollo missions the astronauts took periodic readings of stars, to measure the drift rates and zero out the accumulated error (drift).

Cuog 16-11-2005 13:53

Re: spherical positioning
 
Ok i see what i thought was a gyro is an accelerometer then ok so kinda disregard what i said unless u wanna use an acceerometer

sciguy125 16-11-2005 14:05

Re: spherical positioning
 
I was just thinking up a helicopter-like device. I doubt that I'll actually make it, but I thought it was interesting.

My reasoning for the accelerometer array is that gravity is just a 3-d vector. If we had a device that could measure this vector, we'd know our orientation. But, again, this would only work if we were static. If we started to accelerate in any direction (by our own power), this second acceleration would be added to the gravity vector. This would make the measurement almost worthless.

If we had gyros (or some other sort of rotational sensors), we'd know our orientation referenced from our initial orientation. We assume that, at start up, we are on the ground, or otherwise not moving. We take a reading from the accelerometers and we can determine what direction is down. All readings from the gyros are referenced to this condition. When we start moving, we can use the gyros to determine our orientation and start using the accelerometers to determine our linear acceleration. However, we'd have to subtract gravity from the accelerometer readings. Because we know our orientation via the gryros, we know what direction gravity is. Subtract the gravity vector from the accelerometer readings and we have our linear acceleration. With our acceleration, we should be able to figure out where we are.

So, how do we compensate for drift because our initial reference point is gone?

A better way to phrase my question would be: If you were in a box and could have any instruments you wanted, how would you determine your position in space (as in your 3-d position)? I have a feeling that we'll run into some sort of Uncertainty Principle type of thing.

KenWittlief 16-11-2005 15:09

Re: spherical positioning
 
how would I do it?

simple: GPS! :^)

Alan Anderson 16-11-2005 15:23

Re: spherical positioning
 
The easiest way I can think of to know that you're not moving would be to land. :)

Seriously, for this kind of application, I believe the best way to compensate for gyro drift is simply to eliminate it.

Kevin Watson 16-11-2005 19:14

Re: spherical positioning
 
Quote:

Originally Posted by sciguy125
So, how do we compensate for drift because our initial reference point is gone?

The best way to do this is with a Kalman filter, which takes in a bunch of noisy data from accels, gyros, GPS, etc., performs a bunch of black magic, including sensor fusion, and spits-out a state estimation.

-Kevin

jrocket567 16-11-2005 20:37

Re: spherical positioning
 
So you're more or less trying to see if you can get the robot to tell if it is upside down or right side up, or anywhere in between-- Ok- here comes a mechanical brain idea, so it might make absolutely no sense at all- Take a weight (hunk of lead), and suspend it from a potentiometer or some other device that can measure angles. When the robot changes its attitude relative to the ground (gravity), the weight will still hang perpendicular to the ground. The potentiometer or other device can measure the angle that the weight is hanging relative to where the weight hung when the robot was parallel to the ground. You will always know what way is down-- the weight will always point that way. Make any sense at all??

ahecht 16-11-2005 20:40

Re: spherical positioning
 
What you've basically built there is a two-axis accelerometer (albeit one capable of only telling direction, not magnitude). General Relativity states that there is no way of telling acceleration apart from gravity, so your "mechanical brain" would still be affected by any acceleration of the robot.

KenWittlief 16-11-2005 23:22

Re: spherical positioning
 
just want to point out, the idea presented in the first post of this thread is whats known as 'inertial navigation'.

its been around for many years, and hundreds of millions of dollars have been spent on research and development of these systems.

in other words, you are diving into some deep and challenging stuff here.


All times are GMT -5. The time now is 18:21.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi