-
Notifications
You must be signed in to change notification settings - Fork 114
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
Wrong coordinate system for SEN 14001? #43
Comments
I observed values from the serial monitor, which shows data directly from Razor_AHRS, I get this coordinate system: So it looks like Razor_AHRS has the same coordinate system as REP-103, which is:
So |
See this ENSTABretagneRobotics#43 for more details.
This is a bit unexpected... The conventions should be the one described here : Razor-AHRS/razor-9dof-ahrs#57 (comment) ... See also https://github.com/Razor-AHRS/razor-9dof-ahrs/wiki/tutorial (around the middle of the page, the screenshot of Razor_AHRS_test.pde). With the serial monitor, do you get yaw=0 when towards the North, yaw=90 towards the East, yaw=-90 (or 270) towards the West? If it is not the case, that means that you probably use a different/modified firmware inside the Razor (also, do you use the default options?), or maybe your Razor is different... For the accelerations, note this : https://github.com/KristofRobot/razor_imu_9dof/blob/fb23b76e4727cd294a84c453506ed6d5eeb7562e/nodes/imu_node.py#L240 |
Thank you so much for getting back!
I get yaw = 90 towards east. However when I orient it to north, it does not go to 0. Also for west it does not go to -90. I think my magnetometer is faulty. See this GIF, as I rotate the Razor around the Z axis, the visualitzation does not follow the actual movement. I used Razor_AHRS_test.pde for the above sketch. For rotations around X & Y axes, it follows (this part is not in the GIF).
I have not changed anything from I think the firmware inside the Razor is different, maybe Sparkfun changed it. |
UPDATE: The incorrect yaw on the horizontal plane was due to non-calibrated sensors. This resulted in the IMU firmware applying incorrect drift correction for the gyroscope and magnetometer. Source: Troubleshooting: Unstable yaw (aka heading aka azimuth) readings / Yaw drift. After calibrating the sensors, my
UPDATE 2: It turns out IMUs measure acceleration opposite of gravitational acceleration in the static state. Please see these posts:
So the @lebarsfa Your suspicion was right about the negated accelerations. |
I am using Razor 9DOF IMU (hardware version SEN14001). The code in imu_node.py converts the readings from Razor AHRS firmware to ROS standards (REP 103). However when I test the orientations by measuring the acceleration due to gravity (9.8 m/s^2) on each axis by echoing messsages from the topic
imu
(I am runningroslaunch razor_imu_9dof razor-pub.launch
), I get very different orientations. See these Pictures:This means the axis are oriented this way:
This is the left handed coordinate system, whereas ROS uses right handed coordinate system.
Am I missing something? I ask because according to PR #34 this repo supposed to work with SEN14001?
The text was updated successfully, but these errors were encountered: