-
Notifications
You must be signed in to change notification settings - Fork 28
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
Fix calibration matrices order in HumanStateProvider #270
Conversation
Hi @kouroshD @RiccardoGrieco, if you can have a quick look at this PR we can merge it |
5f6e880
to
a4283e4
Compare
@lrapetti we rebased the branch on top of the master in order to make a test for the upcoming demo. |
ok, feel free to push it to the branch in case everything is fine, and then we can proceed merging |
@lrapetti Can you please elaborate a bit more detailed here, it is not clear to me exactly the purpose of the PR. I see we are changing the place of applying a transformation, hence their order; but could not follow why. Thanks. |
Sure, here is what happens. Consider Consider the case in which we want to use fixed-based IK (all the sensors measurement are given w.r.t. the base) BeforeThis is what was heppening before this PR:
AfterAfter the PR, things are fixed by the fact that we use the base link as reference instead of the base frame
|
Thank you @lrapetti . Now it is clear, also after checking with more attention to the code. I am confused a bit with these naming! If you want to explain it here, feel free. |
Thanks @kouroshD! |
Thank you @lrapetti . Did you read this comment by chance? #270 (comment) |
Sorry @kouroshD! I missed that! I will check it now |
Yes, I imagined. Don't worry, take your time. |
Sorry @kouroshD, I didn't understand what is your doubt. Also, I think the last two links are not redirecting me correctly. |
Sorry @lrapetti , my bad. human-dynamics-estimation/devices/HumanStateProvider/HumanStateProvider.cpp Lines 1151 to 1159 in ef6ac99
We are saying if useFixedBase then perform some actions, then inside that function we have in
|
@kouroshD I see your point. That is due to the fact that either if we are forcing the system to be in fixed-base condition or not, we will have to define a frame that is the base frame of the floating base system (see
baseFrame
|
Changing the order of the call to the fixed rotation and relative rotation computation. This allows using the fixed base together with the fixed rotation fixing #269.
I have already tested the usage of a fixed rotation for the base frame with few sensors. I will test it again in a more complex scenario before merging