ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

Stop and continue with cartesian path

asked 2018-12-17 06:22:38 -0500

michaeltesar gravatar image

Hello,

I would like to make a cartesian plan of lets say a circle. Then execute it asynchronously. After a while I would stop the execution and wait a little. Then I would like to continue with a trajectory I started at the beginig and finish the cirlce.

What I did:

  1. Compute cartesian plan of a whole circle
  2. Asynchronously execute a computed plan
  3. rospy.sleep() to simulate a random input signal (waiting for a signal)
  4. group.stop() to stop a plan
  5. rospy.sleep() actually wait on the place a little
  6. Extract all further points from the plan I need to execute
  7. group.move() but this is very choppy

So I removed points from a plan by plan.joint_trajectory.poinst.pop(<indexes>) but this does not work. It fails during execution that there is no plan for moving group.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2018-12-17 07:02:36 -0500

If you want to create a new plan object which is a region of a larger plan you will need to do a bit more work.

A Plan object includes a start state as well as a trajectory, the trajectory is a list of joint angles and times. You'll need to create a new robot start state to reflect the point within the larger trajectory you're starting from, as well as make sure the times within the trajectory are continuous and start from zero otherwise execution will fail.

Hope this helps.

edit flag offensive delete link more

Question Tools

2 followers

Stats

Asked: 2018-12-17 06:22:38 -0500

Seen: 260 times

Last updated: Dec 17 '18