![]() |
Dynamixel
2.9.5
RoadNarrows Robotics Dynamixel Package
|
RoadNarrows Dynamixel Top-Level Package Header File. More...
#include "rnr/rnrconfig.h"#include "rnr/units.h"#include "rnr/log.h"Go to the source code of this file.
Macros | |
| #define | DYNA_OK 0 |
| not an error, success | |
| #define | DYNA_ECODE_GEN 1 |
| general, unspecified error | |
| #define | DYNA_ECODE_SYS 2 |
| system (errno) error | |
| #define | DYNA_ECODE_INTERNAL 3 |
| internal error (bug) | |
| #define | DYNA_ECODE_BADEC 4 |
| bad error code | |
| #define | DYNA_ECODE_BAD_UNITS 5 |
| unsupported or bad units | |
| #define | DYNA_ECODE_BAD_VAL 6 |
| bad value | |
| #define | DYNA_ECODE_NO_SERVO 7 |
| no servo found | |
| #define | DYNA_ECODE_BAD_DEV 8 |
| no or bad serial device | |
| #define | DYNA_ECODE_BADF 9 |
| no comm object or not open | |
| #define | DYNA_ECODE_ECOMM 10 |
| dynamixel communication error | |
| #define | DYNA_ECODE_TX_FAIL 11 |
| dynamixel transmit packet failure | |
| #define | DYNA_ECODE_RX_FAIL 12 |
| dynamixel receive packet failure | |
| #define | DYNA_ECODE_TX_ERROR 13 |
| dynamixel transmit packet error | |
| #define | DYNA_ECODE_RX_TIMEOUT 14 |
| dynamixel receive packet time out | |
| #define | DYNA_ECODE_RX_BAD_PKT 15 |
| dynamixel receive bad packet | |
| #define | DYNA_ECODE_ESERVO 16 |
| dynamixel servo in error condition | |
| #define | DYNA_ECODE_RSRC 17 |
| no resource | |
| #define | DYNA_ECODE_NOT_SUPP 18 |
| feature/function not supported | |
| #define | DYNA_ECODE_LINKED 19 |
| linked servos error | |
| #define | DYNA_ECODE_SLAVE 20 |
| invalid slave operation | |
| #define | DYNA_ECODE_BOTSENSE 21 |
| BotSense proxy error. | |
| #define | DYNA_ECODE_PARSE 22 |
| Shell parse error. | |
| #define | DYNA_ECODE_RUNTIME 23 |
| Shell run-time error. | |
| #define | DYNA_ECODE_NOEXEC 24 |
| Shell parse error. | |
| #define | DYNA_ECODE_NUMOF 25 |
| number of error codes | |
| #define | DYNA_MODEL_NUM_GENERIC 0x0000 |
| generic, base model | |
| #define | DYNA_FWVER_NA 0x00 |
| firmware version not available | |
| #define | DYNA_ID_NONE -1 |
| no servo id | |
| #define | DYNA_ID_MIN 0 |
| minimum servo id | |
| #define | DYNA_ID_MAX 253 |
| maximum servo id | |
| #define | DYNA_ID_NUMOF 254 |
| number of unique servo id's | |
| #define | DYNA_ID_BROADCAST 254 |
| broadcast id | |
| #define | DYNA_ID_RESERVED 255 |
| reserved id | |
| #define | DYNA_ID_MASK 0xff |
| id mask | |
| #define | DYNA_MODE_SERVO 0x01 |
| servo mode with limited rotation | |
| #define | DYNA_MODE_CONTINUOUS 0x02 |
| continuous mode with/without position | |
| #define | DYNA_LINK_NONE 0 |
| servo is not linked to another servo | |
| #define | DYNA_LINK_MASTER 1 |
| servo is linked, serving as the master | |
| #define | DYNA_LINK_SLAVE 2 |
| servo is linked, serving as the slave | |
| #define | DYNA_DIR_CW (-1) |
| clockwise direction | |
| #define | DYNA_DIR_NONE 0 |
| no direction | |
| #define | DYNA_DIR_CCW 1 |
| counterclockwise direction | |
| #define | DYNA_GET_DIR(scalar) ((scalar)<0? DYNA_DIR_CW: DYNA_DIR_CCW) |
| Get the direction component, given the rotational scalar. More... | |
| #define | DYNA_CTL_METHOD_NONE 0 |
| no control method | |
| #define | DYNA_CTL_METHOD_COMPLIANCE 1 |
| compliance control method | |
| #define | DYNA_CTL_METHOD_PID 2 |
| pid control method | |
| #define | DYNA_POS_MASK 0x03ff |
| valid data mask | |
| #define | DYNA_POS_MIN_RAW 0 |
| minimum raw angular position | |
| #define | DYNA_POS_MAX_RAW 1023 |
| maximum raw angular position | |
| #define | DYNA_POS_MODULO (DYNA_POS_MAX_RAW+1) |
| servo position modulo [0-max] | |
| #define | DYNA_POS_MIN_DEG 0 |
| minimum angular position | |
| #define | DYNA_POS_MAX_DEG 300 |
| maximum angular position | |
| #define | DYNA_POS_RES_DEG ((double)DYNA_POS_MAX_DEG/(double)DYNA_POS_MAX_RAW) |
| 0.29 ° (servo mode) resolution | |
| #define | DYNA_SPEED_MASK 0x03ff |
| valid data mask | |
| #define | DYNA_SPEED_CONT_STOP 0 |
| continuous mode: stop | |
| #define | DYNA_SPEED_MAX_NO_CTL 0 |
| servo mode: max speed with no control | |
| #define | DYNA_SPEED_MIN_CTL 1 |
| mininum raw speed with control | |
| #define | DYNA_SPEED_MAX_CTL 1023 |
| maxinum raw speed with control | |
| #define | DYNA_SPEED_MIN_RAW 0 |
| minimum raw value | |
| #define | DYNA_SPEED_MAX_RAW 1023 |
| maximum raw value | |
| #define | DYNA_SPEED_RES_RPM 0.111 |
| rpm (servo mode) resolution | |
| #define | DYNA_SPEED_RES_PCT (100.0/DYNA_SPEED_MAX_RAW) |
| percent (servo mode) resolution | |
| #define | DYNA_SPEED_RES_PMIL (1000.0/DYNA_SPEED_MAX_RAW) |
| permil (servo mode) resolution | |
| #define | DYNA_TORQUE_MASK 0x03ff |
| valid data mask | |
| #define | DYNA_TORQUE_MIN_RAW 0 |
| minimum raw torque | |
| #define | DYNA_TORQUE_MAX_RAW 1023 |
| maximum raw torque | |
| #define | DYNA_TORQUE_RES_PCT (100.0/DYNA_TORQUE_MAX_RAW) |
| percent of maximum resolution | |
| #define | DYNA_TORQUE_RES_PMIL (1000.0/DYNA_TORQUE_MAX_RAW) |
| permil of maximum resolution | |
| #define | DYNA_TEMP_MIN_RAW 10 |
| minimum raw temperature | |
| #define | DYNA_TEMP_MAX_RAW 99 |
| maximum raw temperature | |
| #define | DYNA_TEMP_MIN_C DYNA_TEMP_MIN_RAW |
| 10C temperature minimum | |
| #define | DYNA_TEMP_MAX_C DYNA_TEMP_MAX_RAW |
| 99C temperature maximum | |
| #define | DYNA_TEMP_RES_C 1 |
| 1 ° Celsius resolution | |
| #define | DYNA_VOLT_MIN_RAW 50 |
| minimum raw temperature | |
| #define | DYNA_VOLT_MAX_RAW 250 |
| maximum raw temperature | |
| #define | DYNA_VOLT_RES_V 0.1 |
| 0.1V resolution | |
| #define | DYNA_EEPROM_MIN_ADDR 0 |
| minimum EEPROM adderss | |
| #define | DYNA_EEPROM_MAX_ADDR 18 |
| maximum EEPROM adderss | |
| #define | DYNA_RAM_MIN_ADDR 24 |
| minimum RAM adderss | |
| #define | DYNA_RAM_MAX_ADDR 49 |
| maximum RAM adderss | |
| #define | DYNA_MEM_MAX_SIZ 50 |
| maximum control memory size (bytes) | |
| #define | DYNA_ADDR_MODEL_NUM_LSB 0 |
| model number lsb (R) | |
| #define | DYNA_ADDR_MODEL_NUM_MSB 1 |
| model number msb (R) | |
| #define | DYNA_ADDR_MODEL_NUM_MASK 0xffff |
| valid data mask | |
| #define | DYNA_ADDR_FWVER 2 |
| firmware version (R) | |
| #define | DYNA_ADDR_FWVER_MASK 0xff |
| valid data mask | |
| #define | DYNA_ADDR_ID 3 |
| dynamixel id (RW) | |
| #define | DYNA_ADDR_ID_MASK 0xff |
| valid data mask | |
| #define | DYNA_ADDR_BAUD_RATE 4 |
| baud rate enumeration (RW) | |
| #define | DYNA_ADDR_BAUD_RATE_MASK 0xff |
| valid data mask | |
| #define | DYNA_BAUDNUM_1000000 1 |
| 1,000,000 bps at 0.0% tolerance | |
| #define | DYNA_BAUDNUM_500000 3 |
| 500,000 bps at 0.0% tolerance | |
| #define | DYNA_BAUDNUM_400000 4 |
| 500,000 bps at 0.0% tolerance | |
| #define | DYNA_BAUDNUM_250000 7 |
| 250,000 bps at 0.0% tolerance | |
| #define | DYNA_BAUDNUM_200000 9 |
| 200,000 bps at 0.0% tolerance | |
| #define | DYNA_BAUDNUM_115200 16 |
| 115,200 bps at -2.124% tolerance | |
| #define | DYNA_BAUDNUM_57600 34 |
| 57,600 bps at 0.794 % tolerance | |
| #define | DYNA_BAUDNUM_19200 103 |
| 19,200 bps at -0.160% tolerance | |
| #define | DYNA_BAUDNUM_9600 207 |
| 9,600 bps at -0.160% tolerance | |
| #define | DYNA_BAUDNUM_EXT_2250000 250 |
| 2,250,000 bps at 0.0% tolerance | |
| #define | DYNA_BAUDNUM_EXT_2500000 251 |
| 2,500,000 bps at 0.0% tolerance | |
| #define | DYNA_BAUDNUM_EXT_3000000 252 |
| 3,000,000 bps at 0.0% tolerance | |
| #define | DYNA_BAUDNUM_NUMOF 12 |
| number of supported bit rates | |
| #define | DYNA_BAUDNUM_DFT 34 |
| default baud number | |
| #define | DYNA_BAUDRATE_DFT 57600 |
| default baud rate | |
| #define | DYNA_ADDR_T_RET_DELAY 5 |
| return delay time (RW) | |
| #define | DYNA_ADDR_T_RET_DELAY_MASK 0xff |
| valid data mask | |
| #define | DYNA_T_RET_DELAY_MIN_RAW 0x00 |
| raw minimum delay | |
| #define | DYNA_T_RET_DELAY_MAX_RAW 0xff |
| raw maximum delay | |
| #define | DYNA_T_RET_DELAY_DFT_RAW 0x00 |
| raw default | |
| #define | DYNA_T_RET_DELAY_RES_USEC 2 |
| 2 μs resolution | |
| #define | DYNA_T_RET_DELAY_MIN_USEC (DYNA_T_RET_DELAY_MIN_RAW * DYNA_T_RET_DELAY_RES_USEC) |
| μs minimum | |
| #define | DYNA_T_RET_DELAY_MAX_USEC (DYNA_T_RET_DELAY_MAX_RAW * DYNA_T_RET_DELAY_RES_USEC) |
| μs maximum | |
| #define | DYNA_T_RET_DELAY_DFT_USEC (DYNA_T_RET_DELAY_DFT_RAW * DYNA_T_RET_DELAY_RES_USEC) |
| μs default | |
| #define | DYNA_ADDR_LIM_CW_LSB 6 |
| clockwise angle limit lsb (RW) | |
| #define | DYNA_ADDR_LIM_CW_MSB 7 |
| clockwise angle limit msb (RW) | |
| #define | DYNA_ADDR_LIM_CW_MASK 0x03ff |
| valid data mask | |
| #define | DYNA_CW_POS_CONT_MODE 0 |
| continuous mode (with ccw limit) | |
| #define | DYNA_ADDR_LIM_CCW_LSB 8 |
| counterclockwise angle limit lsb (RW) | |
| #define | DYNA_ADDR_LIM_CCW_MSB 9 |
| counterclockwise angle limit msb (RW) | |
| #define | DYNA_ADDR_LIM_CCW_MASK 0x03ff |
| valid data mask | |
| #define | DYNA_CCW_POS_CONT_MODE 0 |
| continuous mode (with cw limit) | |
| #define | DYNA_ADDR_RESERVED_1 10 |
| reserved | |
| #define | DYNA_ADDR_LIM_TEMP_MAX 11 |
| maximum temperature limit (RW) | |
| #define | DYNA_ADDR_LIM_TEMP_MASK 0x3f |
| valid data mask | |
| #define | DYNA_LIM_TEMP_MIN_C DYNA_TEMP_MIN_C |
| minimum maximum limit | |
| #define | DYNA_LIM_TEMP_MAX_C DYNA_TEMP_MAX_C |
| maximum maximum limit | |
| #define | DYNA_LIM_TEMP_DFT_C 80 |
| 80C default maximum limit | |
| #define | DYNA_LIM_TEMP_RES_C DYNA_TEMP_RES_C |
| 1 ° Celsius resolution | |
| #define | DYNA_ADDR_LIM_VOLT_MIN 12 |
| lowest voltage limit (RW) | |
| #define | DYNA_ADDR_LIM_VOLT_MIN_MASK 0xff |
| valid data mask | |
| #define | DYNA_LIM_VOLT_MIN_MIN_RAW DYNA_VOLT_MIN_RAW |
| minimum minimum raw limit | |
| #define | DYNA_LIM_VOLT_MIN_MAX_RAW DYNA_VOLT_MAX_RAW |
| maximum minimum raw limit | |
| #define | DYNA_LIM_VOLT_MIN_DFT_RAW 60 |
| default minimum raw limit | |
| #define | DYNA_LIM_VOLT_MIN_RES_V DYNA_VOLT_RES_V |
| 0.1V resolution | |
| #define | DYNA_LIM_VOLT_MIN_MIN_V (DYNA_LIM_VOLT_MIN_MIN_RAW * DYNA_LIM_VOLT_MIN_RES_V) |
| min minimum volts limit | |
| #define | DYNA_LIM_VOLT_MIN_MAX_V (DYNA_LIM_VOLT_MIN_MAX_V * DYNA_LIM_VOLT_MIN_RES_V) |
| max minimum volts limit | |
| #define | DYNA_LIM_VOLT_MIN_DFT_V (DYNA_LIM_VOLT_MIN_DFT_V * DYNA_LIM_VOLT_MIN_RES_V) |
| default minimum volts limit | |
| #define | DYNA_ADDR_LIM_VOLT_MAX 13 |
| highest voltage limit (RW) | |
| #define | DYNA_ADDR_LIM_VOLT_MAX_MASK 0xff |
| valid data mask | |
| #define | DYNA_LIM_VOLT_MAX_MIN_RAW DYNA_VOLT_MIN_RAW |
| minimum maximum raw limit | |
| #define | DYNA_LIM_VOLT_MAX_MAX_RAW DYNA_VOLT_MAX_RAW |
| maximum maximum raw limit | |
| #define | DYNA_LIM_VOLT_MAX_DFT_RAW 190 |
| default maximum raw limit | |
| #define | DYNA_LIM_VOLT_MAX_RES_V DYNA_VOLT_RES_V |
| 0.1V resolution | |
| #define | DYNA_LIM_VOLT_MAX_MIN_V (DYNA_LIM_VOLT_MAX_MIN_RAW * DYNA_LIM_VOLT_MAX_RES_V) |
| min maximum volts limit | |
| #define | DYNA_LIM_VOLT_MAX_MAX_V (DYNA_LIM_VOLT_MAX_MAX_V * DYNA_LIM_VOLT_MAX_RES_V) |
| max maximum volts limit | |
| #define | DYNA_LIM_VOLT_MAX_DFT_V (DYNA_LIM_VOLT_MAX_DFT_V * DYNA_LIM_VOLT_MAX_RES_V) |
| default maximum volts limit | |
| #define | DYNA_ADDR_LIM_TORQUE_MAX_ON_LSB 14 |
| maximum torque lsb (RW) | |
| #define | DYNA_ADDR_LIM_TORQUE_MAX_ON_MSB 15 |
| maximum torque msb (RW) | |
| #define | DYNA_ADDR_LIM_TORQUE_MAX_ON_MASK 0x03ff |
| valid data mask | |
| #define | DYNA_LIM_TORQUE_MAX_ON_DFT_RAW DYNA_TORQUE_MAX_RAW |
| default maximum raw torque | |
| #define | DYNA_ADDR_SRL 16 |
| status return level (RW) | |
| #define | DYNA_ADDR_SRL_MASK 0xff |
| valid data mask | |
| #define | DYNA_SRL_RET_NONE 0 |
| no return packet (except for PING) | |
| #define | DYNA_SRL_RET_READ 1 |
| only READ return status packet | |
| #define | DYNA_SRL_RET_ALL 2 |
| return status packet for all | |
| #define | DYNA_SRL_RET_DFT DYNA_SRL_RET_ALL |
| return status packet default | |
| #define | DYNA_ADDR_ALARM_LED 17 |
| alarm LED (RW) | |
| #define | DYNA_ADDR_ALARM_LED_MASK 0xff |
| valid data mask | |
| #define | DYNA_ALARM_LED_DFT DYNA_ALARM_DFT |
| alarm LED default mask | |
| #define | DYNA_ADDR_ALARM_SHUTDOWN 18 |
| alarm shutdown (RW) | |
| #define | DYNA_ADDR_ALARM_SHUTDOWN_MASK 0xff |
| valid data mask | |
| #define | DYNA_ALARM_NONE 0x00 |
| no alarms | |
| #define | DYNA_ALARM_VOLTAGE 0x01 |
| operating voltage out of range | |
| #define | DYNA_ALARM_ANGLE 0x02 |
| goal position limit out of range | |
| #define | DYNA_ALARM_TEMP 0x04 |
| operating temperature out of range | |
| #define | DYNA_ALARM_CMD_RANGE 0x08 |
| command out of range | |
| #define | DYNA_ALARM_CHECKSUM 0x10 |
| checksum error | |
| #define | DYNA_ALARM_LOAD 0x20 |
| operating load (torque) out of rnge | |
| #define | DYNA_ALARM_INSTRUCTION 0x40 |
| bad instruction | |
| #define | DYNA_ALARM_DFT (DYNA_ALARM_LOAD | DYNA_ALARM_TEMP) |
| alarm shutdown default | |
| #define | DYNA_ADDR_TORQUE_EN 24 |
| torque enable (RW) | |
| #define | DYNA_ADDR_TORQUE_EN_MASK 0xff |
| valid data mask | |
| #define | DYNA_TORQUE_EN_OFF 0 |
| disable power drive to the motor | |
| #define | DYNA_TORQUE_EN_ON 1 |
| enable power drive to the motor | |
| #define | DYNA_TORQUE_EN_DFT DYNA_TORQUE_EN_OFF |
| #define | DYNA_ADDR_LED 25 |
| LED on/off (RW) | |
| #define | DYNA_ADDR_LED_MASK 0xff |
| valid data mask | |
| #define | DYNA_LED_OFF 0 |
| LED off. | |
| #define | DYNA_LED_ON 1 |
| LED on. | |
| #define | DYNA_ADDR_CW_COMP_MARGIN 26 |
| clockwise compliance margin (RW) | |
| #define | DYNA_ADDR_CW_COMP_MASK 0xff |
| valid data mask | |
| #define | DYNA_COMP_MARGIN_MIN_RAW 0 |
| min position difference (tightest) | |
| #define | DYNA_COMP_MARGIN_MAX_RAW 255 |
| max position difference (loosest) | |
| #define | DYNA_COMP_MARGIN_DFT_RAW 1 |
| default raw position difference | |
| #define | DYNA_COMP_MARGIN_RES_DEG DYNA_POS_RES_DEG |
| margin resolution | |
| #define | DYNA_COMP_MARGIN_MIN_DEG (DYNA_COMP_MARGIN_MIN_RAW * DYNA_COMP_MARGIN_RES_DEG) |
| minimum margin in degress | |
| #define | DYNA_COMP_MARGIN_MAX_DEG (DYNA_COMP_MARGIN_MAX_RAW * DYNA_COMP_MARGIN_RES_DEG) |
| maximum margin in degress | |
| #define | DYNA_COMP_MARGIN_DFT_DEG (DYNA_COMP_MARGIN_DFT_RAW * DYNA_COMP_MARGIN_RES_DEG) |
| default margin in degress | |
| #define | DYNA_ADDR_CCW_COMP_MARGIN 27 |
| counterclockwise compliance margin | |
| #define | DYNA_ADDR_CCW_COMP_MASK 0xff |
| valid data mask | |
| #define | DYNA_ADDR_CW_COMP_SLOPE 28 |
| clockwise compliance slope | |
| #define | DYNA_ADDR_CW_COMP_SLOPE_MASK 0xff |
| valid data mask | |
| #define | DYNA_COMP_SLOPE_TORQUE_1 0x02 |
| compliance torque level 1 | |
| #define | DYNA_COMP_SLOPE_TORQUE_2 0x04 |
| compliance torque level 2 | |
| #define | DYNA_COMP_SLOPE_TORQUE_3 0x08 |
| compliance torque level 3 | |
| #define | DYNA_COMP_SLOPE_TORQUE_4 0x10 |
| compliance torque level 4 | |
| #define | DYNA_COMP_SLOPE_TORQUE_5 0x20 |
| compliance torque level 5 | |
| #define | DYNA_COMP_SLOPE_TORQUE_6 0x40 |
| compliance torque level 6 | |
| #define | DYNA_COMP_SLOPE_TORQUE_7 0x80 |
| compliance torque level 7 | |
| #define | DYNA_COMP_SLOPE_TORQUE_DFT DYNA_COMP_SLOPE_TORQUE_5 |
| default compliance torque level | |
| #define | DYNA_ADDR_CCW_COMP_SLOPE 29 |
| counterclockwise compliance slope | |
| #define | DYNA_ADDR_CCW_COMP_SLOPE_MASK 0xff |
| valid data mask | |
| #define | DYNA_ADDR_P_GAIN 26 |
| Pgain (RW) | |
| #define | DYNA_ADDR_P_GAIN_MASK 0xff |
| valid data mask | |
| #define | DYNA_P_GAIN_MIN_RAW 0 |
| minimum value | |
| #define | DYNA_P_GAIN_MAX_RAW 254 |
| maximum value | |
| #define | DYNA_P_GAIN_DFT 32 |
| default value | |
| #define | DYNA_ADDR_I_GAIN 27 |
| Igain (RW) | |
| #define | DYNA_ADDR_I_GAIN_MASK 0xff |
| valid data mask | |
| #define | DYNA_I_GAIN_MIN_RAW 0 |
| minimum value | |
| #define | DYNA_I_GAIN_MAX_RAW 254 |
| maximum value | |
| #define | DYNA_I_GAIN_DFT 0 |
| default value | |
| #define | DYNA_ADDR_D_GAIN 28 |
| Dgain (RW) | |
| #define | DYNA_ADDR_D_GAIN_MASK 0xff |
| valid data mask | |
| #define | DYNA_D_GAIN_MIN_RAW 0 |
| minimum value | |
| #define | DYNA_D_GAIN_MAX_RAW 254 |
| maximum value | |
| #define | DYNA_D_GAIN_DFT 0 |
| default value | |
| #define | DYNA_ADDR_PID_RESERVED 29 |
| reserved | |
| #define | DYNA_ADDR_GOAL_POS_LSB 30 |
| goal position lsb (RW) | |
| #define | DYNA_ADDR_GOAL_POS_MSB 31 |
| goal position msb (RW) | |
| #define | DYNA_ADDR_GOAL_POS_MASK 0x03ff |
| valid data mask | |
| #define | DYNA_ADDR_GOAL_SPEED_LSB 32 |
| goal speed lsb (RW) | |
| #define | DYNA_ADDR_GOAL_SPEED_MSB 33 |
| goal speed msb (RW) | |
| #define | DYNA_ADDR_GOAL_SPEED_MASK 0x07ff |
| valid data mask | |
| #define | DYNA_GOAL_SPEED_MAG_MASK 0x03ff |
| speed magnitude field mask | |
| #define | DYNA_GOAL_SPEED_MAG_SHIFT 0 |
| speed magnitude field shift | |
| #define | DYNA_GOAL_SPEED_DIR_MASK 0x0400 |
| speed direction field mask | |
| #define | DYNA_GOAL_SPEED_DIR_SHIFT 10 |
| speed direction field shift | |
| #define | DYNA_GOAL_SPEED_DIR_CCW 0x00 |
| counterclockwise direction | |
| #define | DYNA_GOAL_SPEED_DIR_CW (0x01 << DYNA_CUR_SPEED_DIR_SHIFT) |
| clockwise direction | |
| #define | DYNA_ADDR_LIM_TORQUE_MAX_LSB 34 |
| current torque limit lsb (RW) | |
| #define | DYNA_ADDR_LIM_TORQUE_MAX_MSB 35 |
| current torque limit msb (RW) | |
| #define | DYNA_ADDR_LIM_TORQUE_MAX_MASK 0x03ff |
| valid data mask | |
| #define | DYNA_LIM_TORQUE_MAX_ALARMED 0 |
| torque value on alarm shutdown | |
| #define | DYNA_ADDR_CUR_POS_LSB 36 |
| current position lsb (R) | |
| #define | DYNA_ADDR_CUR_POS_MSB 37 |
| current position msb (R) | |
| #define | DYNA_ADDR_CUR_POS_MASK 0x03ff |
| valid data mask | |
| #define | DYNA_ADDR_CUR_SPEED_LSB 38 |
| current speed lsb (R) | |
| #define | DYNA_ADDR_CUR_SPEED_MSB 39 |
| current speed msb (R) | |
| #define | DYNA_ADDR_CUR_SPEED_MASK 0x07ff |
| valid data mask | |
| #define | DYNA_CUR_SPEED_MAG_MASK 0x03ff |
| speed magnitude field mask | |
| #define | DYNA_CUR_SPEED_MAG_SHIFT 0 |
| speed magnitude field shift | |
| #define | DYNA_CUR_SPEED_DIR_MASK 0x0400 |
| speed direction field mask | |
| #define | DYNA_CUR_SPEED_DIR_SHIFT 10 |
| speed direction field shift | |
| #define | DYNA_CUR_SPEED_DIR_CCW 0x00 |
| counterclockwise direction | |
| #define | DYNA_CUR_SPEED_DIR_CW (0x01 << DYNA_CUR_SPEED_DIR_SHIFT) |
| clockwise direction | |
| #define | DYNA_ADDR_CUR_LOAD_LSB 40 |
| current load lsb (R) | |
| #define | DYNA_ADDR_CUR_LOAD_MSB 41 |
| current load msb (R) | |
| #define | DYNA_ADDR_CUR_LOAD_MASK 0x07ff |
| valid data mask | |
| #define | DYNA_CUR_LOAD_MAG_MASK 0x03ff |
| load magnitude field mask | |
| #define | DYNA_CUR_LOAD_MAG_SHIFT 0 |
| load magnitude field shift | |
| #define | DYNA_CUR_LOAD_MAG_MIN 0 |
| minimum load | |
| #define | DYNA_CUR_LOAD_MAG_MAX 1023 |
| maximum load | |
| #define | DYNA_CUR_LOAD_DIR_MASK 0x0400 |
| load direction field mask | |
| #define | DYNA_CUR_LOAD_DIR_SHIFT 10 |
| load direction field shift | |
| #define | DYNA_CUR_LOAD_DIR_CCW 0x00 |
| counterclockwise direction | |
| #define | DYNA_CUR_LOAD_DIR_CW (0x01 << DYNA_CUR_LOAD_DIR_SHIFT) |
| clockwise direction | |
| #define | DYNA_CUR_LOAD_RES_PCT (100.0/DYNA_CUR_LOAD_MAG_MAX) |
| percent of maximum resolution | |
| #define | DYNA_CUR_LOAD_RES_PMIL (1000.0/DYNA_CUR_LOAD_MAG_MAX) |
| permil of maximum resolution | |
| #define | DYNA_ADDR_CUR_VOLT 42 |
| current voltage (R) | |
| #define | DYNA_ADDR_CUR_VOLT_MASK 0xff |
| valid data mask | |
| #define | DYNA_CUR_VOLT_RES_V DYNA_VOLT_RES_V |
| 0.1V precesion | |
| #define | DYNA_ADDR_CUR_TEMP_C 43 |
| current temperature C (R) | |
| #define | DYNA_ADDR_CUR_TEMP_MASK 0xff |
| valid data mask | |
| #define | DYNA_CUR_TEMP_RES_C DYNA_TEMP_RES_C |
| 1 ° Celsius resolution | |
| #define | DYNA_ADDR_REG_INSTR 44 |
| registered instruction (RW) | |
| #define | DYNA_ADDR_REG_INSTR_MASK 0xff |
| valid data mask | |
| #define | DYBA_REG_INSTR_NO_WRITE 0 |
| no (pending?) REG_WRITE commands | |
| #define | DYBA_REG_INSTR_HAS_WRITE 1 |
| has (pending?) REG_WRITE commands | |
| #define | DYNA_ADDR_RESERVED_2 45 |
| reserved | |
| #define | DYNA_ADDR_IS_MOVING 46 |
| is [not] moving (to goal position) | |
| #define | DYNA_ADDR_IS_MOVING_MASK 0xff |
| valid data mask | |
| #define | DYNA_IS_NOT_MOVING 0 |
| not moving | |
| #define | DYNA_IS_MOVING 1 |
| is moving | |
| #define | DYNA_ADDR_EEPROM_LOCK 47 |
| lock the EEPROM (RW) | |
| #define | DYNA_ADDR_EEPROM_LOCK_MASK 0xff |
| valid data mask | |
| #define | DYNA_EEPROM_UNLOCKED 0 |
| eeprom is unlocked | |
| #define | DYNA_EEPROM_LOCKED 1 |
| eeprom is locked | |
| #define | DYNA_EEPROM_LOCK_DFT 0 |
| eeprom lock default | |
| #define | DYNA_ADDR_PUNCH_LSB 48 |
| punch lsb (not used) | |
| #define | DYNA_ADDR_PUNCH_MSB 49 |
| punch msb (not used) | |
RoadNarrows Dynamixel Top-Level Package Header File.
Defines the unifying concepts of the RoadNarrows implementation of the Robotis Dynamixel servos including:
Definition in file Dynamixel.h.