Classes | Enumerations
dynamixel_interface Namespace Reference

Classes

struct  DynamixelDataport
 data struct used with getBulkDataportInfo() to retrieve dataport values More...
 
struct  DynamixelDiagnostic
 data struct used with getBulkDiagnosticInfo() to retrieve diagnostics More...
 
struct  DynamixelInfo
 Struct that describes each servo's place in the system including which joint it corresponds to. More...
 
class  DynamixelInterfaceController
 
class  DynamixelInterfaceDriver
 
struct  DynamixelSpec
 Struct that describes the dynamixel motor's static and physical properties. More...
 
struct  DynamixelState
 data struct used with getBulkState() to retrieve physical state More...
 
struct  PortInfo
 Struct which stores information about each port in use and which joints use that port. More...
 
struct  SyncData
 Basic struct for representing dynamixel data exchange. More...
 

Enumerations

enum  DynamixelControlMode {
  UNKNOWN = -1, kModeTorqueControl = 0, kModeVelocityControl = 1, kModePositionControl = 3,
  kModeExtendedPositionControl = 4, kModeCurrentBasedPositionControl = 5, kModePWMControl = 16
}
 
enum  DynamixelErrorCode {
  kErrorNoError = 0, kErrorOverload = 32, kErrorElectricShock = 16, kErrorMotorEncoder = 8,
  kErrorOverheating = 4, kErrorMotorHall = 2, kErrorInputVoltage = 1, kErrorLegacyInstruction = 64,
  kErrorLegacyChecksum = 16, kErrorLegacyRange = 8, kErrorLegacyAngleLimit = 2
}
 Error return codes. More...
 
enum  DynamixelInstruction {
  kInstPing = 1, kInstReadData = 2, kInstWriteData = 3, kInstRegWrite = 4,
  kInstAction = 5, kInstReset = 6, kInstSyncWrite = 0x83, kInstBulkRead = 0x92,
  kInstBroadcast = 254
}
 Instruction codes for various commands. More...
 
enum  DynamixelLegacyProRegisterTable {
  kRegLegacyPro_ModelNumber = 0, kRegLegacyPro_ModelInfo = 2, kRegLegacyPro_FirmwareVersion = 6, kRegLegacyPro_ID = 7,
  kRegLegacyPro_BaudRate = 8, kRegLegacyPro_ReturnDelayTime = 9, kRegLegacyPro_OperatingMode = 11, kRegLegacyPro_LimitTemperature = 21,
  kRegLegacyPro_DownLimitVoltage = 24, kRegLegacyPro_UpLimitVoltage = 22, kRegLegacyPro_LED = 25, kRegLegacyPro_AccelLimit = 26,
  kRegLegacyPro_VelocityLimit = 32, kRegLegacyPro_MaxTorque = 30, kRegLegacyPro_MaxAngleLimit = 36, kRegLegacyPro_MinAngleLimit = 40,
  kRegLegacyPro_DataPort1Mode = 44, kRegLegacyPro_DataPort2Mode = 45, kRegLegacyPro_DataPort3Mode = 46, kRegLegacyPro_DataPort4Mode = 47,
  kRegLegacyPro_VelocityIGain = 586, kRegLegacyPro_VelocityPGain = 588, kRegLegacyPro_PositionPGain = 594, kRegLegacyPro_TorqueEnable = 562,
  kRegLegacyPro_GoalPosition = 596, kRegLegacyPro_GoalVelocity = 600, kRegLegacyPro_GoalTorque = 604, kRegLegacyPro_PresentPosition = 611,
  kRegLegacyPro_PresentVelocity = 615, kRegLegacyPro_PresentCurrent = 621, kRegLegacyPro_PresentVoltage = 623, kRegLegacyPro_PresentTemperature = 625,
  kRegLegacyPro_DataPort1 = 626, kRegLegacyPro_DataPort2 = 628, kRegLegacyPro_DataPort3 = 630, kRegLegacyPro_DataPort4 = 632,
  kRegLegacyPro_RegisteredInstruction = 890, kRegLegacyPro_Moving = 610, kRegLegacyPro_ReturnLevel = 891, kRegLegacyPro_HardwareErrorStatus = 892
}
 Control table/register addresses for each series of dynamixel. More...
 
enum  DynamixelLegacyRegisterTable {
  kRegLegacy_ModelNumber = 0, kRegLegacy_FirmwareVersion = 2, kRegLegacy_ID = 3, kRegLegacy_BaudRate = 4,
  kRegLegacy_ReturnDelayTime = 5, kRegLegacy_CWAngleLimit = 6, kRegLegacy_CCWAngleLimit = 8, kRegLegacy_DriveMode = 10,
  kRegLegacy_TemperatureLimit = 11, kRegLegacy_MinVoltageLimit = 12, kRegLegacy_MaxVoltageLimit = 13, kRegLegacy_MaxTorque = 14,
  kRegLegacy_ReturnLevel = 16, kRegLegacy_AlarmLED = 17, kRegLegacy_AlarmShutdown = 18, kRegLegacy_MultiTurnOffset = 20,
  kRegLegacy_ResolutionDivider = 22, kRegLegacy_TorqueEnable = 24, kRegLegacy_LED = 25, kRegLegacy_DGain = 26,
  kRegLegacy_IGain = 27, kRegLegacy_PGain = 28, kRegLegacy_CWComplianceMargin = 26, kRegLegacy_CCWComplianceMargin = 27,
  kRegLegacy_CWComplianceSlope = 28, kRegLegacy_CCWComplianceSlope = 29, kRegLegacy_GoalPosition = 30, kRegLegacy_MovingSpeed = 32,
  kRegLegacy_TorqueLimit = 34, kRegLegacy_PresentPosition = 36, kRegLegacy_PresentSpeed = 38, kRegLegacy_PresentLoad = 40,
  kRegLegacy_PresentVoltage = 42, kRegLegacy_PresentTemperature = 43, kRegLegacy_RegisteredInstruction = 44, kRegLegacy_Moving = 46,
  kRegLegacy_Lock = 47, kRegLegacy_Punch = 48, kRegLegacy_RealtimeTick = 50, kRegLegacy_SensedCurrent = 56,
  kRegLegacy_PresentCurrent = 68, kRegLegacy_TorqueControlEnable = 70, kRegLegacy_GoalTorque = 71, kRegLegacy_GoalAcceleration = 73
}
 
enum  DynamixelProRegisterTable {
  kRegP_ModelNumber = 0, kRegP_ModelInfo = 2, kRegP_FirmwareVersion = 6, kRegP_ID = 7,
  kRegP_BaudRate = 8, kRegP_ReturnDelayTime = 9, kRegP_DriveMode = 10, kRegP_OperatingMode = 11,
  kRegP_ShadowID = 12, kRegP_ProtocolType = 13, kRegP_HomingOffset = 20, kRegP_MovingThreshold = 24,
  kRegP_TemperatureLimit = 31, kRegP_MaxVoltageLimit = 32, kRegP_MinVoltageLimit = 34, kRegP_PWMLimit = 36,
  kRegP_CurrentLimit = 38, kRegP_AccelerationLimit = 40, kRegP_VelocityLimit = 44, kRegP_MaxPositionLimit = 48,
  kRegP_MinPositionLimit = 52, kRegP_DataPort1Mode = 56, kRegP_DataPort2Mode = 57, kRegP_DataPort3Mode = 58,
  kRegP_DataPort4Mode = 59, kRegP_Shutdown = 63, kRegP_IndirectAddress1 = 168, kRegP_TorqueEnable = 512,
  kRegP_RedLED = 513, kRegP_GreenLED = 514, kRegP_BlueLED = 515, kRegP_StatusReturnLevel = 516,
  kRegP_RegisteredInstruction = 517, kRegP_HardwareErrorStatus = 518, kRegP_VelocityIGain = 524, kRegP_VelocityPGain = 526,
  kRegP_PositionDGain = 528, kRegP_PositionIGain = 530, kRegP_PositionPGain = 532, kRegP_Feedforward2ndGain = 536,
  kRegP_Feedforward1stGain = 538, kRegP_BusWatchdog = 546, kRegP_GoalPWM = 548, kRegP_GoalCurrent = 550,
  kRegP_GoalVelocity = 552, kRegP_ProfileAcceleration = 556, kRegP_ProfileVelocity = 560, kRegP_GoalPosition = 564,
  kRegP_RealtimeTick = 568, kRegP_Moving = 570, kRegP_MovingStatus = 571, kRegP_PresentPWM = 572,
  kRegP_PresentCurrent = 574, kRegP_PresentVelocity = 576, kRegP_PresentPosition = 580, kRegP_VelocityTrajectory = 584,
  kRegP_PositionTrajectory = 588, kRegP_PresentInputVoltage = 592, kRegP_PresentTemperature = 594, kRegP_DataPort1 = 600,
  kRegP_DataPort2 = 602, kRegP_DataPort3 = 604, kRegP_DataPort4 = 606, kRegP_IndirectData1 = 634
}
 
enum  DynamixelSeriesType {
  kSeriesAX = 0, kSeriesRX = 1, kSeriesDX = 2, kSeriesEX = 3,
  kSeriesLegacyMX = 4, kSeriesMX = 5, kSeriesX = 6, kSeriesLegacyPro = 7,
  kSeriesP = 8, kSeriesUnknown = 9
}
 Dynamixel types. More...
 
enum  DynamixelStandardRegisterTable {
  kRegStandard_ModelNumber = 0, kRegStandard_ModelInfo = 2, kRegStandard_FirmwareVersion = 6, kRegStandard_ID = 7,
  kRegStandard_BaudRate = 8, kRegStandard_ReturnDelayTime = 9, kRegStandard_DriveMode = 10, kRegStandard_OperatingMode = 11,
  kRegStandard_ShadowID = 12, kRegStandard_ProtocolVersion = 13, kRegStandard_HomingOffset = 20, kRegStandard_MovingThreshold = 24,
  kRegStandard_TemperatureLimit = 31, kRegStandard_MaxVoltageLimit = 32, kRegStandard_MinVoltageLimit = 34, kRegStandard_PWMLimit = 36,
  kRegStandard_CurrentLimit = 38, kRegStandard_AccelerationLimit = 40, kRegStandard_VelocityLimit = 44, kRegStandard_MaxPositionLimit = 48,
  kRegStandard_MinPositionLimit = 52, kRegStandard_DataPort1Mode = 56, kRegStandard_DataPort2Mode = 57, kRegStandard_DataPort3Mode = 58,
  kRegStandard_Shutdown = 63, kRegStandard_TorqueEnable = 64, kRegStandard_LED = 65, kRegStandard_StatusReturnLevel = 68,
  kRegStandard_RegisteredInstruction = 69, kRegStandard_HardwareErrorStatus = 70, kRegStandard_VelocityIGain = 76, kRegStandard_VelocityPGain = 78,
  kRegStandard_PositionDGain = 80, kRegStandard_PositionIGain = 82, kRegStandard_PositionPGain = 84, kRegStandard_Feedforward2ndGain = 88,
  kRegStandard_Feedforward1stGain = 90, kRegStandard_BusWatchdog = 98, kRegStandard_GoalPWM = 100, kRegStandard_GoalCurrent = 102,
  kRegStandard_GoalVelocity = 104, kRegStandard_ProfileAcceleration = 108, kRegStandard_ProfileVelocity = 112, kRegStandard_GoalPosition = 116,
  kRegStandard_RealtimeTick = 120, kRegStandard_Moving = 122, kRegStandard_MovingStatus = 123, kRegStandard_PresentPWM = 124,
  kRegStandard_PresentCurrent = 126, kRegStandard_PresentVelocity = 128, kRegStandard_PresentPosition = 132, kRegStandard_VelocityTrajectory = 136,
  kRegStandard_PositionTrajectory = 140, kRegStandard_PresentInputVoltage = 144, kRegStandard_PresentTemperature = 146, kRegStandard_DataPort1 = 152,
  kRegStandard_DataPort2 = 154, kRegStandard_DataPort3 = 156, kRegStandard_IndirectAddress1 = 168, kRegStandard_IndirectData1 = 224
}
 

Enumeration Type Documentation

◆ DynamixelControlMode

The different control modes available on the dynamixel servos. The values chosen for each type reflect those used on the motors themselves.

Enumerator
UNKNOWN 
kModeTorqueControl 
kModeVelocityControl 
kModePositionControl 
kModeExtendedPositionControl 
kModeCurrentBasedPositionControl 
kModePWMControl 

Definition at line 368 of file dynamixel_const.h.

◆ DynamixelErrorCode

Error return codes.

Enumerator
kErrorNoError 
kErrorOverload 
kErrorElectricShock 
kErrorMotorEncoder 
kErrorOverheating 
kErrorMotorHall 
kErrorInputVoltage 
kErrorLegacyInstruction 
kErrorLegacyChecksum 
kErrorLegacyRange 
kErrorLegacyAngleLimit 

Definition at line 403 of file dynamixel_const.h.

◆ DynamixelInstruction

Instruction codes for various commands.

Enumerator
kInstPing 
kInstReadData 
kInstWriteData 
kInstRegWrite 
kInstAction 
kInstReset 
kInstSyncWrite 
kInstBulkRead 
kInstBroadcast 

Definition at line 385 of file dynamixel_const.h.

◆ DynamixelLegacyProRegisterTable

Control table/register addresses for each series of dynamixel.

Enumerator
kRegLegacyPro_ModelNumber 
kRegLegacyPro_ModelInfo 
kRegLegacyPro_FirmwareVersion 
kRegLegacyPro_ID 
kRegLegacyPro_BaudRate 
kRegLegacyPro_ReturnDelayTime 
kRegLegacyPro_OperatingMode 
kRegLegacyPro_LimitTemperature 
kRegLegacyPro_DownLimitVoltage 
kRegLegacyPro_UpLimitVoltage 
kRegLegacyPro_LED 
kRegLegacyPro_AccelLimit 
kRegLegacyPro_VelocityLimit 
kRegLegacyPro_MaxTorque 
kRegLegacyPro_MaxAngleLimit 
kRegLegacyPro_MinAngleLimit 
kRegLegacyPro_DataPort1Mode 
kRegLegacyPro_DataPort2Mode 
kRegLegacyPro_DataPort3Mode 
kRegLegacyPro_DataPort4Mode 
kRegLegacyPro_VelocityIGain 
kRegLegacyPro_VelocityPGain 
kRegLegacyPro_PositionPGain 
kRegLegacyPro_TorqueEnable 
kRegLegacyPro_GoalPosition 
kRegLegacyPro_GoalVelocity 
kRegLegacyPro_GoalTorque 
kRegLegacyPro_PresentPosition 
kRegLegacyPro_PresentVelocity 
kRegLegacyPro_PresentCurrent 
kRegLegacyPro_PresentVoltage 
kRegLegacyPro_PresentTemperature 
kRegLegacyPro_DataPort1 
kRegLegacyPro_DataPort2 
kRegLegacyPro_DataPort3 
kRegLegacyPro_DataPort4 
kRegLegacyPro_RegisteredInstruction 
kRegLegacyPro_Moving 
kRegLegacyPro_ReturnLevel 
kRegLegacyPro_HardwareErrorStatus 

Definition at line 316 of file dynamixel_const.h.

◆ DynamixelLegacyRegisterTable

Legacy control table, for older dynamixels:

  • MX (1.0)
  • AX
  • RX
Enumerator
kRegLegacy_ModelNumber 
kRegLegacy_FirmwareVersion 
kRegLegacy_ID 
kRegLegacy_BaudRate 
kRegLegacy_ReturnDelayTime 
kRegLegacy_CWAngleLimit 
kRegLegacy_CCWAngleLimit 
kRegLegacy_DriveMode 
kRegLegacy_TemperatureLimit 
kRegLegacy_MinVoltageLimit 
kRegLegacy_MaxVoltageLimit 
kRegLegacy_MaxTorque 
kRegLegacy_ReturnLevel 
kRegLegacy_AlarmLED 
kRegLegacy_AlarmShutdown 
kRegLegacy_MultiTurnOffset 
kRegLegacy_ResolutionDivider 
kRegLegacy_TorqueEnable 
kRegLegacy_LED 
kRegLegacy_DGain 
kRegLegacy_IGain 
kRegLegacy_PGain 
kRegLegacy_CWComplianceMargin 
kRegLegacy_CCWComplianceMargin 
kRegLegacy_CWComplianceSlope 
kRegLegacy_CCWComplianceSlope 
kRegLegacy_GoalPosition 
kRegLegacy_MovingSpeed 
kRegLegacy_TorqueLimit 
kRegLegacy_PresentPosition 
kRegLegacy_PresentSpeed 
kRegLegacy_PresentLoad 
kRegLegacy_PresentVoltage 
kRegLegacy_PresentTemperature 
kRegLegacy_RegisteredInstruction 
kRegLegacy_Moving 
kRegLegacy_Lock 
kRegLegacy_Punch 
kRegLegacy_RealtimeTick 
kRegLegacy_SensedCurrent 
kRegLegacy_PresentCurrent 
kRegLegacy_TorqueControlEnable 
kRegLegacy_GoalTorque 
kRegLegacy_GoalAcceleration 

Definition at line 113 of file dynamixel_const.h.

◆ DynamixelProRegisterTable

Control table for Dynamixel P series (new pro)

  • Dynamixel-P
  • Dynamixel PRO+, sometimes listed as PRO(A)
Enumerator
kRegP_ModelNumber 
kRegP_ModelInfo 
kRegP_FirmwareVersion 
kRegP_ID 
kRegP_BaudRate 
kRegP_ReturnDelayTime 
kRegP_DriveMode 
kRegP_OperatingMode 
kRegP_ShadowID 
kRegP_ProtocolType 
kRegP_HomingOffset 
kRegP_MovingThreshold 
kRegP_TemperatureLimit 
kRegP_MaxVoltageLimit 
kRegP_MinVoltageLimit 
kRegP_PWMLimit 
kRegP_CurrentLimit 
kRegP_AccelerationLimit 
kRegP_VelocityLimit 
kRegP_MaxPositionLimit 
kRegP_MinPositionLimit 
kRegP_DataPort1Mode 
kRegP_DataPort2Mode 
kRegP_DataPort3Mode 
kRegP_DataPort4Mode 
kRegP_Shutdown 
kRegP_IndirectAddress1 
kRegP_TorqueEnable 
kRegP_RedLED 
kRegP_GreenLED 
kRegP_BlueLED 
kRegP_StatusReturnLevel 
kRegP_RegisteredInstruction 
kRegP_HardwareErrorStatus 
kRegP_VelocityIGain 
kRegP_VelocityPGain 
kRegP_PositionDGain 
kRegP_PositionIGain 
kRegP_PositionPGain 
kRegP_Feedforward2ndGain 
kRegP_Feedforward1stGain 
kRegP_BusWatchdog 
kRegP_GoalPWM 
kRegP_GoalCurrent 
kRegP_GoalVelocity 
kRegP_ProfileAcceleration 
kRegP_ProfileVelocity 
kRegP_GoalPosition 
kRegP_RealtimeTick 
kRegP_Moving 
kRegP_MovingStatus 
kRegP_PresentPWM 
kRegP_PresentCurrent 
kRegP_PresentVelocity 
kRegP_PresentPosition 
kRegP_VelocityTrajectory 
kRegP_PositionTrajectory 
kRegP_PresentInputVoltage 
kRegP_PresentTemperature 
kRegP_DataPort1 
kRegP_DataPort2 
kRegP_DataPort3 
kRegP_DataPort4 
kRegP_IndirectData1 

Definition at line 243 of file dynamixel_const.h.

◆ DynamixelSeriesType

Dynamixel types.

Enumerator
kSeriesAX 
kSeriesRX 
kSeriesDX 
kSeriesEX 
kSeriesLegacyMX 
kSeriesMX 
kSeriesX 
kSeriesLegacyPro 
kSeriesP 
kSeriesUnknown 

Definition at line 95 of file dynamixel_const.h.

◆ DynamixelStandardRegisterTable

Standard control table, for newer models of dynamixels supporting protocol 2.0:

  • MX (2.0)
  • X (2.0) (excepting the XL-320, which has a unique table)
Enumerator
kRegStandard_ModelNumber 
kRegStandard_ModelInfo 
kRegStandard_FirmwareVersion 
kRegStandard_ID 
kRegStandard_BaudRate 
kRegStandard_ReturnDelayTime 
kRegStandard_DriveMode 
kRegStandard_OperatingMode 
kRegStandard_ShadowID 
kRegStandard_ProtocolVersion 
kRegStandard_HomingOffset 
kRegStandard_MovingThreshold 
kRegStandard_TemperatureLimit 
kRegStandard_MaxVoltageLimit 
kRegStandard_MinVoltageLimit 
kRegStandard_PWMLimit 
kRegStandard_CurrentLimit 
kRegStandard_AccelerationLimit 
kRegStandard_VelocityLimit 
kRegStandard_MaxPositionLimit 
kRegStandard_MinPositionLimit 
kRegStandard_DataPort1Mode 
kRegStandard_DataPort2Mode 
kRegStandard_DataPort3Mode 
kRegStandard_Shutdown 
kRegStandard_TorqueEnable 
kRegStandard_LED 
kRegStandard_StatusReturnLevel 
kRegStandard_RegisteredInstruction 
kRegStandard_HardwareErrorStatus 
kRegStandard_VelocityIGain 
kRegStandard_VelocityPGain 
kRegStandard_PositionDGain 
kRegStandard_PositionIGain 
kRegStandard_PositionPGain 
kRegStandard_Feedforward2ndGain 
kRegStandard_Feedforward1stGain 
kRegStandard_BusWatchdog 
kRegStandard_GoalPWM 
kRegStandard_GoalCurrent 
kRegStandard_GoalVelocity 
kRegStandard_ProfileAcceleration 
kRegStandard_ProfileVelocity 
kRegStandard_GoalPosition 
kRegStandard_RealtimeTick 
kRegStandard_Moving 
kRegStandard_MovingStatus 
kRegStandard_PresentPWM 
kRegStandard_PresentCurrent 
kRegStandard_PresentVelocity 
kRegStandard_PresentPosition 
kRegStandard_VelocityTrajectory 
kRegStandard_PositionTrajectory 
kRegStandard_PresentInputVoltage 
kRegStandard_PresentTemperature 
kRegStandard_DataPort1 
kRegStandard_DataPort2 
kRegStandard_DataPort3 
kRegStandard_IndirectAddress1 
kRegStandard_IndirectData1 

Definition at line 173 of file dynamixel_const.h.



dynamixel_interface
Author(s): Tom Molnar
autogenerated on Mon Feb 28 2022 22:15:51