Skip to main content
Skip table of contents

amovel()

기능

비동기(async.)방식의 movel모션으로 블렌딩을 위한 radius인자를 갖지 않는 점을 제외하고 movel와 동일하게 작동합니다. 그러나 해당 명령어는 async 방식의 모션명령어로 모션 종료를 기다리지 않고 다음 명령어를 수행합니다.

비교

  • movel(pos) : 현재위치에서 출발하여 pos에 도달(정지)한 후에 다음 명령 수행
  • amovel(pos) : 현재위치에서 출발하여 pos 도달(정지)여부와 관계없이 즉시 다음 명령 수행

인수

인수명

자료형

기본값

설명

pos

posx

-

posx 또는

position list

list (float[6])

vel (v)

float

None

velocity 또는

velocity1, velocity2

list (float[2])

acc (a)

float

None

acceleration 또는

acceleration1, acceleration2

list (float[2])

time (t)

float

None

도달 시간 [sec]

  • time 지정 시, vel, acc를 무시하고 time 기준으로 처리

ref

int

None

reference coordinate

  • DR_BASE : base coordinate
  • DR_WORLD : world coordinate
  • DR_TOOL : tool coordinate
  • user coordinate: 사용자 정의

mod

int

DR_MV_MOD_ABS

이동 기준

  • DR_MV_MOD_ABS: 절대
  • DR_MV_MOD_REL: 상대

ra

int

DR_MV_RA_DUPLICATE

Reactive motion mode

  • DR_MV_RA_DUPLICATE: duplicate
  • DR_MV_RA_OVERRIDE: override

app_type

int

DR_MV_APP_NONE

어플리케이션 연동 옵션

  • DR_MV_APP_NONE: 연동없음
  • DR_MV_APP_WELD: 용접연동

알아두기

  • 단축 인수 지원(v:vel, a:acc, t:time)
  • vel가 None인 경우, _global_velx 적용(_global_velx 초깃값은 0.0이며, set_velx에 의해 설정 가능)
  • acc가 None인 경우, _global_accx 적용(_global_accx 초깃값은 0.0이며, set_accx에 의해 설정 가능)
  • vel에 하나의 인자를 입력한 경우(예를들어, vel=30) 입력된 인자는 모션의 선속도에 대응되며, 각속도는 선속도에 비례하여 결정됩니다.
  • acc에 하나의 인자를 입력한 경우(예를들어, acc=60) 입력된 인자는 모션의 선가속도에 대응되며, 각가속도는 선가속도에 비례하여 결정됩니다.
  • time을 지정할 경우 vel, acc를 무시하고 time 기준으로 처리됩니다.
  • time이 None인 경우 0으로 처리됩니다.
  • ref가 None인 경우, _g_coord 적용(_g_coord 초기값은 DR_BASE이며, set_ref_coord 명령에 의해 설정 가능)
  • 옵션 ra vel/acc에 따른 blending 시의 경로는 movel() 모션 설명을 참조할 것
  • app_type 이 DR_MV_APP_WELD인 경우에 이동속도는 vel인자의 입력값이 아닌 app_weld_set_weld_cond()에 입력된 속도설정으로 대체됩니다.

리턴

설명

0

성공

음수값

오류

예외

예외설명

DR_Error (DR_ERROR_TYPE)

인수들의 데이터형 오류 시

DR_Error (DR_ERROR_VALUE)

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

DR_Error (DR_ERROR_RUNTIME)

C Extension 모듈 에러 발생 시

DR_Error (DR_ERROR_STOP)

프로그램 강제 종료 시

예제

PY
#예제 1. x1으로 모션시작 후 2초 후에 D-Out 

j0 = posj(-148,-33,-54,180,92,32)

movej(j0, v=30, a=30)

x1 = posx(784, 543, 570, 0, 180, 0) 

amovel (x1, vel=100, acc=200) # x1으로 모션 및 즉시 다음명령 수행

wait(2)   # 2초간 프로그램 일시중지 (모션은 진행 중)

set_digital_output(1 , 1) # D-Out(1번채널) ON

mwait(0)   # 모션이 종료할 때까지 프로그램 일시중지

관련 명령어

JavaScript errors detected

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

If this problem persists, please contact our support.