#include <motor_updater.hpp>
Public Member Functions | |
operation_mode::device_update_state::DeviceUpdateState | build_command (ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND *command) |
operation_mode::device_update_state::DeviceUpdateState | build_init_command (ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND *command) |
MotorUpdater (std::vector< UpdateConfig > update_configs_vector, operation_mode::device_update_state::DeviceUpdateState update_state) | |
void | timer_callback (const ros::TimerEvent &event, FROM_MOTOR_DATA_TYPE data_type) |
~MotorUpdater () | |
Private Attributes | |
int | even_motors |
are we sending the command to the even or the uneven motors. |
The Motor Updater builds the next command we want to send to the hand. We can ask for different types of data at different rates. The data and their rates are defined in the sr_ethercat_hand_config/rates/motor_data_polling.yaml The important data are refreshed as often as possible (they have a -1. refresh rate in the config file).
The unimportant data are refreshed at their given rate (the value is defined in the config in seconds).
Definition at line 58 of file motor_updater.hpp.
generic_updater::MotorUpdater::MotorUpdater | ( | std::vector< UpdateConfig > | update_configs_vector, |
operation_mode::device_update_state::DeviceUpdateState | update_state | ||
) |
Definition at line 35 of file motor_updater.cpp.
Definition at line 40 of file motor_updater.cpp.
operation_mode::device_update_state::DeviceUpdateState generic_updater::MotorUpdater::build_command | ( | ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND * | command | ) | [virtual] |
Building the motor command. This function is called at each packCommand() call. If an unimportant data is waiting then we send it, otherwise, we send the next important data.
command | The command which will be sent to the motor. |
Implements generic_updater::GenericUpdater.
Definition at line 85 of file motor_updater.cpp.
operation_mode::device_update_state::DeviceUpdateState generic_updater::MotorUpdater::build_init_command | ( | ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND * | command | ) |
Building the motor initialization command. This function is called at each packCommand() call. It builds initialization commands if the update state is operation_mode::device_update_state::INITIALIZATION.
command | The command which will be sent to the motor. |
Definition at line 44 of file motor_updater.cpp.
void generic_updater::MotorUpdater::timer_callback | ( | const ros::TimerEvent & | event, |
FROM_MOTOR_DATA_TYPE | data_type | ||
) |
A timer callback for the unimportant data. The frequency of this callback is defined in the config file.
event | |
data_type | The unimportant data type we want to ask for. |
Reimplemented from generic_updater::GenericUpdater.
int generic_updater::MotorUpdater::even_motors [private] |
are we sending the command to the even or the uneven motors.
Definition at line 95 of file motor_updater.hpp.