-
Notifications
You must be signed in to change notification settings - Fork 257
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
Some convention questions #10
Comments
Hi @qiayuanliao , is there any feedback on this? Thanks |
Sorry for the delay. I will answer these questions after October 29. |
Ok no worry |
Hi @qiayuanliao , is there any feedback on this? Many thanks in advance. |
Very sorry for the delay. My TOEFL test was rescheduled to Nov. 1st (yesterday) cause of COVID-19. Since there are no drafts in the GitHub issue comments. I posted this comment before I finished, and I will update this comment gradually. I suggest that you ask questions after I am finished. Overall, there are three different representations of state and input in the legged_control which are all brought by OCS2 (not my fault).
Answers to your questions: |
This comment was marked as outdated.
This comment was marked as outdated.
Hello, has this problem been fixed in the code? I can't find the relevant commit, thank you! @qiayuanliao |
Hello, I am sure that the original code is correct after checking the code and having a private conversation with @edward9503. |
Hello, could anyone tell me legs order ?? |
Hi @qiayuanliao ,
Thanks for sharing the code!
When I use the code and go through it, I find some questions about the convention of some vectors. More specifically:
Is this order/convention correct?
For the foot contact measurement, is the order like this?
"LF_FOOT", "RF_FOOT", "LH_FOOT", "RH_FOOT"
When you do the
pinocchio::forwardKinematics
in "wbc.cpp", I found that the convention of expectedmeasured_v_
is different, as you are using global linear velocity as the linear part, and Euler angle ZYX's derivatives as the angular part. However, as you can see here, a local base linear and angular velocity are expected as the first six elements. So I wonder why you can do that in a different way?Following the idea from 3., previously when I used Pinocchio to load the URDF file of Anymal C, the dimension of
model.nq
is 18 + 1 = 19, because it uses quaternion to express the orientation. But I notice that you can use Euler angle to present the orientation andmodel.nq
in your case returns 18. I was wondering what did you do to achieve it?Again following the idea from 3. and 4., let's say I use
pinocchio::getFrameJacobian(model, data, info_.endEffectorFrameIndices, pinocchio::LOCAL_WORLD_ALIGNED, jac)
to get the jacobianjac
of the FL_Foot in the global frame. If I wanna calculate the global velocity of the FL_Foot, I need to usexdot = jac * v
for the calculation. Then, what is the convention of thev
in this case? Is itv = [local_base_velocity_linear, local_base_velocity_angular, joint_velocities]
as described here, orv = [global_base_velocity_linear, global_base_ZYX_derivatives, joint_velocities]
followed by your convention?Thanks in advance.
The text was updated successfully, but these errors were encountered: