-
Notifications
You must be signed in to change notification settings - Fork 2
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
ergoCub 1.0 S/N:000 β Inconsistency in the orientation data between head IMU (assumed to be correct) and feet IMUs (possibly wrong) #1649
Comments
Hi @G-Cervettini, analyzing this issue We discovered that when we fixed the measurement frame for the accelerometer gyro etc. changing the placement option of the chip, we forgot to consider that the euler representation we use in YARP is different from any orientation definition that imu bosch chip supports (windows or android standard). For this reason, we need to check both the The fix for the rfe should be already done by @davidetome, as soon as we receive positive feedback we will move to the other boards. |
Ciao @G-Cervettini ! after this fix, we also fixed the We are waiting for your kind positive feedback to merge this PR |
Ciao @davidetome, thanks for your fix! I will test again and update you asap.
|
|
The robot got broken, we've to wait for the fix |
Hi @davidetome, afik the robot has been fixed. |
Hi @sgiraz and @davidetome tomorrow morning we are going to flash the firmware and and test it |
One question before flashing. Which version of yarp, icub-main and icub-firmware-shared is required to have the firmware up and running? |
Ciao @GiulioRomualdi , sorry for the late reply, I missed your comment, the FW modified is based on the last in
|
Ciao @davidetome, this morning we tested the firmware on the strain2 as follows:
We flashed the firmware you gave us in #1649 (comment) and we repeated the experiment again Original firmware strain2 v2.2.0
New firmware strain2 v2.3.0
So now I think there is a problem in the pitch You can find here the associated datasets: strain_imu_test.zip |
In fact @davidetome and I had some doubt about the pitch sign that was the only one different from the rfe. This means that we can get rid of the #ifdef ! See |
fix done , see : |
I would keep it open until the final user test is passed. |
Ciao @GiulioRomualdi! New binaries are available in Could you please test them as suggested by @pattacini? Then we can close the issue ππ» |
Hi @davidetome, thank you for the effort. I will try to test it this week if I find a free slot on ergoCub. if this is not possible, a possibility is to perform the test on ergoCubSN001 as soon as it is available |
Hi all! I found a free slot on the robot and I tested the new firmware taken from robotology/icub-firmware-build@a910398
Everything is working as expected π Thank you all for the help! |
That's great! |
Robot Name π€
ergoCub 1.0 S/N:000
Request/Failure description
Misalignment between the expected IMU rotation and measured one, in a similar way as shown in the issues https://github.com/icub-tech-iit/task-force-miscellanea/issues/126 and icub-tech-iit/ergocub-software#129.
Detailed context
Yesterday with @GiulioRomualdi and @DanielePucci we tested my imu-based floating base estimator on the real robot for the first time and the data stream from right foot IMUs showed an unexpected behavior.
The estimator is supposed to track the robot pose changes based on IMU data and it is working in simulation.
Here the behavior of the estimator in yesterday's test on the robot
NO CORRECTION:
2023_10_03_14_13_34_NoCorrection.mp4
Having a look at this result, it looked like Roll and Pitch were switched wile Yaw had the wrong sign. Thus, I tried to apply this correction to imu data and the result matched much better the expected behavior
CORRECTED:
2023_10_03_14_10_57_Corrected.mp4
Thus, I'm involving icub-tech because there may be something to fix in the F/T firmware regarding RPY data.
In my estimator I'm using both the right foot IMUs data and applying the
iDynTree::geodesicL2MeanRotation()
on them.With @GiulioRomualdi we also tried to consider the front and rear sensors separately and they seem to behave differently from each other:
front_vs_rear.mp4
In the previous video the root link imu data are used as ground-truth and the FK-propagated right foot orientation (thick axes) is compared with raw data from front and rear foot IMUs (thin axes).
In particular the front imu seems to show a much bigger error than the rear one.
Thanks in advance for the support!
Additional context
Here the mat files of the logged data:
03-Oct-2023_Feet_IMUs_Base_Estimation.zip
How does it affect you?
I am working on a imu-based floating base estimation algorithm and I need IMUs data to be consistent for my code to behave as expected.
The text was updated successfully, but these errors were encountered: