DriveTests¶
-
class
ingeniamotion.drive_tests.DriveTests(motion_controller)¶ -
digital_halls_test(servo='default', axis=1, apply_changes=True)¶ Executes the digital halls feedback test given a target servo and axis. By default test will make changes in some drive registers like feedback polarity and others suggested registers. To avoid it, set
apply_changestoFalse.- Parameters
- Return type
Optional[Dict[str,Union[SeverityLevel,Dict[str,Union[int,float,str]],str]]]- Returns
Dictionary with the result of the test:
{ # (int) Result code "result_severity": 0, # (dict) Suggested register values "suggested_registers": {"FBK_DIGHALL_POLARITY": 0}, # (str) Human readable result message "result_message": "Feedback test pass successfully" }
- Raises
TestError – In case the servo or setup configuration makes impossible fulfilling the test
-
incremental_encoder_1_test(servo='default', axis=1, apply_changes=True)¶ Executes the incremental encoder 1 feedback test given a target servo and axis. By default test will make changes in some drive registers like feedback polarity and other suggested registers. To avoid it, set
apply_changestoFalse.- Parameters
- Return type
Optional[Dict[str,Union[SeverityLevel,Dict[str,Union[int,float,str]],str]]]- Returns
Dictionary with the result of the test:
{ # (int) Result code "result_severity": 0, # (dict) Suggested register values "suggested_registers": {"FBK_DIGENC1_POLARITY": 0}, # (str) Human readable result message "result_message": "Feedback test pass successfully" }
- Raises
TestError – In case the servo or setup configuration makes impossible fulfilling the test
-
incremental_encoder_2_test(servo='default', axis=1, apply_changes=True)¶ Executes incremental encoder 2 feedback test given a target servo and axis. By default test will make changes in some drive registers like feedback polarity and other suggested registers. To avoid it, set
apply_changestoFalse.- Parameters
- Return type
Optional[Dict[str,Union[SeverityLevel,Dict[str,Union[int,float,str]],str]]]- Returns
Dictionary with the result of the test:
{ # (int) Result code "result_severity": 0, # (dict) Suggested register values "suggested_registers": {"FBK_DIGENC2_POLARITY": 0}, # (str) Human readable result message "result_message": "Feedback test pass successfully" }
- Raises
TestError – In case the servo or setup configuration makes impossible fulfilling the test
-
absolute_encoder_1_test(servo='default', axis=1, apply_changes=True)¶ Executes absolute encoder 1 feedback test given a target servo and axis. To know more about it see
digital_halls_test().
-
absolute_encoder_2_test(servo='default', axis=1, apply_changes=True)¶ Executes absolute encoder 2 feedback test given a target servo and axis. To know more about it see
digital_halls_test().
-
secondary_ssi_test(servo='default', axis=1, apply_changes=True)¶ Executes secondary SSI feedback test given a target servo and axis. To know more about it see
digital_halls_test().
-
get_feedback_test(feedback, servo='default', axis=1)¶ - Return type
Feedbacks
-
commutation(servo='default', axis=1, apply_changes=True)¶ Executes a commutation calibration given a target servo and axis. By default commutation will make changes in some drive registers like commutation angle offset and other suggested registers. To avoid it, set
apply_changestoFalse.- Parameters
- Return type
Optional[Dict[str,Union[SeverityLevel,Dict[str,Union[int,float,str]],str]]]- Returns
Dictionary with the result of the test:
{ # (int) Result code "result_severity": 0, # (dict) Suggested register values "suggested_registers": {"COMMU_ANGLE_OFFSET": 0.12}, # (str) Human readable result message "result_message": "Phasing process finished successfully" }
- Raises
TestError – If servo or setup configuration makes impossible complete the calibration.
TypeError – If some parameter has a wrong type.
-
phasing_check(servo='default', axis=1)¶ Checks servo phasing.
- Parameters
- Return type
Optional[Dict[str,Union[SeverityLevel,Dict[str,Union[int,float,str]],str]]]- Returns
Dictionary with the result of the test:
{ # (int) Result code "result_severity": 0, # (dict) Suggested register values "suggested_registers": {}, # (str) Human readable result message "result_message": "Phasing process finished successfully" }
-
sto_test(servo='default', axis=1)¶ Check STO
- Parameters
- Return type
Optional[Dict[str,Union[SeverityLevel,Dict[str,Union[int,float,str]],str]]]- Returns
Dictionary with the result of the test:
{ # (int) Result code "result_severity": 0, # (dict) Suggested register values "suggested_registers": {}, # (str) Human readable result message "result_message": "Phasing process finished successfully" }
-
brake_test(servo='default', axis=1)¶ Run brake test.
-
polarity_feedback_single_phase_test(feedback, servo='default', axis=1, apply_changes=True)¶ Executes polarity feedback test for single phase motors given a target servo and axis. By default, test will make changes in feedback polarity. To avoid it, set
apply_changestoFalse.- Parameters
feedback (
SensorType) – feedback sensor typeservo (
str) – servo alias to reference it.defaultby default.axis (
int) – axis that will run the test.1by default.apply_changes (
bool) – ifTrue, test applies changes to the servo, ifFalseit does not.Trueby default.
- Return type
Optional[Dict[str,Union[SeverityLevel,Dict[str,Union[int,float,str]],str]]]- Returns
Dictionary with the result of the test:
{ # (int) Result code "result_severity": 0, # (dict) Suggested register values "suggested_registers": {"FBK_DIGENC2_POLARITY": 0}, # (str) Human readable result message "result_message": "Feedback test pass successfully" }
- Raises
TestError – In case the servo or setup configuration makes impossible fulfilling the test
TypeError – If some parameter has a wrong type.
-
resolution_feedback_single_phase_test(feedback, servo='default', axis=1, kp=None, ki=None, kd=None)¶ Executes resolution feedback test for single phase motors given a target servo and axis. This test needs a human check to ensure the feedback is well configured. The test will move the motor with the number of counts set in the feedback resolution, if the motor does not move exactly one revolution this means that the feedback is not configured correctly.
- Parameters
feedback (
SensorType) – feedback sensor typeservo (
str) – servo alias to reference it.defaultby default.axis (
int) – axis that will run the test.1by default.kp (
Optional[float]) – overrides test velocity Kp. IfNoneuse test default Kp value. At the end of the test initial drive value is restored.ki (
Optional[float]) – if ki isNoneis ignored, overrides test velocity Ki. IfNoneuse test default Ki value. At the end of the test initial drive value is restored.kd (
Optional[float]) – if kd isNoneis ignored, overrides test velocity Kd. IfNoneuse test default Kd value. At the end of the test initial drive value is restored.
- Return type
Optional[Dict[str,Union[SeverityLevel,Dict[str,Union[int,float,str]],str]]]- Returns
Dictionary with the result of the test:
{ # (int) Result code "result_severity": 0, # (str) Human readable result message "result_message": "Feedback test pass successfully" }
- Raises
TestError – In case the servo or setup configuration makes impossible fulfilling the test
-