-
Notifications
You must be signed in to change notification settings - Fork 7
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
disable check that herb is extremely close to traj start position #111
Conversation
Because OWD published last commanded position, not actual position, but ros_control and rewd_controllers publish actual position, the check in herbpy that current position is extremely close to the planning start position almost always fails. However, this has not been a problem in practice, and we have been running with this code commented out for over a month.
We should definitely not disable this check. The trajectory-following controller does not currently reject trajectories that start far from the robot's current configuration. Such a trajectory could cause the robot to linearly interpolate in configuration space without any collision checking. I do think we should add this check to ReWD - this check should be enforced even if bypass HerbPy while executing trajectories. There are already tolerance parameters in there - we just have to check if the tolerance is violated and abort the trajectory. We should still keep this check in simulation, since there is no controller to do our dirty work for us. |
We have personalrobotics/rewd_controllers#4 open for this in rewd_controllers, but I guess for that change and this one we should empirically determine what the tolerances should be. I'll setup something to get that data next week. I'm closing this in the meantime then, and will open one with updated tolerances. As a note, @vinitha910 and I discoved a similar issue in prpy at https://github.com/personalrobotics/prpy/blob/5b7a2dd75944c38df0cc91ec2fbdbd180e89b534/src/prpy/tsr/tsr.py#L36. That epsilon is used (in block_sorting) via the |
A reasonable upper bound may be DOF resolution. There isn't much point to collision check at a higher resolution than the controller can achieve resolution. I believe the tolerance on On a second thought: Why do we even perform a |
Yeah, that's the problem. We shouldn't be figuring out which TSR we ended up planning to by calling |
We use the |
@mkoval points out that one option is to change the block sorting demo to call |
Because OWD published last commanded position, not actual position,
but ros_control and rewd_controllers publish actual position,
the check in herbpy that current position is extremely close to the
planning start position almost always fails.
However, this has not been a problem in practice, and we have been
running with this code commented out for over a month.
Do we want to change the tolerance, or delete this check?