2.9.5 기타 함수

함수
설명
사용 예
결과

cpo(crd, mode)

로봇이 취하고 있는 현재 자세(current pose)를 crd좌표계로 리턴합니다. crd 인수로 사용할 수 있는 값은 "5.1 포즈 (pose)"의 표를 참조하십시오. mode가 "cmd"이면 지령값, "cur"이면 현재값입니다. crd, mode 파라미터를 생략 가능하며 디폴트값은 각각 "base", "cur" 입니다.

cpo("joint", "cmd")

로봇의 지령값을 축좌표계로 보관하는 포즈*

gather_state()

gather문 수행에 의한 데이터 수집 동작의 현재 상태를 리턴 받을 수 있습니다.

gather_state()

0 : 미수행 중. 1 : 수행 중. 2 : 결과를 file로 저장 중.

mkucs(n,po) mkucs(n,po1,po2,po3) mkucs(n,"OXY",po1,po2,po3)

n번 사용자좌표계 객체를 생성하여 등록합니다. "5.5 사용자좌표계 (UCS ; User Coordinate System)"를 참조하십시오.

0 : OK <0 : 에러코드

result()

일부 프로시져는 수행 결과를 확인해야 할 경우가 있습니다. 프로시져 수행 직후 result( ) 함수를 호출하면, 수행 결과를 리턴 받을 수 있습니다.

result()

mkshift(n,ref_po,mea_po,2.0) mkshift(n,ref_po,mea_sft)

n개의 기준이 되는 포즈에 해당하는 측정된 포즈나 쉬프트 데이터들로 부터 최적화된 쉬프트 값을 계산하여 리턴합니다. tolerance에 해당하는 4번째 파라미터가 0보다 크게 지정된 경우에 계산된 쉬프트 값이 이 값보다 크면 에러로 정지합니다. # 참고 사항 ref_po(기준이 되는 포즈), mea_po(측정된 포즈)는 포즈 변수의 배열, mea_sft(측정된 쉬프트)는 쉬프트 변수의 배열의 타입입니다. tolerance에 해당하는 4번째 파라미터가 없으면 에러를 검지하지 않습니다. 현재 지원하는 위치는 최대 100개입니다.

sft1=mkshift(4,ref_po,mea_po,3.0)

쉬프트

calshift(po1,po2) calshift(po1,po2,"TV")

2개의 포즈간의 차이를 쉬프트 값으로 리턴합니다. "TV" 파라미터가 있으면 툴의 수직 방향의 자세를 쉬프트 값으로 리턴합니다.

sft1=calshift(po1,po2)

쉬프트

po.valid()

포즈 객체에 대한 정보가 로봇의 동작범위 내에 있는지 리턴합니다. # 사용 예 if po1.valid()==0 stop # 로봇 정지 endif

var ret=po1.valid()

0:동작범위 밖 1:동작범위 내

po.str_array()

포즈 객체에 대한 정보를 배열 형식의 문자열로 리턴합니다. # 사용 예 var msg=cpo().str_array() print msg # [1850.000,2010.500,0.000,0.000,-90.000,0.000,"base"]

msg=po1.str_array()

문자열

sft.str_array()

쉬프트 객체에 대한 정보를 배열 형식의 문자열로 리턴합니다. # 사용 예 var sft1=Shift(0.000,0.000,30.000,0.000,0.000,0.000,"base") var msg=sft1.str_array() print msg # [0.000,0.000,30.000,0.000,0.000,0.000,"base"]

msg=sft1.str_array()

문자열

upo(crd)

move ~ until문 수행시 until 조건이 만족했을 때의 현재 자세(current pose)를 crd좌표계로 리턴합니다. crd 인수로 사용할 수 있는 값은 "5.1 포즈 (pose)"의 표를 참조하십시오. crd 파라미터를 생략 가능하며 디폴트값은 각각 "base" 입니다.

upo("joint")

로봇의 포즈*

* 포즈(pose)는 로봇의 자세 혹은 툴 끝의 위치를 나타내는 데이터형입니다. 이후의 "5.1 포즈 (pose)"에서 자세히 설명합니다.

Last updated

Was this helpful?