이전 버전(1.33.4)의 문서를 보고 있습니다. 이 버전은 계속 지원됩니다.
최신 버전 정보는 1.33.5에서 확인하세요.
최신 버전 정보는 1.33.5에서 확인하세요.
change_operation_speed
이 함수는 동작 속도를 조절합니다. 인수는 현재 설정된 속도에 대한 상대 속도(%)이며, 1~100의 값을 가집니다. 예를 들어 50을 지정하면 속도가 현재 설정된 속도의 50%로 줄어듭니다.
자동 모드에서만 사용할 수 있습니다. 다른 모드에서는 false를 반환하고 “this command can only be used in auto mode. please change to auto mode as robot mode”를 출력합니다. 모드는 get_robot_mode가 반환하는 값으로 확인합니다.
정의
DRFLEx.h, CDRFLEx 클래스의 public 섹션
bool change_operation_speed(float fSpeed) {
return _change_operation_speed(_rbtCtrl, fSpeed);
};
매개변수
매개변수 이름 |
자료형 |
기본값 |
설명 |
|---|---|---|---|
fSpeed |
float |
동작 속도(1–100%) |
반환값
값 |
유형 |
설명 |
|---|---|---|
0 |
int |
실패 |
1 |
int |
성공 |
예제
string strDrlProgram = "loop = 0\n"
"while loop < 3:\n"
" movej(posj(10,10,10,10,10,10), vel=60, acc=60)\n"
" loop = loop + 1\n";
if (drfl.get_robot_state() == STATE_STANDBY) {
if (drfl.set_robot_mode(ROBOT_MODE_AUTONOMOUS) && drfl.get_robot_mode() == ROBOT_MODE_AUTONOMOUS) {
// 동작 속도는 자동 모드에서만 변경할 수 있습니다
if (!drfl.change_operation_speed(40)) {
printf("change_operation_speed failed\n");
} else {
ROBOT_SYSTEM eTargetSystem = ROBOT_SYSTEM_VIRTUAL;
drfl.drl_start(eTargetSystem, strDrlProgram);
}
}
}
이 예제는 로봇의 동작 속도를 현재 설정의 40%로 바꾼 다음, 자동 모드에서 간단한 DRL 모션 루프를 실행합니다. 새 속도 값은 이후 컨트롤러가 실행하는 모든 모션 명령에 바로 적용됩니다.