Skip to main content
Skip table of contents

set_workpiece_weight(weight=0.0, cog=[0.0,0.0,0.0], cog_ref=DR_CUR_TCP, add_up=DR_REPLACE, start_time=None, transition_time=None)

기능

로봇 끝단의 툴 무게/무게 중심에 추가하여 작업물의 무게/무게 중심, 기타 정보를 설정합니다. 전체 페이로드의 무게 및 무게 중심은 설정된 툴 무게/무게 중심과 작업물의 무게/무게 중심을 종합하여 반영됩니다. 작업물의 종류가 다양하거나 동적으로 무게가 변경되어야 하는 Application에서 쓸 수 있습니다.

주의

  • 작업물 무게 변경은 Auto Mode 중 Collision Detection과 TCP SLF Violation 검사가 모두 무효화된 경우에만 허용됩니다.
  • 현재 버전에서, Collision Detection은 Collision Sensitivity를 0으로 Override 한 경우, TCP SLF Violation은 TCP SLF Limit을 최대로 Override 한 경우를 기능이 무효화된 상태로 간주합니다. 이 무효화는 Collision Sensitivity Reduction Zone, Custom Zone 등을 이용해서 설정할 수 있습니다.
  • 그 외의 경우에 작업물 무게가 0으로 설정되어 있지 않으면 SS1 보호 정지를 발생시킵니다.
  • 에러 발생으로 로봇이 정지하여 매뉴얼로 복구하여야 하는 경우 복구 모드에서 로봇을 원하는 위치에 놓고, Auto Mode에서 해당 Zone들이 활성화된 상태에서 Servo On, I/O 조작 등을 통해 작업물을 언로딩할 수 있습니다.
  • 설정된 툴 무게를 변경하는 경우에는 작업물 무게가 0으로 초기화 됩니다.

인수

인수명자료형기본값설명

weight

int

0

무게 [kgf]

cog

list(float[3])

[0, 0, 0]

무게 중심 위치(x, y, z) [mm]

cog_ref

int

DR_CUR_TCP

무게 중심 위치 기준 좌표계,

DR_CUR_TCP : TCP 기준,

DR_FLANGE : FLANGE 기준,

add_up

int

DR_REPLACE

DR_REPLACE(0): 작업물 교체

DR_ADD(1): 작업물 추가

DR_REMOVE(2): 작업물 제거

start_time

float

None

전달 시간 이후 작업물 무게 변경 시작[sec]

transition_time

float

None

전달 시간 동안 작업물 무게 점진적 변경[sec]

알아두기

  • 작업물의 무게는 모델별 최대 페이로드 무게(margin 10%)를 초과할 수 없습니다. 전체 페이로드의 무게도 마찬가지입니다.
  • 작업물의 무게 중심(x, y, z) 각 축의 길이는 1000mm를 초과할 수 없습니다. 전체 페이로드의 무게 중심 각 축의 길이도 마찬가지입니다.
  • start_time을 통해 해당 설정 시간 이후에 작업물 무게 변경이 가능합니다.
  • transition_time을 통해 해당 설정 시간 동안 작업물 무게를 점진적으로 변경이 가능합니다.
  • set_tool, set_workpiece_weight 함수를끼리 연달아 사용하는 경우에는 transition_time 만큼 wait(transition_time) 함수를 사이에 넣어서 사용해야 합니다. 그렇지 않으면 무게 변경에 오류가 생길 수 있습니다.

리턴

설명

0

성공

음수값

오류

예외

예외설명
DR_Error (DR_ERROR_TYPE)인수들의 데이터형 오류 시
DR_Error (DR_ERROR_VALUE)인수의 값이 유효하지 않을 시

DR_Error (DR_ERROR_RUNTIME)

C Extension 모듈 에러 발생 시

DR_Error (DR_ERROR_STOP)

프로그램 강제 종료 시

예제

PY
# Replace 1 kgf workpiece weight at the origin of the current TCP frame
set_workpiece_weight(1)
# Add 0.5 kgf workpiece weight at the origin of the current TCP frame. In total, 1.5kgf
set_workpiece_weight(0.5, add_up=DR_ADD)
# Remove 0.1 kgf workpiece weight at [0, 0, 10] in the current TCP frame. In total, 1.4kgf
set_workpiece_weight(0.1, [0, 0, 10], add_up=DR_REMOVE)
# Remove 0.1 kgf workpiece weight at [0, 0, 10] in the flange frame. In total, 1.3kgf
set_workpiece_weight(0.1, [0, 0, 10], DR_FLANGE, DR_REMOVE)
# Reset. And the weight transition is being occurred after 0.1 sec for 0.2 sec
set_workiece_weight(0, start_time=0.1, transition_time=0.2)
 

관련 명령어

JavaScript errors detected

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

If this problem persists, please contact our support.