数控机床的工件坐标系命令的实现

(整期优先)网络出版时间:2009-09-19
/ 2

数控机床的工件坐标系命令的实现

罗华安张颖利

罗华安张颖利(南京信息职业技术学院机电学院)

摘要:结合数控渐近成形机的开发,分析了机床坐标系与工件坐标系的特点及实现机理,提出了一种基于PMAC的矩阵转换功能实现G54-G59工件坐标系的方法,及实现转换的PLC程序。经实践,完全能满足加工要求。

关键词:坐标系PMAC矩阵转换子程序

0引言

数控加工编程中为方便编程需用到工件坐标系命令指令,根据标准规定一般用G54-G59进行工件坐标系的设置,分别称为工件坐标系1,工件坐标系2…。这6个工件坐标系也称为零点偏置指令,它实际上表示的是每个工件坐标系原点相对机床坐标系原点的偏移量,而预先在机床坐标系建立起来的坐标系,G54工件坐标系表示G54工件坐标系的原点与机床坐标系的原点在X、Y、Z方向分别偏移100mm、50mm、20mm(以公制单位编程)。工件坐标系功能是数控机床的重要功能之一。本文对G54-G59工件坐标系的特点进行了详尽分析,并提出了一种基于PMAC多轴运动控制卡是的工件坐标系的实现方法。

1数控机床的坐标系[1]

数控机床的坐标系包括有机床坐标系和工件坐标系以利于零件的编程加工。由于一般数控机床采用旋转编码器作为位置检测元件,其上电起始位置为零,决定了刀具起始位置在数控机床中的不确定性。为保证零件的加工精度,必需要知道刀具相对于机床某一固定点——机床参考点的确切位置。机床参考点一般选机床上的一个确定位置,并用限位开关精确调整好的。与之相应的机床坐标系是机床故有的坐标系,其原点是在机床设计、制造、调整好后就被确定下来,不同类型的机床其原点在机床上的位置不同,数控铣床一般在X、Y、Z的极限正方,机床原点与机床参考点之间的距离是固定的。

工件坐标系是用来方便编程人员编程加工的,由编程人员选定工件上某一已知点(一般与工艺原点重合),而不必考虑零件装夹位置,使零件编程方便、尺寸换算少、计算容易。数控机床中设定工件加工坐标系的指令有G92指令与G54-G59指令,其在使用中是有区别的:

G92指令是通过程序来设定、选用加工坐标系的,它所设定的加工坐标系原点与当前刀具所在的位置有关,这一加工原点在机床坐标系中的位置是随当前刀具位置的不同而改变的。指令格式为:G92X_Y_Z_,例如用语句G92X50Y50Z10设定工件坐标系,即表明当前刀具在工件坐标系中的位置为X50Y50Z10,此时刀具并不移动,G92指令一般放在一个零件程序的第一段。

G54-G59工件坐标系指令是系统预定的6个工件坐标系,可根据需要任意选用。工件坐标系一旦选定,后续程序段中绝对值编程时的指令值均为相对此工件坐标系原点的值,而不管当前刀具在什么位置。这在相同零件的加工时,只要定位不变,初始时手动各坐标回零后,即可调程序进行加工,减少对刀工作量,因此采用工件坐标系G54-G59进行编程加工在实际实际生产中得到了广泛应用。

2工件坐标系的特点及设置[2]

设置工件坐标系G54-G59可以通过MDI方式进行设置,也可以通过编程方式。通过编程方式设置时,通过书写指令进行设置。例如在数控铣床编程中可通过书写格式:G54X-Y-Z-即可设置工件坐标系G54,X、Y、Z后的坐标值即为工件坐标系原点在机床坐标系中的位置。例如图1所示的G54工件坐标系在程序中通过语句G54X100Y50Z20来实现,此时刀具不移动(在FANUC系统中采用G10和G92编程指令[1])。该指令执行后,所有坐标值指定的坐标尺寸都是该选定的工件加工坐标系中的位置。通过MDI操作面板方式设置时,通过操作面板输入6个G54-G59预定工件坐标系的原点在机床坐标系中的值(即工件零点与机床原点的偏置值),系统自动记忆,以后在程序中直接调用即可。G54-G59指令程序段可以和G00、G01指令组合,如G54G90G01(G00)X10Y50F-时,则刀具在选定的加工坐标系中进行移动,程序段运行后,无论刀具当前点在哪里,它都会移动到加工坐标系中的X10Y50点上,在数控渐近成形机床的开发中即采用的后一种方式设置。

3数控渐近成形机的工件坐标系功能

数控渐近成形机床采用的是基于IPC+PMAC卡的开放式数控系统,以PMAC运动控制卡为其控制核心。IPC(工控机)作为其上位机,主要负责其文件的输入、管理、加工状态的显示等任务,下位机PMAC卡主要负责其伺服、插补等实时性强的任务。G54-G59工件坐标系命令的实现,主要是通过在操作面板中输入X,Y,Z轴的偏移量,由上位机以文件的形式保存,其偏移功能则是由下位机(PMAC)实现的。数控渐近成形机的工件坐标系功能是利用PMAC的矩阵转换功能并用PMAC子程序来实现的。

3.1PMAC的矩阵转换功能PMAC卡是美国DeltaTau公司出品的一款功能先进的多轴运动控制卡,其功能非常强大,其丰富的坐标平移、旋转功能能实现复杂的坐标转换。将不同的电机分配到一个坐标系的X、Y、Z轴…后即能实现多达8轴的联动控制。PMAC的坐标转换实际上是通过对X,Y,Z轴的矩阵转换(matrixtransformation)操作实现的,其特点是能在程序运行过程中进行X、Y、Z轴的平移、旋转、放大、镜像等矩阵运算,可广泛用于坐标轴的公英制转换、原点移动、复制镜像、角度偏移等。实现轴矩阵转换需使用PMAC的Q变量及DEFINETBUF,TSEL,TINIT,ADIS,IDIS,

3.2基于PMAC的工件坐标系的实现根据G54-G59工件坐标系命令的特点,只需使用矩阵转换中的坐标平移运算即可,即只需对上述矩阵中的D1、D2、D3赋值,D1、D2、D3是由连续的三个Q变量赋值的,具体实现方法如下(为节省篇幅又不失代表性,仅以G54、G55工件坐标系为例):

保存G54、G55坐标系的坐标偏移量到PMAC的Q变量中。将按加工编程要求测得的G54、G55坐标系的坐标偏移量通过操作面板保存到Q11-Q13、Q21-Q23中(按XYZ三坐标机床),例如按图1所示即可设Q11=100、Q12=50、Q13=20三个Q变量作为G54的坐标偏移量,在上位机中将上述Q变量以初始化文件(.ini)的方式保存,并在数控程序加工前通过上、下位机通讯将其下传保存到PMAC卡的内存中,以备加工调用。设置Q10作为标志变量,以识别不同的坐标系,即Q10=1对应G54,Q10=2对应G55等…,作为以后坐标反变换运算显示时使用。

编写G54代码子程序。在IPC+PMAC结构型的数控系统中,标准G代码运动程序是通过将其先下载到PMAC卡内存后,再发命令执行的。PMAC为编写一般通用的数控G、M、T、D代码定义了专门的运动程序缓冲区Program1000、Program1001、Program1002和Program1003。当运动程序执行G54、G55等G代码指令时,即是调用Program1000中N54000、N54000程序段,执行相应的子程序。因为机床工件坐标系为模态指令,要恢复到机床坐标系需用到G53机床坐标系指令将其注销[5]。在将相应Q变量下载到PMAC后,只需调用矩阵选择命令TSELn即可,相应代码如下:

N53000

CMD“Q10=0”;设Q10标志为0,即为机床坐标系G53

TSEL0;取消坐标偏移转换

RETURN;返回

N54000

TSEL1;选择转换矩阵1

CMD“Q10=1”;设Q10标志为1,即为工件坐标系G54

ADIS11;调用Q11、Q12、Q13值执行偏移转换

RETURN;返回

N55000

TSEL2;选择转换矩阵1

CMD“Q10=2”;设Q10标志为2,即为工件坐标系G55

ADIS21;调用Q21、Q22、Q23执行偏移转换

RETURN;返回

注意:在执行上述坐标转换前需先设置矩阵缓冲区,用DEFINETBUF6设置六个转换矩阵缓冲区。

4结束语

本文对数控机床的坐标系进行了介绍,并对工件坐标系的类型、功能、特点及其对加工编程中的应用进行了详细论述。在数控渐近成形机的开发中,利用PMAC的矩阵转换功能实现了G54-G59工件坐标系机能,经调试证实完全能满足加工要求。

参考文献:

[1]王永章,杜文君,程国全.数控技术.高等教育出版社.2001年12月第1版.34-37页.

[2]陆曲波,王世辉.数控加工编程与操作.华南理工大学出版社.2006年8月第一版.86-87页.

[3]PMAC/PMAC2SOFTWAREMANUALDeltaTauDataSystems,Inc.April22,2004Page3-59.

[4]PMACUSERMANUALDeltaTauDataSystems,Inc.April22,2004.Page199-202.

[5]王爱玲,沈兴全,吴淑琴,彭彬彬.现代数控编程技术及应用.国防工业出版社.2002年1月第一版.29页.