-
Notifications
You must be signed in to change notification settings - Fork 32
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
Tool contact action #37
base: humble-devel
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As for the driver PR, I think it would make sense to split the tool contact and move_until into two separate PRs.
action/ToolContact.action
Outdated
|
||
--- | ||
int32 SUCCESS=0 | ||
int32 CANCELLED_BY_USER = -1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is usually called PREEMPTED
in ROS.
action/ToolContact.action
Outdated
int32 ABORTED_BY_HARDWARE = -2 | ||
int32 ABORTED_BY_CONTROLLER = -3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure whether it makes sense to separate this. I understand your intention, but with that thinking you tie the action definition closely to the controller.
Co-authored-by: Felix Exner <feex@universal-robots.com>
int32 SUCCESS=0 | ||
int32 PREEMPTED = -1 | ||
int32 ABORTED = -2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the intended use for those?
A general "has the action succeeded / canceled / aborted" is part of the action definition already. In the end a caller would want to know whether a tool contact was detected or not, right? Those cases would both fall under the term "action succeeded" from my point of view.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, I might not have thought that through all the way. Yeah, you are right that information would be nice to have.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After looking through how the interface to the robot itself works, you are right that the preempted and aborted dont make sense, but a "not triggered" result also doesnt really make sense. Once tool contact has been activated it stays active until it either finds contact or is cancelled by a user, in which case the action should report either cancelled or aborted, in my opinion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hm, good point. Would we need a result at all, then?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess not actually, the state of the action itself should be sufficient
This PR adds two actions, one for use with the tool contact controller, and one for use with the TrajectoryUntilNode, which is used to execute a trajectory until some condition is met (or the trajectory is finished). Right now the only available condition is tool contact.