wbc
wbc::PotentialFieldsController Class Reference

Base class for potential field controllers. More...

#include <PotentialFieldsController.hpp>

Inheritance diagram for wbc::PotentialFieldsController:
wbc::CartesianPotentialFieldsController wbc::JointLimitAvoidanceController

Public Member Functions

 PotentialFieldsController (const uint _dimension)
 
void applySaturation (const base::VectorXd &in, base::VectorXd &out)
 Apply Saturation on the control output. If one or more values of <in> are bigger than the Corrresponding entry of <max>, all values will be scaled down according to the biggest ratio eta = in_i / max,i.
 
void setFields (const std::vector< PotentialFieldPtr > &_fields)
 
std::vector< PotentialFieldInfogetFieldInfos ()
 
void clearFields ()
 
void setPGain (const base::VectorXd &gain)
 
void setMaxControlOutput (const base::VectorXd &new_max_control_output)
 
base::VectorXd getMaxControlOutput ()
 
base::VectorXd getPGain ()
 
const std::vector< PotentialFieldPtr > & getFields ()
 
uint getDimension ()
 

Protected Attributes

base::VectorXd p_gain
 
base::VectorXd max_ctrl_output
 
base::VectorXd control_output
 
std::vector< PotentialFieldPtrfields
 
std::vector< PotentialFieldInfofield_infos
 
uint dimension
 

Detailed Description

Base class for potential field controllers.

Constructor & Destructor Documentation

◆ PotentialFieldsController()

PotentialFieldsController::PotentialFieldsController ( const uint _dimension)

Member Function Documentation

◆ applySaturation()

void PotentialFieldsController::applySaturation ( const base::VectorXd & in,
base::VectorXd & out )

Apply Saturation on the control output. If one or more values of <in> are bigger than the Corrresponding entry of <max>, all values will be scaled down according to the biggest ratio eta = in_i / max,i.

Parameters
inInput vector. Size has to be same as max.
outOutput vector. Will be resized if out.size() != in.size()

◆ clearFields()

void wbc::PotentialFieldsController::clearFields ( )
inline

Erase all potential fields

◆ getDimension()

uint wbc::PotentialFieldsController::getDimension ( )
inline

return dimensionality of controller

◆ getFieldInfos()

vector< PotentialFieldInfo > PotentialFieldsController::getFieldInfos ( )

Return potential field infos

◆ getFields()

const std::vector< PotentialFieldPtr > & wbc::PotentialFieldsController::getFields ( )
inline

Return current potential field vector

◆ getMaxControlOutput()

base::VectorXd wbc::PotentialFieldsController::getMaxControlOutput ( )
inline

Return max contorl output vector

◆ getPGain()

base::VectorXd wbc::PotentialFieldsController::getPGain ( )
inline

Return p_gain vector

◆ setFields()

void PotentialFieldsController::setFields ( const std::vector< PotentialFieldPtr > & _fields)

Provide new potential fields. Dimension of each field has to be the same as dimension of the controller.

◆ setMaxControlOutput()

void PotentialFieldsController::setMaxControlOutput ( const base::VectorXd & new_max_control_output)

Set maximum control output

◆ setPGain()

void PotentialFieldsController::setPGain ( const base::VectorXd & gain)

Set proportional gain

Member Data Documentation

◆ control_output

base::VectorXd wbc::PotentialFieldsController::control_output
protected

◆ dimension

uint wbc::PotentialFieldsController::dimension
protected

◆ field_infos

std::vector<PotentialFieldInfo> wbc::PotentialFieldsController::field_infos
protected

◆ fields

std::vector<PotentialFieldPtr> wbc::PotentialFieldsController::fields
protected

◆ max_ctrl_output

base::VectorXd wbc::PotentialFieldsController::max_ctrl_output
protected

◆ p_gain

base::VectorXd wbc::PotentialFieldsController::p_gain
protected

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