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

enable_alter_motion (수동 모드)

이 절에서는 수동(교시) 작업 중에 enable_alter_motion을 사용하는 방법을 설명합니다. 이 함수는 경로 수정(Alter Motion) 모드를 활성화해, 작업 공간(Task Space) 모션 명령(예: movel)이 실행되는 동안 궤적(Trajectory)을 조금씩 보정할 수 있게 합니다. movej 같은 조인트 공간(Joint Space) 모션은 수정할 수 없으며, 이런 모션 중의 alter_motion 호출은 거부됩니다. 이 기능은 접근 경로 미세 조정, 접촉 중 툴 자세 조정, 카메라 안내에 따른 TCP 위치의 시각적 보정에 특히 유용합니다.

일반적인 사용법

  • 미세 수동 조정 루프(alter_motion 사용)를 실행하기 전에 활성화하세요.

  • 안전한 수동 제어를 위해 위치와 자세 모두에 이동 한계를 정의하세요.

  • 용접 시작점 튜닝이나 표면 접촉 정렬 같은 정밀 교시 작업에서 흔히 사용합니다.

참고

  • 경로 수정 명령보다 먼저 사용자 스레드에서 호출해야 합니다.

  • disable_alter_motion을 호출하거나 로봇이 EMERGENCY_STOP, SAFE_OFF, SAFE_OFF2 상태가 될 때까지 활성 상태로 유지됩니다. 그 후에는 서보 온 후 enable_alter_motion을 다시 호출하세요.

  • 설정한 한계는 툴이 지나치게 이동하거나 자세가 지나치게 바뀌는 것을 막습니다.

예제: 안전 경계를 설정해 경로 수정 활성화

// 1단계: 로봇이 연결되어 있고 수동 모드인지 확인
// (서보 온 상태이고 작업 영역이 안전하다고 가정)

// 2단계: 수동 보정용 안전 한계 정의
float fLimitDpos[2]     = {5.0f, 3.0f};   // ±5 mm(위치), ±3°(회전)
float fLimitDposPer[2]  = {-10000.f, -10000.f};  // 주기당 한계 없음

// 3단계: 미세 경로 보정을 허용하도록 경로 수정 활성화
drfl.enable_alter_motion(5, PATH_MODE_DPOS, COORDINATE_SYSTEM_BASE,
                         fLimitDpos, fLimitDposPer);

printf("Alter motion enabled. You can now apply small path adjustments.\n");

팁

  • 시각적 정렬이나 촉각 정렬 직전에 호출하기에 적합합니다.

  • fLimitDpos 또는 fLimitDposPer의 두 요소가 모두 -10000이면 누적량이나 증분량을 제한하지 않습니다.

  • 정렬이 끝나면 disable_alter_motion으로 포즈를 확정하세요.