release_protective_stop

이 함수는 로봇 컨트롤러의 보호 정지(Protective Stop) 상태를 해제합니다. 충돌, 외부 안전 장치, 시스템 오류로 보호 정지가 발생했을 때 이 함수가 정지 조건을 해제해 로봇이 운전을 재개할 수 있게 합니다.

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

bool release_protective_stop(RELEASE_MODE eReleaseMode)
{
    return _release_protective_stop(_rbtCtrl, eReleaseMode);
};

매개변수

매개변수 이름

자료형

기본값

설명

eReleaseMode

RELEASE_MODE

보호 정지 해제 모드

반환값

값

설명

0

오류 — 보호 정지를 해제하지 못함

1

성공 — 보호 정지를 해제함

예제

// 보호를 위해 자동 안전 모션 정지 활성화
Drfl.set_auto_safety_move_stop(true);

// 보호 정지를 일으킬 수 있는 모션 작업 시뮬레이션
float target[6] = {500, 200, 400, 180, 0, 180};
float vel[2] = {60, 60};
float acc[2] = {60, 60};
// Drfl.movej(target, vel, acc);

// 충돌이나 외력으로 보호 정지가 발생했다고 가정
std::this_thread::sleep_for(std::chrono::seconds(3));
printf("Protective stop triggered due to collision!\n");

// 보호 정지 상태 해제
Drfl.release_protective_stop(RELEASE_MODE_RELEASE);
printf("Protective stop released. Resuming operation...\n");

이 예제는 외부 충돌이나 안전 시스템으로 발생한 보호 정지에서 복구하는 방법을 보여 줍니다. release_protective_stop(RELEASE_MODE_RELEASE)을 호출하면 로봇이 모션을 재개할 수 있습니다. 보호 정지 중에는 서보 전원이 유지되므로 서보 온 호출이 필요 없습니다.