加工中心刀具破损监测的一种实现方法
2023-8-25 来源:北京工研精机股份有限公司 作者:肖 博 刘贺强 戴玉红 吴同宣 于光旭
【摘要】 针对具体的刀具,在正常加工工况下充分采集主轴电机的负载值并进行预设,形成针对所有刀具的主轴电机负载表,即数据表,进而可得极限负载值。在实际加工过程中,用读取的实际负载值和极限负载值进行比较,判断刀具是否破损。
一、问题的提出
刀具的破损主要表现为:刀具的磨损、崩刃和折断。加工中,如果刀具出现破损,则会对加工效率和加工质量造成一定程度的影响。比如,工件的加工精度降低、表面粗糙度增大、切削温度升高、切削振动、切削负载增大、无吃刀等。针对这种情况,希望能及时的进行监测,以便于操作者可以及时地采取相应的措施。
有统计表明,机床停机时间的 20%是由刀具的破损引起的 [1]。研究表明,准确可靠的在线监测系统可增加切削速度 10%~50%,总的加工成本可以节省 10%~40%[2]。这往往需要增加相关传感器,数据的分析处理设备,并且涉及到安装和维护,这意味着增加成本和调试难度。
本文提出了一种基于主轴电机负载的刀具破损监测方法。该方法充分挖掘应用数控系统中的特征数据,无需额外增加硬件设备,具备较高精度,可以满足通常的使用需求。文章以FANUC 0i-MF数控系统为例进行介绍。
针对具体的刀具,在正常加工工况下充分采集主轴电机的负载值,并将采集到的数据写到指定的地址中,形成针对所有刀具的主轴电机负载表,简称为数据表。通过数据表进而可得极限负载值,包括上极限负载值和下极限负载值。在实际加工过程中,读取的主轴电机实际负载值,并和上、下极限负载值进行比较,进而判断刀具是否破损。刀具破损和主轴电机负载的关系简化为[3]:
(1)刀具磨损或崩刃后,电流的最大值增大,负载会明显增大。
(2)刀具折断常常有完全折断和部分折断两种:①完全折断:电流和空运行一样,电流很小,负载很小;②部分折断:接触工件前,和空运行一样,负载很小;接触工件后,和崩刃相似,负载明显增大。该方案的技术路线如图1所示。
图1 技术路线
二、负载预设的实现
当加工内容、刀具的规格与型号、加工的工艺参数(比如主轴转速、进给速度、吃刀量…)等确定之后,便可以进行负载的预设。为了方便描述,本文以1号刀具为例进行说明。选择预设模式。在切削加工条件下,当主轴转速到达以后,每隔一秒进行一次主轴电机负载数据的采集,并将采集到的数据写到以D2000为首地址的数据表中。即便此时刀具没有破损现象, 主轴电机负载处于正常状态,但是也可能由于材质不均等其他外部因素,导致负载会在一定范围内波动。因此,负载数据的采集工作通常需要在多次切削加工中重复进行,力求采样数据充分完备,如图2流程所示。
图2 负载预设流程图
1.负载预设模式
为了方便操作,在机床操作面板上设计了“预设”按键。按一下该按键,按键灯亮,即进入预设模式;再按一下按键,按键灯灭,即进入到了正常的监测模式。这里选择预设模式。
2.采集实际负载值
采集的实际负载值为当前加工状态主轴电机的负载值。FANUC系统提供了一种可以对CNC的数据进行读写的功能指令——窗口功能。这里用来读取“主轴电机的负载值”。应用时,需要对该功能指令的输入数据进行设置,数据结构如图3所示[4],其中,读取主轴电机负载信息时,对应的功能代码是“153”;数据数N为0,表示读取第一主轴负载;数据属性为0。采集到的实际负载值存储在数据区R2010中,负载值为无符号的二进制数,占用2个字节。梯形图如图4所示。
图3 读取主轴电机负载值时的输入数据结构
图4 窗口功能读取
3.负载预设过程
无论是读数据,还是写数据,都要用到数据表。数据表的实质是规划的一片D地址区域,这里的D地址用来存储负载值,该负载值是主轴电机负载,且对应于主轴刀号。表容量、首地址、表内号是数据表常用的概念。
①表容量: 这里数据表的表容量存储在D0006中,设置24。用D地址来存储表容量,这样即使梯形图在写入ROM后依然可以快速改变表容量。
②首地址 :这里数据表的首地址为D2000,每个负载值占用2个字节,数据表D地址范围为D2000~D2044。
③表内号: 数据表的表内号从0开始,这里表内号范围为0~23。 “表内号-主轴刀号-采样值存储D地址”之间的对应关系见表1。
表1 数据表-预设前
(1)读数据
指从数据表中读取相应刀具的主轴电机负载值,基于表内号来进行。应用功能指令XMOVB[4]。1号刀具对应表内号0,因此,将D0015=0时对应负载值(初次读取时负载值为0)读到R2100。
(2)比较数据
指用R2100和读取的实际负载值R2010进行比较,所用的功能指令为COMPB[4]: 二进制数据大小判别。该指令可比较1、2、4字节长的二进制数据之间的大小,比较结果存放在运算结果寄存器(R9000)中。
当数据表中对应的负载值R2100大于读取的实际负载值R2010时,R9000.1=0。
当数据表中对应的负载值R2100小于读取的实际负载值R2010时,R9000.1=1。
此时1号刀具对应R2100=0, 实际负载值R2010=4011,可得 R9000.1=1。
(3)写数据
R9000.1=0时, 数据表不被更新。
R9000.1=1时, 数据表会被更新。
这里的更新,即写数据,将读取的实际负载值写入数据表对应的地址,应用功能指令XMOVB[4]。这里,1号刀具对应的实际负载数据为R2010=4011,且R9000.1=1,表内号D0015=0,对应的数据表地址为D2000,见表2。
表2 数据表-写数据
同样的道理,对其他刀具进行负载采集,并且往往需要进行多次加工循环的重复地、充分地采集,梯形图如图5所示,最终形成的数据见表3。其中,数据表中为0的数据,表示相应的刀具号在加工程序中没有用到。
至此,负载预设完成。退出负载预设模式,进行负载监测。
图5负载预设模式
表3 数据表-预设完成
三、负载监测模式
切削状态下,当主轴转速到达以后,读取主轴电机的实际负载值,使之与极限负载值进行实时的比较,负载监测过程的流程图如图6所示。
图6 负载监测流程图
1.极限负载值
极限负载值包括上限负载值和下限负载值。下限负载值为设定在D2100中的固定值,通常,该值大于任一把刀具空切削时的负载值,且小于每把刀具正常切削时的负载值,比如设置为500。
上限负载值=预设值×上限因子其中,上限因子是人为设计的参数。这里应用功能指令DIVB和MULB[4]。参数号:D2148设定单位:%设定范围:100~32767比如,负载因子设置值为120时,表示上限负载值为预设负载值的120%。执行T1M6之后,1号刀具交换到了主轴。读取预设值后,R2100=4540。那么,对于1号刀具而言,由PLC计算上限负载值: R2104=4540×120%=5400
2.刀具破损监测
对主轴电机的实际负载值R2010和上、下限负载值进行实时的比较。
若实际负载值R2010大于上限负载值R2104,或小于下限负载值D2100,且超过设置时间后,则认为刀具出现破损情况,进入进给保持模式,且显示报警信息:
OPM170 刀具破损此时,检查刀具。负载监测模式下的梯形图如图7所示。
图7 负载监测模式
四、应用展望
该方案不需用额外地增加其他任何硬件设备,在一定意义上说,实现了项目“零成本”。功能思路清晰、操作性强,人机交互友好,可以有效地应对由于加工中的刀具破损对加工效率和质量造成的不良影响。这对于合理地组织生产,科学地使用机床,提高机床的智能化水平,具有积极的意义。
目前,该方法已成功地应用于我公司立卧式加工中心,也可以拓展应用到车削中心中来。本文是基于FANUC数控系统0i-MF为例进行介绍的,对于其他厂家的数控系统,也可做参考。
投稿箱:
如果您有机床行业、企业相关新闻稿件发表,或进行资讯合作,欢迎联系本网编辑部, 邮箱:skjcsc@vip.sina.com
如果您有机床行业、企业相关新闻稿件发表,或进行资讯合作,欢迎联系本网编辑部, 邮箱:skjcsc@vip.sina.com
更多相关信息