ROBOT_STATE

이 열거형은 로봇 컨트롤러의 운용 상태를 지정하며, 다음과 같이 정의됩니다.

값

상수 이름

설명

0

STATE_INITIALIZING

컨트롤러 매개변수를 설정하는 초기화 상태입니다.

1

STATE_STANDBY

기본 운용 가능 상태이자 명령 대기 상태입니다.

2

STATE_MOVING

로봇이 명령을 받아 움직이는 동안 자동으로 들어가는
명령 동작 상태입니다.
모션이 끝나면 자동으로
명령 대기 상태로 바뀝니다.

3

STATE_SAFE_OFF

기능 오류나 조작 오류로 로봇이 일시 정지한 모드로,
서보 오프 상태(제어를 일시 정지한 뒤 모터와 브레이크
전원을 차단한 상태)입니다.

4

STATE_TEACHING

직접 교시(Direct Teaching) 상태입니다.

5

STATE_SAFE_STOP

기능 오류나 조작 오류로 로봇이 일시 정지한 모드로,
안전 정지 상태(제어 일시 정지만 실행한 상태이며,
자동 모드에서는 프로그램 일시 정지
상태)입니다.

6

STATE_EMERGENCY_STOP

비상 정지(Emergency Stop) 상태입니다.

7

STATE_HOMMING

원점 복귀(Homing) 모드 상태(하드웨어 기반 로봇 정렬)입니다.

8

STATE_RECOVERY

로봇이 운용 범위를 벗어나는 등의 오류로 정지했을 때
로봇을 운용 범위 안으로 옮기기 위한
복구 모드 상태입니다.

9

STATE_SAFE_STOP2

STATE_SAFE_STOP 상태와 같지만, 로봇이
운용 범위를 벗어났으므로
복구 모드로 전환해야 합니다.

10

STATE_SAFE_OFF2

STATE_SAFE_OFF 상태와 같지만, 로봇이
운용 범위를 벗어났으므로
복구 모드로 전환해야 합니다.

11

STATE_RESERVED1

예약됨

12

STATE_RESERVED2

예약됨

13

STATE_RESERVED3

예약됨

14

STATE_RESERVED4

예약됨

15

STATE_NOT_READY

로봇 컨트롤러 부팅 후 초기화를 기다리는 상태입니다.
T/P 애플리케이션이 초기화 상태로 바꿉니다.

16

STATE_LAST

API 내부에서 사용하는 마지막 열거자 표시입니다.
로봇의 운용 상태를 나타내지 않으며,
이 열거형에서 유효한 상태의 총수만 정의합니다.
(경계 검사와 배열 크기 정의에 사용합니다.)

참고

복구 모드에서는 jog, multi_jog와 모션 함수(movej, movel, movec, moveb, movejx, movesj, movesx, move_spiral, move_periodic, 각 함수의 amove 버전, movesj_g, movesx_g)가 false를 반환하고 “this command cannot be used in recovery mode. please change to auto mode as robot mode”를 출력합니다. 복구 모드에서 벗어나려면 set_robot_control(CONTROL_RESET_RECOVERY)을 호출한 다음 set_robot_mode(ROBOT_MODE_MANUAL) 또는 set_robot_mode(ROBOT_MODE_AUTONOMOUS)를 호출하세요. set_robot_mode를 호출하기 전까지 이 함수들은 계속 false를 반환합니다.

정의 위치: DRFC.h

// 로봇 상태 열거형 값
typedef enum {
    STATE_INITIALIZING,
    STATE_STANDBY,
    STATE_MOVING,
    STATE_SAFE_OFF,
    STATE_TEACHING,
    STATE_SAFE_STOP,
    STATE_EMERGENCY_STOP,
    STATE_HOMMING,
    STATE_RECOVERY,
    STATE_SAFE_STOP2,
    STATE_SAFE_OFF2,
    STATE_RESERVED1,
    STATE_RESERVED2,
    STATE_RESERVED3,
    STATE_RESERVED4,
    STATE_NOT_READY = 15,
    STATE_LAST,
} ROBOT_STATE;