Skip to content

Feature/expose pilz sampling time#3710

Open
riv-tnoble wants to merge 25 commits intomoveit:mainfrom
riv-tnoble:feature/expose-pilz-sampling-time
Open

Feature/expose pilz sampling time#3710
riv-tnoble wants to merge 25 commits intomoveit:mainfrom
riv-tnoble:feature/expose-pilz-sampling-time

Conversation

@riv-tnoble
Copy link
Contributor

@riv-tnoble riv-tnoble commented Mar 19, 2026

Description

#3330 aims to add spatial-based trajectory sampling to the pilz planners, but work on it seems to have stopped. Currently, pilz uses a hard-coded 0.1s sampling time which is unsuitable for fast robot motions. I think it'd be worth reviving the referenced PR but, as a quick improvement, this PR exposes the sampling time via a new parameter.

The added parameter defaults to 0.1 to preserve the existing behaviour, and should be extensible to adding spatial parameters in the future. I've also done a bit of renaming of references to the existing cartesian limits parameter in the code for clarity.

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 (Existing tests updated to preserve prior behaviour)
  • Include a screenshot if changing a GUI (N/A)
  • While waiting for someone to review your request, please help review another open pull request to support the maintainers

@codecov
Copy link

codecov bot commented Mar 19, 2026

Codecov Report

❌ Patch coverage is 91.66667% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 46.33%. Comparing base (c154f94) to head (473c6ae).

Files with missing lines Patch % Lines
...pilz_industrial_motion_planner/test/test_utils.cpp 0.00% 4 Missing ⚠️
...industrial_motion_planner/trajectory_generator.hpp 75.00% 1 Missing ⚠️
...strial_motion_planner/src/trajectory_generator.cpp 83.34% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3710      +/-   ##
==========================================
+ Coverage   46.22%   46.33%   +0.12%     
==========================================
  Files         726      726              
  Lines       59503    59536      +33     
  Branches     7623     7626       +3     
==========================================
+ Hits        27499    27582      +83     
+ Misses      31836    31787      -49     
+ Partials      168      167       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@riv-tnoble
Copy link
Contributor Author

riv-tnoble commented Mar 20, 2026

The non-humble pipelines appear to be failing for reasons that seem unrelated to these changes. @nbbrooks are these known issues? (Sorry to ping you randomly. Noticed you were looking at Qt6 stuff)

Rolling

  CMake Error at /opt/ros/rolling/share/rviz_default_plugins/cmake/rviz_default_pluginsExport.cmake:61 (set_target_properties):
    The link interface of target "rviz_default_plugins::rviz_default_plugins"
    contains:
  
      Qt6::Widgets
  
    but the target was not found.  Possible reasons include:
  
      * There is a typo in the target name.
      * A find_package call is missing for an IMPORTED target.
      * An ALIAS target is missing.
  
  Call Stack (most recent call first):
    /opt/ros/rolling/share/rviz_default_plugins/cmake/ament_cmake_export_targets-extras.cmake:9 (include)
    /opt/ros/rolling/share/rviz_default_plugins/cmake/rviz_default_pluginsConfig.cmake:41 (include)
    CMakeLists.txt:34 (find_package)

Jazzy

build/moveit_servo/test_results/moveit_servo/tests_launch_servo_ros_integration.test.py.xunit.xml: 2 tests, 0 errors, 1 failure, 0 skipped
- moveit_servo.TestGTestProcessPostShutdown test_gtest_pass
  <<< failure message
    Traceback (most recent call last):
      File "/home/runner/work/moveit2/moveit2/.work/target_ws/src/moveit2/moveit_ros/moveit_servo/tests/launch/servo_ros_integration.test.py", line 166, in test_gtest_pass
        launch_testing.asserts.assertExitCodes(proc_info, process=servo_gtest)
      File "/opt/ros/jazzy/lib/python3.12/site-packages/launch_testing/asserts/assert_exit_codes.py", line 62, in assertExitCodes
        assert info.returncode in allowable_exit_codes, 'Proc {} exited with code {}'.format(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    AssertionError: Proc moveit_servo_ros_integration_test-6 exited with code 1
  >>>

Tutorial

Error: buildx failed with: ERROR: failed to build: failed to solve: process "/bin/sh -c sh -c 'echo \"deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main\" > /etc/apt/sources.list.d/gazebo-stable.list' &&         wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add - &&         sudo apt update &&         sudo apt-get install -y \"gz-${GZ_VERSION}\" &&         PATH=/usr/lib/ccache:$PATH &&         git clone https://github.com/moveit/moveit2_tutorials src/moveit2_tutorials &&         vcs import --skip-existing src < src/moveit2_tutorials/moveit2_tutorials.repos &&         . \"/opt/ros/${ROS_DISTRO}/setup.sh\" &&        apt-get -q update &&         rosdep update &&         DEBIAN_FRONTEND=noninteractive         rosdep install -y --from-paths src --ignore-src --rosdistro ${ROS_DISTRO} --as-root=apt:false &&         rm -rf /var/lib/apt/lists/* &&         colcon build         --cmake-args \"-DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF -DCMAKE_EXPORT_COMPILE_COMMANDS=ON --no-warn-unused-cli\"         --ament-cmake-args -DCMAKE_BUILD_TYPE=Release         --event-handlers desktop_notification- status- &&         ccache -s &&         sed -i \"s#/opt/ros/\\$ROS_DISTRO/setup.bash#$ROS_UNDERLAY/setup.sh#g\" /ros_entrypoint.sh" did not complete successfully: exit code: 1

@nbbrooks
Copy link
Contributor

I see you merged in the latest main changes for Qt6, let me retrigger the job again and see what happens.

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