快速入门 | 运动控制器基础轴参数与基础运动控制指令

2025-05-30 14:40:24

一、材料准备与控制器接线参考

1、准备材料

(1)电脑一台,安装ZDevelop V3.10及以上版本软件。

(2)控制器一个,本文选用型号为ZMC432。

(3)24V直流电源1个。

(4)驱动器、电机若干。

(5)控制器接线端子若干。

(6)网线若干。

(7)连接线若干。

(8)输入输出设备、扩展模块、人机界面等根据实际需求选择。

2、控制器接线参考

快速入门 | 运动控制器基础轴参数与基础运动控制指令
快速入门 | 运动控制器基础轴参数与基础运动控制指令

2、ATYPE——轴类型

语法:ATYPE=类型值

设置轴的类型,提供轴类型列表,只能设置为当前轴具备的特性。

在程序初始化的时候就设置好ATYPE,ATYPE若不匹配会导致程序无法正常运行。

支持不同类型的轴混合插补。

例子:


BASE(0,1,2) '主轴为轴0

ATYPE=1,1,1 '按轴列表匹配,设为脉冲轴类型

ATYPE AXIS(4)=3 '轴4设为正交编码器类型

ATYPE(3)=65 '轴3设为ECAT周期位置模式65


快速入门 | 运动控制器基础轴参数与基础运动控制指令

7、SRAMP——加减速曲线

加减速过程S曲线设置,用于平滑加减速。

语法:SRAMP=平滑时间

平滑时间范围:0-250毫秒,设置后加减速过程会延长相应的时间

1)梯形曲线

SRAMP=0,速度曲线为梯形曲线,速度曲线按梯形曲线变化。保持速度、加减速度等参数值不变。

快速入门 | 运动控制器基础轴参数与基础运动控制指令

例子:


RAPIDSTOP(2)

WAIT IDLE(0)

WAIT IDLE(1)

BASE(0,1)

ATYPE=1,1

UNITS=100,100

SPEED=100,100

ACCEL=1000,1000

DECEL=1000,1000

DPOS=0,0

MPOS=0,0

SRAMP(0)=0 '轴0梯形曲线

SRAMP(1)=200 '轴1S形曲线

TRIGGER

MOVE(100) AXIS(0) '轴0运动

MOVE(100) AXIS(1) '轴1运动


快速入门 | 运动控制器基础轴参数与基础运动控制指令

FASTDEC=2000

快速入门 | 运动控制器基础轴参数与基础运动控制指令

11、AXIS——临时轴选择

语法:AXIS(轴号)

AXIS临时修改一个运动指令或轴参数到一个指定轴上去执行,很多指令后方都可以加AXIS参数,在命令行或程序行特别有效。

例子:


PRINT MPOS AXIS(3) '打印轴3的MPOS,等效于PRINT MPOS(3)

PRINT MPOS(4) '打印轴4的MPOS

MOVE(300) AXIS(2) '轴2运动100

REP_DIST AXIS(1)= 100 '设置轴1的坐标循环位置


12、DPOS——轴指令位置

轴的虚拟坐标位置,或称需求位置,单位是UNITS。

此参数常用于监控运动指令的运行情况,写DPOS会自动转换为OFFPOS偏移,仅修改坐标,不会移动电机。

例子:


BASE(0,1)

DPOS=0,100

MOVE(100,0) '第一段

MOVE(-100,-100) '第二段

MOVE(100,0) '第三段,终点(100,0)


快速入门 | 运动控制器基础轴参数与基础运动控制指令

14、MERGE——开启连续插补

语法:MERGE = ON/OFF或1/0

开启连续插补功能,将运动缓冲区前后缓冲的运动连接到一起,使连续的多段插补运动之间不减速,用以提高加工效率。

若不开启连续插补,上一条插补运动完成后,会先减速停止到速度为0,再重新加速执行下一条插补运动。

例子:


BASE(0) '选择轴0

DPOS=0

UNITS=100

SPEED=100

ACCEL=500

DECEL=500

MERGE=ON '打开连续插补

TRIGGER '自动触发示波器

MOVE(100) '第一段运动

MOVE(100) '第二段运动


快速入门 | 运动控制器基础轴参数与基础运动控制指令

   MERGE=OFF

当MERGE设置为ON时,多段插补间仍减速,可能原因如下:

1)可能MERGE并没有设置成功,可以打印查看或在轴参数窗口查看。

2)控制器是点位运动型号,运动功能简单,不支持连续插补。

3)设置了CORNER_MODE拐角减速,打印确认。

4)使用了带SP的运动指令,并设置了ENDMOVE_SPEED,STARTMOVE_SPEED,此时速度由这两条指令确定。

5)多条插补间切换了主轴,主轴速度参数改变。

6)多条插补间加入了MOVE_DELAY运动缓冲中延时指令,即使延时写0,也会导致减速。

三、常用轴参数的输入口设置

快速入门 | 运动控制器基础轴参数与基础运动控制指令

2、映射正/负限位输入

FWD_IN——映射正限位输入

REV_IN——映射负限位输入

分别设置正向/负向硬件限位开关对应的输入点编号,-1无效。

硬限位开关是物理开关元件,由指令映射到相应输入开关信号上。控制器限位信号生效后,会立即停止轴,停止减速度为FASTDEC。

快速入门 | 运动控制器基础轴参数与基础运动控制指令

例子:


BASE(0,1,2,3) '选择轴0,1,2,3

FWD_IN=6,7,8,9 '分别设置正向限位开关

INVERT_IN(6,ON) '反转信号

INVERT_IN(7,ON)

INVERT_IN(8,ON)

INVERT_IN(9,ON)


软件限位用于限制轴的DPOS位置范围,用于软件的安全限位。

FS_LIMIT——正向软限位设置

FS_LIMIT(0)=200 '设置轴0正向软限位200units

RS_LIMIT——负向软限位设置

RS_LIMIT(0)=-300 '设置轴0负向软限位-300units

3、DATUM_IN——映射原点输入

通用输入口设置为原点开关信号,-1无效。

在轴回零过程中此信号输入才生效。

4、ALM_IN——映射报警输入

驱动器告警对应的输入口编号,-1无效。

控制器报警信号生效后,会立即停止轴,停止减速度为FASTDEC。

例子:


BASE(0,1)

DATUM_IN =6 ,7 '将轴0、1原点输入分别定义到输入口6、7

INVERT_IN(6,ON) '把原点信号反转

INVERT_IN(7,ON)

ALM_IN = 10,11 '将轴0、1告警信号分别定义到输入口10、11

INVERT_IN(10,ON) '信号反转

INVERT_IN(11,ON)


快速入门 | 运动控制器基础轴参数与基础运动控制指令

7、映射正/负JOG输入

FWD_JOG——映射正向JOG输入;

REV_JOG——映射负向JOG输入。

正向/负向JOG输入对应的输入口编号,-1无效。

当有正向JOG信号输入时,对应轴按照JOGSPEED速度正向运动。

当有正向JOG信号输入时,对应轴按照JOGSPEED速度负向运动。

正负信号同时有效时,正向运动。

JOGSPEED——JOG速度。

JOG时的速度,单位为units/s。

当REV_JOG/FWD_JOG被设置,对应输入点按下时,并保持当前输入状态,电机将以JOGSPEED慢速运动,输入点松开运动停止。

例子:


BASE(0) '选择轴0

ATYPE=1 '脉冲轴类型

DPOS=0 '坐标清0

UNITS=100 '脉冲当量

SPEED =100 '主轴速度

ACCEL=1000 '加速度

DECEL=1000 '减速度

TRIGGER '自动触发示波器

JOGSPEED=50 'JOG速度50

FWD_JOG=0 'IN0作为正向JOG开关

REV_JOG=1 'IN1作为负向JOG开关

INVERT_IN(0,ON) '反转信号

INVERT_IN(1,ON)


运行效果:

输入0口有信号输入时,轴0正向运行,速度为50。

输入1口有信号输入时,轴0负向运行,速度为50。

输入0、1同时有信号输入时,轴0正向运行。

快速入门 | 运动控制器基础轴参数与基础运动控制指令

IN0无输入时,按下IN1并保持,轴速度为JOGSPEED=200

快速入门 | 运动控制器基础轴参数与基础运动控制指令

轴的运行状态可以通过轴参数窗口监控,或者读取对应指令的返回值判断轴状态。

1、MTYPE——当前运动类型

读取当前正在进行的运动指令类型。只读参数,获取指令返回值查表得出当前轴的运动类型。 

语法:VAR1 = MTYPE

当插补联动时,对从轴总是返回主轴的运动指令类型。

2、NTYPE——下一条运动类型

读取当前正在进行的运动指令后面的第一条指令类型。只读参数,获取指令返回值后查表。

语法:VAR1 = MTYPE

当插补联动时,对从轴总是返回主轴的运动指令类型。

快速入门 | 运动控制器基础轴参数与基础运动控制指令

4、MSPEED——实际反馈速度

轴的测量反馈位置速度,单位是UNITS/S,只读参数。

插补运动时,读取的是各个轴的分速度。

5、VP_SPEED——当前运动速度

回轴当前运动的速度,单位为UNITS/S,只读参数。

当多轴运动时,主轴返回的是插补运动的速度,不是主轴的分速度。非主轴返回的是相应的分速度,与MSPEED效果一致。

VP_SPEED在默认情况下是为显示多轴合成速度设计的,是没有负值的,除非把SYSTEM_ZSET指令的bit0的值设置为0,就可以用来显示单轴的命令速度,可正可负。

例子:


BASE(0,1)

ATYPE=1 ,1

DPOS=0 ,0 '坐标清0

UNITS=100,100 '脉冲当量

SPEED =100,100 '主轴速度

ACCEL=1000,1000 '加速度

DECEL=1000,1000 '减速度

TRIGGER '自动触发示波器

MOVE(100,100) '两轴各运动100


运行效果:

插补运动轴0为主轴,VP_SPEED(0)返回插补运动合成速度。

快速入门 | 运动控制器基础轴参数与基础运动控制指令

五、常用运动控制指令

快速入门 | 运动控制器基础轴参数与基础运动控制指令

2、FORWARD——持续正向运动

语法:FORWARD [AXIS(轴号)]

让轴一直以SPPED的速度正向运动,必须CANCEL后才能切换REVERSE。

3、REVERSE——持续负向运动

语法:FORWARD [AXIS(轴号)]

让轴一直以SPPED的速度负向运动,必须CANCEL后才能切换FORWARD。

例子:


BASE(0) '选择轴0

ATYPE=1 '脉冲轴类型

DPOS=0 '坐标清0

UNITS=100 '脉冲当量

SPEED =100 '主轴速度

ACCEL=1000 '加速度

DECEL=1000 '减速度

TRIGGER '自动触发示波器

FS_LIMIT=200 '设置正向软限位200units

FORWARD AXIS(0) '让轴0一直以SPPED的速度正向运动


快速入门 | 运动控制器基础轴参数与基础运动控制指令

RS_LIMIT=-300 '负向软限位-300

REVERSE AXIS(0) '负向运动

4、DATUM——单轴找原点

语法:DATUM (模式值)

单轴找原点运动,多个轴回零需要多次调用此指令,提供多种模式供选择。

下图模式值加10表示碰到限位后反找, 不会碰到限位停止,例如13=模式3+限位反找10,用于原点在正中间的情况。

下图模式值加100(模式100+n和110+n分别对应n和10+n),ATYPE=4或65,表示接入编码器后可以自动清零MPOS(仅限4系列),其他模式只能手动清零MPOS。

快速入门 | 运动控制器基础轴参数与基础运动控制指令

例子:


BASE(0)

DPOS=0

ATYPE=1

SPEED = 100 '找原点速度

CREEP = 10 '找到原点后反向爬行速度

ACCEL=1000,1000

DECEL=1000,1000

SRAMP=100,100 '加减速平滑

DATUM_IN=5 '输入IN5作为原点开关

INVERT_IN(5,ON) '反转IN5电平信号,常开信号进行反转(ZMC控制器)

TRIGGER '自动触发示波器

DATUM(3)


快速入门 | 运动控制器基础轴参数与基础运动控制指令

模式103:接入真实编码器,轴以SPEED速度正向运行,直到碰到原点开关,然后以CREEP速度反向运动,直到再次回到原点开关的位置停下,此时回零完成,轴的DPOS和MPOS自动置0,若中途碰到限位开关,轴立即停止。

5、CANCEL & RAPIDSTOP——轴停止

语法:CANCEL(模式)/RAPIDSTOP (模式)

CANCEL和RAPIDSTOP 均有四种模式,二者的区别是CANCEL为单轴/轴组停止指令,RAPIDSTOP为停止所有轴。

模式1:CANCEL=CANCEL(0) 取消当前运动,继续取缓冲区指令指令

模式2:CANCEL(1) 取消缓冲区的运动,当前运动仍然要执行完

模式3:CANCEL(2) 取消当前运动和缓冲区的运动,轴立即停止

模式4:CANCEL(3) 立即中断脉冲的发送

模式2减速度按FASTDEC快减速和DECEL减速度中最大的值,使用指令之后要调用绝对位置运动,必须先WAIT IDLE 等待停止完成。

加上轴号停止目标轴CANCEL AXIS(1),当想要让电机快速停止时,建议使用RAPIDSTOP(2) 或CANCEL(2)。

使用CANCEL指令停止插补运动中的主轴或者BASE轴列表中的任意一个轴,都会停止轴组的插补运动。

例子:  


BASE(0)

DPOS=0

SRAMP=0

ATYPE=1

UNITS=100

SPEED=500

ACCEL=1000

DECEL=1000 '减速度

FASTDEC=10000 '快减速

TRIGGER

MOVE(1000) '当前运动

MOVE(-1000) '缓冲运动

'DELAY(1000) '延时

CANCEL(0)


以CANCEL指令为例,四种模式执行效果如下图。

快速入门 | 运动控制器基础轴参数与基础运动控制指令

CANCEL(1)取消缓冲运动

快速入门 | 运动控制器基础轴参数与基础运动控制指令

CANCEL(3)中断脉冲发送

6、MOVE——直线插补

语法:MOVE(distance1 [,distance2 [,distance3 [,distance4...]]])

单轴直线运动或多轴直线插补运动,相对运动距离。绝对直线插补用MOVEABS指令。

插补是一个实时进行的数据密化的过程,根据给定的信息进行数字计算,不断计算出参与运动的各个坐标轴的进给量,分别驱动各自相应的执行部件产生协调运动,以使被控机械部件按理想的路线与速度移动。

插补运动时只有主轴速度参数有效,主轴是BASE的第一个轴,运动参照这个轴的参数,插补运动指令进入主轴的运动缓冲区。

支持不同类型的轴混合插补。

插补运动距离:

快速入门 | 运动控制器基础轴参数与基础运动控制指令

插补运动主轴为轴0,DPOS(0)、DPOS(1)各轴运动距离,MSPEED(0)、MSPEED(1)分轴速度,VP_SPEED(0)主轴的合成速度。

快速入门 | 运动控制器基础轴参数与基础运动控制指令

MOVECIRC(200,0,100,0,1)'半径100顺时针画半圆

快速入门 | 运动控制器基础轴参数与基础运动控制指令

MOVECIRC2(100,100,200,0)'半径100顺时针画半圆

快速入门 | 运动控制器基础轴参数与基础运动控制指令

MOVECIRC2(100,-100,200,0)'半径100逆时针画半圆

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢