get_desired_posj
이 함수는 로봇 각 조인트의 목표 각도를 반환합니다.
정의
DRFLEx.h, CDRFLEx 클래스의 public 섹션
LPROBOT_POSE get_desired_posj() {
return _get_desired_posj(_rbtCtrl);
};
매개변수
없음
반환값
값 |
설명 |
|---|---|
구조체 정의를 참고하세요 |
예제
// 목표 조인트 위치 가져오기(컨트롤러가 지령한 목표값)
LPROBOT_POSE lpDesired = drfl.get_desired_posj();
LPROBOT_POSE lpCurrent = drfl.get_current_posj();
if (lpDesired && lpCurrent) {
printf("Comparing Desired vs Current Joint Angles:\n");
for (int i = 0; i < NUMBER_OF_JOINT; ++i) {
float error = std::fabs(lpDesired->_fPosition[i] - lpCurrent->_fPosition[i]);
printf(" Joint %d | Desired: %.1f | Current: %.1f | Error: %.1f\n", (i + 1), lpDesired->_fPosition[i], lpCurrent->_fPosition[i], error);
}
} else {
printf("Failed to retrieve joint position data.\n");
}
이 예제는 목표 조인트 각도(모션 컨트롤러가 지령한 값)와 현재 조인트 각도(엔코더의 실제 피드백)를 모두 가져와 비교합니다. 두 값의 차이는 이동 중의 모션 추종 오차입니다. 이 함수는 동적인 애플리케이션에서 실시간 모니터링, 궤적(Trajectory) 디버깅, 컨트롤러 응답 정확도 미세 조정에 특히 유용합니다.