Skip to content
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

Implement JointControlMode::PositionInterpolated #347

Open
diegoferigo opened this issue May 12, 2021 · 0 comments
Open

Implement JointControlMode::PositionInterpolated #347

diegoferigo opened this issue May 12, 2021 · 0 comments

Comments

@diegoferigo
Copy link
Member

diegoferigo commented May 12, 2021

ScenarIO offers the JointControlMode::PositionInterpolated it is not implemented in any backend.

/// Marks the joint to be controlled in position with trajectory
/// smoothing. A PositionInterpolated joint receives position references
/// that are filtered to get a smooth trajectory. The resulting
/// trajectory is then actuated using a position PID controller.
PositionInterpolated,

Originally, my idea was to exploit iCub::ctrl::minJerkTrajGen, but introducing the dependency of the whole icub-main could be too much, and vendoring would be suboptimal.

Maybe we can use pantor/ruckig instead (arxiv).

Considering the need of specifying the parameters (velocity / acceleration / jerk limits) and its multi-DoF formulation, I think the most simple implementation is a standalone plugin. This means that it will not use our existing JointController plugin.

In the meantime, smooth trajectories can be generated using the LowPassTarget plugin implemented in ami-iit/gazebo-scenario-plugins#4.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant