Public Member Functions
transmission_interface::Transmission Class Reference

Abstract base class for representing mechanical transmissions. More...

#include <transmission.h>

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

List of all members.

Public Member Functions

virtual void actuatorToJointEffort (const ActuatorData &act_data, JointData &jnt_data)=0
 Transform effort variables from actuator to joint space.
virtual void actuatorToJointPosition (const ActuatorData &act_data, JointData &jnt_data)=0
 Transform position variables from actuator to joint space.
virtual void actuatorToJointVelocity (const ActuatorData &act_data, JointData &jnt_data)=0
 Transform velocity variables from actuator to joint space.
virtual void jointToActuatorEffort (const JointData &jnt_data, ActuatorData &act_data)=0
 Transform effort variables from joint to actuator space.
virtual void jointToActuatorPosition (const JointData &jnt_data, ActuatorData &act_data)=0
 Transform position variables from joint to actuator space.
virtual void jointToActuatorVelocity (const JointData &jnt_data, ActuatorData &act_data)=0
 Transform velocity variables from joint to actuator space.
virtual std::size_t numActuators () const =0
virtual std::size_t numJoints () const =0
virtual ~Transmission ()

Detailed Description

Abstract base class for representing mechanical transmissions.

Mechanical transmissions transform effort/flow variables such that their product (power) remains constant. Effort variables for linear and rotational domains are force and torque; while the flow variables are respectively linear velocity and angular velocity.

In robotics it is customary to place transmissions between actuators and joints. This interface adheres to this naming to identify the input and output spaces of the transformation. The provided interfaces allow bidirectional mappings between actuator and joint spaces for effort, velocity and positon. Position is not a power variable, but the mappings can be implemented using the velocity map plus an integration constant representing the offset between actuator and joint zeros.

Credit
This interface was inspired by similar existing implemenations by PAL Robotics, S.L. and Willow Garage Inc.
Note:
Implementations of this interface must take care of realtime-safety if the code is to be run in realtime contexts, as is often the case in robot control.

Definition at line 85 of file transmission.h.


Constructor & Destructor Documentation

Definition at line 88 of file transmission.h.


Member Function Documentation

virtual void transmission_interface::Transmission::actuatorToJointEffort ( const ActuatorData act_data,
JointData jnt_data 
) [pure virtual]

Transform effort variables from actuator to joint space.

Parameters:
[in]act_dataActuator-space variables.
[out]jnt_dataJoint-space variables.
Precondition:
All non-empty vectors must contain valid data and their size should be consistent with the number of transmission actuators and joints. Data vectors not used in this map can remain empty.

Implemented in transmission_interface::DifferentialTransmission, transmission_interface::FourBarLinkageTransmission, and transmission_interface::SimpleTransmission.

virtual void transmission_interface::Transmission::actuatorToJointPosition ( const ActuatorData act_data,
JointData jnt_data 
) [pure virtual]

Transform position variables from actuator to joint space.

Parameters:
[in]act_dataActuator-space variables.
[out]jnt_dataJoint-space variables.
Precondition:
All non-empty vectors must contain valid data and their size should be consistent with the number of transmission actuators and joints. Data vectors not used in this map can remain empty.

Implemented in transmission_interface::DifferentialTransmission, transmission_interface::FourBarLinkageTransmission, and transmission_interface::SimpleTransmission.

virtual void transmission_interface::Transmission::actuatorToJointVelocity ( const ActuatorData act_data,
JointData jnt_data 
) [pure virtual]

Transform velocity variables from actuator to joint space.

Parameters:
[in]act_dataActuator-space variables.
[out]jnt_dataJoint-space variables.
Precondition:
All non-empty vectors must contain valid data and their size should be consistent with the number of transmission actuators and joints. Data vectors not used in this map can remain empty.

Implemented in transmission_interface::DifferentialTransmission, transmission_interface::FourBarLinkageTransmission, and transmission_interface::SimpleTransmission.

virtual void transmission_interface::Transmission::jointToActuatorEffort ( const JointData jnt_data,
ActuatorData act_data 
) [pure virtual]

Transform effort variables from joint to actuator space.

Parameters:
[in]jnt_dataJoint-space variables.
[out]act_dataActuator-space variables.
Precondition:
All non-empty vectors must contain valid data and their size should be consistent with the number of transmission actuators and joints. Data vectors not used in this map can remain empty.

Implemented in transmission_interface::DifferentialTransmission, transmission_interface::FourBarLinkageTransmission, and transmission_interface::SimpleTransmission.

virtual void transmission_interface::Transmission::jointToActuatorPosition ( const JointData jnt_data,
ActuatorData act_data 
) [pure virtual]

Transform position variables from joint to actuator space.

Parameters:
[in]jnt_dataJoint-space variables.
[out]act_dataActuator-space variables.
Precondition:
All non-empty vectors must contain valid data and their size should be consistent with the number of transmission actuators and joints. Data vectors not used in this map can remain empty.

Implemented in transmission_interface::DifferentialTransmission, transmission_interface::FourBarLinkageTransmission, and transmission_interface::SimpleTransmission.

virtual void transmission_interface::Transmission::jointToActuatorVelocity ( const JointData jnt_data,
ActuatorData act_data 
) [pure virtual]

Transform velocity variables from joint to actuator space.

Parameters:
[in]jnt_dataJoint-space variables.
[out]act_dataActuator-space variables.
Precondition:
All non-empty vectors must contain valid data and their size should be consistent with the number of transmission actuators and joints. Data vectors not used in this map can remain empty.

Implemented in transmission_interface::DifferentialTransmission, transmission_interface::FourBarLinkageTransmission, and transmission_interface::SimpleTransmission.

virtual std::size_t transmission_interface::Transmission::numActuators ( ) const [pure virtual]
Returns:
Number of actuators managed by transmission, ie. the dimension of the actuator space.

Implemented in transmission_interface::DifferentialTransmission, transmission_interface::FourBarLinkageTransmission, and transmission_interface::SimpleTransmission.

virtual std::size_t transmission_interface::Transmission::numJoints ( ) const [pure virtual]
Returns:
Number of joints managed by transmission, ie. the dimension of the joint space.

Implemented in transmission_interface::DifferentialTransmission, transmission_interface::FourBarLinkageTransmission, and transmission_interface::SimpleTransmission.


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


transmission_interface
Author(s): Adolfo Rodriguez Tsouroukdissian
autogenerated on Fri Aug 28 2015 12:36:26