-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Check frame conversions (NED->ENU ROS) #49
Comments
I did the same, inverting the Y & Z axis for orientation and acceleration. Don't forget to switch X and Y for the magnetometer and invert Z. |
Why magnetometer use different conversion? |
Normal NED <> ENU conversion is swap X and Y and invert Z. What is the invert Y & Z conversion for? |
Is it front not X? Or it is for body? I do rotation on X 180° => Y & Z inverts. |
Acceleration and angular rates are related to the body frame itself so 180 degrees rotates it according to the body frame that is needed for ROS. Using ROS's standard X is forward, Y is left and Z is up. Using the absolute frame ENU, East is X and forward, North is Y and left and Up is Z and Up. So going from NED to ENU, those changes need to be made to follow the ROS standard. I have not tested the magnetometer since I use my APM unit in an area with magnetic interference but I will do so soon. |
I can test, but don't know how to visualize it and where it should point (North?). |
Hard to visualize. The maximum values for XYZ should be at ENU, so when X is pointing East it should be the largest value and West the smallest. For North and South, it should be zero. I can test later today. |
Change conversion to swap X & Y, invert Z.
3DR GPS module arrow pointing to East, and x ~= 101000.0 when pointing to West. |
I believe it is correct as well, I tested with my 3DR GPS/compass. |
I need to know, what quaternion conventions are we using on the IMU data topics? |
Invert Y & Z, then convert (tf:Quaternion.setRPY). |
Released 0.6. This theme still opened for hotfix (if any). |
I was checking this... If I point the Pixhawk horizontally (flat), I get +9.8 on Z Is that correct??????? In ENU, will X be pointing forward and Y be pointing right? |
Y must point to left. Try imu rviz plugin to check. In my case vector pointing up in all poses (see my screenshots in #33). |
New question: how to convert quaternion? |
What quaternion to euler angles? https://www.dropbox.com/s/my1fvqr81rtfpoe/quaternion-rotations-tested_g.xls On Thu, Jul 24, 2014 at 10:03 PM, Vladimir Ermakov <[email protected]
Regards, M: +61 (0) 413 902 541 |
No, convert frame ENU→NED. |
I believe it is: |
@mhkabir and @ggregory8 I call your attention also to this. |
I have a doubt regarding the conventions, which I need to clarify to add to my thesis: |
Initially it confuse me too, but later I found that the x-forward refers to a body-fixed frames. |
Yes. At least i use that convention in code. |
@mhkabir Look at the diagram of the last TSC21's post for body-frame. |
Thanks. Got it already :)
|
@vooon |
The mag is absolute and the others are relative. |
* master: (52 commits) travis: update coverity scan plugin: sts_time: Code cleanup and codestyle fix. plugin: command: Quirk for older FCU's (component_id) plugin: rc_io: #185 Use synchronized timestamp. plugin: gps: #185 use synchronized timestamp uas: Fix ros timestamp calculation. plugin: add synchronisation to most plugins (fixed) readme: Add notes about coordinate frame conversions #49 travis: add gitter notification Added Gitter badge mocap_pose_estimate: Switched from pose to poseStamped. 0.9.4 Prepare correction release 0.9.4 plugin: sys_time: enable EMA 0.9.3 Prepare minor release 0.9.3 #182 Initiliser fix plugin: visualisation - Fixes CI build plugin: visualisation plugin: visualization minor patch ...
Hi, everyone |
It is not a global ENU -> NED modified, but a body one, see discussion on mavlink/mavros#49
Current implementation use this definitions av8n.com of NED and ENU. Conversion is just invert Y & Z axis (all right-handed).
But according to CoordinateFramConventions it is left-handed?
The text was updated successfully, but these errors were encountered: