手轮就是一个编码器,通常用来对点校准工件位置坐标。手轮运动就是类似与机械齿轮传动的运动, 通过不同的比例线性运动。
示例代码:
ERRSWITCH = 3 '全部信息输出
CONST AXISHAND = 0
BASE(AXISHAND) '选择第 0 轴接手轮
ATYPE=6 '脉冲+方向的手轮,正交输入手轮使用 3
BASE(1) '轴 1 被手轮控制
ATYPE=1 '步进
DPOS = 0
UNITS = 100 '脉冲当量,每 mm100 脉冲
SPEED = 200
ACCEL = 3000
DECEL = 3000
SRAMP = 20
CLUTCH_RATE = 0 '采用速度加速度来进行限制
DIM POSLAST '记录上一个位置变量
POSLAST = DPOS
WHILE 1 '手动选择手轮连接倍率
IF IN(0) = ON AND IN(1) = OFF THEN
CONNECT(1, AXISHAND) '链接到轴 0, 倍率 1
ELSEIF IN(1) = ON AND IN(0) = OFF THEN
CONNECT(10, AXISHAND) '链接到轴 0, 倍率 10
ELSEIF IN(0)= ON AND IN(1) = ON THEN
CONNECT(50, AXISHAND) '链接到轴 0, 倍率 50,对步进,倍率太高会出现丢步或长时间才 能结束
ELSEIF MTYPE = 21 THEN '取消
CONNECT CANCEL
ENDIF IF
POSLAST <> DPOS THEN
POSLAST = DPOS
TRACE DPOS
ENDIF
WEND
END
楼主最近还看过