CDRFLEx.set_singularity_handling
Features
In case of path deviation due to the effect of singularity in task motion, user can select the response policy. The mode can be set as follows.
- Automatic avoidance mode(Default) : SINGULARITY_AVOIDANCE_AVOID
- Path first mode : SINGULARITY_AVOIDANCE_STOP
- Variable velocity mode : SINGULARITY_AVOIDANCE_VEL
The default setting is automatic avoidance mode, which reduces instability caused by singularity, but reduces path tracking accuracy. In case of path first setting, if there is possibility of instability due to singularity, a warning message is output after deceleration and then the corresponding task is terminated. In case of variable velocity mode setting, TCP velocity would be changed in singular region to reduce instability and maintain path tracking accuracy.
Parameter
Parameter Name | Data Type | Default Value | Description |
eMode | SINGULARITY_AVOIDANCE | - | Refer to the Definition of Constant and Enumeration Type |
Return
Value | Description |
0 | Failed |
1 | Success |
Example
float p1[6] = {400, 500, 800, 0, 180, 0};
float p2[6] = {400, 500, 500, 0, 180, 0};
float p3[6] = {400, 500, 200, 0, 180, 0};
Drfl.set_singularity_handling(SINGULARITY_AVOIDANCE_AVOID); // Automatic avoidance mode for singularity
Drfl.movel(p1, 10, 20);
Drfl.set_singularity_handling(SINGULARITY_AVOIDANCE _STOP); // Task motion path first
Drfl.movel(p2, 30, 60);
Drfl.set_singularity_handling(SINGULARITY_AVOIDANCE_VEL); // Variable velocity mode for singularity