-
Notifications
You must be signed in to change notification settings - Fork 16
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
Whole Body Self Collision Barrier #94
Whole Body Self Collision Barrier #94
Conversation
…/pink into feat/hpp_fcl_barrier
Co-authored-by: Stéphane Caron <[email protected]>
…/pink into feat/hpp_fcl_barrier
Pull Request Test Coverage Report for Build 9829262525Warning: This coverage report may be inaccurate.This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.
Details
💛 - Coveralls |
Pull Request Test Coverage Report for Build 10041989314Warning: This coverage report may be inaccurate.This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.
Details
💛 - Coveralls |
Sorry for the absence, we've rewritten an example as you've suggested. Now only srdf file left, which represents which collision pairs should be removed. Additionally, we've implemented the tests, which cover whole new functionality. To sum up, we've implemented all discussed fixes, rewrote an example and added tests. Waiting for your feedback! |
@stephane-caron I think everything is ready from our side to merge, so if you see no problems, I think we could merge those barriers. What do you think? |
My apologies for taking longer than usual on this PR (due in part to attending a conference last week). The PR is in excellent condition, let's merge. Thank you for this excellent work 🤩 |
This PR continues a series of PRs, aimed at the introduction of Control Barrier Functions, mentioned in #86. Namely, me and @simeon-ned implemented a whole-body self-collision avoidance barrier, based on Pinocchio's collision model. Namely, it ensures the distance between any collision pair is greater than constant:
where$N$ is number of collision pairs, $p^k_i$ is the $k-th$ body in $i$ -th collision pair,
$d(p^1_i, p^2_i)$ is the distance between collision bodies in the pair,$d_{min}$ is minimal distance between any collision bodies.
and
The functionality is demonstrated on the custom model of two Kuka iiwa14 manipulators:
Screencast.from.06-25-2024.01.20.45.PM.webm
There are some notable modifications outside of the barrier class:
configuration
now (optionally) accepts collision model and path to ansrdf
file to handlecollisions. Note that back-compatibility is preserved, and collisions are not computed if the model is not provided
We are kindly asking you to review those changes and make any comments on things you think are done incorrectly.
Note that while it is more expressive than Spherical Barrier, it is also much more computationally expensive. Therefore, we believe that those two barriers have different application scenarios, and should co-exist in this package.
Any further suggestions would be welcome, waiting for your feedback!
P.S. Unit Tests have not been added yet, we want first to make sure we agree on the details of implementation, and then we would quickly add them before merging.