加工中心刀具破损监测的一种实现方法
2025-4-11 来源: 北京工研精机股份有限公司 作者: 肖 博 刘贺强
一、问题的提出
刀具的破损主要表现为 : 刀具的磨损、崩刃和折断。加工中,如果刀具出现破损,则会对加工效率和加工质量造成一定程度的影响。比如,工件的加工精度降低、表面粗糙度增大、切削温度升高、切削振动、切削负载增大、无吃刀等。针对这种情况,希望能及时的进行监测,以便于操作者可以及时地采取相应的措施。
有统计表明,机床停机时间的 20% 是由刀具的破损引起的。研究表明,准确可靠的在线监测系统可增加切削速度 10%~50%,总的加工成本可以节省 10%~40%。这往往需要增加相关传感器,数据的分析处理设备,并且涉及到安装和维护,这意味着增加成本和调试难度。
本文提出了一种基于主轴电机负载的刀具破损监测方法。该方法充分挖掘应用数控系统中的特征数据,无需额外增加硬件设备,具备较高精度,可以满足通常的使用需求。文章以 FANUC0i-MF 数控系统为例进行介绍。
针对具体的刀具,在正常加工工况下充分采集主轴电机的负载值,并将采集到的数据写到指定的地址中,形成针对所有刀具的主轴电机负载表,简称为数据表。通过数据表进而可得极限负载值,包括上极限负载值和下极限负载值。在实际加工过程中,读取的主轴电机实际负载值,并和上、下极限负载值进行比较,进而判断刀具是否破损。刀具破损和主轴电机负载的关系简化为 :
(1)刀具磨损或崩刃后,电流的最大值增大,负载会明显增大。
(2)刀具折断常常有完全折断和部分折断两种 : ①完全折断 : 电流和空运行一样,电流很小,负载很小 ; ②部分折断 : 接触工件前,和空运行一样,负载很小 ; 接触工件后,和崩刃相似,负载明显增大。
该方案的技术路线如图 1 所示。

图 1 技术路线
二、负载预设的实现
当加工内容、刀具的规格与型号、加工的工艺参数(比如主轴转速、进给速度、吃刀量…)等确定之后,便可以进行负载的预设。为了方便描述,本文以 1 号刀具为例进行说明。
选择预设模式。在切削加工条件下,当主轴转速到达以后,每隔一秒进行一次主轴电机负载数据的采集,并将采集到的数据写到以 D2000 为首地址的数据表中。即便此时刀具没有破损现象 ,主轴电机负载处于正常状态,但是也可能由于材质不均等其他外部因素,导致负载会在一定范围内波动。因此,负载数据的采集工作通常需要在多次切削加工中重复进行,力求采样数据充分完备,如图 2 流程所示。

图 2 负载预设流程图
1.负载预设模式
为了方便操作,在机床操作面板上设计了 “预设” 按键。按一下该按键,按键灯亮,即进入预设模式 ; 再按一下按键,按键灯灭,即进入到了正常的监测模式。这里选择预设模式。
2.采集实际负载值
采集的实际负载值为当前加工状态主轴电机的负载值。FANUC 系统提供了一种可以对 CNC的数据进行读写的功能指令——窗口功能。这里用来读取 “主轴电机的负载值”。应用时,需要对该功能指令的输入数据进行设置,数据结构如图 3 所示,其中,读取主轴电机负载信息时,对应的功能代码是 “153” ; 数据数 N 为 0,表示读取第一主轴负载 ; 数据属性为 0。采集到的实际负载值存储在数据区 R2010 中,负载值为无符号的二进制数,占用 2 个字节。梯形图如图 4 所示。
3.负载预设过程
无论是读数据,还是写数据,都要用到数据表。数据表的实质是规划的一片 D 地址区域,这里的 D 地址用来存储负载值,该负载值是主轴电机负载,且对应于主轴刀号。表容量、首地址、表内号是数据表常用的概念。
①表容量 : 这里数据表的表容量存储在D0006 中,设置 24。用 D 地址来存储表容量,这样即使梯形图在写入 ROM 后依然可以快速改变表容量。

图 3 读取主轴电机负载值时的输入数据结构

图 4 窗口功能读取
②首地址 : 这里数据表的首地址为 D2000,每个负载值占用 2 个字节,数据表 D 地址范围为D2000~D2044。
③表内号 : 数据表的表内号从 0 开始 , 这里表内号范围为 0~23。 “表内号 - 主轴刀号 - 采样值存储 D 地址” 之间的对应关系见表 1。
执行换刀操作T1M6后,主轴刀号D0000=1,表内号 D0015=D0000-1=0。
(1)读数据
指从数据表中读取相应刀具的主轴电机负载值,基于表内号来进行。应用功能指令 XMOVB。1 号刀具对应表内号 0, 因此,将 D0015=0 时对应负载值(初次读时负载值为 0)读到 R2100。
表 1 数据表 - 预设前

(2)比较数据
指用R2100和读取的实际负载值R2010进行比较,所用的功能指令为 COMP: 二进制数据大小判别。该指令可比较 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。
这里,1号刀具对应的实际负载数据为R2010=4011,且 R9000.1=1,表内号 D0015=0,对应的数据表地址为 D2000,见表 2。
同样的道理,对其他刀具进行负载采集,并且往往需要进行多次加工循环的重复地、充分地采集,梯形图如图 5 所示,最终形成的数据见表 3。其中,数据表中为 0 的数据,表示相应的刀具号在加工程序中没有用到。
至此,负载预设完成。退出负载预设模式,进行负载监测。
表 2 数据表 - 写数据


图 5 负载预设模式
三、负载监测模式
切削状态下,当主轴转速到达以后,读取主轴电机的实际负载值,使之与极限负载值进行实时的比较,负载监测过程的流程图如图 6 所示。

图 6 负载监测流程图
1.极限负载值
极限负载值包括上限负载值和下限负载值。下限负载值为设定在 D2100 中的固定值,通常,该值大于任一把刀具空切削时的负载值,且小于每把刀具正常切削时的负载值,比如设置为 500。
表 3 数据表 - 预设完成

上限负载值 = 预设值 × 上限因子其中,上限因子是人为设计的参数。这里应用功能指令 DIVB 和 MULB。
参数号 :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
更多相关信息