설정하기


스텝모터 제어에 관련된 각각의 파라미터들을 설정하기 위한 명령어는 set입니다.

드라이브 모드 설정

드라이브 모드를 설정하는 명령어는 mode입니다.

"set mode (drive)"

drive에 드라이브 모드를 입력해야 하며, PES-2403은 다음 2가지 드라이브 모드를 제공합니다.

drive 설명
full Full-step(2상 여자)
half Half-step
spc_request_dev($sid, "set mode full");
spc_request_dev($sid, "set mode half");

제한전류 설정

제한전류를 설정하는 명령어는 vref입니다. 이 설정은 모터를 제어하기 위해 반드시 필요합니다.

"set vref (state) (value)"

state는 제한전류 설정이 필요한 다음 3가지 상태를 의미합니다.

state 설명
stop 정지 상태를 유지할 때의 제한전류
drive 동작할 때의 제한전류
lock 잠금 상태를 유지할 때의 제한전류

value는 제한전류의 양을 의미하며 각 상태별로 0 ~ 15까지 총 16단계로 설정할 수 있습니다.
이 값에 5를 설정하면 해당 상태에서의 전류를 5/15로 제한합니다.

  • 제한전류 설정 예
spc_request_dev($sid, "set vref stop 2");
spc_request_dev($sid, "set vref drive 8");
spc_request_dev($sid, "set vref lock 0");

공진 범위 설정

공진 범위를 설정하는 명령어는 rsnc입니다.

"set rsnc (low_pps) (high_pps)"

low_ppshigh_pps는 공진 범위 최소값과 최대값을 각각 의미합니다. 공진 범위를 설정하면 회전속도가 공진 범위 안에 해당할 때 자동으로 high_pps에 설정된 속도로 제어합니다.

  • 공진 범위 설정 예
spc_request_dev($sid, "set rsnc 120 250");

회전속도 설정

스텝모터의 회전속도를 설정하는 명령어는 speed입니다. 이 명령어는 모터를 제어하기 전에 회전속도만 따로 설정하고자 하는 경우에 사용합니다.

"set speed (pps)"

pps는 회전속도를 의미합니다. 회전속도의 단위는 pps(pulse per second)이며, PES-2403은 최대 20,000[pps]까지 지원합니다. 그러나 실제 최대속도는 스텝모터의 종류/전압/부하에 따라 달라질 수 있습니다.

  • 회전속도 설정 예
spc_request_dev($sid, "set speed 400");

가속도 및 감속도 설정

스텝모터의 가속도 및 감속도를 설정하는 명령어는 accel입니다. 이 명령어는 모터를 제어하기 전에 가속도 및 감속도만 따로 설정하고자 하는 경우에 사용합니다.

"set accel (accel) [decel]"

accel은 가속도를, decel은 감속도를 의미합니다. 이 명령에서 가속도(accel)는 반드시 입력해야 하지만 감속도(decel)는 생략이 가능합니다. 감속도를 입력하지 않으면 가속도에 입력한 값이 감속도에 자동으로 설정됩니다.
가속도의 단위는 pps/s(pps per second)이며, PES-2403은 최대 200,000[pps/s]까지 지원합니다.

  • 가속도 설정 예
spc_request_dev($sid, "set accel 1000"); // "set accel 1000 1000"과 같음
spc_request_dev($sid, "set accel 1000 0");
spc_request_dev($sid, "set accel 0 1000");

카운터 위치 설정

카운터 위치를 설정하는 명령어는 pos입니다. 카운터 위치 설정은 goto로 스텝모터를 제어할 때만 유효하고 move로 제어하는 경우 반영 되지 않습니다.

"set pos (pos)"

pos는 카운터의 위치를 의미합니다.
카운터 위치는 부호가 있는 32비트 정수 형태이고, 입력 가능한 범위는 -1000000000(10억) ~ +1000000000입니다.

  • 카운터 위치 설정 예
spc_request_dev($sid, "set pos 400");

디지털 입력포트 설정

디지털 입력포트를 설정하기 위한 명령어는 eio set입니다.

"eio set (p) mode (mode)"

p는 디지털 입력포트의 아이디를 의미하며 0, 1, 2 또는 3중 하나를 입력합니다.
mode는 디지털 입력포트의 입력모드를 의미합니다.

mode 설명
input 일반입력 모드
lock 제어잠금 모드
  • 디지털 입력포트 설정 예: 일반입력 모드
spc_request_dev($sid, "eio set 0 mode input");
spc_request_dev($sid, "eio set 1 mode input");
spc_request_dev($sid, "eio set 2 mode input");
spc_request_dev($sid, "eio set 3 mode input");
  • 디지털 입력포트 설정 예: 제어잠금 모드
spc_request_dev($sid, "eio set 0 mode lock");
spc_request_dev($sid, "eio set 1 mode lock");
spc_request_dev($sid, "eio set 2 mode lock");
spc_request_dev($sid, "eio set 3 mode lock");