Skip to content

Roboskel-Manipulation/trajectory_replication

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 

Repository files navigation

trajectory_replication

Description

This ROS metapackage provides two packages for trajectory execution by a UR3 cobot using two different methods. The first one is based on MoveIt! and the second one on a Cartesian Velocity Controller(CVC).

Input Trajectory

The input trajectory consists of a list of 3D waypoints in the form of trajectory_custom_msgs/PointStampedArray message.

control_trajectory_execution

This package provides an action server for 3D cartesian trajectory execution. It accepts a list of 3D cartesian points and publishes each one of them at appropriate publishing rate so that the overall robot motion lasts the same duration as the input motion.

  • It accepts a list of 3D waypoints (trajectory_custom_msgs/PointArray ROS message).
  • It computes the appropriate publishing rates.
  • It subscribes to a topic which provides the current pose and twist of the end effector (cartesian_state_msgs/PoseTwist ROS message). Used only for visualization purposes.
  • It publishes the waypoints to the /trajectory_points topic.

Note: To see how to utilize the CVC for generating velocity commands for the robot motion, check the cartesian_trajectory_tracking package.

moveit_trajectory_execution

This package utilises MoveIt! in order for an end effector to track a given cartesian trajectory.

  • It accepts a list of 3D waypoints (trajectory_execution_msgs/PointArray ROS message)
  • It transforms the 3D list into a 7D list by adding a 4D quaternion in each point
  • It moves the end effector to the first point of the trajectory using the built-in functions of MoveIt! plan() and execute()
  • It calls the MoveIt! service computeCartesianPath()
  • It executes the configuration-space trajectory (response of the computeCartesianPath service)

Launch files

  • Moveit!: roslaunch moveit_trajectory_execution moveit_trajectory_execution.launch

  • CVC: roslaunch control_trajectory_execution control_trajectory_execution.launch

    • Argument: smooth: True if the input trajectory is a Bezier Curve.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published