Class DifferentialTransmission

Inheritance Relationships

Base Type

Class Documentation

class DifferentialTransmission : public transmission_interface::Transmission

Public Functions

inline DifferentialTransmission(const std::vector<double> &actuator_reduction, const std::vector<double> &joint_reduction, const std::vector<double> &joint_offset = {0.0, 0.0})
Parameters:
  • actuator_reduction[in] Reduction ratio of actuators.

  • joint_reduction[in] Reduction ratio of joints.

  • joint_offset[in] Joint position offset used in the position mappings.

Pre:

Nonzero actuator and joint reduction values.

virtual void configure(const std::vector<JointHandle> &joint_handles, const std::vector<ActuatorHandle> &actuator_handles) override
Parameters:
  • joint_handles[in] Handles of joint values.

  • actuator_handles[in] Handles of actuator values.

Pre:

Handles are valid and matching in size

inline virtual void actuator_to_joint() override

Transform variables from actuator to joint space.

Pre:

Actuator and joint vectors must have size 2 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.

inline virtual void joint_to_actuator() override

Transform variables from joint to actuator space.

Pre:

Actuator and joint vectors must have size 2 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.

inline virtual std::size_t num_actuators() const override
Returns:

Number of actuators managed by transmission, ie. the dimension of the actuator space.

inline virtual std::size_t num_joints() const override
Returns:

Number of joints managed by transmission, ie. the dimension of the joint space.

inline const std::vector<double> &get_actuator_reduction() const
inline const std::vector<double> &get_joint_reduction() const
inline const std::vector<double> &get_joint_offset() const
std::string get_handles_info() const

Get human-friendly report of handles.

Protected Attributes

std::vector<double> actuator_reduction_
std::vector<double> joint_reduction_
std::vector<double> joint_offset_
std::vector<JointHandle> joint_position_
std::vector<JointHandle> joint_velocity_
std::vector<JointHandle> joint_effort_
std::vector<JointHandle> joint_torque_
std::vector<JointHandle> joint_absolute_position_
std::vector<ActuatorHandle> actuator_position_
std::vector<ActuatorHandle> actuator_velocity_
std::vector<ActuatorHandle> actuator_effort_
std::vector<ActuatorHandle> actuator_torque_
std::vector<ActuatorHandle> actuator_absolute_position_