General class that allow to get/set parameters from/to qbrobotics devices. More...
#include <qbrobotics_research_api.h>

Classes | |
| class | Params |
| Manage qbrobotics devices parameters. More... | |
Public Member Functions | |
| Device (std::shared_ptr< Communication > communication, std::string name, std::string serial_port, uint8_t id) | |
| Device (std::shared_ptr< Communication > communication, std::string name, std::string serial_port, uint8_t id, bool init_params) | |
| Device (std::shared_ptr< Communication > communication, std::string name, std::string serial_port, uint8_t id, bool init_params, std::unique_ptr< Params > params) | |
| virtual int | getAccelerations (std::vector< int16_t > &accelerations) |
| Get the motor(s) acceleration(s) More... | |
| virtual int | getControlReferences (std::vector< int16_t > &control_references) |
| Get the reference command sent to the motor(s) of the device. More... | |
| virtual int | getCurrents (std::vector< int16_t > ¤ts) |
| Get the device current(s) absorbed by the motor(s) More... | |
| virtual int | getCurrentsAndPositions (std::vector< int16_t > ¤ts, std::vector< int16_t > &positions) |
| Get the device currents absorbed by the motor(s) and its/their position(s) More... | |
| virtual int | getCycleTime (int16_t &cycle_time) |
| virtual int | getInfo (std::string &info) |
| Get all system information. More... | |
| virtual int | getInfo (uint16_t info_type, std::string &info) |
| Get the Info of the device. More... | |
| virtual int | getMotorStates (bool &motor_state) |
| Get the device motor state. More... | |
| virtual int | getParamControlMode () |
Update the device control mode in the class variable param_. More... | |
| virtual int | getParamControlMode (uint8_t &control_mode) |
| Get the control mode parameter. More... | |
| virtual int | getParamCurrentLimit () |
Update the current limits parameters in the class variable param_. More... | |
| virtual int | getParamCurrentLimit (int16_t ¤t_limit) |
| Get current limit parameter. More... | |
| virtual int | getParamCurrentPID () |
Update the device current PID parameters in the class variable param_. More... | |
| virtual int | getParamCurrentPID (std::vector< float > ¤t_pid) |
| Get the device current PID parameters. More... | |
| virtual int | getParamEncoderMultipliers () |
Update the device encoder multipliers in the class variable param_. More... | |
| virtual int | getParamEncoderMultipliers (std::vector< float > &encoder_multipliers) |
| Get the encoder multipliers parameters. More... | |
| virtual int | getParamEncoderOffsets () |
Update the device encoder offsets in the class variable param_. More... | |
| virtual int | getParamEncoderOffsets (std::vector< int16_t > &encoder_offsets) |
| Get the encoder offsets parameters. More... | |
| virtual int | getParamEncoderResolutions () |
Update the device encoder resolutions in the class variable param_. More... | |
| virtual int | getParamEncoderResolutions (std::vector< uint8_t > &encoder_resolutions) |
| Get the encoder resolution parameters. More... | |
| virtual int | getParameters (std::vector< int8_t > ¶m_buffer) |
| Get the parameters from the device. More... | |
| virtual int | getParameters (uint8_t id, std::vector< int8_t > ¶m_buffer) |
Get the parameters from the device with ID id. More... | |
| virtual int | getParamId () |
Update the device ID in the class variable param_. More... | |
| virtual int | getParamId (uint8_t &id) |
| Get the device ID. More... | |
| virtual int | getParamInputMode () |
Get the input mode parameter in the class variable param_. More... | |
| virtual int | getParamInputMode (uint8_t &input_mode) |
| Get the input parameter to the correspective value of the input mode. More... | |
| virtual int | getParamPositionLimits () |
Update the position limits parameters in the class variable param_. More... | |
| virtual int | getParamPositionLimits (std::vector< int32_t > &position_limits) |
| Get position limits parameters. More... | |
| virtual int | getParamPositionMaxSteps () |
Update the max step position parameters in the class variable param_. More... | |
| virtual int | getParamPositionMaxSteps (std::vector< int32_t > &position_max_steps) |
| Get max steps position parameters. More... | |
| virtual int | getParamPositionPID () |
Update the device position PID parameters in the class variable param_. More... | |
| virtual int | getParamPositionPID (std::vector< float > &position_pid) |
| Get the device position PID parameters. More... | |
| std::shared_ptr< Params > | getParams () |
| virtual int | getParamStartupActivation () |
Update the startup activation parameter in the class variable param_. More... | |
| virtual int | getParamStartupActivation (uint8_t &startup_activation) |
| Get the startup activation parameter. More... | |
| virtual int | getParamUsePositionLimits () |
Update the the use of position limits in the class variable param_. More... | |
| virtual int | getParamUsePositionLimits (uint8_t &use_position_limits) |
| Get the use of position limits parameter. More... | |
| virtual int | getPositions (std::vector< int16_t > &positions) |
| Get the Positions given by the encoders mounted on the device. More... | |
| virtual int | getVelocities (std::vector< int16_t > &velocities) |
| Get the motor(s) velocitie(s) More... | |
| bool | isQbmove () |
| bool | isSH2M () |
| bool | isSHPRO () |
| virtual int | ping () |
| virtual int | restoreFactoryDataMemory () |
| Restore factory parameter on 7.X.X firmware devices. More... | |
| virtual int | restoreUserDataMemory () |
| Restore user parameter on 7.X.X firmware devices. More... | |
| virtual int | setBootloaderMode () |
| Set the bootloader mode. More... | |
| virtual int | setControlReferences (const std::vector< int16_t > &control_references) |
| Set motor(s) control reference - position[tick]. More... | |
| virtual int | setControlReferencesAndWait (const std::vector< int16_t > &control_references) |
| Set motor(s) control reference and wait for acknowledge - position[tick](only for legacy qbmoves) More... | |
| virtual int | setMotorStates (bool motor_state) |
| Activate or deactivate the motor(s) More... | |
| virtual int | setParamBaudrate (uint8_t prescaler_divider) |
| Set the device baud rate. More... | |
| virtual int | setParamControlMode (uint8_t control_mode) |
| Set the control mode parameter of the device. More... | |
| virtual int | setParamCurrentLimit (int16_t current_limit) |
| Set the cerrent limit parameter of the device. More... | |
| virtual int | setParamCurrentPID (const std::vector< float > ¤t_pid) |
| Set the current PID parameters of the device. More... | |
| virtual int | setParamEncoderMultipliers (const std::vector< float > &encoder_multipliers) |
| Set the encoder multipliers parameters of the device. More... | |
| virtual int | setParamEncoderOffsets (const std::vector< int16_t > &encoder_offsets) |
| Set the encoder offsets parameters of the device. More... | |
| virtual int | setParamEncoderResolutions (const std::vector< uint8_t > &encoder_resolutions) |
| Set the encoder resolutions parameters of the device. More... | |
| virtual int | setParameter (uint16_t param_type, const std::vector< int8_t > ¶m_data) |
Set the Parameter specified by param_type with the values stored in param_data. More... | |
| virtual int | setParamId (uint8_t id) |
| Set the ID of the device. More... | |
| virtual int | setParamInputMode (uint8_t input_mode) |
| Set the input mode parameter of the device. More... | |
| virtual int | setParamPositionLimits (const std::vector< int32_t > &position_limits) |
| Set the position limits parameters of the device. More... | |
| virtual int | setParamPositionMaxSteps (const std::vector< int32_t > &position_max_steps) |
| Set the position max steps parameters of the device. More... | |
| virtual int | setParamPositionPID (const std::vector< float > &position_pid) |
| Set the position PID parameters of the device. More... | |
| virtual int | setParamStartupActivation (bool startup_activation) |
| Set the startup activation parameter of the device. More... | |
| virtual int | setParamUsePositionLimits (bool use_position_limits) |
| Enable or disable the use of position limits. More... | |
| virtual int | setParamZeros () |
| Set motor(s) zero(s) to actual encoder reading. More... | |
| virtual int | storeFactoryDataMemory () |
| Store the changed parameters on 7.X.X firmware devices in factory memory. More... | |
| virtual int | storeUserDataMemory () |
| Store the changed parameters on 7.X.X firmware devices in user memory. More... | |
| virtual | ~Device ()=default |
Protected Attributes | |
| std::shared_ptr< Communication > | communication_ |
| std::string | name_ |
| std::shared_ptr< Params > | params_ |
| std::string | serial_port_ |
General class that allow to get/set parameters from/to qbrobotics devices.
Definition at line 268 of file qbrobotics_research_api.h.
|
explicit |
Definition at line 611 of file qbrobotics_research_api.cpp.
|
explicit |
Definition at line 614 of file qbrobotics_research_api.cpp.
|
explicit |
Definition at line 617 of file qbrobotics_research_api.cpp.
|
virtualdefault |
|
virtual |
Get the motor(s) acceleration(s)
| [out] | accelerations[tick/s^2] | vector passed by reference |
Definition at line 687 of file qbrobotics_research_api.cpp.
|
virtual |
Get the reference command sent to the motor(s) of the device.
| [out] | control_references[tick] | vector passed by reference |
Reimplemented in qbrobotics_research_api::qbmoveLegacyResearch.
Definition at line 639 of file qbrobotics_research_api.cpp.
|
virtual |
Get the device current(s) absorbed by the motor(s)
| [out] | currents[mA] | vector passed by reference |
Definition at line 648 of file qbrobotics_research_api.cpp.
|
virtual |
Get the device currents absorbed by the motor(s) and its/their position(s)
| [out] | currents[mA] | vector passed by reference |
| [out] | positions[tick] | vector passed by reference |
Definition at line 657 of file qbrobotics_research_api.cpp.
|
virtual |
Definition at line 708 of file qbrobotics_research_api.cpp.
|
virtual |
Get all system information.
| [out] | info | std::string passed by reference |
Definition at line 745 of file qbrobotics_research_api.cpp.
|
virtual |
Get the Info of the device.
| info_type | - 0 All system information; - 1 Cycles information; - 2 Read Firmware Parameters from SD file; - 3 Read Usage Data from SD file. |
| info[out] | std::string passed by reference |
Definition at line 749 of file qbrobotics_research_api.cpp.
|
virtual |
Get the device motor state.
| [out] | motor_state | boolean passed by reference |
Definition at line 696 of file qbrobotics_research_api.cpp.
|
virtual |
Update the device control mode in the class variable param_.
Definition at line 837 of file qbrobotics_research_api.cpp.
|
virtual |
Get the control mode parameter.
| [out] | control_mode |
|
Definition at line 841 of file qbrobotics_research_api.cpp.
|
virtual |
Update the current limits parameters in the class variable param_.
Definition at line 928 of file qbrobotics_research_api.cpp.
|
virtual |
Get current limit parameter.
| [out] | current_limit[mA] |
Definition at line 932 of file qbrobotics_research_api.cpp.
|
virtual |
Update the device current PID parameters in the class variable param_.
Definition at line 798 of file qbrobotics_research_api.cpp.
|
virtual |
Get the device current PID parameters.
| [out] | current_pid |
Definition at line 802 of file qbrobotics_research_api.cpp.
|
virtual |
Update the device encoder multipliers in the class variable param_.
Definition at line 876 of file qbrobotics_research_api.cpp.
|
virtual |
Get the encoder multipliers parameters.
| [out] | encoder_multipliers |
Definition at line 880 of file qbrobotics_research_api.cpp.
|
virtual |
Update the device encoder offsets in the class variable param_.
Reimplemented in qbrobotics_research_api::qbmoveLegacyResearch, and qbrobotics_research_api::qbSoftHand2MotorsResearch.
Definition at line 863 of file qbrobotics_research_api.cpp.
|
virtual |
Get the encoder offsets parameters.
| [out] | encoder_offsets |
Reimplemented in qbrobotics_research_api::qbmoveLegacyResearch, and qbrobotics_research_api::qbSoftHand2MotorsResearch.
Definition at line 867 of file qbrobotics_research_api.cpp.
|
virtual |
Update the device encoder resolutions in the class variable param_.
Definition at line 850 of file qbrobotics_research_api.cpp.
|
virtual |
Get the encoder resolution parameters.
| [out] | encoder_resolutions |
Definition at line 854 of file qbrobotics_research_api.cpp.
|
virtual |
Get the parameters from the device.
| [out] | param_buffer | vector passed by reference |
Definition at line 759 of file qbrobotics_research_api.cpp.
|
virtual |
Get the parameters from the device with ID id.
| [out] | id | device ID |
| [out] | param_buffer | vector passed by reference |
Definition at line 763 of file qbrobotics_research_api.cpp.
|
virtual |
Update the device ID in the class variable param_.
Definition at line 772 of file qbrobotics_research_api.cpp.
|
virtual |
Get the device ID.
| [out] | id | device ID |
Definition at line 776 of file qbrobotics_research_api.cpp.
|
virtual |
Get the input mode parameter in the class variable param_.
These values are:
Definition at line 824 of file qbrobotics_research_api.cpp.
|
virtual |
Get the input parameter to the correspective value of the input mode.
| [out] | input_mode | The possible values are:
|
Definition at line 828 of file qbrobotics_research_api.cpp.
|
virtual |
Update the position limits parameters in the class variable param_.
Definition at line 902 of file qbrobotics_research_api.cpp.
|
virtual |
Get position limits parameters.
| [out] | position_limits |
Definition at line 906 of file qbrobotics_research_api.cpp.
|
virtual |
Update the max step position parameters in the class variable param_.
Definition at line 915 of file qbrobotics_research_api.cpp.
|
virtual |
Get max steps position parameters.
| [out] | position_max_steps |
Definition at line 919 of file qbrobotics_research_api.cpp.
|
virtual |
Update the device position PID parameters in the class variable param_.
Definition at line 785 of file qbrobotics_research_api.cpp.
|
virtual |
Get the device position PID parameters.
| [out] | position_pid |
Definition at line 789 of file qbrobotics_research_api.cpp.
|
inline |
Definition at line 844 of file qbrobotics_research_api.h.
|
virtual |
Update the startup activation parameter in the class variable param_.
Definition at line 811 of file qbrobotics_research_api.cpp.
|
virtual |
Get the startup activation parameter.
| [out] | startup_activation |
Definition at line 815 of file qbrobotics_research_api.cpp.
|
virtual |
Update the the use of position limits in the class variable param_.
Definition at line 889 of file qbrobotics_research_api.cpp.
|
virtual |
Get the use of position limits parameter.
| [out] | use_position_limits | 0 false, 1 true |
Definition at line 893 of file qbrobotics_research_api.cpp.
|
virtual |
Get the Positions given by the encoders mounted on the device.
| [out] | positions[tick] | vector passed by reference |
Definition at line 669 of file qbrobotics_research_api.cpp.
|
virtual |
Get the motor(s) velocitie(s)
| [out] | velocities[tick/s] | vector passed by reference |
Definition at line 678 of file qbrobotics_research_api.cpp.
|
inline |
Definition at line 845 of file qbrobotics_research_api.h.
|
inline |
Definition at line 847 of file qbrobotics_research_api.h.
|
inline |
Definition at line 846 of file qbrobotics_research_api.h.
|
virtual |
Definition at line 635 of file qbrobotics_research_api.cpp.
|
virtual |
Restore factory parameter on 7.X.X firmware devices.
For 6.X.X it executes INIT_MEM command
Definition at line 1096 of file qbrobotics_research_api.cpp.
|
virtual |
Restore user parameter on 7.X.X firmware devices.
Definition at line 1110 of file qbrobotics_research_api.cpp.
|
virtual |
Set the bootloader mode.
Definition at line 1146 of file qbrobotics_research_api.cpp.
|
virtual |
Set motor(s) control reference - position[tick].
| control_references[tick] |
Definition at line 717 of file qbrobotics_research_api.cpp.
|
virtual |
Set motor(s) control reference and wait for acknowledge - position[tick](only for legacy qbmoves)
| control_references[tick] |
Definition at line 725 of file qbrobotics_research_api.cpp.
|
virtual |
Activate or deactivate the motor(s)
| motor_state | the desired motor(s) state(s) |
Reimplemented in qbrobotics_research_api::qbSoftHandLegacyResearch, qbrobotics_research_api::qbmoveLegacyResearch, and qbrobotics_research_api::qbSoftHand2MotorsResearch.
Definition at line 737 of file qbrobotics_research_api.cpp.
|
virtual |
Set the device baud rate.
| prescaler_divider |
Definition at line 1071 of file qbrobotics_research_api.cpp.
|
virtual |
Set the control mode parameter of the device.
| control_mode |
Definition at line 999 of file qbrobotics_research_api.cpp.
|
virtual |
Set the cerrent limit parameter of the device.
| current_limit |
Definition at line 1055 of file qbrobotics_research_api.cpp.
|
virtual |
Set the current PID parameters of the device.
| current_pid | desired device PID(current) parameters |
Definition at line 975 of file qbrobotics_research_api.cpp.
|
virtual |
Set the encoder multipliers parameters of the device.
| encoder_multipliers |
Definition at line 1023 of file qbrobotics_research_api.cpp.
|
virtual |
Set the encoder offsets parameters of the device.
| encoder_offsets |
Reimplemented in qbrobotics_research_api::qbmoveLegacyResearch, and qbrobotics_research_api::qbSoftHand2MotorsResearch.
Definition at line 1015 of file qbrobotics_research_api.cpp.
|
virtual |
Set the encoder resolutions parameters of the device.
| encoder_resolutions |
Definition at line 1007 of file qbrobotics_research_api.cpp.
|
virtual |
Set the Parameter specified by param_type with the values stored in param_data.
| param_type | ID of the parameter to be set |
| param_data | value(s) to be set |
Reimplemented in qbrobotics_research_api::qbSoftHandLegacyResearch, qbrobotics_research_api::qbmoveLegacyResearch, and qbrobotics_research_api::qbSoftHand2MotorsResearch.
Definition at line 941 of file qbrobotics_research_api.cpp.
|
virtual |
Set the ID of the device.
| id | desired device ID |
Reimplemented in qbrobotics_research_api::qbSoftHandLegacyResearch, qbrobotics_research_api::qbmoveLegacyResearch, and qbrobotics_research_api::qbSoftHand2MotorsResearch.
Definition at line 959 of file qbrobotics_research_api.cpp.
|
virtual |
Set the input mode parameter of the device.
| input_mode |
Definition at line 991 of file qbrobotics_research_api.cpp.
|
virtual |
Set the position limits parameters of the device.
| position_limits |
Definition at line 1039 of file qbrobotics_research_api.cpp.
|
virtual |
Set the position max steps parameters of the device.
| position_max_steps |
Definition at line 1047 of file qbrobotics_research_api.cpp.
|
virtual |
Set the position PID parameters of the device.
| position_pid | desired device PID(position) parameters |
Definition at line 967 of file qbrobotics_research_api.cpp.
|
virtual |
Set the startup activation parameter of the device.
| startup_activation |
Definition at line 983 of file qbrobotics_research_api.cpp.
|
virtual |
Enable or disable the use of position limits.
| use_position_limits |
Definition at line 1031 of file qbrobotics_research_api.cpp.
|
virtual |
Set motor(s) zero(s) to actual encoder reading.
Reimplemented in qbrobotics_research_api::qbSoftHandLegacyResearch, qbrobotics_research_api::qbmoveLegacyResearch, and qbrobotics_research_api::qbSoftHand2MotorsResearch.
Definition at line 1063 of file qbrobotics_research_api.cpp.
|
virtual |
Store the changed parameters on 7.X.X firmware devices in factory memory.
Definition at line 1135 of file qbrobotics_research_api.cpp.
|
virtual |
Store the changed parameters on 7.X.X firmware devices in user memory.
Definition at line 1124 of file qbrobotics_research_api.cpp.
|
protected |
Definition at line 853 of file qbrobotics_research_api.h.
|
protected |
Definition at line 850 of file qbrobotics_research_api.h.
|
protected |
Definition at line 852 of file qbrobotics_research_api.h.
|
protected |
Definition at line 851 of file qbrobotics_research_api.h.