최신 버전 정보는 1.33.5에서 확인하세요.
amovel (자동 모드)
이 함수는 movel의 비동기 버전으로, 블렌딩용 fBlendingRadius 인수가 없다는 점만 빼면 movel 함수와 같게 동작합니다. 비동기이므로 모션이 시작되면 곧바로 반환하고, 모션이 끝날 때까지 기다리지 않고 다음 줄을 실행합니다.
정의
DRFLEx.h, CDRFLEx 클래스의 public 섹션
bool amovel(float fTargetPos[NUM_TASK],
float fTargetVel[2],
float fTargetAcc[2],
float fTargetTime = 0.f,
MOVE_MODE eMoveMode = MOVE_MODE_ABSOLUTE,
MOVE_REFERENCE eMoveReference = MOVE_REFERENCE_BASE,
BLENDING_SPEED_TYPE eBlendingType = BLENDING_SPEED_TYPE_DUPLICATE,
DR_MV_APP eAppType = DR_MV_APP_NONE) {
return _amovel(_rbtCtrl, fTargetPos, fTargetVel, fTargetAcc,
fTargetTime, eMoveMode, eMoveReference, eBlendingType, eAppType);
}
매개변수
매개변수 이름 |
자료형 |
기본값 |
설명 |
|---|---|---|---|
fTargetPos |
float[6] |
6개 축의 목표 TCP 위치 [mm, deg] |
|
fTargetVel |
float[2] |
선속도, 각속도 [mm/s, deg/s] |
|
fTargetAcc |
float[2] |
선가속도, 각가속도 [mm/s2, deg/s2] |
|
fTargetTime |
float |
|
도달 시간 [sec] |
eMoveMode |
|
열거형 정의를 참고하세요 |
|
eMoveReference |
|
열거형 정의를 참고하세요 |
|
eBlendingType |
|
열거형 정의를 참고하세요 |
|
eAppType |
|
열거형 정의를 참고하세요. 값을 받기는 하지만 컨트롤러로 보내지 않습니다. |
반환값
값 |
설명 |
|---|---|
0 |
오류 |
1 |
성공 |
참고
로봇이 STATE_EMERGENCY_STOP, STATE_SAFE_OFF, STATE_SAFE_OFF2, STATE_SAFE_STOP, STATE_SAFE_STOP2 상태이면 메시지 없이 false를 반환합니다.
예제
#include <thread>
#include <chrono>
// x1로 동작 시작 2초 후 D-out 출력
float x1[6] = { 559, 434.5, 651.5, 0, 180, 0 };
float tvel[2] = { 50, 50 };
float tacc[2] = { 100, 100 };
drfl.amovel(x1, tvel, tacc);
std::this_thread::sleep_for(std::chrono::milliseconds(2000));
drfl.set_digital_output(GPIO_CTRLBOX_DIGITAL_INDEX_1, true);
이 예제는 포즈 x1로 비동기 직선 TCP 모션을 시작한 다음, 모션 시작 2초 후 디지털 출력을 전환합니다. 비동기이므로 amovel()을 호출한 직후 프로그램 흐름이 계속됩니다.