Sensor Body to ENU transformation Matrix

Click For Summary

Discussion Overview

The discussion revolves around the transformation of accelerometer values from a sensor frame to an East-North-Up (ENU) reference frame, specifically in the context of using smartphone sensors for pedestrian dead reckoning. Participants explore the implications of orientation sensor values (yaw, pitch, roll) on the transformation process and the expected outcomes of the acceleration readings.

Discussion Character

  • Technical explanation
  • Debate/contested
  • Mathematical reasoning

Main Points Raised

  • One participant seeks clarification on whether transforming to the ENU frame should yield acceleration values like [0 0 Z] and questions the determination of the rotation matrix using Euler Angle Transformation.
  • Another participant notes the need to find a transformation from the accelerometer's position within the body to the body-fixed frame, suggesting that the object’s motion is unclear without additional context.
  • A participant describes their use of a specific rotation matrix for transforming from body to ENU coordinates and raises concerns about tilting effects on the accelerometer readings.
  • One participant suggests that the rotation matrix needs to be transposed and that the acceleration vectors should be treated as column vectors, indicating a possible typographical error in the original post.
  • Another participant emphasizes that if the phone is stationary, the resultant acceleration in the ENU frame should be zero, challenging the assumption that the readings should reflect gravitational acceleration.
  • A later reply discusses the issue of gravity affecting the readings and suggests that the transformation to the ENU frame should account for this, while expressing uncertainty about the expected values post-transformation.
  • One participant proposes that the issue may stem from the accelerometer itself rather than the mathematical approach, suggesting a potential "zeroing" or "taring" issue with the device.

Areas of Agreement / Disagreement

Participants express differing views on the expected outcomes of the transformation and the interpretation of accelerometer readings, indicating that multiple competing perspectives remain unresolved.

Contextual Notes

There are limitations regarding the assumptions made about the accelerometer's position and the effects of gravity on the readings, which are not fully addressed in the discussion.

ravishah
Messages
5
Reaction score
0
Hi,
I want to convert the accelerometer values from sensor frame to ENU reference frame , I am using oreintation sensor values, yaw ,pitch ,roll. I want to confirm one thing that After transforming to ENU frame should I get accelertation values with reference to ENU frame like this [0 0 Z]. Am I right or wrong? Please clarify , And how one can determine the rotation matrix for it. I am using Euler Angle Transformation.but the results are confusing.


regards
ravi
 
Physics news on Phys.org
-First of all I cannot comment on your values since I do not know what your object is doing other than: it seems your object is simply accelerating upwards at a rate of Z.
-Secondly, you need to find a transformation from your accelerometers position within the body to the body fixed fame, if it is not at the body fixed fame's center already.
-Lastly, you may want to post your DCM or perhaps any other working you have so that we may have a better clue to what is going wrong in your calculations.

Have a great day.
 
hi,

I am using smartphone accelerometer and orientation sensors for pedestrian dead reckoning( to detect the steps taken). Orientaion sensors give me three values Yaw (Rotation around Zaxiz) , pitch (Rotation around x axiz), Roll (otation around (y axiz).

I am using the following roation matrix for transforming from body to ENU coordinates. (reference from a book, Global positioning systems, inertial navigation, and integration)

Ir=[sin(Y)*cos(P);cos(Y)*cos(P);sin(P)];
Ip=[cos(R)*cos(Y)+sin(R)*sin(Y)*sin(P);-cos(R)*sin(Y)+sin(R)*cos(Y)*sin(P);-sin(R)*cos(P)];
Iy=[-sin(R)*cos(Y)+cos(R)*sin(Y)*sin(P);sin(R)*sin(Y)+cos(R)*cos(Y)*sin(P);-cos(R)*cos(P)];
R=[Ir Ip Iy];
Ar=R*Ab
I want to resolve the problem of tilting in mobile. I mean if i keep mobile in my hand (facing upwardand) stationary, the acelerometer gives me reading A_enu= ( 0 0 -g). where g is the accelertaion due to gravity. If i tilt the mobile then there will be reading along other axis also e.g A_b=( x y z), I want to transform this tilted acceleration vector to ENU reference frame. My question is that when I transform to ENU(East North UP) frame should I get the values of acceleration like (0 0 -9.8) and also the rotation matrix that I am using is correct?

many Thanks
ravi
 
Firstly, R needs to be transposed, and Ar and Ab need to be column vectors. Hopefully that's just a typographical error.

If so, Newton's second law stated shortly says a net resultant force on an object results in an acceleration. Since your phone is not accelerating in the ENU frame (free fall) and is simply in your hand sitting still, surely the last value cannot be correct. The initial values should be [0 0 0]'
 
hi,
viscousflow said:
Firstly, R needs to be transposed, and Ar and Ab need to be column vectors. Hopefully that's just a typographical error.

Sorry for mistake, Actually Ar and Ab are column vectors,


If so, Newton's second law stated shortly says a net resultant force on an object results in an acceleration. Since your phone is not accelerating in the ENU frame (free fall) and is simply in your hand sitting still, surely the last value cannot be correct. The initial values should be [0 0 0]'

Actually there is acceleration due to gravity even if the mobile is in still condition, if it is in my hand facing upward, the acceleraton reading is , [0 ; 0; -g].
this is the actual problem that how I can remove this gravity factor from acceleration to get the linear acceleration when i move. The one way is to transform it to ENU coordinate system and then processing the values, But i am not sure when i transform to ENU then what values ( 0 0 -9.8) should i get and whether i am using the correct RM?
 
This sounds more like an accelerometer issue, rather than a mathematical issue. The Matrix you're using is fine. What I was saying in my earlier post was if the object is sitting stationary then there should not be a resultant acceleration in any frame. Yes gravity is a constant force acting on the object at a rate of 1g, however it is being reacted by your hand (or any hard surface) at a rate of -1g.

I honestly do not know much about accelerometers at the moment, however, I would suggest you check the settings on the device. It simply sounds like a "zeroing" issue or more formally, a taring issue. Basically the device should not output a resultant acceleration when there is none.
 

Similar threads

  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 3 ·
Replies
3
Views
1K
  • · Replies 1 ·
Replies
1
Views
7K
Replies
1
Views
988
  • · Replies 2 ·
Replies
2
Views
12K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 54 ·
2
Replies
54
Views
6K
  • · Replies 5 ·
Replies
5
Views
4K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 3 ·
Replies
3
Views
1K