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

add_tcp

이 함수는 새 TCP(툴 중심점) 설정을 로봇 컨트롤러 메모리에 등록합니다. 각 TCP는 플랜지를 기준으로 한 툴 기준점의 위치와 자세를 정의합니다. 등록한 TCP는 나중에 set_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)로 멈추고 실행 중인 프로그램은 정지됩니다.

정의
DRFLEx.h, CDRFLEx 클래스의 public 섹션

bool add_tcp(string strSymbol, float fPostion[NUM_TASK]) {
    return _add_tcp(_rbtCtrl, strSymbol.c_str(), fPostion);
};

매개변수

매개변수 이름

자료형

기본값

설명

strSymbol

string

등록할 TCP의 이름입니다.

fPostion

float[6]

TCP의 위치와 자세를 정의하는 TCP 포즈 데이터(X, Y, Z, Rx, Ry, Rz)입니다.
로봇 플랜지 좌표계를 기준으로 합니다.

반환값

값

설명

0

오류 — TCP를 등록하지 못함

1

성공 — TCP 등록을 완료함

참고

이름은 32바이트로 제한되며, 더 긴 이름은 잘립니다. 이미 있는 이름을 추가하면 해당 항목을 대체하며, 그 툴(TCP)이 활성 상태이면 새 값이 즉시 적용됩니다. 컨트롤러는 툴과 TCP를 각각 최대 50개까지 저장합니다. 이를 넘어 추가하면 알람이 발생하고 실행 중인 프로그램이 정지됩니다.

예제

float fTCP[6] = {10.f, 10.f, 10.f, 0.f, 0.f, 0.f};

// (1) "tcp#1"이라는 이름으로 새 TCP 등록
drfl.add_tcp("tcp#1", fTCP);

// (2) 현재 활성 TCP로 설정
drfl.set_tcp("tcp#1");

// (3) 등록한 TCP 삭제
drfl.del_tcp("tcp#1");

이 예제는 새 TCP 위치를 등록하고, 모션 명령에 사용하도록 활성화한 다음, 컨트롤러의 TCP 목록에서 제거하는 방법을 보여 줍니다.