今天分享一下运动控制器轴回零的配置与实现。本文主要介绍控制器提供的回零模式,驱动器自身的回零模式我们将在下篇为大家讲解。
01 轴回零
一、回零说明
在高精度自动化设备上都有自己的参考坐标系,工件的运动可以定义为在坐标系上的运动,坐标系的原点即为运动的起始位置,各种加工数据都是以原点为参考点计算的。
所以启动控制器执行运动指令之前,设备都要进行回零操作,回到设定的参考坐标系原点,若不进行回零操作,会导致后续运动轨迹错误。
正运动控制器提供了多种回零方式,通过DATUM单轴回零指令设置,不同模式值选择不同的回零方式,各轴按照设置回零的方式自动回零。
DATUM指令为单轴回零指令,每次作用在一个轴上,多轴回零时,需要对每个轴都使用DATUM指令回零。
回零时机台需要接入原点开关(指示原点的位置的到位传感器)和正负限位开关(均为传感器,传感器检测到信号后,表示有输入信号,传给控制器处理)。
单轴找原点时,原点开关通过DATUM_IN设置,正负限位开关分别通过FWD_IN和REV_IN设置。控制器正/负限位信号生效后,会立即停止轴,停止减速度为FASTDEC。
设备回零方式有控制器回零和伺服参数回零。
控制器回零是把零点位置传感器连接到运动控制器上,控制器通过搜索零点传感器位置回零点。本文主要介绍控制器提供的回零模式。
伺服参数回零是将零点传感器连接到伺服驱动器上,控制器通过发送命令给伺服驱动器,伺服驱动器进行回零的操作。驱动器自身的回零模式请参考下篇。
二、回零相关指令
运动控制器回零常用的相关指令如下表所示。
命令 | 含义 | 说明 |
DATUM | 回原点指令 | 单轴找原点运动 |
DATUM_IN | 映射原点开关信号 | 通用输入口设置为原点开关信号,-1无效 |
SPEED | 运动速度 | 找原点开关的速度 |
CREEP | 反向爬行速度 | 轴回零时的反向爬行速度 |
HOMEWAIT | 回零反找延时 | 回原点运动,当反找时要等待一定时间 |
FWD_IN | 映射正限位输入 | 正向限位开关,限制轴的行程范围 |
REV_IN | 映射负限位输入 | 负向限位开关,限制轴的行程范围 |
INVERT_IN | 输入信号电平反转 | 根据实际的光电开关常开常闭确定 |
AXISSTATUS | 轴状态 | 查看轴当前的状态 |
1.回零指令DATUM
DATUM是运动控制器的回零指令,相关回零搜索模式很多,根据当前轴所处的位置或效率要求选择合适的模式,DATUM指令指令后轴开始运动,搜寻原点信号,遇到原点信号后自行停止,将当前的位置清零,回零成功,详情参见下节说明。
语法:DATUM(模式)
2.映射原点输入DATUM_IN
运动控制器原点开关的设置,对应输入口IN信号。
语法:DATUM_IN = 输入口编号,-1取消映射
对于ZMC系列的控制器,由于输入OFF时认为有信号输入(ECI系列控制器与之相反),原点和正负限位开关等特殊信号映射完成需要INVERT_IN反转输入信号。
3.回零速度SPEED、CREEP
回零运动中为了更精确的找到零点,会使用爬行速度CREEP和轴运行速度SPEED来进行原点搜寻,SPEED设置相对大一些,用于快速搜寻原点开关的位置,CREEP一般为较小值,爬行到原点开关处停止,回零成功。
语法:SPEED = 数值
语法:CREEP = 数值
4.正负限位FWD_IN、REV_IN
硬限位开关是限制轴的最大“允许行进范围”的限位开关。硬限位开关是物理开关元件,硬限位开关由指令映射到相应输入开关信号上,根据开关信号是常开还是常闭确定是否要对信号进行翻转,设置完成后,碰到硬限位开关,对应轴立即停止运动,停止减速度为FASTDEC。
软限位开关将限制轴的“工作范围”,由指令直接设置限位位置,轴走到设置位置后立即采用减速度FASTDEC停止运动,它们应位于机床限制行进范围的相关硬限位开关的内侧。由于软限位开关的位置较为灵活,因此可根据当前的运行轨迹和具体要求调整轴的工作范围。
工作台碰到限位开关或者规划位置超越软限位时,运动控制器紧急停止工作台的运动。限位触发以后,轴无法继续运动,此时需要调整轴的位置,使其远离限位位置才能重新开始运动。
轴在碰到限位的时候才会产生停止信号,此时由于减速需要一定的时间,实际轴的位置会越过限位一定距离,假设停止时SPEED速度是v0,快减速FASTDEC为a,计算公式:
(vt)2-(v0)2=2as
带入下方数据:0-1002=2*(-1000)*s,得出减速的距离s=5,由此可得,增大FASTDEC和减小SPEED都能达到减小减速距离的目的,以防止过冲。
语法:
FWD_IN = 输入口编号,-1取消映射
REV_IN = 输入口编号,-1取消映射
5.回零反找延时HOMEWAIT
对脉冲方式的伺服驱动器,部分回零模式碰到原点信号之后停止,由于找原点SPEED速度较快产生过冲,停止之后需延时之后在CREEP速度反向找原点,控制器默认值为延时2ms。
需要运行更平稳的场合可适当增加反找延时。
语法:HOMEWAIT=数值(毫秒单位)
6.轴状态AXISSTATUS
查看轴当前的状态,可以查询控制器是否处于回零状态,遇到限位开关或软件限位将会产生报警提示。 AXISSTATUS的值对应的说明如下,同时发生多种错误,用组合值表示。
位 | 说明 | 打印值 | |
1 | 随动误差超限告警 | 2 | 2h |
2 | 与远程轴通讯出错 | 4 | 4h |
3 | 远程驱动器报错 | 8 | 8h |
4 | 正向硬限位 | 16 | 10h |
5 | 反向硬限位 | 32 | 20h |
6 | 找原点中 | 64 | 40h |
7 | HOLD速度保持信号输入 | 128 | 80h |
8 | 随动误差超限出错 | 256 | 100h |
9 | 超过正向软限位 | 512 | 200h |
10 | 超过负向软限位 | 1024 | 400h |
11 | CANCEL执行中 | 2048 | 800h |
12 | 脉冲频率超过MAX_SPEED限制.需要修改降速或修改MAX_SPEED | 4096 | 1000h |
14 | 机械手指令坐标错误 | 16384 | 4000h |
18 | 电源异常 | 262144 | 40000h |
19 | 精准输出缓冲溢出 | 524288 | 80000h |
21 | 运动中触发特殊运动指令失败 | 2097152 | 200000h |
22 | 告警信号输入 | 4194304 | 400000h |
23 | 轴进入了暂停状态 | 8388608 | 800000h |
打印信息如下:表示在轴0回零过程中碰到正向限位开关后停止轴运动,并打印轴状态报警提示,解除报警可以将轴反向运动,离开限位开关即可。
Axis:0 AXISSTATUS:50h,FWD 如下图,可通过轴状态窗口实时的监控AXISSTATUS。
三、回零模式详解
语法:DATUM(模式)
模式 | 描述 |
0 | 清除所有轴的错误状态 |
1 | 轴以CREEP速度正向运行直到Z信号出现,碰到限位开关会直接停止,DPOS值重置为0同时纠正MPOS。 |
2 | 轴以CREEP速度反向运行直到Z信号出现,碰到限位开关会直接停止,DPOS值重置为0同时纠正MPOS。 |
3 | 轴以SPEED速度正向运行,直到碰到原点开关,然后轴以CREEP速度反向运动直到离开原点开关。找原点阶段碰到正限位开关会直接停止,爬行阶段碰到负限位开关会直接停止,DPOS值重置为0同时纠正MPOS。 |
4 | 轴以SPEED速度反向运行,直到碰到原点开关,然后轴以CREEP速度正向运动直到离开原点开关。找原点阶段碰到负限位开关会直接停止,爬行阶段碰到正限位开关会直接停止。DPOS值重置为0同时纠正MPOS。 |
5 |
轴以SPEED速度正向运行,直到碰到原点开关,然后轴以CREEP速度反向运动直到离开原点开关,然后再继续以爬行速度反转直到碰到Z信号。碰到限位开关会直接停止, DPOS值重置为0同时纠正MPOS。 |
6 |
轴以SPEED速度反向运行,直到碰到原点开关,然后轴以CREEP速度正向运动直到离开原点开关,然后再继续以爬行速度正转直到碰到Z信号。碰到限位开关会直接停止。 DPOS值重置为0同时纠正MPOS |
8 | 轴以SPEED速度正向运行,直到碰到原点开关,碰到限位开关会直接停止。 |
9 | 轴以SPEED速度反向运行,直到碰到原点开关,碰到限位开关会直接停止。 |
21 |
使用EtherCAT驱动器回零功能,此时mode2有效。 设置驱动器回零方式(6098h),缺省0表示使用驱动器当前的回零方式。会使用轴的SPEED, CREEP, ACCEL, DECEL,乘以UNITS后自动设置驱动器的 6099h,609Ah 动作时序:6098回零方式→6099速度→609A加速度→6060切换当前模式。 |
表的模式+10(10+n)表示碰到限位后反找,不会碰到限位停止,例如DATUM(13) = DATUM(3+10),使用DATUM(13)的回零方式,碰到正限位后不停止,而是反向运行,多用于原点在正中间的情况。
表的模式+100(模式100+n和110+n分别对应n和10+n),表示回零成功之后,自动清零MPOS,例如DATUM(103)、DATUM(113),适用于ATYPE=4,接入编码器后可以自动清零MPOS(仅限4系列),其他的模式自动清零DPOS,MPOS需要手动清零。
02 控制器回零模式
下面以上表最基础的几种模式展开详细讲解。 纵轴V为运动速度,横轴S为相对运动起始点的距离。
1.回零模式1
DATUM(1)轴以CREEP速度正向运行,直到Z信号出现后开始减速,停止后所处位置为零点,此时将DPOS值重置为0,回零途中若碰到限位开关会直接停止。
回零模式2与模式1找原点运动方向相反。
2.回零模式3
DATUM(3)轴以SPEED速度快速正向运行,直到碰到原点开关后开始减速,减速到0之后再反向以CREEP速度找原点,再次碰到原点之后减速停止,轴停止之后将DPOS值重置为0,当前所处位置为零点,回零途中若碰到限位开关会直接停止。 回零模式4与模式3找原点运动方向相反。
3.回零模式5
DATUM(5)轴以SPEED速度快速正向运行,直到碰到原点开关后开始减速,减速到0之后再反向以CREEP速度运动,直到Z信号出现之后减速停止,遇到Z信号立即减速停止,停止的位置为零点,将DPOS值重置为0,回零途中若碰到限位开关会直接停止。
回零模式6与模式5找原点运动方向相反。
4.回零模式8
DATUM(8)轴以SPEED速度快速正向运行,直到碰到原点开关后开始减速,减速到0之后便将DPOS值重置为0,停止后所处位置为零点,回零途中若碰到限位开关会直接停止。
回零模式9与模式8找原点运动方向相反。
5.回零模式13
DATUM(13)轴以SPEED速度快速正向运行,若先碰到限位开关,不会报警停止,以SPEED速度反向找原点,遇到原点信号后减速为CREEP直到离开原点开关立即停止,回零成功,位置清零;若先碰到原点信号,则与模式3相同。
回零模式14与模式13找原点运动方向相反。
03 控制器回零方式
1.模式3单轴回零示例:
BASE(0) DPOS=0 ATYPE=1 SPEED = 100 '找原点速度 CREEP = 10 '找到原点后反向爬行速度 ACCEL=1000 DECEL=1000 SRAMP=100 '加减速平滑 DATUM_IN=0 '输入IN0作为原点开关 INVERT_IN(0,ON) '反转IN0电平信号,常开信号进行反转 TRIGGER '自动触发示波器 DATUM(3) '模式3回零方式运行效果如下图:
正在找原点时轴状态AXISSTATUS显示40h,回零成功变为0h。
如下图,轴0以SPEED = 100的速度正向运行,直到碰到原点开关信号IN(0),然后以CREEP = 10的速度反向运动,直到再次离开原点开关的位置时停下,此时回零完成,轴的DPOS自动置0,若中途碰到限位开关,轴立即停止。
2.DATUM(13)模式,对比DATUM(3),碰到限位开关轴不停止,而是反向找原点,如下示例:
BASE(0) DPOS=0 ATYPE=1 SPEED = 100 '找原点速度 CREEP = 10 '找到原点后反向爬行速度 ACCEL=1000 DECEL=1000 SRAMP=100 '加减速平滑 DATUM_IN=0 '输入IN0作为原点开关 FWD_IN=1 '输入IN1作为正限位开关 INVERT_IN(0,ON) '反转IN0电平信号,常开信号进行反转 INVERT_IN(1,ON) '反转IN1电平信号,常开信号进行反转 TRIGGER '自动触发示波器 DATUM(13) '模式3回零方式
运行效果如下图:
正在找原点时轴状态AXISSTATUS显示40h,回零成功变为0h,原点开关和限位开关的映射也可在轴参数窗口查看。
如下图,轴0以SPEED = 100的速度正向运行,碰到正向限位开关IN(1),开始反向找原点开关信号,直到碰到原点开关信号IN(0),然后以CREEP = 10的速度反向运动,直到再次离开原点开关的位置时停下,此时回零完成,轴的DPOS自动置0。
审核编辑:刘清
评论
查看更多