Franky
0.9.1
A High-Level Motion API for Franka
|
A motion following multiple waypoints in a time-optimal way. Works with arbitrary initial conditions. More...
#include <waypoint_motion.hpp>
Classes | |
struct | Params |
Parameters for the waypoint motion. More... | |
Public Member Functions | |
WaypointMotion (std::vector< Waypoint< TargetType >> waypoints, Params params) | |
Public Member Functions inherited from franky::Motion< ControlSignalType > | |
void | addReaction (std::shared_ptr< Reaction< ControlSignalType >> reaction) |
Add a reaction to the motion. More... | |
void | addReactionFront (std::shared_ptr< Reaction< ControlSignalType >> reaction) |
Add a reaction to the front of the reaction list. More... | |
std::vector< std::shared_ptr< Reaction< ControlSignalType > > > | reactions () |
Currently registered reactions of the motion. More... | |
void | registerCallback (CallbackType callback) |
Register a callback that is called in every step of the motion. More... | |
void | init (Robot *robot, const franka::RobotState &robot_state, const std::optional< ControlSignalType > &previous_command) |
Initialize the motion. More... | |
ControlSignalType | nextCommand (const franka::RobotState &robot_state, franka::Duration time_step, double rel_time, double abs_time, const std::optional< ControlSignalType > &previous_command) |
Get the next command of the motion. More... | |
std::shared_ptr< Motion< ControlSignalType > > | checkAndCallReactions (const franka::RobotState &robot_state, double rel_time, double abs_time) |
Check and call reactions. More... | |
Protected Member Functions | |
void | initImpl (const franka::RobotState &robot_state, const std::optional< ControlSignalType > &previous_command) override |
ControlSignalType | nextCommandImpl (const franka::RobotState &robot_state, franka::Duration time_step, double rel_time, double abs_time, const std::optional< ControlSignalType > &previous_command) override |
virtual void | initWaypointMotion (const franka::RobotState &robot_state, const std::optional< ControlSignalType > &previous_command, ruckig::InputParameter< 7 > &input_parameter)=0 |
virtual void | setNewWaypoint (const franka::RobotState &robot_state, const std::optional< ControlSignalType > &previous_command, const Waypoint< TargetType > &new_waypoint, ruckig::InputParameter< 7 > &input_parameter)=0 |
virtual std::tuple< Vector7d, Vector7d, Vector7d > | getAbsoluteInputLimits () const =0 |
virtual ControlSignalType | getControlSignal (const ruckig::InputParameter< 7 > &input_parameter) const =0 |
Protected Member Functions inherited from franky::Motion< ControlSignalType > | |
Motion () | |
Robot * | robot () const |
Additional Inherited Members | |
Public Types inherited from franky::Motion< ControlSignalType > | |
using | CallbackType = std::function< void(const franka::RobotState &, franka::Duration, double, double, const ControlSignalType &)> |
A motion following multiple waypoints in a time-optimal way. Works with arbitrary initial conditions.
ControlSignalType | The type of the control signal. Either franka::Torques, franka::JointVelocities, franka::CartesianVelocities, franka::JointPositions or franka::CartesianPose. |
TargetType | The type of the target of the waypoints. |
|
inlineexplicit |
waypoints | The waypoints to follow. |
params | Parameters for the motion. |
|
protectedpure virtual |
Implemented in franky::JointWaypointMotion, and franky::CartesianWaypointMotion.
|
protectedpure virtual |
Implemented in franky::JointWaypointMotion, and franky::CartesianWaypointMotion.
|
inlineoverrideprotectedvirtual |
Reimplemented from franky::Motion< ControlSignalType >.
|
protectedpure virtual |
Implemented in franky::JointWaypointMotion, and franky::CartesianWaypointMotion.
|
inlineoverrideprotectedvirtual |
Implements franky::Motion< ControlSignalType >.
|
protectedpure virtual |
Implemented in franky::JointWaypointMotion, and franky::CartesianWaypointMotion.