정의
task_compliance_ctrl(stx, time)
기능
기존에 설정한 기준 좌표계를 기준으로 태스크 Compliance control을 시작합니다.
주의
-
Non-FTS 모델(A0509, A0912, A0509F, A0912F, E0509)에서는 Translation 강성 제어만 가능하며, 제어 오차가 클 수 있습니다.
-
Non-FTS 모델에서는 특이점 근처에서 로봇 사용 시, 정상적으로 동작하지 않을 수 있습니다.
-
로봇 없이 시뮬레이션 환경에서 해당 명령어를 사용하는 경우, 정상적으로 동작하지 않을 수 있습니다.
-
순응/힘 제어는 특이점의 영향을 받아 진동이 발생할 수 있습니다. 특이점 근처에서는 사용하지 않도록 주의해 주십시오.
-
특이점이 아니더라도 TCP를 길게 설정한 경우, 팔꿈치(3축)를 많이 접은 자세, 가벼운 툴, 낮은 순응 강성 조건이 겹치면 순응/힘 제어 중 진동이 발생할 수 있습니다. 대응 방법은 아래 알아두기를 참고하십시오.
인수
|
인수명 |
자료형 |
기본값 |
설명 |
|---|---|---|---|
|
stx |
float[6] |
[3000, 3000, 3000, 200, 200, 200] |
Translational 강성 3개, 회전 강성 3개 |
|
time |
float |
0 |
강성 변화 시간 [sec] 범위 0~1.0 * 주어진 시간 동안 linear transition |
주의
Non-FTS 모델에서는 stx 파라미터의 자료형을 float[3]으로도 사용할 수 있습니다. 회전 강성 입력 시(float[6]) 회전 강성 입력 값은 기본값으로 변경되어 사용됩니다.
리턴
|
값 |
설명 |
|---|---|
|
0 |
성공 |
|
음수값 |
오류 |
예외
|
예외 |
설명 |
|---|---|
|
DR_Error (DR_ERROR_TYPE) |
인수들의 데이터형 오류 시 |
|
DR_Error (DR_ERROR_VALUE) |
인수의 값이 유효하지 않을 시 |
|
DR_Error (DR_ERROR_RUNTIME) |
C Extension 모듈 에러 발생 시 |
|
DR_Error (DR_ERROR_STOP) |
프로그램 강제 종료 시 |
알아두기
-
순응/힘 제어 중 진동이 발생하면 set_damping_factor()로 감쇠값을 1.0보다 크게 설정합니다. 이 명령 직후에 호출합니다.
-
힘제어 중이라면 set_desired_force() 직후 set_force_factor()로 힘이득값을 1.0 미만으로 함께 설정하면 진동을 더 안정적으로 억제할 수 있습니다.
-
두 값은 6축 모두 같은 값으로 설정하고, 진동이 발생한 작업 위치에서 진동이 사라지는 값을 찾은 뒤 여유를 두고 적용합니다. 값을 높일수록(힘이득값은 낮출수록) 동작이 느려집니다.
-
감쇠값과 힘이득값은 이 명령으로 순응 제어를 시작할 때 기본값(1.0)으로 초기화됩니다. 순응 제어를 시작할 때마다 다시 설정해야 합니다.
예제
P0 = posj(0,0,90,0,90,0)
movej(P0, vel=30, acc=30)
task_compliance_ctrl() # default 강성으로 시작
set_stiffnessx([500, 500, 500, 100, 100, 100], time=0.5)
# 사용자 정의 강성으로 0.5초 동안 전환
release_compliance_ctrl()
task_compliance_ctrl([500, 500, 500, 100, 100, 100])
# 사용자 정의 강성으로 시작
release_compliance_ctrl()
관련 명령어
Keyword
task / compliance / ctrl / release_ / task_compliance / task_compliance_