can accelerometer detect the gravitational force on a body?

2 views (last 30 days)
I have designed a body in simscape multibody. I have also created a gravity component in Z-direction from machine environment. Now i want to detect that gravity by using accelerometer connected on that body. Is it possible? because when i am connecting an accelerometer on a body, i am not getting any acceleration in z-direction.

Answers (1)

Nicolas Schmit
Nicolas Schmit on 16 Nov 2017
If you look at the documentation of the Accelerometer block, you find this:
For the default output type Voltage level, the accelerometer provides an output voltage that is proportional to the acceleration rate presented at the mechanical translational physical port R.
Which basically means that the accelerometer measures only relative acceleration with respect to a reference frame. This block does not detect gravitational acceleration. This is because it interfaces with the Mechanical Translational domain, where there is not notion of orientation in space.
Here is the workflow to calculate the gravity acceleration felt by an accelerometer at a given frame.
  1. Define a gravity acceleration vector [0;0;-g], with g the strength of the gravity acceleration (say 9.81m/s^2)
  2. Use a Transform Sensor block to obtain the transform matrix from the frame of interest to the world frame.
  3. Use the matrix obtain in 2 to map the vector defined in 1 to the coordinate frame of interest.
  4. Map the coordinates of the gravity acceleration in the frame of interest to a electrical signal using the gain of the accelerometer.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!