-
Notifications
You must be signed in to change notification settings - Fork 935
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
Pilz planner merge #1893
Pilz planner merge #1893
Conversation
...it_planners/pilz_trajectory_generation/test/test_robots/abb_irb2400/launch/move_group.launch
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Really excited to see this PR, thank you!
moveit_planners/trapezoidal/doc/MotionBlendAlgorithmDescription.tex
Outdated
Show resolved
Hide resolved
moveit_planners/trapezoidal/include/trapezoidal_trajectory_generation/cartesian_limit.h
Outdated
Show resolved
Hide resolved
moveit_planners/trapezoidal/include/trapezoidal_trajectory_generation/cartesian_limit.h
Outdated
Show resolved
Hide resolved
Should the "WIP" be removed at this point? |
moveit/moveit_msgs#65 is required first. So travis currently is failing because of missing message(s). |
|
Ready for review now @mamoll @v4hn. Still moveit/moveit_msgs#65 needs to be merged first to make travis pass. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great integration tests!
Great documentation with latex!
I expanded all the files and skimmed them quickly with Page Down. There is so much code!
moveit_planners/pilz_industrial_motion_planner/doc/MotionBlendAlgorithmDescription.fls
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have seen some more files, I'm not sure that they should be merged here:
- There are several image files:
moveit_planners/pilz_industrial_motion_planner/test/acceptance_tests/img/acceptance_test_lin_img*.png
What is their role? - In
moveit_planners/pilz_industrial_motion_planner/test/test_robots/frankaemika_panda
you seem to have a copy ofpanda_moveit_config
/moveit_resources/panda_moveit_config
. Please use the latter one instead of introducing yet another copy here. - This PR includes
moveit_planners/trajopt/package.xml
, which is unrelated.
Generally, I'm not convinced, why this huge repo should be merged with the core MoveIt repo at all (@davetcoleman, can you please comment on this?)
Merging this here, I see the risk that it will become harder for Pilz to merge changes, because they need to pass our review process. On the other hand, Pilz will need to continue maintaining this code base, as I think no current MoveIt maintainer will sign to be responsible for this new code base.
I didn't actually look into the source files (because this PR is so huge), but only skimmed through the files on a very high level.
Apart from this, the planner is a great contribution and we should definitely work on increasing the visibility of this package. However, to increase visibility, it would suffice to provide tutorials and interlink with the remaining MoveIt documentation - which needs to be done anyway.
moveit_planners/pilz_industrial_motion_planner_testutils/package.xml
Outdated
Show resolved
Hide resolved
@rhaschke the discussion on whether to add this to the moveit repo was already decided on in past maintainer meetings and here: The benefits are outlined there. Something I didn't mention there but is also relevant: I don't see why the scope of MoveIt, as well as the scope of core ROS packages, must be limited to what was created at Willow Garage. I believe adding new major features and tightly integrating them into MoveIt, as we're doing here, is beneficial for consistent maintenance, usability, and discoverability. Overall I think this PR is huge as we're importing a whole project, and our best approach to changes is to do follow up PRs for fixups.
For this reason we have plans here for the following:
|
Thanks, @rhaschke for raising the point of making it harder for us to get our changes into the code. We have also had this discussion internally bu agreed that under the condition of us being maintainer/core contributor it will be manageable. While we expect some support in terms of maintenance we are of cause willing to do our fair share in terms of maintenance, just the same way we maintain all our other code. I also want to apologize for the sometimes sloppy job with the inclusion of wrong files but it is also a big PR for us. |
## Add support for C++11, supported in ROS Kinetic and newer | ||
add_definitions(-std=c++11) | ||
add_definitions(-Wall) | ||
add_definitions(-Wextra) | ||
add_definitions(-Wno-unused-parameter) | ||
add_definitions(-Werror) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To maintain Windows compatibility, it probably make sense to only add this GCC/Clang-specific flags under an if, see for example https://github.com/ros-planning/moveit/blob/379acf91aa3630f320db77ba85b1ca294310b0bc/moveit_core/CMakeLists.txt#L8 .
cc @seanyen
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could we do this in a separate PR afterwards?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could we do this in a separate PR afterwards?
I guess this is up to the maintainers, I just noticed this by looking up the (great) content added.
I'm fine to merge this PR in general, just wanted to raise some concerns, because I stumbled over the issue and repo links pointing to the old github repository. As far as I understand, Pilz will move maintenance to this repo only. Having @jschleicher and @ct2034 in the maintainer/contributor team would be great. @ct2034, could you please comment on the (seamingly) superfluous files mentioned in #1893 (review)? |
added during testing
to copy the templates for auto-generated packages. Changing parameters via MSA-gui is left for future PR(s).
Thank you very much @henningkayser ! The latest build failure seems to be an unrelated docker issue. I'd suggest a squash-merge. |
<param name="planning_plugin" value="$(arg planning_plugin)" /> | ||
<param name="request_adapters" value="$(arg planning_adapters)" /> | ||
<param name="start_state_max_bounds_error" value="$(arg start_state_max_bounds_error)" /> | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't this have the new capabilities, like here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, absolutely. To allow passing in user-defined capabilities as well, I'd suggest to pass the capabilities
argument down to the included pipeline launch file(s) and append the planner-specific ones there: 99c059f
I'll re-generate the configuration inside moveit_resources based on this template.
...oveit_config_pkg_template/launch/pilz_industrial_motion_planner_planning_pipeline.launch.xml
Outdated
Show resolved
Hide resolved
…unch/pilz_industrial_motion_planner_planning_pipeline.launch.xml Co-authored-by: Henning Kayser <henningkayser@picknik.ai>
append the planner specific templates to the user-argument. Therefore we pass the user-defined capabilities down to the planning pipeline launch files via arguments.
The RPBT PR is merged! I think this is ready to go. @jschleicher would still be nice to improve usability for future users via @henningkayser's suggestion:
|
@davetcoleman Thanks for merging moveit_resources. Actually, the templates have already been added here. |
Absolutely cannot wait to see this with multiple planning pipelines. Super excited for these features <3 |
Thank you very much. @henningkayser |
🍾 |
* Add pilz_industrial_motion_planner to moveit_planners * Update license, document consent to this change by contributers * Fix formatting, code style, catkin_lint, clang-tidy * Add and update tests, use new prvt_moveit_config from moveit_resources * New codeowners for pilz_industrial_motion planner * Add pipeline configuration teimplates to MSA Co-authored-by: Joachim Schleicher <J.Schleicher@pilz.de> Co-authored-by: rfeistenauer <r.feistenauer@pilz.de> Co-authored-by: Giuseppe Sansone <g.sansone@pilz.de> Co-authored-by: Immanuel Martini <i.martini@pilz.de>
* Add Pilz industrial motion planner (#1893) * Add pilz_industrial_motion_planner to moveit_planners * Update license, document consent to this change by contributers * Fix formatting, code style, catkin_lint, clang-tidy * Add and update tests, use new prvt_moveit_config from moveit_resources * New codeowners for pilz_industrial_motion planner * Add pipeline configuration teimplates to MSA * Fix file not found error (adjust to melodic `moveit::core::PlanningScene::isEmpty()` functions) Co-authored-by: Christian Henkel <post@henkelchristian.de> Co-authored-by: Joachim Schleicher <J.Schleicher@pilz.de> Co-authored-by: rfeistenauer <r.feistenauer@pilz.de> Co-authored-by: Giuseppe Sansone <g.sansone@pilz.de>
Changing Planning Pipeline Reference to match moveit/moveit#1893
Description
Merging pilz trajectory generation into moveit as suggested here: #1800
Related PRs
merge before this:
merge after this:
pilz_command_planner
intopilz_industrial_motion_planner
in moveit PilzDE/pilz_robots#316Checklist