Implementation of a four-bar-linkage transmission. More...
#include <four_bar_linkage_transmission.h>
Public Member Functions | |
void | actuatorToJointEffort (const ActuatorData &act_data, JointData &jnt_data) |
Transform effort variables from actuator to joint space. | |
void | actuatorToJointPosition (const ActuatorData &act_data, JointData &jnt_data) |
Transform position variables from actuator to joint space. | |
void | actuatorToJointVelocity (const ActuatorData &act_data, JointData &jnt_data) |
Transform velocity variables from actuator to joint space. | |
FourBarLinkageTransmission (const std::vector< double > &actuator_reduction, const std::vector< double > &joint_reduction, const std::vector< double > &joint_offset=std::vector< double >(2, 0.0)) | |
const std::vector< double > & | getActuatorReduction () const |
const std::vector< double > & | getJointOffset () const |
const std::vector< double > & | getJointReduction () const |
void | jointToActuatorEffort (const JointData &jnt_data, ActuatorData &act_data) |
Transform effort variables from joint to actuator space. | |
void | jointToActuatorPosition (const JointData &jnt_data, ActuatorData &act_data) |
Transform position variables from joint to actuator space. | |
void | jointToActuatorVelocity (const JointData &jnt_data, ActuatorData &act_data) |
Transform velocity variables from joint to actuator space. | |
std::size_t | numActuators () const |
std::size_t | numJoints () const |
Protected Attributes | |
std::vector< double > | act_reduction_ |
std::vector< double > | jnt_offset_ |
std::vector< double > | jnt_reduction_ |
Implementation of a four-bar-linkage transmission.
This transmission relates two actuators and two joints through a mechanism in which the state of the first joint only depends on the first actuator, while the second joint depends on both actuators, as illustrated below. Although the class name makes specific reference to the four-bar-linkage, there are other mechanical layouts that yield the same behavior, such as the remote actuation example also depicted below.
Actuator to joint |
|
|
|
Joint to actuator |
|
|
|
where:
Definition at line 117 of file four_bar_linkage_transmission.h.
transmission_interface::FourBarLinkageTransmission::FourBarLinkageTransmission | ( | const std::vector< double > & | actuator_reduction, |
const std::vector< double > & | joint_reduction, | ||
const std::vector< double > & | joint_offset = std::vector<double>(2, 0.0) |
||
) | [inline] |
actuator_reduction | Reduction ratio of actuators. |
joint_reduction | Reduction ratio of joints. |
joint_offset | Joint position offset used in the position mappings. |
Definition at line 203 of file four_bar_linkage_transmission.h.
void transmission_interface::FourBarLinkageTransmission::actuatorToJointEffort | ( | const ActuatorData & | act_data, |
JointData & | jnt_data | ||
) | [inline, virtual] |
Transform effort variables from actuator to joint space.
[in] | act_data | Actuator-space variables. |
[out] | jnt_data | Joint-space variables. |
Implements transmission_interface::Transmission.
Definition at line 226 of file four_bar_linkage_transmission.h.
void transmission_interface::FourBarLinkageTransmission::actuatorToJointPosition | ( | const ActuatorData & | act_data, |
JointData & | jnt_data | ||
) | [inline, virtual] |
Transform position variables from actuator to joint space.
[in] | act_data | Actuator-space variables. |
[out] | jnt_data | Joint-space variables. |
Implements transmission_interface::Transmission.
Definition at line 252 of file four_bar_linkage_transmission.h.
void transmission_interface::FourBarLinkageTransmission::actuatorToJointVelocity | ( | const ActuatorData & | act_data, |
JointData & | jnt_data | ||
) | [inline, virtual] |
Transform velocity variables from actuator to joint space.
[in] | act_data | Actuator-space variables. |
[out] | jnt_data | Joint-space variables. |
Implements transmission_interface::Transmission.
Definition at line 239 of file four_bar_linkage_transmission.h.
const std::vector<double>& transmission_interface::FourBarLinkageTransmission::getActuatorReduction | ( | ) | const [inline] |
Definition at line 193 of file four_bar_linkage_transmission.h.
const std::vector<double>& transmission_interface::FourBarLinkageTransmission::getJointOffset | ( | ) | const [inline] |
Definition at line 195 of file four_bar_linkage_transmission.h.
const std::vector<double>& transmission_interface::FourBarLinkageTransmission::getJointReduction | ( | ) | const [inline] |
Definition at line 194 of file four_bar_linkage_transmission.h.
void transmission_interface::FourBarLinkageTransmission::jointToActuatorEffort | ( | const JointData & | jnt_data, |
ActuatorData & | act_data | ||
) | [inline, virtual] |
Transform effort variables from joint to actuator space.
[in] | jnt_data | Joint-space variables. |
[out] | act_data | Actuator-space variables. |
Implements transmission_interface::Transmission.
Definition at line 266 of file four_bar_linkage_transmission.h.
void transmission_interface::FourBarLinkageTransmission::jointToActuatorPosition | ( | const JointData & | jnt_data, |
ActuatorData & | act_data | ||
) | [inline, virtual] |
Transform position variables from joint to actuator space.
[in] | jnt_data | Joint-space variables. |
[out] | act_data | Actuator-space variables. |
Implements transmission_interface::Transmission.
Definition at line 292 of file four_bar_linkage_transmission.h.
void transmission_interface::FourBarLinkageTransmission::jointToActuatorVelocity | ( | const JointData & | jnt_data, |
ActuatorData & | act_data | ||
) | [inline, virtual] |
Transform velocity variables from joint to actuator space.
[in] | jnt_data | Joint-space variables. |
[out] | act_data | Actuator-space variables. |
Implements transmission_interface::Transmission.
Definition at line 279 of file four_bar_linkage_transmission.h.
std::size_t transmission_interface::FourBarLinkageTransmission::numActuators | ( | ) | const [inline, virtual] |
Implements transmission_interface::Transmission.
Definition at line 190 of file four_bar_linkage_transmission.h.
std::size_t transmission_interface::FourBarLinkageTransmission::numJoints | ( | ) | const [inline, virtual] |
Implements transmission_interface::Transmission.
Definition at line 191 of file four_bar_linkage_transmission.h.
std::vector<double> transmission_interface::FourBarLinkageTransmission::act_reduction_ [protected] |
Definition at line 198 of file four_bar_linkage_transmission.h.
std::vector<double> transmission_interface::FourBarLinkageTransmission::jnt_offset_ [protected] |
Definition at line 200 of file four_bar_linkage_transmission.h.
std::vector<double> transmission_interface::FourBarLinkageTransmission::jnt_reduction_ [protected] |
Definition at line 199 of file four_bar_linkage_transmission.h.