0
\$\begingroup\$

I am on a project to track the human body motion in to a 3d design and animation software. I found that acccelerometers are used for these purposes. According to my project what I will need is the path coordinates on which the human hand or other part moves. This can be done if I get the speed and integrate them i will find the path. But accelerometers by name seems that they gives the acceleration of the object they are attached, that is an object at rest will output zero and at shake time output some value and at motion time then output zero. So my question is this that does accelerometers outputs the accceleration of object or the force applied on them at a direction? If it is the force applied on a direction then it can work for me.

\$\endgroup\$
  • \$\begingroup\$ Yes, its almost the force, but its independant of mass, since a=f/m. At rest it doesn't register zero, rather it registers 1G of accel, assuming it measures on all three axes. \$\endgroup\$ – Octopus Jun 8 '15 at 22:15
  • \$\begingroup\$ does it mean that if the accelerometer is moving in x axis at a speed(say force) F then it will output a value that is dependent on or proportional to F? \$\endgroup\$ – Sulaiman Ayub Jun 9 '15 at 7:30
  • \$\begingroup\$ speed is not analagous to force, but change in speed (aka acceleration) is. \$\endgroup\$ – Octopus Jun 9 '15 at 17:00
  • \$\begingroup\$ ok, i dont understand what you are saying, but if accelerometer is moving in x axis at speed 'A' then its output is 'x1' now if speed is increased to 'B' then its output('x2') will increase or not? i.e i mean will x2 be greater than x1 that time? \$\endgroup\$ – Sulaiman Ayub Jun 9 '15 at 17:07
  • 1
    \$\begingroup\$ when moving along x axis at speed A, the x-accel will read 0. when moving at speed B, the x-accel will read 0. during the transition from speed A to speed B it will register a low number if the transition is gradual or it will register a high number if the transition is sudden. it sounds like you don't have a clear grasp on what acceleration is. \$\endgroup\$ – Octopus Jun 9 '15 at 17:26
4
\$\begingroup\$

Accelerometers measure acceleration. Integrate twice for position with respect to time. Doing that for each axis provides a 3D position.

In theory. For the real world it's not even close to that simple. Doing a simple double integration will be reliable for less than a few seconds. If you want to find out a better way, then you'll need to ask a different question. Though you'll likely find it answered on this site already.

Typically accelerometers are not used for this because it's so unreliable. What people usually use are cameras and motion capture.

\$\endgroup\$
  • \$\begingroup\$ I dont think it could give me the position, because lets suppose if a body is changing position lets say x at zero acceleration, so in this case acccelerometer output will be zero cause object is at zero acceleration. Now integrate it a thousand times ou will not get position, while position is changing constantly.. \$\endgroup\$ – Sulaiman Ayub Jun 8 '15 at 19:47
  • \$\begingroup\$ @SulaimanAyub Clearly, if you start measuring while at a constant velocity, but assume you have zero velocity in your starting conditions the answer will be wrong. This is not always a problem, for instance, you are currently at a constant velocity just by being on the surface of the orbiting and spinning Earth, that's usually not a velocity you want to include in your measurements. \$\endgroup\$ – Samuel Jun 8 '15 at 19:53
  • \$\begingroup\$ yes i get that.... just confused a little bit \$\endgroup\$ – Sulaiman Ayub Jun 8 '15 at 19:57
  • \$\begingroup\$ @SulaimanAyub Look at it this way. Acceleration is to speed and speed is to distance travelled. A positive acceleration will add to the current speed just as a positive speed adds to the current distance travelled. Zeroing acceleration doesn't remove speed any more than zeroing speed removes distance. Zeroing acceleration stops adding to speed the same way zeroing speed stops adding to distance. To remove speed you have to have negative acceleration, just like to remove distance you need to have a negative speed (speed in the opposite direction). \$\endgroup\$ – Samuel Jun 8 '15 at 20:06
0
\$\begingroup\$

I am currently working with ADXL335 accelerometer. Basically, it is an electronic accelerometer working on x,y,z axes. It's output is a voltage signal. On it's datasheet, it is written that this ADXL335 accelerometer has a constant voltage of approx. 1.5 Volts, while it is stationary. So, this model can give you signal value even though it is not in motion. And this claim is tested and proved by me, I get a constant voltage value of 1.5 volts while it is stationary. While it is accelerated (I measured the vibration of a synchronous motor), it changes it's output voltage signal value by approximately 350 millivolts, so you can sense the acceleration. Maybe you can work with this, or a similar type of accelerometer.

\$\endgroup\$
0
\$\begingroup\$

First let me explain how an accelerometer measures what it does, as it seems that it is maybe not quite clear.

An accelerometer measures acceleration, hence the name. Most accelerometers have three sensors in total aligned to each of the axes x, y and z.

The actual data that comes from the sensor could be an analog voltage signal. The voltage will correspond to a normalized output and will depend on the hardware you use. It might for example output 1.5v when subjected to an acceleration of 10m/s² (~1G). Or it might include A2D output so that you basically get a digital number (say 1024) for that 1.5V signal. You would have to consult the docs for your particular hardware to see how the data scales to actual units, but there should be a nice linear relationship.

You can alternatively think of an accelerometer as a G force sensor.

If you leave the accelerometer undisturbed on a level table, you should get a normal reading on the z-axis only. Lets say that a normal reading is 1.5V or 1024 on a digital accelerometer. When you shove it in another direction, it will momentarily register that acceleration on the axis (or axes) that you shoved it in. It will only register zero on all axes when it is in free fall.

As an example, if you have an android phone download the "Accelerometer Monitor" application, there is likely a similar app for apple devices. It will show a graph of the sensor in each axis (x,y,z) as well a a total acceleration (|V|). Each axis will be a negative or positive number because the acceleration could be to the right or to the left (for the x axis), or forwards or backwards (for the y axis). The z axis will read a value at rest because of gravity which is producing a constant downward accelerating force. The |V| value is simply the square root of the squares of the x,y,z axes and |V| is the total G-force. It is always positive and represents the total acceleration of the sensor. The actual direction can be determined by analyzing the axes individually.

|V| = √(x²+y²+z²)

If you hold the sensor at an angle you will get a different reading on each of the three axes but |V| will still be the normal value (1.5v or 1024) if it is held steadily. Any motion of the accelerometer will lead to instantaneous readings on each axis that are proportional to the amount of extra force applied. Remember that once a body is in motion it will continue moving without a force due to inertia. So the accelerometer could be in your car going 100km/h and still only read 1G downwards.

Because it is only good for instantaneous readings, it is difficult to get accurate data that can be integrated over time, because its difficult to know what accelerations it was subject to between readings. You can guess and interpolate but the accumulation of error can compound quite quickly, which is why Samuel is suggesting that results can be unreliable.

To answer the question then, "what is the unit of measure?"

It will be some arbitrary unit depending on the sensor, but it can be scaled in a simple linear manner to either m/s² or to Gs (or to any other distance-unit per time-unit squared). 1G on Earth, at sea-level at the equator on a 20°C day, will be 9.80665 m/s².

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.