|
franky 1.1.4
A High-Level Motion API for Franka
|
Client-side joint impedance controller with a dynamic online reference. More...
#include <joint_impedance_tracking_motion.hpp>
Public Types | |
| using | Params = JointImpedanceParams |
| using | ReferenceCallback = std::function< JointReference(const RobotState &, franka::Duration, franka::Duration, franka::Duration)> |
Public Types inherited from franky::Motion< franka::Torques > | |
| using | CallbackType = std::function< void(const RobotState &, franka::Duration, franka::Duration, franka::Duration, const franka::Torques &)> |
Public Member Functions | |
| JointImpedanceTrackingMotion (const Params ¶ms=Params{}, double gains_time_constant=0.1) | |
| JointImpedanceTrackingMotion (ReferenceCallback reference_callback, const Params ¶ms=Params{}, double gains_time_constant=0.1) | |
| void | setReference (const JointReference &reference) |
| std::optional< JointReference > | getReference () const |
Public Member Functions inherited from franky::JointImpedanceBase | |
| const Vector7d & | target () const |
| const Vector7d & | target_velocity () const |
| const JointImpedanceParams & | params () const |
| void | setGains (const JointImpedanceGains &gains) |
| JointImpedanceGains | getGains () const |
| void | setCartesianGains (const CartesianImpedanceGains &gains) |
| CartesianImpedanceGains | getCartesianGains () const |
Public Member Functions inherited from franky::Motion< franka::Torques > | |
| virtual | ~Motion ()=default |
| void | addReaction (std::shared_ptr< Reaction< franka::Torques > > reaction) |
| Add a reaction to the motion. | |
| void | addReactionFront (std::shared_ptr< Reaction< franka::Torques > > reaction) |
| Add a reaction to the front of the reaction list. | |
| std::vector< std::shared_ptr< Reaction< franka::Torques > > > | reactions () |
| Currently registered reactions of the motion. | |
| void | registerCallback (CallbackType callback) |
| Register a callback that is called in every step of the motion. | |
| void | init (Robot *robot, const RobotState &robot_state, const std::optional< franka::Torques > &previous_command) |
| Initialize the motion. Motions can only be started once; this function throws a MotionReuseException on any subsequent call. | |
| bool | has_started () const |
| Whether this motion has already been started. Started motions cannot be started again. | |
| franka::Torques | nextCommand (const RobotState &robot_state, franka::Duration time_step, franka::Duration rel_time, franka::Duration abs_time, const std::optional< franka::Torques > &previous_command) |
| Get the next command of the motion. | |
| std::shared_ptr< Motion< franka::Torques > > | checkAndCallReactions (const RobotState &robot_state, franka::Duration rel_time, franka::Duration abs_time) |
| Check and call reactions. | |
Protected Member Functions | |
| void | initImpl (const RobotState &robot_state, const std::optional< franka::Torques > &previous_command) override |
| franka::Torques | nextCommandImpl (const RobotState &robot_state, franka::Duration time_step, franka::Duration rel_time, franka::Duration abs_time, const std::optional< franka::Torques > &previous_command) override |
Protected Member Functions inherited from franky::JointImpedanceBase | |
| JointImpedanceBase (const Vector7d &target, const Vector7d &target_velocity, const JointImpedanceParams ¶ms, double gains_time_constant=0.1) | |
| franka::Torques | computeCommand (const RobotState &robot_state, const JointReference &reference, double dt) |
Protected Member Functions inherited from franky::Motion< franka::Torques > | |
| Motion () | |
| Robot * | robot () const |
Additional Inherited Members | |
Protected Attributes inherited from franky::JointImpedanceBase | |
| JointImpedanceParams | params_ |
| Vector7d | target_ |
| Vector7d | target_velocity_ |
Client-side joint impedance controller with a dynamic online reference.
This motion keeps the same controller alive while reading the latest valid joint reference from a handle or callback each control cycle.
| using franky::JointImpedanceTrackingMotion::ReferenceCallback = std::function<JointReference(const RobotState &, franka::Duration, franka::Duration, franka::Duration)> |
|
explicit |
|
explicit |
|
inline |
|
overrideprotectedvirtual |
Reimplemented from franky::Motion< franka::Torques >.
|
overrideprotectedvirtual |
Implements franky::Motion< franka::Torques >.
|
inline |