设定


为了设定有关控制步进电机的相关参数命令是set

设定驱动模式

设定驱动模式命令是mode

"set mode (drive)"

drive上需要输入驱动模式, PES-2403提供如下2个驱动模式。

驱动 说明
full Full-step(two phases on)
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指减速。在此命令必须输入加速,但减速可以省略。 如果不输入减速,在加速中输入的值将自动设定在减速中。 加速度的单位是pps/s(pps per second)和PES-2403最多支持200,000[pps/s]。

  • 加速度设定例子
spc_request_dev($sid, "set accel 1000"); // the same result with "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(1 billion)至+1000000000。

  • 计数位置设定 例
spc_request_dev($sid, "set pos 400");

设定数字输入端口

为了设定数字输入端口的命令是eio set

"eio set (p) mode (mode)"

p代表数字输入端口的账号,输入0, 1, 2或3中的一个。 mode指数字输入端口的输入模式。

mode 说明
input normal input
lock control 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");