set_tcp (수동 모드)

이 절에서는 수동 모드에서 set_tcp로 미리 정의한 TCP(툴 중심점) 설정을 활성화하는 방법을 설명합니다.

TCP는 직선 이동, 힘 제어(Force Control), 자세 기반 작업을 포함한 모든 작업 공간(Task Space) 모션의 실제 기준점입니다. 경로를 정밀하게 실행하고 자동화 작업을 안전하게 하려면 TCP를 정확하게 활성화해야 합니다.

이 함수는 add_tcp로 미리 만든 TCP 설정을 선택합니다.

수동 모드에서 사용할 수 있습니다. 다른 모드에서는 함수가 false를 반환하고 this command can only be used in manual mode. please change to manual mode as robot mode를 출력합니다. 모드는 get_robot_mode가 반환하는 값으로 확인합니다.

주의

실제 로봇에서는 로봇이 움직이는 동안 안전 보드도 이 호출을 거부합니다. 이때 모션은 급정지(Quick Stop)하고, 실행 중인 프로그램은 정지합니다.

일반적인 사용법

  • 툴이나 그리퍼 핑거마다 다른 TCP로 전환합니다.

  • 픽킹, 삽입, 조립 작업에 맞춘 TCP를 선택합니다.

  • 작업점이 플랜지에서 떨어져 있을 때 제어 동작을 조정합니다.

  • 모션 전에 공간 정확도를 검증합니다.

참고

  • strSymbol은 add_tcp로 등록한 TCP 이름과 일치해야 합니다.

  • 모션 중에 TCP를 전환하는 것은 권장하지 않습니다. 안전한 포즈에서 적용하세요.

  • TCP는 모든 작업 공간 모션 계획과 힘 제어 로직에 영향을 줍니다.

예제: 모션 전에 TCP 활성화하기

// 심볼 "TCP_GRIPPER_CENTER"의 TCP 활성화
if (!drfl.set_tcp("TCP_GRIPPER_CENTER")) {
    printf("Failed to activate TCP.\n");
    return -1;
}

// 선택한 TCP로 모션 실행
float approach[6] = {400.f, 200.f, 300.f, 180.f, 0.f, 0.f};
float vel[2] = {80.f, 40.f}, acc[2] = {300.f, 100.f};
drfl.movel(approach, vel, acc);

이 예제는 미리 등록한 TCP를 활성화해 이후의 직선 이동에 사용합니다.

팁

  • 최상의 정확도를 얻으려면 정밀한 값을 사용하세요(Smart Setup 권장).

  • 툴 하나에 사용할 수 있는 작업점이 여러 개라면 TCP를 여러 개 저장해 두세요.

  • 중요한 작업을 실행하기 전에 get_tcp()로 현재 TCP를 확인하세요.