Errors

class ingeniamotion.errors.Errors(motion_controller)

Bases: object

Errors.

LAST_ERROR_COCO_REGISTER = 'DRV_DIAG_ERROR_LAST_COM'
LAST_ERROR_MOCO_REGISTER = 'DRV_DIAG_ERROR_LAST'
LAST_ERROR_SYSTEM_REGISTER = 'DRV_DIAG_SYS_ERROR_LAST'
LAST_ERROR_REGISTER = {ErrorLocation.COCO: 'DRV_DIAG_ERROR_LAST_COM', ErrorLocation.MOCO: 'DRV_DIAG_ERROR_LAST', ErrorLocation.SYSTEM: 'DRV_DIAG_SYS_ERROR_LAST'}
ERROR_TOTAL_NUMBER_COCO_REGISTER = 'DRV_DIAG_ERROR_TOTAL_COM'
ERROR_TOTAL_NUMBER_MOCO_REGISTER = 'DRV_DIAG_ERROR_TOTAL'
ERROR_TOTAL_NUMBER_SYSTEM_REGISTER = 'DRV_DIAG_SYS_ERROR_TOTAL_COM'
ERROR_TOTAL_NUMBER_REGISTER = {ErrorLocation.COCO: 'DRV_DIAG_ERROR_TOTAL_COM', ErrorLocation.MOCO: 'DRV_DIAG_ERROR_TOTAL', ErrorLocation.SYSTEM: 'DRV_DIAG_SYS_ERROR_TOTAL_COM'}
ERROR_LIST_INDEX_REQUEST_COCO_REGISTER = 'DRV_DIAG_ERROR_LIST_IDX_COM'
ERROR_LIST_INDEX_REQUEST_MOCO_REGISTER = 'DRV_DIAG_ERROR_LIST_IDX'
ERROR_LIST_INDEX_REQUEST_SYSTEM_REGISTER = 'DRV_DIAG_SYS_ERROR_LIST_IDX_COM'
ERROR_LIST_INDEX_REQUEST_REGISTER = {ErrorLocation.COCO: 'DRV_DIAG_ERROR_LIST_IDX_COM', ErrorLocation.MOCO: 'DRV_DIAG_ERROR_LIST_IDX', ErrorLocation.SYSTEM: 'DRV_DIAG_SYS_ERROR_LIST_IDX_COM'}
ERROR_LIST_REQUESTED_COCO_CODE = 'DRV_DIAG_ERROR_LIST_CODE_COM'
ERROR_LIST_REQUESTED_MOCO_CODE = 'DRV_DIAG_ERROR_LIST_CODE'
ERROR_LIST_REQUESTED_SYSTEM_CODE = 'DRV_DIAG_SYS_ERROR_LIST_CODE_COM'
ERROR_LIST_REQUESTED_CODE = {ErrorLocation.COCO: 'DRV_DIAG_ERROR_LIST_CODE_COM', ErrorLocation.MOCO: 'DRV_DIAG_ERROR_LIST_CODE', ErrorLocation.SYSTEM: 'DRV_DIAG_SYS_ERROR_LIST_CODE_COM'}
MAXIMUM_ERROR_INDEX = 32
STATUS_WORD_FAULT_BIT = 8
STATUS_WORD_WARNING_BIT = 128
ERROR_CODE_BITS = 65535
ERROR_SUBNODE_BITS = 15728640
ERROR_SUBNODE_SHIFT = 20
ERROR_WARNING_BIT = 268435456
ERROR_WARNING_SHIFT = 28
get_last_error(servo='default', axis=None)

Return last servo error.

Parameters:
  • servo (str) – servo alias to reference it. default by default.

  • axis (Optional[int]) – axis force read errors in target axis. None by default.

Return type:

tuple[int, Optional[int], Optional[bool]]

Returns:

Returns error data.

code (int):

Code error.

axis (int):

Error axis.

is_warning (bool):

True if warning, else False.

Raises:

TypeError – If some read value has a wrong type.

get_last_buffer_error(servo='default', axis=None)

Get error code from error buffer last position.

Parameters:
  • servo (str) – servo alias to reference it. default by default.

  • axis (Optional[int]) – axis force read errors in target axis. None by default.

Return type:

tuple[int, Optional[int], Optional[bool]]

Returns:

Returns error data.

code (int):

Code error.

axis (int):

Error axis.

is_warning (bool):

True if warning, else False.

Raises:

ValueError – Index must be less than 32

get_buffer_error_by_index(index, servo='default', axis=None)

Get error code from buffer error target index.

Parameters:
  • index (int) – buffer error index. It must be less than 32.

  • servo (str) – servo alias to reference it. default by default.

  • axis (Optional[int]) – axis force read errors in target axis. None by default.

Return type:

tuple[int, Optional[int], Optional[bool]]

Returns:

Returns error data.

code (int):

Code error.

axis (int):

Error axis.

is_warning (bool):

True if warning, else False.

Raises:
get_number_total_errors(servo='default', axis=None)

Return total number of drive errors.

Parameters:
  • servo (str) – servo alias to reference it. default by default.

  • axis (Optional[int]) – axis force read errors in target axis. None by default.

Return type:

int

Returns:

Total number of errors.

Raises:

TypeError – If some read value has a wrong type.

get_all_errors(servo='default', axis=None)

Return List with all error codes.

Parameters:
  • servo (str) – servo alias to reference it. default by default.

  • axis (Optional[int]) – axis force read errors in target axis. None by default.

Return type:

list[tuple[int, Optional[int], Optional[bool]]]

Returns:

List of all errors.

is_fault_active(servo='default', axis=1)

Return if fault is active.

Parameters:
  • servo (str) – servo alias to reference it. default by default.

  • axis (int) – servo axis. 1 by default.

Return type:

bool

Returns:

True if fault is active, else False.

is_warning_active(servo='default', axis=1)

Return if warning is active.

Parameters:
  • servo (str) – servo alias to reference it. default by default.

  • axis (int) – servo axis. 1 by default.

Return type:

bool

Returns:

True if warning is active, else False.

get_error_data(error_code, servo='default')

Return error info from target error_code.

Parameters:
  • error_code (int) – target error code.

  • servo (str) – servo alias to reference it. default by default.

Return type:

tuple[str, str, str, str]

Returns:

Returns error info.

id (str):

Error Id

affected_module (str):

Error affected module

error_type (str):

Error type

error_message (str):

Error message

Raises:

KeyError – The error codes does not exist in the error’s dictionary.