Skip to content
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

Support closed kinematics #750

Open
ahoarau opened this issue Oct 15, 2020 · 5 comments
Open

Support closed kinematics #750

ahoarau opened this issue Oct 15, 2020 · 5 comments

Comments

@ahoarau
Copy link
Member

ahoarau commented Oct 15, 2020

Hi all,

This is just a feature request. I think it would be useful to have closed loop kinematics support such as :
image

It may start by have a "passive" chain that would follow the other one, the "active". That would mean solve an IK problem in forward kinematics.
what do you think ?

@jcarpent
Copy link

jcarpent commented Oct 15, 2020

I don't know what is the current status of using Pinocchio inside iDyntree, but soon, Pinocchio will support such kind of mechanisms both at the kinematic and dynamic level.
So, if relying Pinocchio remains valid, it will be normally straightforward.

@traversaro
Copy link
Member

Hi @ahoarau ! In theory iDynTree::Model is already designed to support closed kinematics, the problem is that most of the algorithms does not support it, starting from computeFullTreeTraversal that in the case of closed kinematics model should provide a suitable spanning tree of the closed kinematics model. In general any improvements to better support closed kinematics in iDynTree is welcome, but at the moment I don't think anyone is working in that direction.

@traversaro
Copy link
Member

I don't what is the current status of using Pinocchio inside iDyntree, but soon, Pinocchio will support such kind of mechanisms both at the kinematic and dynamic level.
So, if relying Pinocchio remains valid, it will be normally straighforward.

Hi @jcarpenter, the work on building a shim on the top of Pinocchio that loads models from iDynTree::Model and offer a functionality similar to an API similar to iDynTree::KinDynComputations is currently tracked in the separate repository (https://github.com/dic-iit/idynfor) and at the moment we don't have an ETA for when the work on it will start. However, I imagined that even in that case to support closed kinematics chain use cases the APIs of iDynTree::KinDynComputations would need to be revised accordingly.

@traversaro
Copy link
Member

fyi @FabioBergonti , given that you are working on closed kinematics (even if you are not using iDynTree at the moment).

@ahoarau ahoarau closed this as not planned Won't fix, can't repro, duplicate, stale Sep 10, 2023
@traversaro traversaro reopened this Nov 14, 2024
@traversaro
Copy link
Member

Discussing about this in a meeting with @CarlottaSartore @xela-95 @rob-mau , I think I realized some aspect for which it would make sense to support closed-loop structures in iDynTree.

I am not sure it would make sense to try to support closed-loop structures in Forward/Inverse Kinematics and Dynamics (at least in iDynTree, higher-level libraries such as IK/TSID implemented in https://ami-iit.github.io/bipedal-locomotion-framework/namespaceBipedalLocomotion_1_1IK.html effectively already solve open mechanical structure under constraints.

However, I think it would made sense to do the following:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants