马国艳
沈阳机床(集团)有限责任公司 辽宁沈阳 110142
刀具在切削工件的过程中,旋转的刀具与工件切削面的接触致使接触面的温度较高,导致刀具的磨损量较大,一旦刀具的磨损量超过允许值,就会严重影响切削工件的精度。随着机床行业的不断发展,用户对加工零件的精度要求越来越高,刀具磨损检测功能的应用也越来越普遍,越来越多的用户选择在机床上安装刀具磨损检测系统。
刀具磨损检测有接触式和非接触式两种,由于接触式的刀具磨损检测系统价格较非接触式的便宜很多,而且接触式刀具磨损检测系统往往安装在非加工区,检测精度受加工区环境影响较小,精度容易保证;另外,接触式刀具磨损检测可以根据刀库中每把刀具的特点,设置不同的磨损量,因此接触式刀具检测系统被广泛采用。
接触式刀具磨损检测系统(见图1)通过摆动读数探头来读取需要检测的刀具的探头摆动角度,通过比较刀具在加工前后摆动角度的差异,来判断刀具磨损量是否超差。
图1 接触式刀具磨损检测系统示意
接触式刀具检测系统的工作步骤:首先对拟使用的刀具进行初始检测,记录初始状态,并将数据存储在刀具磨损检测系统中;其次对经过切削加工后的刀具进行检测,确定磨损量;最后比较刀具的初始值与切削后的监测值,如果差值超过允许的磨损量,则发送刀具超差报警,警告机床操作人员刀具不能再使用。
刀库中拟使用的所有刀具都应该在切削前进行初始值的标定,初始值的标定动作是由数控系统的PLC程序控制的。以链式带双交换臂、刀具容量40把的刀库中的刀具标定为例,为节省换刀时间,将刀具的初始值标定过程与换刀过程结合在一起。数控系统的PLC端需要告知刀具检测系统被检测的刀具号,而接触式刀具磨损检测系统的刀具计数形式采用的是二进制,编辑PLC程序如下。
A M 393.2; 刀检初始检测输出
= Q 2.4
A M 391.2; 刀具磨损检测输出
= Q 2.5
A M 391.3; 刀具检测停止
= Q 2.6
A M 392.0; 刀具计数,二进制1
= Q 2.7
A M 392.1; 刀具计数,二进制2
= Q 3.0
A M 392.2; 刀具计数,二进制4
= Q 3.1
A M 392.3; 刀具计数,二进制8
= Q 3.2
A M 392.4; 刀具计数,二进制16
= Q 3.3
A M 392.5; 刀具计数,二进制32
= Q 3.4
A M 392.6; 刀具计数,二进制64
= Q 3.5
A M 392.7; 刀具计数,二进制128
= Q 3.6
初始检测分两种情况,即刀库中未被检测的刀具和主轴上未被检测的刀具。刀库中需要初始检测的刀具需要在刀套翻转后、换上主轴前进行检测;主轴上需要进行初始检测的刀具,需要在主轴上的刀具到达翻转后的刀套后再进行检测。编辑PLC控制程序如下。(注意:只有在初始检测完成后,才能允许进行换刀动作。)
A(
L DB72.DBD 8
L 40
>D
)
JC M007
A(
L DB72.DBD 8 //$P_VDITCP[0]不为0,且<40
L 0
>D
)
A(
L DB111.DBB 1 //换刀步骤
L 3
==I
)
A DB100.DBX 41.3 //倒刀到位
A DB100.DBX 41.4 //机械手原点
A DB100.DBX 41.6 //机械手刹车
A DB110.DBX 20.0 //启动换刀程序
FP DB110.DBX 13.0
S DB101.DBX 31.2 //刀具磨损初始检测输出
S DB101.DBX 31.3 //刀具初始检测启动
A DB101.DBX 31.2 //刀具磨损初始检测输出
A DB100.DBX1.0 //检测成功
O DB100.DBX1.1 //检测失败
L DB72.DBD8
T MW392 //传递初始检测完成的刀具号
切削完成后,在更换下一把刀具前,需要对刀具进行磨损量检测。在主轴上的刀具到达刀套并且换刀门关闭后进行磨损检测,把检测后的刀套号赋给MW392,编辑PLC程序如下。
A(
L DB72.DBD 12
L 40
>D
)
JC M008
A(
L DB72.DBD 12 //$P_VDITCP[1]不为0,且<40
L 0
<>D
)
A(
L DB111.DBB 1 //换刀步骤
L 9
==I
)
A DB100.DBX 41.3 //倒刀到位
A DB100.DBX 41.4 //机械手原点
A DB100.DBX 41.6 //机械手刹车
A DB110.DBX 20.0 //启动换刀程序
FP DB110.DBX 13.1
S DB101.DBX 31.3 //刀具磨损量检测启动
A DB101.DBX 31.3 //刀具磨损量检测启动
A DB100.DBX1.0 //检测成功
O DB100.DBX1.1 //检测失败
L DB72.DBD8
T MW392 //传递已检测的刀具号
O DB100.DBX1.1 //检测失败
L DB72.DBD8
T MW36 //将检测失败的刀具号传递到另一个存储器中,方便检查
如果刀具磨损检测系统检测出刀具磨损量超差,会发出报警信号给机床控制系统。系统接收到报警信号,要发出“拟使用的刀具磨损量超过允许值,禁止使用该刀具加工”的报警,该报警将禁止系统NC启动。程序编辑如下。
A DB100.DBX2.0
= DB2.DBX220.5 //刀具磨损量超差报警
所有刀具在使用前都应进行初始检测,为避免数控系统重复工作,可采用NC程序来判断刀具是否已经初始检测完毕,并把刀具号发送给PLC。如果已检测完毕,则PLC跳过初始检测步骤;如果拟使用的刀具没有进行初始检测,则进行初始检测。编辑的NC程序如下。
GETSELT(_NWT); 拟使用的刀具号赋给_NWT
_SPT=$TC_MPP6[9998,1]; 主轴上的刀具号赋给_SPT
STOPRE
$P_VDITCP[0]=0; DB72.DBD8=0
$P_VDITCP[1]=0; DB72.DBD12=0
IF (_NWT<>0)
i f (($T C_T P C1[_N W T]==0) a n d ($t c_d p1[_NWT,1]>=200) and ($tc_dp1[_NWT,1]<=250))
;$TC_TPC1[_NWT] eq 0表示没有teach; TOOL OEM PARAMETER1=0
;tool type: drill
$P_VDITCP[0]=_NWT; 把没有teach的钻刀发给PLC的DB72.DBD8
endif
ENDIF
IF (_SPT<>0)
if (($TC_TPC1[_SPT]==1) and ($tc_dp1[_SPT,1]>=200)and ($tc_dp1[_SPT,1]<=250))
;$TC_TPC1[_SPT] eq 1表示已经teach完毕; TOOL OEM PARAMETER1=0
;tool type: drill
$P_VDITCP[1]=_SPT; 把已经teach的钻刀发给PLC变量DB72.DBD12
endif
ENDIF
(1)NC控制的标定 通过NC程序区分刀具是否经过检测,编辑的PLC程序如下。
if ($P_VDITCP[1]<>0)
$TC_TPC1[_SPT]=0; 清除teached标识
endif
if ($P_VDITCP[0]<>0)
$TC_TPC1[_NWT]=1; 标识teached
endif
(2)刀具管理界面标定 打开刀具详细信息,可以手动更改“Tool OEM parameter 1”和“Tool OEM parameter 2”的值,刀具磨损检测标定如图2所示。
图2 刀具磨损检测标定
本文介绍了数控系统上刀具磨损检测的开发与应用,把刀具磨损检测动作与换刀动作结合在一起,刀具的初始检测通过NC控制刀具管理界面进行设定。该功能的开发方便了机床用户应用刀具磨损检测功能,提高了磨损检测的效率和刀具应用的灵活性。