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

[NASA Space ROS Sim Summer Sprint Challenge] Add ROS2<>Trick bridge with canadarm2 demo #42

Open
xfiderek opened this issue Sep 5, 2024 · 0 comments · May be fixed by #41
Open

[NASA Space ROS Sim Summer Sprint Challenge] Add ROS2<>Trick bridge with canadarm2 demo #42

xfiderek opened this issue Sep 5, 2024 · 0 comments · May be fixed by #41
Labels
enhancement New feature or request

Comments

@xfiderek
Copy link

xfiderek commented Sep 5, 2024

Feature description

NASA Space ROS Sim Summer Sprint Challenge

Team lead freelance username: xfiderek
Submission title: Improving fidelity of SSRMS demo with Trick

This issue is related to the submission to NASA Space ROS Sim Summer Sprint Challenge

Improving fidelity of SSRMS demo with Trick

I plan to submit a project that features an end-to-end demo of canadarm2 (SSRMS) modelled using Trick and connected to moveit2 via authored ROS2<>Trick bridge. The demo includes the following:

  • ros_trick_bridge - A ROS2 package allowing spawning & controlling trick simulations from ROS2 launch. It also sends /clock messages from trick to ROS2.
  • trick_ros2_control - A ROS2 Control plugin that enables communication between ros2_control-enabled robots and trick
  • SIM_trick_canadarm - A trick simulation of canadarm demo running at 100Hz. The simulation calculates forward dynamics with Articulated Body Algorithm, with friction model that takes into account Stribeck effect
  • Demo-related packages with moveit configurations, visualization, launch files and additional
  • Dockerfiles and compose file launching an end to end canadarm demo

Both ros_trick_bridge and trick_ros2_control can be easily imported into any project that wants to leverage connection between trick and ROS2. Any type of data can be exchanged between two systems in the provided framework.

Architecture of the bridge:
image

Screenshot of demo environment from RVIZ:
image

Screenshot from Trick view GUI:
image

Please check the README.md in the linked PR for further details

Implementation considerations

Please check the README.md in the linked PR for architecture, design choices and further details

@xfiderek xfiderek added the enhancement New feature or request label Sep 5, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 5, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 5, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 5, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 5, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
Adds package that spawns trick simulation as a subprocess and controls its lifecycle as ROS2 managed noe
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…).

Adds a ROS2 package with ROS2 Control Hardware Plugin that allows to use Trick as Hardware System.
It works similarly to gazebo_ros2_control.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…os#42).

Adds Trick simulation of SSRMS, calculating forward dynamics of the arm.
It features friction model taking into account Stribeck effect.
It uses RBDL as a backend library to solve forward dynamics equations.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…ce-ros#42).

canadarm_wrench_publisher package demonstrates how to use trick bridge into any ros2 node.
It is also used in the end-to-end demo.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…space-ros#42).

Adds moveit config with ros2 controllers configuration for the end to end demo.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…pace-ros#42).

The dockerfile builds trick, ros_trick_bridge and canadarm simulation.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…ith trick (space-ros#42).

Adds dockerfile with ROS part of the end-to-end demo.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…).

Adds a ROS2 package with ROS2 Control Hardware Plugin that allows to use Trick as Hardware System.
It works similarly to gazebo_ros2_control.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…os#42).

Adds Trick simulation of SSRMS, calculating forward dynamics of the arm.
It features friction model taking into account Stribeck effect.
It uses RBDL as a backend library to solve forward dynamics equations.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…ce-ros#42).

canadarm_wrench_publisher package demonstrates how to use trick bridge into any ros2 node.
It is also used in the end-to-end demo.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…space-ros#42).

Adds moveit config with ros2 controllers configuration for the end to end demo.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…pace-ros#42).

The dockerfile builds trick, ros_trick_bridge and canadarm simulation.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
…ith trick (space-ros#42).

Adds dockerfile with ROS part of the end-to-end demo.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 6, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 7, 2024
…ith trick (space-ros#42).

Adds dockerfile with ROS part of the end-to-end demo.
It includes moveit2_docker_deps folder with dependent files taken from spaceros docker repo.
Large portion of the dockerfile could be simplified in the future, when moveit2 stack gets introduced into spaceros.
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 7, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 7, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 7, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 7, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 7, 2024
xfiderek added a commit to xfiderek/demos that referenced this issue Sep 7, 2024
mkhansenbot pushed a commit to xfiderek/demos that referenced this issue Sep 9, 2024
Adds package that spawns trick simulation as a subprocess and controls its lifecycle as ROS2 managed noe
mkhansenbot pushed a commit to xfiderek/demos that referenced this issue Sep 9, 2024
…).

Adds a ROS2 package with ROS2 Control Hardware Plugin that allows to use Trick as Hardware System.
It works similarly to gazebo_ros2_control.
mkhansenbot pushed a commit to xfiderek/demos that referenced this issue Sep 9, 2024
…os#42).

Adds Trick simulation of SSRMS, calculating forward dynamics of the arm.
It features friction model taking into account Stribeck effect.
It uses RBDL as a backend library to solve forward dynamics equations.
mkhansenbot pushed a commit to xfiderek/demos that referenced this issue Sep 9, 2024
…ce-ros#42).

canadarm_wrench_publisher package demonstrates how to use trick bridge in any ros2 node.
It is also used in the end-to-end demo.
mkhansenbot pushed a commit to xfiderek/demos that referenced this issue Sep 9, 2024
…space-ros#42).

Adds moveit config with ros2 controllers configuration for the end to end demo.
mkhansenbot pushed a commit to xfiderek/demos that referenced this issue Sep 9, 2024
…pace-ros#42).

The dockerfile builds trick, ros_trick_bridge and canadarm simulation.
mkhansenbot pushed a commit to xfiderek/demos that referenced this issue Sep 9, 2024
…ith trick (space-ros#42).

Adds dockerfile with ROS part of the end-to-end demo.
mkhansenbot pushed a commit to xfiderek/demos that referenced this issue Sep 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant