이전 버전(1.33.4)의 문서를 보고 있습니다. 이 버전은 계속 지원됩니다.
최신 버전 정보는 1.33.5에서 확인하세요.

set_workpiece_weight (자동 모드)

이 절에서는 자동(실행) 운전 중에 set_workpiece_weight로 활성 작업물 무게와 선택 사항인 무게 중심(CoG) 정보를 설정하는 방법을 설명합니다. 페이로드를 정확하게 설정해야 궤적(Trajectory)을 안정적으로 계획하고, 힘 제어(Force Control) 성능을 확보하고, 자동 작업을 안전하게 실행할 수 있습니다.

이 함수는 주로 픽 앤 플레이스, 팔레타이징, 접촉 기반 조립 같은 자동 사이클을 시작하기 전에 호출합니다.

일반적인 사용법

  • 그리퍼가 현재 잡고 있는 부품의 질량을 등록합니다.

  • 제품이나 작업물 종류를 바꿀 때 페이로드를 갱신합니다.

  • 무게 변화에 맞게 로봇 동역학과 힘 제어 동작을 조정합니다.

  • 고속 자동 모드 모션을 실행하기 전에 토크 추정이 정확한지 확인합니다.

참고

  • fWeight의 단위는 킬로그램(kg)입니다.

  • fCog는 TCP 또는 플랜지 좌표계를 기준으로 한 무게 중심 오프셋입니다.

  • Smart Setup을 사용하면 측정한 작업물 값을 여기에 바로 적용할 수 있습니다.

  • 페이로드를 잘못 설정하면 힘 제어가 불안정해지거나 안전 정지가 발생할 수 있습니다.

예제: 자동 사이클 전 작업물 페이로드 설정하기

// 예: Z 방향으로 무게 중심 오프셋이 있는 2.5 kg 부품
float cog[3] = {0.0f, 0.0f, 50.0f};  // TCP에서 50 mm 위

// 작업물 무게 설정
if (!drfl.set_workpiece_weight(2.5f, cog)) {
    printf("Failed to set workpiece weight.\n");
    return -1;
}

// 갱신한 페이로드로 자동 모드 동작 실행
float target[6] = {400.f, 150.f, 280.f, 180.f, 0.f, 0.f};
float vel[2] = {60.f, 30.f};
float acc[2] = {120.f, 60.f};
drfl.movel(target, vel, acc);

이 예제에서는 자동 이동을 실행하기 전에 작업물 무게와 무게 중심을 설정합니다. 이렇게 하면 로봇이 올바른 페이로드 매개변수를 사용해 자동 모드에서 안정적이고 안전하게 실행됩니다.

팁

  • 새 부품을 집을 때마다 이 함수를 호출하세요.

  • 최상의 힘/순응 성능을 얻으려면 정확한 값(Smart Setup 권장)을 사용하세요.

  • 부품을 내려놓은 후에는 reset_workpiece_weight로 빈 그리퍼 페이로드로 되돌리세요.

  • 로봇이 움직이는 동안 페이로드 값을 빠르게 바꾸지 마세요.