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

MoveIt Servo includes a default joint_limit_margins that only works with a 7dof arm #2843

Closed
EzraBrooks opened this issue May 22, 2024 · 2 comments · Fixed by #2970
Closed
Assignees
Labels
bug Something isn't working persistent Allows issues to remain open without automatic stalling and closing.

Comments

@EzraBrooks
Copy link
Member

EzraBrooks commented May 22, 2024

Description

The default value for joint_limit_margins in Servo is [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], which leads to it crashing confusingly for any arm with greater or fewer dofs than 7.

joint_limit_margins: {
type: double_array,
default_value: [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1],
description: "Added as a buffer to joint limits [radians]. If moving quickly, make this larger.",
validation: {
lower_element_bounds<>: 0.0
}
}

Your environment

  • ROS Distro: Humble
  • OS Version: Ubuntu 22.04
  • Source @ f02aa93
  • CycloneDDS

Steps to reproduce

  • Attempt to run Servo against an arm of any dofs other than 7 without overriding joint_limit_margins.

Expected behaviour

Either:

The default value should be auto-populated as a vector of the same length as the active move group that contains 0.1 in each index,

or

No default value should be set, and the user should be informed that they must set joint_limit_margins.

Actual behaviour

Servo crashes with an error message telling you that you must have the same number of elements in joint_limit_margins and your active move group. Since you didn't set joint_limit_margins, it isn't present in the "parameters YAML file" mentioned in the error message, so this is a bit confusing.

Backtrace or Console output

(sorry, would include as text, but was sent as a screenshot to me)

image

@EzraBrooks EzraBrooks added the bug Something isn't working label May 22, 2024
@dohyeoklee
Copy link

Are you still suffering from this issue?
For me, I also got the same kind of error, so I changed the source code and re-build it.
(I use ur5 so I changed [0.1,0.1,0.1,0.1,0.1,0.1,0.1] to [0.1,0.1,0.1,0.1,0.1,0.1])
It actually solved the problem but another error came out.
So I re-installed everything from ubuntu to moveit.
(original: ubuntu 22.04, ros2 iron, moveit2 from source build
-> alternative: ubuntu 22.04, ros2 humble, ros2 middleware as cyclone dds, moveit2 from binary install, ros2 control install)
It still causes joint_margin error, but everything works perfect. (no crash)
From my guess, the joint_margin error itself is not the cause of this issue, it's just the result.
So I recommend you to re-install and change some install methods.

Copy link

This issue is being labeled as stale because it has been open 45 days with no activity. It will be automatically closed after another 45 days without follow-ups.

@github-actions github-actions bot added the stale Inactive issues and PRs are marked as stale and may be closed automatically. label Aug 12, 2024
@sea-bass sea-bass added persistent Allows issues to remain open without automatic stalling and closing. and removed stale Inactive issues and PRs are marked as stale and may be closed automatically. labels Aug 12, 2024
@sea-bass sea-bass self-assigned this Aug 13, 2024
@github-project-automation github-project-automation bot moved this to ✅ Done in MoveIt Aug 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working persistent Allows issues to remain open without automatic stalling and closing.
Projects
None yet
3 participants