摘 要:介绍了用于数控车床工件在线测量的触发式测头自动测量系统的组成、工作原理以及测量软件的编制方法。
关键词:自动测量系统 数控车床
Automatic Measuring System for Workpieces on CNC Lathers
Zhou Yonglin
Abstract:The consistence, measuring principle and programming method of measuring software of the automatic measuring system with a trigger probe for on-line measuring workpieces on CNC lathers are introduced.
Keywords:automatic measuring system CNC lather
一、引 言
在数控机床上对被加工工件进行在线自动测量是提高数控机床自动化加工水平和保证工件加工精度的有效方法,因此,数控机床工件在线自动测量系统是衡量数控机床技术水平的重要特征之一,已成为购置数控机床必不可少的基本选件。采用在线自动测量系统,在加工前可协助操作者进行工件的装夹找正,自动完成工件坐标系的设定,从而可简化工装夹具,节省夹具费用,缩短辅助时间,提高加工效率;在加工中和加工后可自动对工件尺寸进行在线测量,并能根据测量结果自动生成误差补偿数据反馈到数控系统,以保证工件的尺寸精度及批量工件的尺寸一致性;采用机内在线测量还可避免将工件移至测量机测量所带来的二次误差,从而可提高加工精度及精度保持性,通过一次切削即可获得合格产品,大大增强数控机床的智能化程度。
二、测量系统的组成及工作原理
用于数控车床的工件自动测量系统一般均采用触发式测头测量系统(如英国Renishaw公司的LP2触发式测头测量系统)。一般可将触发式测头假设作为一把刀具安装在刀架的某一刀位上,用于测量工件尺寸。当移动刀架,测头接触工件时则触发数控系统记下测头位置,数控系统通过相应的测量软件计算出工件尺寸。在数控车床上,触发式测量系统可以测量回转体零件的外径、内径、长度及槽宽等。触发式测头测量系统通常由触发式测头、信号传输和接收器、联接CNC系统的控制器接口装置、坐标位置数据采集、处理和测量误差补偿系统、测量结果自动反馈补偿系统等几部分组成,其工作原理如图1所示。
图1 数控车床触发式测量系统工作原理框图
触发式测头为常闭触点式整体单元测头,其内部为三组等分串联触点触发机构。工作时可将测头作为一把刀具安装在转塔刀架的某一刀位上,当移动刀架,测头接触到工件时,测杆出现微量偏移,使三等分触点中的一个或二个触点脱开,由三个触点构成的串联电路出现断路而在瞬间产生一个阶跃信号,此信号通过信号传输器用有线(连线)方式或无线(电磁耦合、红外辐射)方式传送至控制器接口,控制器接口将触发时产生的带有不规则振荡的信号经整形后传输至数控系统,数控系统接到触发信号后发出中断信号,机床停止移动并记下此时测头的位置坐标,数控系统自动将数据送至相应的参数单元,作为变量进行运算处理,此时数控系统通过数据处理软件和测量误差处理软件计算出工件的尺寸,并及时反馈回数控系统进行刀具自动补偿或工件坐标调整,以保证工件的加工精度。
三、测量软件的编制方法
对于数控机床用户,合理选用或编制适合自己产品测量需要的测量软件十分重要。一般来说,触发式测头可以从专业生产厂商(如Renishaw公司等)购买,但由于机床采用的数控系统各不相同,因此测量软件一般由数控系统制造商或数控机床制造商编制和提供。由于现在的数控系统功能强大,均能提供宏指令系统,故用户也可根据实际需要自行编制测量程序。以SINUMERIK 880数控系统为例。该系统提供给用户的参数编程和@代码使用户可以自行开发编制各种固定循环程序(包括加工与测量循环程序等)。参数编程可以完成参数的定义、赋值及加、减、乘、除运算,而@代码则可完成函数运算、参数存取、参数比较、有条件和无条件的程序跳转、逻辑判断和布尔运算、系统存储器数据的输入、输出以及程序编辑等多种功能,完全可满足用户编制测量固定循环程序的需要。现对参数编程和@代码的定义及使用方法作一简单介绍。
1.参数编程的定义及基本方法
参数编程(Parameter programming)是用参数R×××作为数据代码或数据地址代码进行编程。参数在编程中充当替代物的角色,由字母R和三位数字组成,R代码从R0~R999共分两大类九组,第一大类R0~R499为通道特定R参数,其中R0~R200为基本参数,如:R00~R49为传递参数,主要用于编制固定循环和子程序;R50~R99为局部参数,主要用于编制固定循环和子程序计算过程中暂存计算结果;R100~R199为全局参数,主要用于零件程序和子程序的数据存贮;R200~R499主要用于系统内部。第二大类R900~R999为中心R参数。
参数可以在数控加工程序中直接赋值,如R01=10,也可相互赋值,如R01=R03;参数可以进行算术运算,如R01=R02+R03,R01=R02-R03,R01=R02*R03,R01=R02/R03。例如:
N10 R01=9.7 R02=-2.1
N20 X=20.3+R01
N30 Z=19.7-R01
结果:X=30,Z=10。
2.@代码的定义及基本用法
@代码由符号@和三位数字组成,如@×××,其含义为:第一位数为主群组区别码,第二位数为子群组区分码,第三位数为定义特定功能。
第一位主群组区别码共分7组,分别定义为:@0××为程序结构中的通用指令;@1××为程序中的分支指令;@2××为通用数据传输指令;@3××为数据传输指令,从系统内存到R参数;@4××为数据传输指令,从R参数到系统内存;@6××为算术运算和逻辑运算指令;@7××为NC特定指令。
第二位子群组区分码和第三位特定功能码在各主群组中有不同的定义,如:@041中的4代表存贮R参数,1代表需存贮的参数区域;@100中的第一个0代表绝对跳转,后一个0代表无条件跳转;@111中的第一个1代表有条件跳转,比较码为1,最后一个1代表条件为相等。又如:@440中的4代表将R参数直接置为(写入)编程坐标值,0为特定功能。
@代码的功能和作用十分丰富,编程者可根据编程需要灵活选用。
@代码在编程中,后面需跟操作数,主要有三类:K×××为常数;R×××为R参数;P×××为指针。如@100K1000表示无条件跳至第1000句,其中正数为向前跳,负数为向后跳。
图2所示为数控车床自动测量系统测量软件设计框图。对于采用SINUMERIK880数控系统的用户,可以通过@代码和参数编程编制出适用的测量程序。
图2 数控车床自动测量系统测量软件设计框图