Skip to main content
Skip table of contents

servoj()

기능

비동기 방식의 모션 명령어로 모션 시작과 동시에 다음 명령어를 수행합니다. 연속적으로 전달되는 명령 중 가장 최근의 목표 관절 위치를 최대 속도, 가속도 내에서 추종하는 모션입니다.

인수

인수명자료형기본값설명

pos


posj

-

posj 또는

joint angle list

list (float[6])

vel (v)


float

None

최대 속도(모든 축에 동일) 또는

최대 속도(축별 속도) [deg/s]

list (float[6])

acc (a)


float

None

최대 가속도(모든 축에 동일) 또는

최대 가속도(축별 가속도) [deg/s2]

list (float[6])

time (t)

float

None

도달 시간 [sec]

알아두기

  • 단축 인수를 지원합니다. (v:vel, a:acc, t:time)
  • vel이 None인 경우, _global_velj가 적용됩니다. (_global_velj 초기값은0이며, set_velj에 의해 설정 가능)
  • acc이 None인 경우, _global_accj가 적용됩니다. (_global_accj 초기값은0이며, set_accj에 의해 설정 가능)
  • time이 입렵된 경우 최대 속도/가속도 조건에 의해 도달 시간을 지킬 수 없는 경우 자동 조정하고 알림 메시지를 띄웁니다


주의

  • 현재는 속도 슬라이드바의 작동 속도 조절 기능과 연동되지 않습니다.
  • 현재는 check_motion(), change_operation_speed() 명령어와 연동되지 않습니다.


리턴

설명
0

성공

음수값오류

예외

예외설명

DR_Error (DR_ERROR_VALUE)

인수들의 데이터형 오류 시

DR_Error (DR_ERROR_RUNTIME)

인수의 값이 유효하지 않을 시

DR_Error (DR_ERROR_STOP)

C Extension 모듈 에러 발생 시

DR_Error (DR_ERROR_STOP)

프로그램 강제 종료 시

예제

PY
set_velj(30)
set_accj(60)

Xt=posj(0, 0, 0, 0, 0, 0)
servoj(Xt)

Xt=posj(0, 0, 0, 0, 0, 0)
target = posx(90, 0, 120, -50, 50, -90)
del_t = [3, 0.1, 3, -3, 3, -3]

while 1:
    for i in range(0,6):
        Xt[i] = Xt[i] + del_t[i]    
    
        if del_t[i] > 0:
            if Xt[i] > target[i]:  
                Xt[i] = target[i]
        else:
            if Xt[i] < target[i]:
                Xt[i] = target[i]
            
    servoj(Xt)

관련 명령어


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.