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

Adds null-space control option within OperationSpaceController #1557

Conversation

ozhanozen
Copy link
Contributor

@ozhanozen ozhanozen commented Dec 17, 2024

Description

This PR adds an option to enable null-space control within OperationSpaceController (following the discussions in #913).

Details

Currently, OperationSpaceController controls only the task space, which results in joint movements within the null-space of redundant robotic manipulators. In general, it is desirable to have some control over the robot null-space, e.g., to prevent the joints from going near their limits. Hence, the PR adds the following:

  • An optional nullspace (position) control integrated into OperationSpaceController. This controller attracts the robot joints to provided targets whereas possible, in parallel to the task-space target.
  • Test cases for OperationSpaceController that use null-space control.
  • Updates to the related tutorial script and documentation to use and describe null-space control.
  • Integration of (optional) null-space control to OperationSpaceControllerAction with predefined joint targets, e.g., default joint positions, joint centers, zero joint position.
  • Integration of null-space control to "Isaac-Reach-Franka-OSC-v0" manager-based environment.

Null-space control utilizes either the dynamically consistent Jacobian inverse or the Moore–Penrose inverse, depending on whether the full inertia matrix is available.

Type of change

  • New feature (non-breaking change which adds functionality)
  • This change requires a documentation update

Checklist

  • I have run the pre-commit checks with ./isaaclab.sh --format
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • I have updated the changelog and the corresponding version in the extension's config/extension.toml file
  • I have added my name to the CONTRIBUTORS.md or my name already exists there

@ozhanozen ozhanozen changed the title Adds null-space control option within OperationSpaceController Adds null-space control option within OperationSpaceController Dec 17, 2024
Co-authored-by: Kelly Guo <[email protected]>
Signed-off-by: Özhan Özen <[email protected]>
@kellyguo11 kellyguo11 merged commit 71df868 into isaac-sim:main Dec 18, 2024
4 of 5 checks passed
@ozhanozen ozhanozen deleted the feature/osc-nullspace branch December 18, 2024 15:15
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

Successfully merging this pull request may close these issues.

2 participants