基于SIEMENS 840D/840Dsl刀具管理的手动换刀功能

时间:2022-05-17 10:41:24

基于SIEMENS 840D/840Dsl刀具管理的手动换刀功能

摘 要 在SIEMENS 840D/840Dsl的刀具管理基础上进行二次开发,实现大型刀具的手动更换及自动刀具补偿功能,介绍了设计原理及调试方法。

关键词 SIEMENS 840D;SIEMENS 840Dsl;刀具管理;手动换刀

中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2014)07-0078-01

SIEMENS 840D/840Dsl系统针对具备刀库的复合型机床提供一整套强大的刀库管理功能。该功能可实现刀具数据的实时更新,多刀库的动态管理,刀具随机寻找空位及自动进行大小刀躲避。但是在重大型机床上,对一些特殊的,只能进行手动更换的刀具,SIEMENS却没有给出相应的解决方案。本文以我公司生产的GTM系列龙门移动式车铣加工中心为例,通过对SINUMERIK 840Dsl刀库管理功能进行二次开发,实现大型刀具的手动更换及自动刀具补偿。

1 设计思路

SIEMENS 840Dsl系统自带的刀具管理功能大致分为两大类,一种是主轴直接抓刀,另一种情况是通过机械手抓刀。GTM系列机床使用的是第二种换刀方式。在这种情况下,系统中最少需要配置3个刀库:链式刀库(刀库号为1),缓冲区刀库(刀库号为9998),装载点刀库(刀库号为9999),如果是多刀库,相应需要增加链式刀库的数量,图1中所示为双刀库的情况。

图1 双刀库换刀示意

缓冲区刀库9998已经被SIEMENS预先定义为主轴位与机械手位,不允许用户自行更改。其中(9998,1)为主轴位,(9998,2)为机械手1位,(9998,2)为机械手2位。对于手动刀具来说,自然不能将其加载至链式刀库上。通过多次试验,我们发现,当刀具处于刀柜内不在刀库表内时,系统会自动将该刀具临时存放在(9999,1)中。因此,当我们在进行手动换刀的操作时,其实就是将(9999,1)内的刀具加载进(9998,1)的过程。分析到这里,具体的设计方法也就应运而生了。

要实现刀具从(9999,1)直接装载至(9998,1)而不经过链式刀库和机械手,我们要对原来的负责刀具管理功能的PLC及NC程序进行修改。其中PLC程序中需要修改FC90与FB90两个功能块,这两个功能块是由SIEMENS标准的刀具管理模块,FB90的修改方法如下。

1)原程序中预留了很多个跳转识别符,在其中选择一个网络比如“SS28”,这里主要是为了与FC90进行关联。

2)判断旧刀刀库号是否等于9999,即当前主轴刀具是否为手动刀具。

3)不论上步的判断结果如何,再次判断新刀刀库号是否等于9999,即当前指令刀具是否为手动刀具。

4)两次判断结果有5种情况:

①旧刀刀库号为9999,新刀刀库号为9999。即主轴当前刀具为手动刀具,指令刀具也为手动刀具。这种情况下,可直接进行手动刀具交换。

②旧刀刀库号为9999,新刀刀库号为1。即主轴当前刀具为手动刀具,指令刀具为自动刀具。这种情况下,需要先进行手动卸刀,然后在进行自动装刀。

③旧刀刀库号为1,新刀刀库号为9999。即主轴当前刀具为自动刀具,指令刀具为手动刀具。这种情况下,需要先进行自动卸刀,将当前刀具送回刀库内,然后在进行手动装刀。

④旧刀刀库号为0,新刀刀库号为9999。即主轴空刀,指令刀具为手动刀具。这种情况下,需要进行手动装刀。

⑤旧刀刀库号为9999,新刀刀库号为0。即主轴当前刀具为手动刀具,系统执行的是T0。这种情况下,需要进行手动卸刀。

5)根据判断的结果,相应对的使用FC8功能块对刀具表进行刷新,由于篇幅所限,这里就不列出全部的程序内容,有需要的读者可自行联系作者。

FC90的修改方法相对简单,只要判断一下新刀旧刀的刀库号中是否存在9999,如果是,激活相应的位使FB90中的程序跳转至“SS28”即可。由于篇幅所限,这里就不列出全部的程序内容,有需要的读者可自行联系作者。

NC程序同样需要修改,原自动换刀程序执行是由3个部分组成的:

①T_PREPARE.SPF 备刀程序,通过执行T码调用。

②TOOL.SPF 换刀主程序,用来判断换刀方式。

③TOOLAUTO.SPF 自动换刀程序,执行自动换刀,包括机床轴与刀库的定位、机械手与主轴抓刀等动作的控制。

我们需要修改的是换刀主程序TOOL.SPF,原程序中只有对自动换刀方式种类的判别,即判断出装刀、卸刀及刀具交换三种情况,现在需要将手动换刀的判断整合进去。程序中需要增加的指令相对复杂,由于篇幅所限,这里就不列出全部的程序内容,有需要的读者可自行联系作者。在这里将比较重要的指令列举如下:

IF ((_TV==0) AND ($AC_TC_MTO==9999)) GOTOF Auswechseln;手动卸刀

IF (($AC_TC_MFN==9999) AND ($AC_TC_MTO==9999)) GOTOF Tauschen ;手动换刀

IF $A_TOOLMN[_TV]==0 GOTOF Einwechseln;手动装刀

2 功能调试

程序修改完成后,确保其无误,并分别下载至PLC/NC内。然后在系统刀具表内建立手动刀具,建立方法与自动刀具相同。建立好刀具后,注意不要将其加载至链式刀库内。

先执行备刀指令T=“xxx”,再执行换刀主程序“TOOL”。此时如果主轴当前到或者指令刀中有手动刀具,NC程序经过判断后会执行M0中断程序,等待用户进行手动换刀,当用户更换完刀具后,再次按下循环启动按键,刀库表随机会进行自动更新,使用刀具从(9999,1)装载至(9998,1)。

3 结束语

本文对SIEMENS 840D/840Dsl数控系统的刀库管理功能进行了二次开发,实现了手动刀具的自动管理,效果良好。

基金项目

国家重大科技专项。

课题名称:高速/复合数控机床及关键技术创新能力平台。

课题编号:2011ZX04016-021。

参考文献

[1]SINUMERIK 840D sl Special Functions 2013.6.

[2]SINUMERIK 840D sl / 828D Basic Functions 2013.6.

[3]SINUMERIK 840D sl / 828D Extended Functions 2013.6.

作者简介

周肇元(1982-),男,工程师,现任职于沈阳机床(集团)有限责任公司,主要从事数控机床电气设计工作。

上一篇:射频继电器桥式接触系统中不连续结构电路模型... 下一篇:C6140普通车床的电气控制系统浅析