张爱红
(无锡职业技术学院,无锡 214121)
随着制造企业的发展,数控机床与刀具数量、品种的增加,传统的机床刀具管理方式已不能满足企业信息化、智能化发展的需要。为了快速、准确的识别刀具、更新刀具偏置值,将射频设备应用于机床刀具管理已成为机床用户的新选择。目前刀具自动识别主要有两种方式:1)采用PC或PLC与RFID处理器的通信,再由PC或PLC与机床通信交换信息[1,2];2)采用机床与RFID处理器直接通信。相比较而言,后者无需额外配置PC、PLC等设备,具有通信环节简化,成本低等优点,是机床用户的首选方案。文中以巴鲁夫处理器与FANUC 0i MD数控加工中心的直接通信为例,给出了系统硬件组成、总线参数配置、PMC编程方法,基于此实现了数控刀具的自动识别与刀偏数据的自动录入,为机床刀具智能化管理提供了新思路。
用于工业识别的巴鲁夫RFID处理器支持Profibus,Profinet,DeviceNet等多种接口,系统设计时选用了支持Pro fi bus DP通信的处理器模块(BIS M-6002-019-050-03-ST11),将机床配置为通信主站,处理器为从站。读写头与处理器采用电缆连接,可直接读写安装于刀柄中的编码块数据,系统组成如图1所示。
图1 系统组成框图
为了确保数控机床与外部设备的总线通信,需要正确配置两者间的通信参数。与FANUC数控机床配置为通信从站相比[3],主站配置较为复杂,需设置项包括:总线参数、子表、子单元参数、模块数据、输入输出缓冲区、运行方式等。目前有两种设置方法[4]:一是借助于软件CNC Setting Tool,二是手动在线设定。考虑到配置方法的通用性,文中以机床侧输入输出缓冲区、用户参数数据的手动设定说明其配置要点。
1)输入输出缓冲区
数控机床与巴鲁夫处理器的数据交换是通过机床PMC输入输出缓冲区数据传送来实现的,分为读写两种不同操作。写数据时,PMC将数据发送至输出缓冲区;读数据则由PMC从输入缓冲区取数据。配置输入输出缓冲区前需先设定模块数据(MODULE DATA),巴鲁夫M60x2处理器设备文件(Bal608EE.gsd)给出了模块数据的范围:4~128字节,也就是可配置的输入输出缓冲区大小。对于64字节的输入输出模块,16进制的模块数据为:0x40,0x5F,0x80,0x5F,需将上述数据设置到“模块数据”页面,如图2(a)所示。设置时先将长度设为4,表示模块数据占用4个字节,再将偏移设为ON,最后输入模块数据:40,5F,80,5F。
根据模块数据的设置,输入输出缓冲区大小均为64字节,需要连续编址且不能占用机床已使用的内部继电器。图2(b)给出了DP主站侧的设置:从站(处理器)总线地址为3,插槽为0,机床PMC侧输入输出缓冲区首址设为R1000(DI)与R1100(DO),字节数(SIZ)为64,结果输入缓冲区配置为R1000~R1063,输出缓冲区为R1100~R1163。
图2 模块数据与DI/DO设置
2)用户参数数据(USER PRM DATA)
考虑到所选处理器带两个读写头,前文配置的64字节为两个读写头缓冲区的总和。读写头1缓冲区大小由用户参数数据第6个字节设定,剩余字节自动分配给读写头2。用户参数数据的缺省值为:0x00,0x80,0x00,0x82,0x00,0x02,实际使用时需修改第6字节,为0x10时表示将读写头1的输入输出缓冲区设为16字节,剩余48字节自动分配给读写头2。系统中只配置了一个读写头,实际用于数据传输的输入缓冲区为:R1000~R1015,输出缓冲区为:R1100~R1115。缓冲区的首尾字节为位头(Bit Header),用于数据传输时的节拍控制。位头的数量可由用户参数数据第4字节的第8位设定,缺省值为1时表示使用首尾位头,此时系统可用于数据传送的字节数(带宽)为14。
机床与巴鲁夫处理器通信采用对话式的协议序列,具体如下:1)PMC发送命令标识码、数据地址与字节数等,并置位输出缓冲区AV信号,通知处理器输出数据有效、传送作业启动;2)处理器接收到信号后置位AA信号;3)如果双方传送的数据超出14字节长,还需使用TI、TO位以及计数器完成附加数据的传送;4)处理器操作完成后将置位AE信号;5)PMC接受数据后将复位AV信号;6)最后处理器复位AA、AE信号,准备后续作业的传送。其中AV、AA、AE、TI、TO等为输入输出缓冲区位头信号。
1.3.1 输入输出缓冲区位头信号定义
通过读写输入输出缓冲区首尾字节位信号实现数据的传送控制。输入缓冲区的首尾字节位表示识别系统(BIS)的状态,输出缓冲区首尾字节位则用于命令控制。根据系统输入输出缓冲区的设定给出了位头信号的定义,如表1所示。
1.3.2 编码块数据读写例程
本系统只使用编码块前10个字节存放数据,编码顺序为:刀具号,刀具直径,刀具长度,刀具直径磨损量,刀具长度磨损量,每个数据占用两个字节。读操作时,安装编码块的刀柄进入读写头识别区域时,系统自动读取刀具数据,并调用窗口功能将刀具数据写入刀偏表。写操作时,系统将PMC数据表中指定数据写入编码块,实现刀具数据的快速更新。刀柄编码块数据的读、写控制均通过PMC编程实现。
1)读取编码块数据
基于机床与处理器的通信时序要求,读控制流程如下:(1)将机床面板上的闲置按键(例:X0.6)定义为读操作切换键,在识别系统就绪时按下该键,使保持型继电器K11.0置位,K11.1复位,系统处于读使能状态;(2)判断输入缓冲区首尾字节是否一致,一致时将内部继电器R1410.0置位;(3)编码块出现在读写头识别区时,发送读命令码0x01→R1101,0x00→编码块数据低位开始地址R1102,0x00→编码块数据高位开始地址R1103, 0x0a→编码块数据低位字节数R1104,0x00→编码块数据高位字节数R1105;同时置位输出缓冲区位头信号AV、AV2;(4)当AE信号置位时,将输入信号传送至数据表(如图3所示);(5)置位读操作结束信号R1410.5;(6)调用窗口功能指令WINDW,将数据写入刀偏表。
表1 输入输出缓冲区位头信号
图3给出了部分输入信号的传送过程。程序执行结果将输入缓冲区R1001~R1002数据直接传送至数据寄存器D206~D207,而缓冲区R1003~R1004数据经中间变量D400乘1000后传送至D210~D213。
图3 数据传送例程
在调用窗口功能指令前,需定义写入刀偏的数据表。以写入刀具直径为例,新增数据表的首地址为D200,如图4(a)所示,数据构成如图4(b)所示。写入刀具几何直径偏置值的功能代码为14,结束代码无需设定;考虑到应用数据表写入刀偏量的单位为微米,数据长度需占用4字节。偏置号为读取的刀具号(10);偏置类型设为1时,表示写入刀具直径值。窗口指令执行后,数据写入刀偏表。
图4 PMC数据表设置
2)写入编码块数据
与读编码块数据相比,写操作无需调用PMC窗口功能,但在数据传送中需要调用TI信号,其控制流程如下:(1)将机床面板上的+X、-X手动按键同时按下时定义为写操作控制键,目的使K11.0复位、K11.1置位,系统处于写使能状态;(2)接着判断输入缓冲区首尾字节是否一致,一致时内部继电器R1410.1接通;(3)编码块出现在读写头识别区时,发送写命令码0x02→R1101,0x00→编码块数据低位开始地址R1102,0x00→编码块数据高位开始地址R1103,0x0a→编码块数据低位字节数R1104,0x00→编码块数据高位字节数R1105;同时置位输出缓冲区位头信号AV、AV2;(4)AA状态位为1时,将预置数据表(例如D300)开始的刀具号、直径值、长度等传送至输出缓冲区;(5)取反TI信号位,数据输出启动;(6)查询处理器命令完成信号AE,AE为1时复位AV信号,数据传送结束。
将巴鲁夫处理器用于数控机床刀具的自动识别,可实现刀具数据的自动录入与更新,与人工操作相比,既可缩短数据输入的时间,又可防止手工输入的误操作,从而提高了机床的运行效率,是刀具管理自动化与智能化发展的趋势。