设定有关控制步进电机的相关参数的命令是set。
设定电机控制器Ⅱ的分割率命令是mode。
"set mode (division)"
在division中需要输入下面中的一个。
division | 说明 |
---|---|
1 | Full-step |
2 | Half-step |
4 | 1/4-step |
8 | 1/8-step |
16 | 1/16-step |
32 | 1/32-step |
spc_request_dev($sid, "set mode 1");
spc_request_dev($sid, "set mode 2");
spc_request_dev($sid, "set mode 4");
spc_request_dev($sid, "set mode 8");
spc_request_dev($sid, "set mode 16");
spc_request_dev($sid, "set mode 32");
设定限制电流的命令是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_pps和high_pps分别代表共振范围的最小值和最大值。 设定共振范围,当旋转速度在共振范围内时,自动按high_pps上设定的速度控制。
spc_request_dev($sid, "set rsnc 120 250");
设定步进电机的旋转速度的命令是speed。 此命令在计划控制电机前,只设定旋转速度时使用。
"set speed (pps)"
pps指旋转速度。 旋转速度的单位是pps(pulse per second),PES-2405最大支持20,000[pps]。 但实际最大速度根据步进电机的种类/电压/负荷会不同。
当设定旋转速度时,在设定值后面加k,支持1000倍比例。 如,1000和1k指的是一样的值。
spc_request_dev($sid, "set speed 400");
spc_request_dev($sid, "set speed 4k"); // the same result with "set speed 4000"
设定步进电机的加速及减速的命令是accel。 此命令在控制电机前,单独设定加速及减速时候使用。
"set accel (accel) [decel]"
accel指加速度decel指减速。在此命令必须输入加速,但减速可以省略。 如果不输入减速,在加速中输入的值将自动设定在减速中。 加速度的单位是pps/s(pps per second)和PES-2405最多支持2,400,000[pps/s]。
当设定加速度或减速度时,在设定值后面加k,支持1000倍比例。 如,1000和1k指的是一样的值。
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 1k"); // the same result with "set accel 0 1000"
spc_request_dev($sid, "set accel 1k 2k");
设定计时位置的命令是pos。 计数位置设定只有通过goto控制步进电机时有效,通过move控制的情况不会被反应。
"set pos (pos)"
pos指计数位置。 计数位置是具有符号的32位整数形态,可输入的范围是 -1000000000(1 billion) 和+1000000000。
当设定计数位置时,在设定值后面加k,支持1000倍比例。 如,1000和1k指的是一样的值。
spc_request_dev($sid, "set pos 400");
spc_request_dev($sid, "set pos 80k"); // the same result with "set pos 80000"
为了设定数字输入端口的命令是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");