Public Member Functions | Private Attributes | List of all members
transmission_interface::SimpleTransmission Class Reference

Implementation of a simple reducer transmission. More...

#include <simple_transmission.h>

Inheritance diagram for transmission_interface::SimpleTransmission:
Inheritance graph
[legend]

Public Member Functions

void actuatorToJointEffort (const ActuatorData &act_data, JointData &jnt_data)
 Transform effort variables from actuator to joint space. More...
 
void actuatorToJointPosition (const ActuatorData &act_data, JointData &jnt_data)
 Transform position variables from actuator to joint space. More...
 
void actuatorToJointVelocity (const ActuatorData &act_data, JointData &jnt_data)
 Transform velocity variables from actuator to joint space. More...
 
double getActuatorReduction () const
 
double getJointOffset () const
 
void jointToActuatorEffort (const JointData &jnt_data, ActuatorData &act_data)
 Transform effort variables from joint to actuator space. More...
 
void jointToActuatorPosition (const JointData &jnt_data, ActuatorData &act_data)
 Transform position variables from joint to actuator space. More...
 
void jointToActuatorVelocity (const JointData &jnt_data, ActuatorData &act_data)
 Transform velocity variables from joint to actuator space. More...
 
std::size_t numActuators () const
 
std::size_t numJoints () const
 
 SimpleTransmission (const double reduction, const double joint_offset=0.0)
 
- Public Member Functions inherited from transmission_interface::Transmission
virtual ~Transmission ()
 

Private Attributes

double jnt_offset_
 
double reduction_
 

Detailed Description

Implementation of a simple reducer transmission.

This transmission relates one actuator and one joint through a reductor (or amplifier). Timing belts and gears are examples of this transmission type, and are illustrated below.

simple_transmission.png
Effort
Velocity
Position
Actuator to joint

\[ \tau_j = n \tau_a \]

\[ \dot{x}_j = \dot{x}_a / n \]

\[ x_j = x_a / n + x_{off} \]

Joint to actuator

\[ \tau_a = \tau_j / n\]

\[ \dot{x}_a = n \dot{x}_j \]

\[ x_a = n (x_j - x_{off}) \]

where:

Definition at line 95 of file simple_transmission.h.

Constructor & Destructor Documentation

transmission_interface::SimpleTransmission::SimpleTransmission ( const double  reduction,
const double  joint_offset = 0.0 
)
inline
Parameters
reductionReduction ratio.
joint_offsetJoint position offset used in the position mappings.
Precondition
Nonzero reduction value.

Definition at line 177 of file simple_transmission.h.

Member Function Documentation

void transmission_interface::SimpleTransmission::actuatorToJointEffort ( const ActuatorData act_data,
JointData jnt_data 
)
inlinevirtual

Transform effort variables from actuator to joint space.

Parameters
[in]act_dataActuator-space variables.
[out]jnt_dataJoint-space variables.
Precondition
Actuator and joint effort vectors must have size 1 and point to valid data. To call this method it is not required that all other data vectors contain valid data, and can even remain empty.

Implements transmission_interface::Transmission.

Definition at line 189 of file simple_transmission.h.

void transmission_interface::SimpleTransmission::actuatorToJointPosition ( const ActuatorData act_data,
JointData jnt_data 
)
inlinevirtual

Transform position variables from actuator to joint space.

Parameters
[in]act_dataActuator-space variables.
[out]jnt_dataJoint-space variables.
Precondition
Actuator and joint position vectors must have size 1 and point to valid data. To call this method it is not required that all other data vectors contain valid data, and can even remain empty.

Implements transmission_interface::Transmission.

Definition at line 207 of file simple_transmission.h.

void transmission_interface::SimpleTransmission::actuatorToJointVelocity ( const ActuatorData act_data,
JointData jnt_data 
)
inlinevirtual

Transform velocity variables from actuator to joint space.

Parameters
[in]act_dataActuator-space variables.
[out]jnt_dataJoint-space variables.
Precondition
Actuator and joint velocity vectors must have size 1 and point to valid data. To call this method it is not required that all other data vectors contain valid data, and can even remain empty.

Implements transmission_interface::Transmission.

Definition at line 198 of file simple_transmission.h.

double transmission_interface::SimpleTransmission::getActuatorReduction ( ) const
inline

Definition at line 169 of file simple_transmission.h.

double transmission_interface::SimpleTransmission::getJointOffset ( ) const
inline

Definition at line 170 of file simple_transmission.h.

void transmission_interface::SimpleTransmission::jointToActuatorEffort ( const JointData jnt_data,
ActuatorData act_data 
)
inlinevirtual

Transform effort variables from joint to actuator space.

Parameters
[in]jnt_dataJoint-space variables.
[out]act_dataActuator-space variables.
Precondition
Actuator and joint effort vectors must have size 1 and point to valid data. To call this method it is not required that all other data vectors contain valid data, and can even remain empty.

Implements transmission_interface::Transmission.

Definition at line 216 of file simple_transmission.h.

void transmission_interface::SimpleTransmission::jointToActuatorPosition ( const JointData jnt_data,
ActuatorData act_data 
)
inlinevirtual

Transform position variables from joint to actuator space.

Parameters
[in]jnt_dataJoint-space variables.
[out]act_dataActuator-space variables.
Precondition
Actuator and joint position vectors must have size 1 and point to valid data. To call this method it is not required that all other data vectors contain valid data, and can even remain empty.

Implements transmission_interface::Transmission.

Definition at line 234 of file simple_transmission.h.

void transmission_interface::SimpleTransmission::jointToActuatorVelocity ( const JointData jnt_data,
ActuatorData act_data 
)
inlinevirtual

Transform velocity variables from joint to actuator space.

Parameters
[in]jnt_dataJoint-space variables.
[out]act_dataActuator-space variables.
Precondition
Actuator and joint velocity vectors must have size 1 and point to valid data. To call this method it is not required that all other data vectors contain valid data, and can even remain empty.

Implements transmission_interface::Transmission.

Definition at line 225 of file simple_transmission.h.

std::size_t transmission_interface::SimpleTransmission::numActuators ( ) const
inlinevirtual
Returns
Number of actuators managed by transmission, ie. the dimension of the actuator space.

Implements transmission_interface::Transmission.

Definition at line 166 of file simple_transmission.h.

std::size_t transmission_interface::SimpleTransmission::numJoints ( ) const
inlinevirtual
Returns
Number of joints managed by transmission, ie. the dimension of the joint space.

Implements transmission_interface::Transmission.

Definition at line 167 of file simple_transmission.h.

Member Data Documentation

double transmission_interface::SimpleTransmission::jnt_offset_
private

Definition at line 174 of file simple_transmission.h.

double transmission_interface::SimpleTransmission::reduction_
private

Definition at line 173 of file simple_transmission.h.


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


transmission_interface
Author(s): Adolfo Rodriguez Tsouroukdissian
autogenerated on Mon Apr 20 2020 03:52:15