-
Notifications
You must be signed in to change notification settings - Fork 935
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
Removal of pushAndExecute in TrajectoryExecutionManager removes functionality #3252
Comments
The function was even part of the public cpp interface here. |
Sorry for any inconvenience, do you have some sample code that uses |
I am using Another example implementation of continuous replanning using this interface can be found here: Code, Discussion on Google Groups, YouTube Video. |
I had a quick glance at your code and would like to confirm that I'm understanding correctly what you're doing. You adjust and partly replace the trajectory that is currently executed and call |
Thank you for looking into this. Yes, this is pretty much what I am doing. Trajectory replacement is done by the JointTrajectoryController. It only works if the current goal is aborted by a new goal (and not cancelled first). The only way known to me to achieve this with MoveIt has been the |
@Martin-Oehler, I added a |
Thank you, I will try it out. |
Thank you for taking the time to look into my issue. I tested the
There is no prior warning printed on the console. Also, the I also had the following problems when using this function compared to the previous
|
@Martin-Oehler |
Could you point me to a demo or test that I could modify to reflect my use-case? |
Sure, I have been using this environment for testing |
Any update on this? |
@dcconner please provide a bit more detail about how and where (links to code) FlexBE is using pushAndExecute. |
We defined an extended_capability that interfaced with trajectory_manager using this pushAndExecute API. As linked above by @Martin-Oehler , this was based on code from https://github.com/team-vigir/vigir_manipulation_planning/blob/master/vigir_plan_execution/src/continuous_plan_execution.cpp This was done back in 2018, and I haven't closely followed all of the recent MoveIt developments. I'm trying to do some cleanup and bring the system forward to Noetic in anticipation of ROS 2 conversion this summer. If the consensus of the active MoveIt community was to remove this pushAndExecute functionality, then I can drop that particular capability. But given lack of response to @Martin-Oehler original issue I wanted to follow up before making that decision. Is there a method to send updated trajectories during prior trajectory execution? My goal is to have FlexBE enabled state interfaces for all of MoveIt capabilities in Noetic and eventually ROS 2. |
The original feature was kind of implicit and well hidden so the idea was and still is to come up with a better and more explicit API for trajectory replacement/stitching/splicing. You and @Martin-Oehler are both very welcome to participate in defining, testing and implementing this new API. A simple but very explicit example of how to use either the old api, the proposal implemented by @cambel or your dream of an API would be a very useful starting point. |
Description
Hello everyone,
the function
TrajectoryExecutionManager::pushAndExecute
has been removed in this commit 24c18f6, apparently as part of an ongoing rework here #3156 . As far as I am aware, thepushAndExecute
function has been the only way to send a new trajectory without aborting the currently running one first. This can be used for continuous planning where we want to update the currently executed trajectory. With this being removed, I do not see an alternative way to achieve this with moveit.Why has this function been removed on the main branch when the rework is not finished yet? Is there an alternative way to achieve this behavior somehow? Can the previous behavior be restored until the rework is actually progressed to a point where this capability is available again?
Thank you for your support.
Your environment
Edit: Updated commit hash to point to commit on this repo.
The text was updated successfully, but these errors were encountered: