Class solo::Solo8TI

class Solo8TI

Public Functions

Solo8TI()

Solo8 is the constructor of the class.

void initialize()

initialize the robot by setting aligning the motors and calibrate the sensors to 0

void send_target_joint_torque(const Eigen::Ref<Vector8d> target_joint_torque)

send_target_torques sends the target currents to the motors

void acquire_sensors()

acquire_sensors acquire all available sensors, WARNING !!!! this method has to be called prior to any getter to have up to date data.

bool calibrate(const Vector8d &home_offset_rad)

Calibrate the joints by moving to the next joint index position.

Parameters:

home_offset_rad – This is the angle between the index and the zero pose.

Returns:

true

Returns:

false

inline const Eigen::Ref<Vector8d> get_motor_inertias()

Joint properties.

get_motor_inertias

Returns:

the motor inertias

inline const Eigen::Ref<Vector8d> get_motor_torque_constants()

get_motor_torque_constants

Returns:

the torque constants of each motor

inline const Eigen::Ref<Vector8d> get_joint_gear_ratios()

get_joint_gear_ratios

Returns:

the joint gear ratios

inline const Eigen::Ref<Vector8d> get_motor_max_current()

get_max_torque

Returns:

the max torque that has been hardcoded in the constructor of this class. TODO: parametrize this via yaml or something else.

inline const Eigen::Ref<Vector8d> get_joint_positions()

Sensor Data.

get_joint_positions

Returns:

the joint angle of each module WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Vector8d> get_joint_velocities()

get_joint_velocities

Returns:

the joint velocities WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Vector8d> get_joint_torques()

get_joint_torques

Returns:

the joint torques WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Vector8d> get_joint_target_torques()

get_joint_torques

Returns:

the target joint torques WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Vector8d> get_joint_encoder_index()

get_joint_encoder_index

Returns:

the position of the index of the encoders a the motor level WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Eigen::Vector4d> get_contact_sensors_states()

get_contact_sensors_states

Returns:

the state of the contacts states WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Eigen::Vector4d> get_slider_positions()

get_slider_positions

Returns:

the current sliders positions. WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const std::array<bool, 8> &get_motor_enabled()

Hardware Status.

get_motor_enabled

Returns:

This gives the status (enabled/disabled) of each motors using the joint ordering convention.

inline const std::array<bool, 8> &get_motor_ready()

get_motor_ready

Returns:

This gives the status (enabled/disabled) of each motors using the joint ordering convention.

inline const std::array<bool, 4> &get_motor_board_enabled()

get_motor_board_enabled

Returns:

This gives the status (enabled/disabled of the onboard control cards).

inline const std::array<int, 4> &get_motor_board_errors()

get_motor_board_errors

Returns:

This gives the status (enabled/disabled of the onboard control cards).

Solo8TI()

Solo8 is the constructor of the class.

void initialize()

initialize the robot by setting aligning the motors and calibrate the sensors to 0

void send_target_joint_torque(const Eigen::Ref<Vector8d> target_joint_torque)

send_target_torques sends the target currents to the motors

void acquire_sensors()

acquire_sensors acquire all available sensors, WARNING !!!! this method has to be called prior to any getter to have up to date data.

bool calibrate(const Vector8d &home_offset_rad)

Calibrate the joints by moving to the next joint index position.

Parameters:

home_offset_rad – This is the angle between the index and the zero pose.

Returns:

true

Returns:

false

inline const Eigen::Ref<Vector8d> get_motor_inertias()

Joint properties.

get_motor_inertias

Returns:

the motor inertias

inline const Eigen::Ref<Vector8d> get_motor_torque_constants()

get_motor_torque_constants

Returns:

the torque constants of each motor

inline const Eigen::Ref<Vector8d> get_joint_gear_ratios()

get_joint_gear_ratios

Returns:

the joint gear ratios

inline const Eigen::Ref<Vector8d> get_motor_max_current()

get_max_torque

Returns:

the max torque that has been hardcoded in the constructor of this class. TODO: parametrize this via yaml or something else.

inline const Eigen::Ref<Vector8d> get_joint_positions()

Sensor Data.

get_joint_positions

Returns:

the joint angle of each module WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Vector8d> get_joint_velocities()

get_joint_velocities

Returns:

the joint velocities WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Vector8d> get_joint_torques()

get_joint_torques

Returns:

the joint torques WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Vector8d> get_joint_target_torques()

get_joint_torques

Returns:

the target joint torques WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Vector8d> get_joint_encoder_index()

get_joint_encoder_index

Returns:

the position of the index of the encoders a the motor level WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Eigen::Vector4d> get_contact_sensors_states()

get_contact_sensors_states

Returns:

the state of the contacts states WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const Eigen::Ref<Eigen::Vector4d> get_slider_positions()

get_slider_positions

Returns:

the current sliders positions. WARNING !!!! The method <acquire_sensors>”()” has to be called prior to any getter to have up to date data.

inline const std::array<bool, 8> &get_motor_enabled()

Hardware Status.

get_motor_enabled

Returns:

This gives the status (enabled/disabled) of each motors using the joint ordering convention.

inline const std::array<bool, 8> &get_motor_ready()

get_motor_ready

Returns:

This gives the status (enabled/disabled) of each motors using the joint ordering convention.

inline const std::array<bool, 4> &get_motor_board_enabled()

get_motor_board_enabled

Returns:

This gives the status (enabled/disabled of the onboard control cards).

inline const std::array<int, 4> &get_motor_board_errors()

get_motor_board_errors

Returns:

This gives the status (enabled/disabled of the onboard control cards).