Skip to content

Commit

Permalink
CI Fixups (#861)
Browse files Browse the repository at this point in the history
* Update CI actions versions
* Fix typos
* Apply pre-commit fixes
* Fix broken links
  • Loading branch information
rhaschke committed Sep 2, 2024
1 parent 96cb748 commit 8a6f925
Show file tree
Hide file tree
Showing 13 changed files with 22 additions and 24 deletions.
2 changes: 2 additions & 0 deletions .codespell_words
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,5 @@ pullrequests
debians
hart
tork
Pincher
SINIC
3 changes: 1 addition & 2 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@ jobs:
name: Build Website
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2.2'
Expand Down
7 changes: 2 additions & 5 deletions .github/workflows/format.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,5 @@ jobs:
name: Format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- name: Install clang-format-14
run: sudo apt-get install clang-format-14
- uses: pre-commit/[email protected]
- uses: actions/checkout@v4
- uses: pre-commit/[email protected]
6 changes: 3 additions & 3 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ exclude: '^$|assets'
repos:
# Standard hooks
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.4.0
rev: v4.6.0
hooks:
- id: check-added-large-files
- id: check-case-conflict
Expand All @@ -30,12 +30,12 @@ repos:
- id: trailing-whitespace

- repo: https://github.com/psf/black
rev: 22.3.0
rev: 24.8.0
hooks:
- id: black

- repo: https://github.com/codespell-project/codespell
rev: v2.0.0
rev: v2.3.0
hooks:
- id: codespell
args: ['--write-changes', '--ignore-words=.codespell_words']
Expand Down
2 changes: 1 addition & 1 deletion _posts/2018-10-25-gsoc-motion-planning-support.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ The Pull Requests for the same can be seen below:
- [Moveit_tutorials PR#204](https://github.com/moveit/moveit_tutorials/pull/204): Added tutorial on using OMPL as a pre-processor for CHOMP
- [Moveit_tutorials PR#220](https://github.com/moveit/moveit_tutorials/pull/220): Added a tutorial page for the usage and benefits of using planning adapters with existing motion planners in MoveIt! to produce more robust trajectories under different situations
- [Ros_industrial PR#78](https://github.com/ros-industrial/industrial_moveit/pull/78): Addition of the requirements (trajectory initialization) for STOMP Smoothing Adapter tutorial into MoveIt package
- [Moveit PR#1081](https://github.com/moveit/moveit/pull/1081): Addition of STOMP Smoothing Adapter for ues as a post-processing algorithm with other motion planners
- [Moveit PR#1081](https://github.com/moveit/moveit/pull/1081): Addition of STOMP Smoothing Adapter for use as a post-processing algorithm with other motion planners

### Outcomes

Expand Down
10 changes: 5 additions & 5 deletions _posts/2023-01-12-gsoc-simultaneous-trajectory-execution.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,16 @@ categories:
- Google
---

This post summarizes my contributions during the [Google Summer of Code 2022](https://summerofcode.withgoogle.com/programs/2022/projects/mpusZVc2) where I have extended the trajectory execution capabilities of MoveIt.
This post summarizes my contributions during the [Google Summer of Code 2022](https://summerofcode.withgoogle.com/programs/2022/projects/mpusZVc2) where I have extended the trajectory execution capabilities of MoveIt.

# Motivation

Before this project, MoveIt only allowed the execution of trajectories in strict sequential order, which limited the options to simultaneously control two or more robots to only synchronized motions.

The goal was then to allow the simultaneous execution of multiple trajectories on systems with multiple robots. For example, in a dual-arm robotic system, each arm can execute a different set of trajectories without needing to wait for the other arm to finish moving (sequential execution) or manually synchronizing the motion of both arms into a single trajectory. To preserve collision-free guarantees an extra collision check needs to be performed right before the execution of new trajectories to prevent collisions with active trajectories.
The goal was then to allow the simultaneous execution of multiple trajectories on systems with multiple robots. For example, in a dual-arm robotic system, each arm can execute a different set of trajectories without needing to wait for the other arm to finish moving (sequential execution) or manually synchronizing the motion of both arms into a single trajectory. To preserve collision-free guarantees an extra collision check needs to be performed right before the execution of new trajectories to prevent collisions with active trajectories.

## Example Use Cases
1. Several trajectories are planned and executed through the `MoveIt Motion Planning Rviz` plugin.
1. Several trajectories are planned and executed through the `MoveIt Motion Planning Rviz` plugin.
![simultaneous-execution-rviz](https://github.com/ros-planning/moveit.ros.org/raw/main/assets/images/blog_posts/gsoc_2022/demo-simultaneous-execution1.gif)
2. Trajectories being planned and executed from different scripts (Rviz + Python script)
![simultaneous-execution-python-rviz](https://github.com/ros-planning/moveit.ros.org/raw/main/assets/images/blog_posts/gsoc_2022/demo-simultaneous-execution2.gif)
Expand All @@ -33,10 +33,10 @@ The goal was then to allow the simultaneous execution of multiple trajectories o

## Feature Description
- Event-based execution system: Events related to the execution of trajectories are pushed to a queue where they are processed sequentially.
When a new trajectory is pushed, it is immediately validated by checking that all required controllers are active and available, and that there is no collision with any active trajectory or the current state. Invalid trajectories are rejected. Valid trajectories are sent for execution to the corresponding controllers.
When a new trajectory is pushed, it is immediately validated by checking that all required controllers are active and available, and that there is no collision with any active trajectory or the current state. Invalid trajectories are rejected. Valid trajectories are sent for execution to the corresponding controllers.
The execution of each **trajectory part** will result in the event `EXECUTION_COMPLETED` being triggered. It marks the completion of the execution from the controller's side regardless of the status (SUCCEEDED, ABORTED, ...). If the status of the execution for a trajectory part is SUCCEEDED, we wait until all other parts are completed successfully. If the status of the trajectory is not successful, all other trajectory parts are canceled.
The execution of a **trajectory** can result in the event `EXECUTION_TIMEOUT` being triggered. This occurs when the trajectory execution duration monitor is enabled and the trajectory takes longer to execute than expected. When triggered, all trajectory parts for this trajectory are canceled.
When a specific trajectory is canceled, the event `EXECUTION_CANCELLATION_REQUEST` is triggered.
When a specific trajectory is canceled, the event `EXECUTION_CANCELLATION_REQUEST` is triggered.

- Interdependent set of trajectories: The user can define a set of trajectories to be executed in strictly sequential order. In such cases, all the required controllers for the set of trajectories would be locked so that no other trajectory can use them. Example use case: In a _picking_ task, the user would send a trajectory for the robot arm to get into a grasping pose and a trajectory for the gripper to close after reaching the grasping pose (two separate trajectories). After the execution of this set of trajectories starts, new trajectories that attempt to use the gripper would be rejected.

Expand Down
2 changes: 1 addition & 1 deletion _posts/2023-11-29-MoveItCon-2023-Recap.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ We were happy to have Buck Babich present NVIDIA’s work around [MoveIt and ROS
</div>

### MoveIt Studio Hands-on
The afternoon started with a hands-on workshop to install and [try out the latest product version of MoveIt Studio](https://docs.picknik.ai/en/stable/getting_started/getting_started.html) on their own devices. The participants were instructed to test MoveIt Studio’s teleoperation features, objective builder, and waypoint selection, and finally, how they would configure Studio to run with Gazebo simulation. Everyone was invited to start experimenting with the software and to continue their journey after the conference using an extended free trial license.
The afternoon started with a hands-on workshop to install and [try out the latest product version of MoveIt Studio](https://docs.picknik.ai/docs/getting_started/setup_tutorials/software_installation) on their own devices. The participants were instructed to test MoveIt Studio’s teleoperation features, objective builder, and waypoint selection, and finally, how they would configure Studio to run with Gazebo simulation. Everyone was invited to start experimenting with the software and to continue their journey after the conference using an extended free trial license.

The workshop was complemented with presentations about MoveIt Studio’s industrial use cases, the space research and development efforts funded by [NASA](https://picknik.ai/news-releases/PickNik_Robotics_Secures_Two_New_NASA_SBIR_Contracts.html) and [Motiv](https://picknik.ai/news-releases/PickNik_Motiv_Partnership_Press_Release.html), and lastly, how MoveIt Studio’s software architecture, configuration, and deployment infrastructure is designed to augment the developer experience and to help to focus on building robot applications. One of the key takeaways from the afternoon sessions was how tightly coupled PickNik’s Open Source involvement and the MoveIt Studio R&D efforts are and how PickNik is working on shaping MoveIt into a more advanced and specialized tool for production robots in industry and space.

Expand Down
4 changes: 2 additions & 2 deletions documentation/contributing/maintainer_pr/index.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ We typically follow a **two approval requirement**. Two reviewers must approve a
MoveIt Maintainers only need need one other review if the following criteria are met:
- The review is from another maintainer
- The change is not too large or controversial
- All feedback has been addressed by the requestor
- All feedback has been addressed by the requester

Once this criteria is met, the maintainer who is the original author is free to merge their own PR in.

Expand Down Expand Up @@ -79,7 +79,7 @@ We use [`mergify`](https://docs.mergify.com) to automize backporting. Just add t
If the commits apply cleanly to future branches and there is no evidence that they will break anything there, you are free to add the changes to the respective branches.
(Make sure you respect the all-commits-in-latest-branch guideline though).

Otherwise either the requestor or the maintainer should create new pull-requests targeting the later branches.
Otherwise either the requester or the maintainer should create new pull-requests targeting the later branches.
If possible, merge these *together* with the original request.
In this context it might be worth spending some time on making use of features available in later ROS distributions to simplify the code, e.g. by using a new coding standard or a more current version of a library.

Expand Down
2 changes: 1 addition & 1 deletion documentation/faqs/index.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ _I have a found a bug in MoveIt itself. What should I do?_

_I would like to add a new robot to the list of robots using MoveIt. What should I do?_

* Create a pull request to [moveit.ros.org's Github repo](https://github.com/moveit/moveit.ros.org) or email [PickNik Robotics](http://picknik.ai/connect) for additional assitance.
* Create a pull request to [moveit.ros.org's Github repo](https://github.com/moveit/moveit.ros.org) or email [PickNik Robotics](http://picknik.ai/connect) for additional assistance.

_What robots does MoveIt support?_

Expand Down
2 changes: 1 addition & 1 deletion documentation/plugins/index.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ The interface is defined in [ControllerHandle.h](https://github.com/moveit/movei

### Concrete Implementation

An examplary implementation of this interface is the [joint_trajectory_controller_plugin.cpp](https://github.com/moveit/moveit/blob/master/moveit_plugins/moveit_ros_control_interface/src/joint_trajectory_controller_plugin.cpp). This is also currently the only implementation available.
An exemplary implementation of this interface is the [joint_trajectory_controller_plugin.cpp](https://github.com/moveit/moveit/blob/master/moveit_plugins/moveit_ros_control_interface/src/joint_trajectory_controller_plugin.cpp). This is also currently the only implementation available.

***

Expand Down
2 changes: 1 addition & 1 deletion events/2022-moveit-community-meeting/index.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ All times are UTC-7 (US Mountain Time). **Clicking on the titles takes you to a



## Registation
## Registration
~~**General attendee registration:** [Google Form](https://docs.google.com/forms/d/e/1FAIpQLScaMfoY1iUKVnHDlqIuuEK91z53WfD669NFQqPKJ3AqMXNYXg/viewform?usp=sf_link) (free)~~

~~If you are interested in **exhibiting** a lightning talk ([here is a great how-to via ROSCon](https://discourse.ros.org/t/ros-world-2021-call-for-lightning-talk-videos/22298)), white paper, or other MoveIt related projects, please fill out this [Exhibitor Form](https://docs.google.com/forms/d/e/1FAIpQLSdip4ByjDuaqaEPYlouO7ssDJ6XwuPbeJB4jnnPlC6SbY252A/viewform?usp=sf_link) by *Feb 15th*. You do not need to register as both an attendee and an exhibitor;~~
Expand Down
2 changes: 1 addition & 1 deletion events/2024-google-summer-of-code/index.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ More information about the MoveIt GSoC project applications [tips at the bottom
## Project Ideas

### Better Simulation Support
Experiment with alternative simulation backends like [MuJoCo](https://mujoco.org/), [O3DE](https://o3de.org/), [Gazebo](https://gazebosim.org/home) while improving interoperability with MoveIt.
Experiment with alternative simulation backends like [MuJoCo](https://mujoco.org/), [O3DE](https://o3de.org/), [Gazebo](https://classic.gazebosim.org) while improving interoperability with MoveIt.
Investigate new use cases and best practices, and document your findings in a well-structured review page including updated tutorials and demo implementations. An example application for showcasing improved simulation support could be running an admittance controller for solving a peg-in-hole problem.

**Mentors**: [David](https://github.com/dyackzan), [Henning](https://github.com/henningkayser)\
Expand Down
2 changes: 1 addition & 1 deletion events/world-moveit-day/index.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ Suggested areas for improvement will be tracked on the new unified moveit repo v
- [simple improvements](https://github.com/moveit/moveit/issues?q=is%3Aopen+-label%3Aassigned+label%3A%22simple+improvements%22) indicates the issue can probably be tackled in less than a few hours.
- [documentation](https://github.com/moveit/moveit/issues?utf8=%E2%9C%93&q=is%3Aopen%20label%3Adocumentation%20-label%3Aassigned%20) suggests new tutorials, changes to the website, etc.
- [assigned](https://github.com/moveit/moveit/issues?q=is%3Aopen+is%3Aissue+label%3Aassigned) aids developers to find issues that are not already being worked on.
- **no label** - even issues that are not marked as "simple" can be worked on for World MoveIt day, though they will likely take longer than one day to compelete
- **no label** - even issues that are not marked as "simple" can be worked on for World MoveIt day, though they will likely take longer than one day to complete

If you would like to help the MoveIt project by tackling an issue, claim the issue by commenting "I'll work on this" and a maintainer will then hopefully add the label "assigned". Feel free to ask further questions in each issue's comments.

Expand Down

0 comments on commit 8a6f925

Please sign in to comment.