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

[MSA] Merge main into feature/msa (Part II) #1240

Merged
merged 216 commits into from
May 12, 2022

Conversation

DLu
Copy link
Contributor

@DLu DLu commented May 11, 2022

Description

Merging the changes from upstream into the feature branch.

Checklist

  • Required by CI: Code is auto formatted using clang-format
  • Extend the tutorials / documentation reference
  • Document API changes relevant to the user in the MIGRATION.md notes
  • Create tests, which fail without this PR reference
  • Include a screenshot if changing a GUI
  • While waiting for someone to review your request, please help review another open pull request to support the maintainers

rhaschke and others added 30 commits October 21, 2021 14:41
Clear all references to RobotModel before destroying the corresponding
RobotModelLoader.
* waitForAction(): remove NodeHandle argument

* The NodeHandle was just for NodeHandle::ok(), which can be handled by ros::ok() as well.

* Fix initialization of params, etc. that depend on MoveGroupNS

* When the MoveGroupNS has changed, we should re-initialize all these
  params, subscribers, and topics.
  Thus having them in a central place is helpful ;-)

* Fix namespaces as pointed out by @v4hn

* Simplify nh_ naming

* update comments
)

There's no hard reason to do it this way or the other,
but a user reported unverified issues with the global include.
"attach_posture" is plain wrong.

I don't see why clang-tidy did not find this before.
to resolve links for attached objects as well
Merge branch 'pr-master-state-rigidly-attached-parent'
…gs (moveit#2928)

While we need to pass execution_type to fake_moveit_controller_manager.launch,
the controller_manager.launch files of real-robot shouldn't be required
to define this argument. However, if they don't roslaunch fails with an
`unused args` exception (see moveit#2786).
Passing arguments via pass_all_args should solve that issue.
* Switch CCOV to build type Debug
  RelWithDebInfo was using -DNDEBUG, thus ignoring all assertions.
  Also use -fno-omit-frame-pointer to have better coverage analysis.
* Use lcov-action to generate coverage info
* Unify syntax of `if` conditions
* fix enforce position bug

* remove unnecessary variable

* make clang tidy happy

* Update my comment

* implement same logic as in the moveit2! repo

* fix copy-pase error

Co-authored-by: Michael Wiznitzer <michael.wiznitzer@resquared.com>
Co-authored-by: AndyZe <andyz@utexas.edu>
- Downgrade ERROR to WARN
- Report affected joint name
- Quote (possibly empty) planner id
When planning an arm motion, Pilz's PTP planner shouldn't complain (and bail out)
on missing joint limits of hand joints!
Just complain about negative / zero values.
Otherwise, on a failure, the implicitly used success() will skip the step.
Gazebo requires a fixed joint from world to the first robot link.
This resembles the virtual_joint of SRDF.
However, the RobotModel parser issues the following warning:
Skipping virtual joint 'xxx' because its child frame 'xxx' does not match the URDF frame 'world'
Fixes the following error (occurring since 61d18f2)
```
[FATAL] ros.moveit_ros_planning.trajectory_execution_manager:
  Exception while loading controller manager 'robot':
  According to the loaded plugin descriptions the class robot
  with base class type moveit_controller_manager::MoveItControllerManager does not exist.
```

As we introduced `pass_all_args="true"`, the value of the argument
`moveit_controller_manager` was the robot name.
There are 3 basic MoveIt controller manager plugins:
- fake = `moveit_fake_controller_manager::MoveItFakeControllerManager`
  Used in demo.launch. Doesn't really control the robot, but just
  interpolates between via points. Allows these execution_types:
  - via points: just jumps to the via points
  - interpolate: linearly interpolates between via points (default)
  - last point: jumps to the final trajectory point (used for fast execution testing)

- ros_control = `moveit_ros_control_interface::MoveItControllerManager`
  Interfaces to ros_control controllers.

- simple = `moveit_simple_controller_manager/MoveItSimpleControllerManager`
  Interfaces to action servers for `FollowJointTrajectory` and/or `GripperCommand`
  that in turn interface to the low-level robot controllers (typically based on ros_control)

However, so far move_group.launch distinguished between `fake` and `robot` only.
The argument moveit_controller_manager now allows switching between all 3 variants.
Adding more *_moveit_controller_manager.launch files allows for an extension of this scheme.
- Reading both, the default and the existing package's sensors_3d.yaml
  into the config, the config file was growing by 2 configs each time.
- Not visiting the Perception tab, was writing the default config with 2 entries
- Selecting "None" was writing an invalid config:
  sensors:
    - {}
    - {}
stephanie-eng and others added 8 commits May 10, 2022 13:33
Signed-off-by: Gaël Écorchard <gael.ecorchard@cvut.cz>
Co-authored-by: jeoseo <jeongwooseo2012@gmail.com>
…ion algorithm (moveit#1195)

* A new function for common time-param calculations

* Flesh out the second computeTimeStamps function

* Reading of the custom limits

* Add a unit test

* Revert comment changes about exceptions

* Small efficiency improvements

* Add computeTimeStamps() overload to the base class

Co-authored-by: Jafar <cafer.abdi@gmail.com>
…1221)

* Move common functionality to utility functions
* Add a utility function to read RobotModel bounds
* Add a unit test for the new version of computeTimeStamps()
* Clean up Doxygen
* Use ruckig::DynamicDOFs everywhere
@mergify
Copy link

mergify bot commented May 11, 2022

Please target the main branch for development, we will backport the changes to feature/msa for you if approved and if they don't break API.

@codecov
Copy link

codecov bot commented May 12, 2022

Codecov Report

Merging #1240 (37898f8) into feature/msa (f12f156) will increase coverage by 2.14%.
The diff coverage is 63.18%.

@@               Coverage Diff               @@
##           feature/msa    #1240      +/-   ##
===============================================
+ Coverage        59.13%   61.27%   +2.14%     
===============================================
  Files              275      274       -1     
  Lines            23732    24925    +1193     
===============================================
+ Hits             14032    15270    +1238     
+ Misses            9700     9655      -45     
Impacted Files Coverage Δ
...lude/moveit/collision_detection/collision_matrix.h 100.00% <ø> (ø)
...llision_detection/src/collision_octomap_filter.cpp 0.00% <0.00%> (ø)
...src/bullet_integration/bullet_cast_bvh_manager.cpp 51.43% <0.00%> (+0.71%) ⬆️
...bullet_integration/bullet_discrete_bvh_manager.cpp 50.00% <0.00%> (-3.84%) ⬇️
...sion_distance_field/collision_env_distance_field.h 4.77% <ø> (+0.22%) ⬆️
...lision_distance_field/src/collision_env_hybrid.cpp 0.00% <0.00%> (ø)
...ene/include/moveit/planning_scene/planning_scene.h 43.55% <0.00%> (-6.45%) ⬇️
...bot_state/include/moveit/robot_state/robot_state.h 89.96% <ø> (+8.05%) ⬆️
...processing/src/iterative_time_parameterization.cpp 91.99% <0.00%> (-1.25%) ⬇️
...e/moveit/ompl_interface/planning_context_manager.h 100.00% <ø> (ø)
... and 243 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f12f156...37898f8. Read the comment docs.

@DLu DLu mentioned this pull request May 12, 2022
6 tasks
Copy link
Contributor

@vatanaksoytezer vatanaksoytezer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@DLu thank you so much for doing this, lgtm!

@vatanaksoytezer vatanaksoytezer merged commit 380a79a into moveit:feature/msa May 12, 2022
@DLu DLu deleted the merge_main_feature_msa branch May 13, 2022 12:46
DLu added a commit to DLu/moveit2 that referenced this pull request May 19, 2022
DLu added a commit to DLu/moveit2 that referenced this pull request May 19, 2022
DLu added a commit to DLu/moveit2 that referenced this pull request Jun 13, 2022
DLu added a commit to DLu/moveit2 that referenced this pull request Jun 13, 2022
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.