libfranka 0.15.0
FCI C++ API
Loading...
Searching...
No Matches
Public Member Functions | Friends | List of all members
franka::ActiveMotionGenerator< MotionGeneratorType > Class Template Reference

Allows the user to read the state of a Robot and to send new motion generator commands after starting a control process of a Robot. More...

#include <active_motion_generator.h>

Inheritance diagram for franka::ActiveMotionGenerator< MotionGeneratorType >:
Inheritance graph
[legend]
Collaboration diagram for franka::ActiveMotionGenerator< MotionGeneratorType >:
Collaboration graph
[legend]

Public Member Functions

void writeOnce (const MotionGeneratorType &motion_generator_input, const std::optional< const Torques > &control_input) override
 Updates the motion generator commands of an active control.
 
- Public Member Functions inherited from franka::ActiveControl
std::pair< RobotState, DurationreadOnce () override
 Waits for a robot state update and returns it.
 
void writeOnce (const Torques &) override
 Updates torque commands of an active control.
 
void writeOnce (const JointPositions &, const std::optional< const Torques > &) override
 Updates the joint position and torque commands of an active control.
 
void writeOnce (const JointVelocities &, const std::optional< const Torques > &) override
 Updates the joint velocity and torque commands of an active control.
 
void writeOnce (const CartesianPose &, const std::optional< const Torques > &) override
 Updates the cartesian position and torque commands of an active control.
 
void writeOnce (const CartesianVelocities &, const std::optional< const Torques > &) override
 Updates the cartesian velocity and torque commands of an active control.
 
void writeOnce (const JointPositions &motion_generator_input) override
 Updates the joint position commands of an active control, with internal controller.
 
void writeOnce (const JointVelocities &motion_generator_input) override
 Updates the joint velocity commands of an active control, with internal controller.
 
void writeOnce (const CartesianPose &motion_generator_input) override
 Updates the cartesian pose commands of an active control, with internal controller.
 
void writeOnce (const CartesianVelocities &motion_generator_input) override
 Updates the cartesian velocity commands of an active control, with internal controller.
 

Friends

class Robot
 franka::Robot as friend to allow construction of ActiveMotionGenerator<MotionGeneratorType> in start<MotionGeneratorType>Control methods
 

Additional Inherited Members

- Protected Member Functions inherited from franka::ActiveControl
 ActiveControl (std::shared_ptr< Robot::Impl > robot_impl, uint32_t motion_id, std::unique_lock< std::mutex > control_lock)
 Construct a new ActiveControl object.
 
- Protected Attributes inherited from franka::ActiveControl
std::shared_ptr< Robot::Impl > robot_impl
 shared pointer to Robot::Impl instance for read and write accesses
 
uint32_t motion_id
 motion id of running motion
 
std::unique_lock< std::mutex > control_lock
 control-lock preventing parallel control processes
 
bool control_finished
 flag indicating if control process is finished
 
std::optional< Durationlast_read_access
 duration to last read access
 

Detailed Description

template<typename MotionGeneratorType>
class franka::ActiveMotionGenerator< MotionGeneratorType >

Allows the user to read the state of a Robot and to send new motion generator commands after starting a control process of a Robot.

hint: To create an ActiveMotionGenerator, see franka::Robot

Member Function Documentation

◆ writeOnce()

template<typename MotionGeneratorType >
void franka::ActiveMotionGenerator< MotionGeneratorType >::writeOnce ( const MotionGeneratorType &  motion_generator_input,
const std::optional< const Torques > &  control_input 
)
override

Updates the motion generator commands of an active control.

Parameters
motion_generator_inputthe new motion generator input
control_inputoptional: the external control input for each joint, if an external controller is used
Exceptions
ControlExceptionif an error related to torque control or motion generation occurred, or the motion was already finished.
NetworkExceptionif the connection is lost, e.g. after a timeout.

The documentation for this class was generated from the following file: