이전 버전(1.33.4)의 문서를 보고 있습니다. 이 버전은 계속 지원됩니다.
최신 버전 정보는 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

0.f

도달 시간 [sec]
* 시간을 지정하면 vel과 acc를 무시하고 시간을 기준으로 처리합니다.

eMoveMode

MOVE_MODE

MOVE_MODE_ABSOLUTE

열거형 정의를 참고하세요

eMoveReference

MOVE_REFERENCE

MOVE_REFERENCE_BASE

열거형 정의를 참고하세요

eBlendingType

BLENDING_SPEED_TYPE

BLENDING_SPEED_TYPE_DUPLICATE

열거형 정의를 참고하세요

eAppType

DR_MV_APP

DR_MV_APP_NONE

열거형 정의를 참고하세요. 값을 받기는 하지만 컨트롤러로 보내지 않습니다.

반환값

값

설명

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()을 호출한 직후 프로그램 흐름이 계속됩니다.