최신 버전 정보는 1.33.5에서 확인하세요.
set_stiffnessx (수동 모드)
이 절에서는 수동(교시) 작업 중에 set_stiffnessx로 순응 모션이나 힘 보조 모션을 위한 로봇의 직교 좌표 강성(Stiffness)을 바꾸는 방법을 설명합니다. 이 함수는 지정한 시간 동안 현재 강성에서 새 목표 강성으로 선형 전환하므로, 로봇의 강성을 부드럽게 조정할 수 있습니다.
이 함수는 주로 핸드가이딩, 표면 접촉 튜닝, 조립 교시 중에 선택한 축에서 로봇을 더 부드럽게 하거나 더 단단하게 할 때 사용합니다.
일반적인 사용법
수동 안내나 접촉 테스트 중에 강성을 동적으로 조정합니다.
사람이나 주변 환경과 안전하게 상호작용하도록 순응 동작을 미세 조정합니다.
순응 모션에는 낮은 강성을, 안정적인 정밀 위치 결정에는 높은 강성을 적용합니다.
task_compliance_ctrl과 함께 사용해 로봇의 유연성을 실시간으로 조정합니다.
참고
강성을 조정하기 전에 항상 순응 제어(Compliance Control)가 활성화되어 있는지 확인하세요.
예제: TOOL 좌표에서 직교 좌표 강성 조정
// 사전 조건:
// - 연결됨, 서보 온
// - 수동(교시) 모드 활성
// 1) 안전한 위치로 이동
float q0[6] = {0.0f, 0.0f, 90.0f, 0.0f, 90.0f, 0.0f};
drfl.movej(q0, 60, 30);
drfl.mwait();
// 2) 베이스 기준 순응 제어 활성화
float baseStiff[6] = {3000.f, 3000.f, 3000.f, 200.f, 200.f, 200.f};
drfl.task_compliance_ctrl(baseStiff, COORDINATE_SYSTEM_TOOL, 0.0f);
// 3) 0.5초에 걸쳐 강성 조정
float newStiff[6] = {1000.f, 1500.f, 2000.f, 150.f, 150.f, 150.f};
drfl.set_stiffnessx(newStiff, COORDINATE_SYSTEM_TOOL, 0.5f);
// 4) 순응 제어를 마치고 위치 제어로 복귀
drfl.release_compliance_ctrl();
printf("Stiffness adjusted successfully.\n");
이 예제에서 로봇은 각 축의 강성 값을 낮춰 단단한 상태에서 부드러운 상태로 매끄럽게 전환합니다. 이렇게 조정하면 안정적이고 반응성 있는 제어를 유지하면서 로봇을 안전하게 핸드가이딩하거나 순응 동작을 미세 조정할 수 있습니다.
팁
낮은 강성 → 더 유연함, 핸드가이딩에 더 안전합니다.
높은 강성 → 더 단단함, 정밀한 모션에 적합합니다.
실제 상황에 맞는 순응 제어 튜닝을 위해 강성을 서서히 조정하세요.
툴 방향에 맞춘 작업(예: 연마)에는
COORDINATE_SYSTEM_TOOL을 사용하세요.수동 강성 튜닝 후 release_compliance_ctrl과 함께 사용해 위치 제어로 돌아가세요.