set_singular_handling_force(mode)
Features
The program is terminated by default through error processing when compliance or force control are used within the singularity area. It is possible to ignore error processing within the singularity area by changing the Mode setting.
- Error Processing : DR_SINGULARITY_ERROR
- Ignore Error Processing : DR_SINGULARITY_IGNORE
Caution
- Compliance and force control within the singularity area are not recommended. The force estimate in a particular direction can be inaccurate.
Parameters
Parameter Name | Data Type | Default Value | Description |
---|---|---|---|
mode | int | DR_SINGULARITY_ERROR | DR_SINGULARITY_ERROR : Error processing DR_SINGULARITY_IGNORE : Ignore error processing |
Return
Value | Description |
---|---|
0 | Success |
Negative value | Error |
Exception
Exception | Description |
---|---|
DR_Error (DR_ERROR_TYPE) | Parameter data type error occurred |
DR_Error (DR_ERROR_VALUE) | Parameter value is invalid |
DR_Error (DR_ERROR_RUNTIME) | C extension module error occurred |
DR_Error (DR_ERROR_STOP) | Program terminated forcefully |
Example
set_ref_coord(DR_BASE)
P0 = posj(0, 0, 90, 0, 90, 0)
movej(P0,vel=30,acc=60)
#Ignoring error when entering singularity
set_singular_handling_force(DR_SINGULARITY_IGNORE)
task_compliance_ctrl()
set_stiffnessx([500, 500, 500, 100, 100, 100], time=0.5)
fd = [0, 0, 30, 0, 0, 0]
fctrl_dir= [0, 0, 1, 0, 0, 0]
set_desired_force(fd, dir=fctrl_dir, mod=DR_FC_MOD_REL)
release_compliance_ctrl()