Public Member Functions | Private Attributes | List of all members
franka_example_controllers::JointWallContainer< num_dof > Class Template Reference

A class that organizes multiple virtual joint walls. More...

#include <joint_wall.h>

Public Member Functions

std::array< double, num_dof > computeTorque (const std::array< double, num_dof > &q, const std::array< double, num_dof > &dq)
 Computes the torques generated by virtual walls. More...
 
 JointWallContainer (const std::array< double, num_dof > &soft_upper_joint_position_limits, const std::array< double, num_dof > &soft_lower_joint_position_limits, const std::array< double, num_dof > &PD_zone_widths, const std::array< double, num_dof > &D_zone_widths, const std::array< double, num_dof > &PD_zone_stiffnesses, const std::array< double, num_dof > &PD_zone_dampings, const std::array< double, num_dof > &D_zone_dampings)
 Creates a new virtual joint position wall instance. More...
 
 JointWallContainer ()=delete
 
void reset ()
 Resets the initialized flags of all walls to false. More...
 

Private Attributes

std::array< std::unique_ptr< JointWall >, num_dof > joint_walls_
 

Detailed Description

template<size_t num_dof>
class franka_example_controllers::JointWallContainer< num_dof >

A class that organizes multiple virtual joint walls.

Template Parameters
num_dofthe number of joints to create virtual walls for.

Definition at line 137 of file joint_wall.h.

Constructor & Destructor Documentation

◆ JointWallContainer() [1/2]

template<size_t num_dof>
franka_example_controllers::JointWallContainer< num_dof >::JointWallContainer ( const std::array< double, num_dof > &  soft_upper_joint_position_limits,
const std::array< double, num_dof > &  soft_lower_joint_position_limits,
const std::array< double, num_dof > &  PD_zone_widths,
const std::array< double, num_dof > &  D_zone_widths,
const std::array< double, num_dof > &  PD_zone_stiffnesses,
const std::array< double, num_dof > &  PD_zone_dampings,
const std::array< double, num_dof > &  D_zone_dampings 
)
inline

Creates a new virtual joint position wall instance.

(see joint_wall.h for more details on joint wall parameters.)

Parameters
[in]soft_upper_joint_position_limits
[in]soft_lower_joint_position_limits
[in]PD_zone_widths
[in]D_zone_widths
[in]PD_zone_stiffnesses
[in]PD_zone_dampings
[in]D_zone_dampings

Definition at line 151 of file joint_wall.h.

◆ JointWallContainer() [2/2]

template<size_t num_dof>
franka_example_controllers::JointWallContainer< num_dof >::JointWallContainer ( )
delete

Member Function Documentation

◆ computeTorque()

template<size_t num_dof>
std::array<double, num_dof> franka_example_controllers::JointWallContainer< num_dof >::computeTorque ( const std::array< double, num_dof > &  q,
const std::array< double, num_dof > &  dq 
)
inline

Computes the torques generated by virtual walls.

Parameters
[in]qthe current joint positions.
[in]dqthe current joint velocities.
Returns
the repelling torques/efforts from the virtual wall.

Definition at line 174 of file joint_wall.h.

◆ reset()

template<size_t num_dof>
void franka_example_controllers::JointWallContainer< num_dof >::reset ( )
inline

Resets the initialized flags of all walls to false.

After calling reset, the next call to computeTorque resets the internal states for joint position and velocity (q, dq). Call this method before restarting your controller, e.g. when the position might have changed during control pauses due to guiding.

Definition at line 189 of file joint_wall.h.

Member Data Documentation

◆ joint_walls_

template<size_t num_dof>
std::array<std::unique_ptr<JointWall>, num_dof> franka_example_controllers::JointWallContainer< num_dof >::joint_walls_
private

Definition at line 196 of file joint_wall.h.


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


franka_example_controllers
Author(s): Franka Emika GmbH
autogenerated on Mon Sep 19 2022 03:06:01